diff --git a/CHANGELOG.md b/CHANGELOG.md index e31d2b23..c99f6970 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,9 @@ # Changelog -## 2.3.9 (September ?, 2020) +## 2.3.9 (September 28, 2020) * Fix plugin installation (fixes #311) (thanks [yfwz100](https://github.com/yfwz100)) - +* Bumped interact.js to 1.9.22 ## 2.3.8 (July 31, 2020) diff --git a/README.md b/README.md index 5167bba3..bde12494 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ vue-grid-layout is a grid layout system, like [Gridster](http://dsmorse.github.io/gridster.js/), for Vue.js. **Heavily inspired by [React-Grid-Layout](https://github.com/STRML/react-grid-layout)** -### **Current version:** 2.3.8 (Supports Vue 2.2+) +### **Current version:** 2.3.9 (Supports Vue 2.2+) ### **For Vue 2.1.10 and below use version [2.1.3](https://github.com/jbaysolutions/vue-grid-layout/tree/2.1.3)** ### **For Vue 1 use version [1.0.3](https://github.com/jbaysolutions/vue-grid-layout/tree/1.0.3)** diff --git a/dist/vue-grid-layout.common.js b/dist/vue-grid-layout.common.js index 41b6ba69..233c909b 100644 --- a/dist/vue-grid-layout.common.js +++ b/dist/vue-grid-layout.common.js @@ -1293,7 +1293,7 @@ module.exports = __webpack_require__("8e60") ? function (object, key, value) { "use strict"; -// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0156aa68-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/GridLayout.vue?vue&type=template&id=6594d2a5& +// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"495e29ea-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/GridLayout.vue?vue&type=template&id=6594d2a5& var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"item",staticClass:"vue-grid-layout",style:(_vm.mergedStyle)},[_vm._t("default"),_c('grid-item',{directives:[{name:"show",rawName:"v-show",value:(_vm.isDragging),expression:"isDragging"}],staticClass:"vue-grid-placeholder",attrs:{"x":_vm.placeholder.x,"y":_vm.placeholder.y,"w":_vm.placeholder.w,"h":_vm.placeholder.h,"i":_vm.placeholder.i}})],2)} var staticRenderFns = [] @@ -2530,6 +2530,16 @@ module.exports = function (it) { }; +/***/ }), + +/***/ "5014": +/***/ (function(module, exports, __webpack_require__) { + +/* interact.js 1.9.22 | https://raw.github.com/taye/interact.js/master/LICENSE */ +!function(t){if(true)module.exports=t();else {}}((function(){var t={};Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(t){return!(!t||!t.Window)&&t instanceof t.Window};var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.init=o,e.getWindow=function(e){if((0,t.default)(e))return e;return(e.ownerDocument||e).defaultView||r.window},e.window=e.realWindow=void 0;var n=void 0;e.realWindow=n;var r=void 0;function o(t){e.realWindow=n=t;var o=t.document.createTextNode("");o.ownerDocument!==t.document&&"function"==typeof t.wrap&&t.wrap(o)===o&&(t=t.wrap(t)),e.window=r=t}e.window=r,"undefined"!=typeof window&&window&&o(window);var i={};function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var s=function(t){return!!t&&"object"===a(t)},l=function(t){return"function"==typeof t},u={window:function(n){return n===e.window||(0,t.default)(n)},docFrag:function(t){return s(t)&&11===t.nodeType},object:s,func:l,number:function(t){return"number"==typeof t},bool:function(t){return"boolean"==typeof t},string:function(t){return"string"==typeof t},element:function(t){if(!t||"object"!==a(t))return!1;var n=e.getWindow(t)||e.window;return/object|function/.test(a(n.Element))?t instanceof n.Element:1===t.nodeType&&"string"==typeof t.nodeName},plainObject:function(t){return s(t)&&!!t.constructor&&/function Object\b/.test(t.constructor.toString())},array:function(t){return s(t)&&void 0!==t.length&&l(t.splice)}};i.default=u;var c={};function f(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.prepared.axis;"x"===n?(e.coords.cur.page.y=e.coords.start.page.y,e.coords.cur.client.y=e.coords.start.client.y,e.coords.velocity.client.y=0,e.coords.velocity.page.y=0):"y"===n&&(e.coords.cur.page.x=e.coords.start.page.x,e.coords.cur.client.x=e.coords.start.client.x,e.coords.velocity.client.x=0,e.coords.velocity.page.x=0)}}function d(t){var e=t.iEvent,n=t.interaction;if("drag"===n.prepared.name){var r=n.prepared.axis;if("x"===r||"y"===r){var o="x"===r?"y":"x";e.page[o]=n.coords.start.page[o],e.client[o]=n.coords.start.client[o],e.delta[o]=0}}}Object.defineProperty(c,"__esModule",{value:!0}),c.default=void 0;var p={id:"actions/drag",install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.draggable=p.draggable,e.map.drag=p,e.methodDict.drag="draggable",r.actions.drag=p.defaults},listeners:{"interactions:before-action-move":f,"interactions:action-resume":f,"interactions:action-move":d,"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.buttons,o=n.options.drag;if(o&&o.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(r&n.options.drag.mouseButtons)))return t.action={name:"drag",axis:"start"===o.lockAxis?o.startAxis:o.lockAxis},!1}},draggable:function(t){return i.default.object(t)?(this.options.drag.enabled=!1!==t.enabled,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^(xy|x|y|start)$/.test(t.lockAxis)&&(this.options.drag.lockAxis=t.lockAxis),/^(xy|x|y)$/.test(t.startAxis)&&(this.options.drag.startAxis=t.startAxis),this):i.default.bool(t)?(this.options.drag.enabled=t,this):this.options.drag},beforeMove:f,move:d,defaults:{startAxis:"xy",lockAxis:"xy"},getCursor:function(){return"move"}},v=p;c.default=v;var h={};Object.defineProperty(h,"__esModule",{value:!0}),h.default=void 0;var g={init:function(t){var e=t;g.document=e.document,g.DocumentFragment=e.DocumentFragment||y,g.SVGElement=e.SVGElement||y,g.SVGSVGElement=e.SVGSVGElement||y,g.SVGElementInstance=e.SVGElementInstance||y,g.Element=e.Element||y,g.HTMLElement=e.HTMLElement||g.Element,g.Event=e.Event,g.Touch=e.Touch||y,g.PointerEvent=e.PointerEvent||e.MSPointerEvent},document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function y(){}var m=g;h.default=m;var b={};Object.defineProperty(b,"__esModule",{value:!0}),b.default=void 0;var x={init:function(t){var n=h.default.Element,r=e.window.navigator;x.supportsTouch="ontouchstart"in t||i.default.func(t.DocumentTouch)&&h.default.document instanceof t.DocumentTouch,x.supportsPointerEvent=!1!==r.pointerEnabled&&!!h.default.PointerEvent,x.isIOS=/iP(hone|od|ad)/.test(r.platform),x.isIOS7=/iP(hone|od|ad)/.test(r.platform)&&/OS 7[^\d]/.test(r.appVersion),x.isIe9=/MSIE 9/.test(r.userAgent),x.isOperaMobile="Opera"===r.appName&&x.supportsTouch&&/Presto/.test(r.userAgent),x.prefixedMatchesSelector="matches"in n.prototype?"matches":"webkitMatchesSelector"in n.prototype?"webkitMatchesSelector":"mozMatchesSelector"in n.prototype?"mozMatchesSelector":"oMatchesSelector"in n.prototype?"oMatchesSelector":"msMatchesSelector",x.pEventTypes=x.supportsPointerEvent?h.default.PointerEvent===t.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,x.wheelEvent="onmousewheel"in h.default.document?"mousewheel":"wheel"},supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null};var w=x;b.default=w;var _={};function S(t){var e=t.parentNode;if(i.default.docFrag(e)){for(;(e=e.host)&&i.default.docFrag(e););return e}return e}function P(t,n){return e.window!==e.realWindow&&(n=n.replace(/\/deep\//g," ")),t[b.default.prefixedMatchesSelector](n)}Object.defineProperty(_,"__esModule",{value:!0}),_.nodeContains=function(t,e){if(t.contains)return t.contains(e);for(;e;){if(e===t)return!0;e=e.parentNode}return!1},_.closest=function(t,e){for(;i.default.element(t);){if(P(t,e))return t;t=S(t)}return null},_.parentNode=S,_.matchesSelector=P,_.indexOfDeepestElement=function(t){for(var n,r=[],o=0;o=m&&(n=o);else n=o}else n=o}var v,g,y,m;return n},_.matchesUpTo=function(t,e,n){for(;i.default.element(t);){if(P(t,e))return!0;if((t=S(t))===n)return P(t,e)}return!1},_.getActualElement=function(t){return t.correspondingUseElement||t},_.getScrollXY=T,_.getElementClientRect=M,_.getElementRect=function(t){var n=M(t);if(!b.default.isIOS7&&n){var r=T(e.getWindow(t));n.left+=r.x,n.right+=r.x,n.top+=r.y,n.bottom+=r.y}return n},_.getPath=function(t){var e=[];for(;t;)e.push(t),t=S(t);return e},_.trySelector=function(t){if(!i.default.string(t))return!1;return h.default.document.querySelector(t),!0};var O=function(t){return t.parentNode||t.host};function E(t,e){for(var n,r=[],o=t;(n=O(o))&&o!==e&&n!==o.ownerDocument;)r.unshift(o),o=n;return r}function T(t){return{x:(t=t||e.window).scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function M(t){var e=t instanceof h.default.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}var j={};Object.defineProperty(j,"__esModule",{value:!0}),j.default=function(t,e){for(var n in e)t[n]=e[n];return t};var k={};function I(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n1?q(e):e[0];U(r,t.page),N(r,t.client),t.timeStamp=n},W.getTouchPair=V,W.pointerAverage=q,W.touchBBox=function(t){if(!t.length)return null;var e=V(t),n=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY),o=Math.max(e[0].pageX,e[1].pageX),i=Math.max(e[0].pageY,e[1].pageY);return{x:n,y:r,left:n,top:r,right:o,bottom:i,width:o-n,height:i-r}},W.touchDistance=function(t,e){var n=e+"X",r=e+"Y",o=V(t),i=o[0][n]-o[1][n],a=o[0][r]-o[1][r];return(0,R.default)(i,a)},W.touchAngle=function(t,e){var n=e+"X",r=e+"Y",o=V(t),i=o[1][n]-o[0][n],a=o[1][r]-o[0][r];return 180*Math.atan2(a,i)/Math.PI},W.getPointerType=function(t){return i.default.string(t.pointerType)?t.pointerType:i.default.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type)||t instanceof h.default.Touch?"touch":"mouse"},W.getEventTargets=function(t){var e=i.default.func(t.composedPath)?t.composedPath():t.path;return[_.getActualElement(e?e[0]:t.target),_.getActualElement(t.currentTarget)]},W.newCoords=function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},W.coordsToEvent=function(t){return{coords:t,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons},preventDefault:function(){}}},Object.defineProperty(W,"pointerExtend",{enumerable:!0,get:function(){return F.default}});var $={};function G(t,e){for(var n=0;ns.left&&f.xs.top&&f.y=s.left&&h<=s.right&&g>=s.top&&g<=s.bottom}if(v&&i.default.number(u)){var y=Math.max(0,Math.min(s.right,v.right)-Math.max(s.left,v.left))*Math.max(0,Math.min(s.bottom,v.bottom)-Math.max(s.top,v.top))/(v.width*v.height);l=y>=u}t.options.drop.checker&&(l=t.options.drop.checker(e,n,l,t,a,r,o));return l}(this,t,e,n,r,o,a)},n.dynamicDrop=function(e){return i.default.bool(e)?(t.dynamicDrop=e,n):t.dynamicDrop},(0,j.default)(e.phaselessTypes,{dragenter:!0,dragleave:!0,dropactivate:!0,dropdeactivate:!0,dropmove:!0,drop:!0}),e.methodDict.drop="dropzone",t.dynamicDrop=!1,o.actions.drop=vt.defaults},listeners:{"interactions:before-action-start":function(t){var e=t.interaction;"drag"===e.prepared.name&&(e.dropState={cur:{dropzone:null,element:null},prev:{dropzone:null,element:null},rejected:null,events:null,activeDrops:[]})},"interactions:after-action-start":function(t,e){var n=t.interaction,r=(t.event,t.iEvent);if("drag"===n.prepared.name){var o=n.dropState;o.activeDrops=null,o.events=null,o.activeDrops=ut(e,n.element),o.events=ft(n,0,r),o.events.activate&&(lt(o.activeDrops,o.events.activate),e.fire("actions/drop:start",{interaction:n,dragEvent:r}))}},"interactions:action-move":pt,"interactions:after-action-move":function(t,e){var n=t.interaction,r=t.iEvent;"drag"===n.prepared.name&&(dt(n,n.dropState.events),e.fire("actions/drop:move",{interaction:n,dragEvent:r}),n.dropState.events={})},"interactions:action-end":function(t,e){if("drag"===t.interaction.prepared.name){var n=t.interaction,r=t.iEvent;pt(t,e),dt(n,n.dropState.events),e.fire("actions/drop:end",{interaction:n,dragEvent:r})}},"interactions:stop":function(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.dropState;n&&(n.activeDrops=null,n.events=null,n.cur.dropzone=null,n.cur.element=null,n.prev.dropzone=null,n.prev.element=null,n.rejected=!1)}}},getActiveDrops:ut,getDrop:ct,getDropEvents:ft,fireDropEvents:dt,defaults:{enabled:!1,accept:null,overlap:"pointer"}},ht=vt;st.default=ht;var gt={};function yt(t){var e=t.interaction,n=t.iEvent,r=t.phase;if("gesture"===e.prepared.name){var o=e.pointers.map((function(t){return t.pointer})),a="start"===r,s="end"===r,l=e.interactable.options.deltaSource;if(n.touches=[o[0],o[1]],a)n.distance=W.touchDistance(o,l),n.box=W.touchBBox(o),n.scale=1,n.ds=0,n.angle=W.touchAngle(o,l),n.da=0,e.gesture.startDistance=n.distance,e.gesture.startAngle=n.angle;else if(s){var u=e.prevEvent;n.distance=u.distance,n.box=u.box,n.scale=u.scale,n.ds=0,n.angle=u.angle,n.da=0}else n.distance=W.touchDistance(o,l),n.box=W.touchBBox(o),n.scale=n.distance/e.gesture.startDistance,n.angle=W.touchAngle(o,l),n.ds=n.scale-e.gesture.scale,n.da=n.angle-e.gesture.angle;e.gesture.distance=n.distance,e.gesture.angle=n.angle,i.default.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(e.gesture.scale=n.scale)}}Object.defineProperty(gt,"__esModule",{value:!0}),gt.default=void 0;var mt={id:"actions/gesture",before:["actions/drag","actions/resize"],install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.gesturable=function(t){return i.default.object(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):i.default.bool(t)?(this.options.gesture.enabled=t,this):this.options.gesture},e.map.gesture=mt,e.methodDict.gesture="gesturable",r.actions.gesture=mt.defaults},listeners:{"interactions:action-start":yt,"interactions:action-move":yt,"interactions:action-end":yt,"interactions:new":function(t){t.interaction.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}},"auto-start:check":function(t){if(!(t.interaction.pointers.length<2)){var e=t.interactable.options.gesture;if(e&&e.enabled)return t.action={name:"gesture"},!1}}},defaults:{},getCursor:function(){return""}},bt=mt;gt.default=bt;var xt={};function wt(t,e,n,r,o,a,s){if(!e)return!1;if(!0===e){var l=i.default.number(a.width)?a.width:a.right-a.left,u=i.default.number(a.height)?a.height:a.bottom-a.top;if(s=Math.min(s,Math.abs(("left"===t||"right"===t?l:u)/2)),l<0&&("left"===t?t="right":"right"===t&&(t="left")),u<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return n.x<(l>=0?a.left:a.right)+s;if("top"===t)return n.y<(u>=0?a.top:a.bottom)+s;if("right"===t)return n.x>(l>=0?a.right:a.left)-s;if("bottom"===t)return n.y>(u>=0?a.bottom:a.top)-s}return!!i.default.element(r)&&(i.default.element(e)?e===r:_.matchesUpTo(r,e,o))}function _t(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.resizeAxes){var r=e;n.interactable.options.resize.square?("y"===n.resizeAxes?r.delta.x=r.delta.y:r.delta.y=r.delta.x,r.axes="xy"):(r.axes=n.resizeAxes,"x"===n.resizeAxes?r.delta.y=0:"y"===n.resizeAxes&&(r.delta.x=0))}}Object.defineProperty(xt,"__esModule",{value:!0}),xt.default=void 0;var St={id:"actions/resize",before:["actions/drag"],install:function(t){var e=t.actions,n=t.browser,r=t.Interactable,o=t.defaults;St.cursors=function(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}(n),St.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(e){return function(t,e,n){if(i.default.object(e))return t.options.resize.enabled=!1!==e.enabled,t.setPerAction("resize",e),t.setOnEvents("resize",e),i.default.string(e.axis)&&/^x$|^y$|^xy$/.test(e.axis)?t.options.resize.axis=e.axis:null===e.axis&&(t.options.resize.axis=n.defaults.actions.resize.axis),i.default.bool(e.preserveAspectRatio)?t.options.resize.preserveAspectRatio=e.preserveAspectRatio:i.default.bool(e.square)&&(t.options.resize.square=e.square),t;if(i.default.bool(e))return t.options.resize.enabled=e,t;return t.options.resize}(this,e,t)},e.map.resize=St,e.methodDict.resize="resizable",o.actions.resize=St.defaults},listeners:{"interactions:new":function(t){t.interaction.resizeAxes="xy"},"interactions:action-start":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.rect;n._rects={start:(0,j.default)({},o),corrected:(0,j.default)({},o),previous:(0,j.default)({},o),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}}(t),_t(t)},"interactions:action-move":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.interactable.options.resize.invert,i="reposition"===o||"negate"===o,a=n.rect,s=n._rects,l=s.start,u=s.corrected,c=s.delta,f=s.previous;if((0,j.default)(f,u),i){if((0,j.default)(u,a),"reposition"===o){if(u.top>u.bottom){var d=u.top;u.top=u.bottom,u.bottom=d}if(u.left>u.right){var p=u.left;u.left=u.right,u.right=p}}}else u.top=Math.min(a.top,l.bottom),u.bottom=Math.max(a.bottom,l.top),u.left=Math.min(a.left,l.right),u.right=Math.max(a.right,l.left);for(var v in u.width=u.right-u.left,u.height=u.bottom-u.top,u)c[v]=u[v]-f[v];r.edges=n.prepared.edges,r.rect=u,r.deltaRect=c}}(t),_t(t)},"interactions:action-end":function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e;r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}},"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.element,o=t.rect,a=t.buttons;if(o){var s=(0,j.default)({},e.coords.cur.page),l=n.options.resize;if(l&&l.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(a&l.mouseButtons))){if(i.default.object(l.edges)){var u={left:!1,right:!1,top:!1,bottom:!1};for(var c in u)u[c]=wt(c,l.edges[c],s,e._latestPointer.eventTarget,r,o,l.margin||St.defaultMargin);u.left=u.left&&!u.right,u.top=u.top&&!u.bottom,(u.left||u.right||u.top||u.bottom)&&(t.action={name:"resize",edges:u})}else{var f="y"!==l.axis&&s.x>o.right-St.defaultMargin,d="x"!==l.axis&&s.y>o.bottom-St.defaultMargin;(f||d)&&(t.action={name:"resize",axes:(f?"x":"")+(d?"y":"")})}return!t.action&&void 0}}}},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor:function(t){var e=t.edges,n=t.axis,r=t.name,o=St.cursors,i=null;if(n)i=o[r+n];else if(e){for(var a="",s=["top","bottom","left","right"],l=0;l=1){var c={x:zt.x*u,y:zt.y*u};if(c.x||c.y){var f=Rt(a);i.default.window(a)?a.scrollBy(c.x,c.y):a&&(a.scrollLeft+=c.x,a.scrollTop+=c.y);var d=Rt(a),p={x:d.x-f.x,y:d.y-f.y};(p.x||p.y)&&e.fire({type:"autoscroll",target:n,interactable:e,delta:p,interaction:t,container:a})}zt.prevTime=s}zt.isScrolling&&(Mt.default.cancel(zt.i),zt.i=Mt.default.request(zt.scroll))},check:function(t,e){var n=t.options;return n[e].autoScroll&&n[e].autoScroll.enabled},onInteractionMove:function(t){var e=t.interaction,n=t.pointer;if(e.interacting()&&zt.check(e.interactable,e.prepared.name))if(e.simulation)zt.x=zt.y=0;else{var r,o,a,s,l=e.interactable,u=e.element,c=e.prepared.name,f=l.options[c].autoScroll,d=Ct(f.container,l,u);if(i.default.window(d))s=n.clientXd.innerWidth-zt.margin,a=n.clientY>d.innerHeight-zt.margin;else{var p=_.getElementClientRect(d);s=n.clientXp.right-zt.margin,a=n.clientY>p.bottom-zt.margin}zt.x=o?1:s?-1:0,zt.y=a?1:r?-1:0,zt.isScrolling||(zt.margin=f.margin,zt.speed=f.speed,zt.start(e))}}};function Ct(t,n,r){return(i.default.string(t)?(0,k.getStringOptionResult)(t,n,r):t)||(0,e.getWindow)(r)}function Rt(t){return i.default.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}var Ft={id:"auto-scroll",install:function(t){var e=t.defaults,n=t.actions;t.autoScroll=zt,zt.now=function(){return t.now()},n.phaselessTypes.autoscroll=!0,e.perAction.autoScroll=zt.defaults},listeners:{"interactions:new":function(t){t.interaction.autoScroll=null},"interactions:destroy":function(t){t.interaction.autoScroll=null,zt.stop(),zt.interaction&&(zt.interaction=null)},"interactions:stop":zt.stop,"interactions:action-move":function(t){return zt.onInteractionMove(t)}}};At.default=Ft;var Xt={};Object.defineProperty(Xt,"__esModule",{value:!0}),Xt.warnOnce=function(t,n){var r=!1;return function(){return r||(e.window.console.warn(n),r=!0),t.apply(this,arguments)}},Xt.copyAction=function(t,e){return t.name=e.name,t.axis=e.axis,t.edges=e.edges,t};var Yt={};function Wt(t){return i.default.bool(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor}function Lt(t){return i.default.func(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker}Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.default=void 0;var Bt={id:"auto-start/interactableMethods",install:function(t){var e=t.Interactable;e.prototype.getAction=function(e,n,r,o){var i=function(t,e,n,r,o){var i=t.getRect(r),a=e.buttons||{0:1,1:4,3:8,4:16}[e.button],s={action:null,interactable:t,interaction:n,element:r,rect:i,buttons:a};return o.fire("auto-start:check",s),s.action}(this,n,r,o,t);return this.options.actionChecker?this.options.actionChecker(e,n,i,this,o,r):i},e.prototype.ignoreFrom=(0,Xt.warnOnce)((function(t){return this._backCompatOption("ignoreFrom",t)}),"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),e.prototype.allowFrom=(0,Xt.warnOnce)((function(t){return this._backCompatOption("allowFrom",t)}),"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),e.prototype.actionChecker=Lt,e.prototype.styleCursor=Wt}};Yt.default=Bt;var Ut={};function Nt(t,e,n,r,o){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&Gt(e,n,t,o)?t:null}function Vt(t,e,n,r,o,i,a){for(var s=0,l=r.length;s=s)return!1;if(d.interactable===t){if((u+=p===n.name?1:0)>=i)return!1;if(d.element===e&&(c++,p===n.name&&c>=a))return!1}}}return s>0}function Ht(t,e){return i.default.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function Kt(t,e,n){var r=n.autoStart.cursorElement;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function Zt(t,e){var n=t.interactable,r=t.element,o=t.prepared;if("mouse"===t.pointerType&&n&&n.options.styleCursor){var a="";if(o.name){var s=n.options[o.name].cursorChecker;a=i.default.func(s)?s(o,n,r,t._interacting):e.actions.map[o.name].getCursor(o)}Kt(t.element,a||"",e)}else e.autoStart.cursorElement&&Kt(e.autoStart.cursorElement,"",e)}Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.default=void 0;var Jt={id:"auto-start/base",before:["actions"],install:function(t){var e=t.interactStatic,n=t.defaults;t.usePlugin(Yt.default),n.base.actionChecker=null,n.base.styleCursor=!0,(0,j.default)(n.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),e.maxInteractions=function(e){return Ht(e,t)},t.autoStart={maxInteractions:1/0,withinInteractionLimit:Gt,cursorElement:null}},listeners:{"interactions:down":function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;n.interacting()||$t(n,qt(n,r,o,i,e),e)},"interactions:move":function(t,e){!function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;"mouse"!==n.pointerType||n.pointerIsDown||n.interacting()||$t(n,qt(n,r,o,i,e),e)}(t,e),function(t,e){var n=t.interaction;if(n.pointerIsDown&&!n.interacting()&&n.pointerWasMoved&&n.prepared.name){e.fire("autoStart:before-start",t);var r=n.interactable,o=n.prepared.name;o&&r&&(r.options[o].manualStart||!Gt(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),Zt(n,e)))}}(t,e)},"interactions:stop":function(t,e){var n=t.interaction,r=n.interactable;r&&r.options.styleCursor&&Kt(n.element,"",e)}},maxInteractions:Ht,withinInteractionLimit:Gt,validateAction:Nt};Ut.default=Jt;var Qt={};Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.default=void 0;var te={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":function(t,e){var n=t.interaction,r=t.eventTarget,o=t.dx,a=t.dy;if("drag"===n.prepared.name){var s=Math.abs(o),l=Math.abs(a),u=n.interactable.options.drag,c=u.startAxis,f=s>l?"x":s0&&(e.autoStartHoldTimer=setTimeout((function(){e.start(e.prepared,e.interactable,e.element)}),n))},"interactions:move":function(t){var e=t.interaction,n=t.duplicate;e.autoStartHoldTimer&&e.pointerWasMoved&&!n&&(clearTimeout(e.autoStartHoldTimer),e.autoStartHoldTimer=null)},"autoStart:before-start":function(t){var e=t.interaction;ne(e)>0&&(e.prepared.name=null)}},getHoldDuration:ne};ee.default=re;var oe={};Object.defineProperty(oe,"__esModule",{value:!0}),oe.default=void 0;var ie={id:"auto-start",install:function(t){t.usePlugin(Ut.default),t.usePlugin(ee.default),t.usePlugin(Qt.default)}};oe.default=ie;var ae={};Object.defineProperty(ae,"__esModule",{value:!0}),ae.default=void 0;ae.default={};var se={};function le(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):i.default.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault}function ue(t){var e=t.interaction,n=t.event;e.interactable&&e.interactable.checkAndPreventDefault(n)}function ce(t){var n=t.Interactable;n.prototype.preventDefault=le,n.prototype.checkAndPreventDefault=function(n){return function(t,n,r){var o=t.options.preventDefault;if("never"!==o)if("always"!==o){if(n.events.supportsPassive&&/^touch(start|move)$/.test(r.type)){var a=(0,e.getWindow)(r.target).document,s=n.getDocOptions(a);if(!s||!s.events||!1!==s.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(r.type)||i.default.element(r.target)&&(0,_.matchesSelector)(r.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||r.preventDefault()}else r.preventDefault()}(this,t,n)},t.interactions.docEvents.push({type:"dragstart",listener:function(e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n1&&void 0!==arguments[1]?arguments[1]:{},n=e.logger,r=t.Interactable,o=t.defaults;t.logger=n||console,o.base.devTools={ignore:{}},r.prototype.devTools=function(t){return t?((0,j.default)(this.options.devTools,t),this):this.options.devTools}},listeners:{"interactions:action-start":function(t,e){for(var n=t.interaction,r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n150)return null;var e=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;e<0&&(e+=360);var n=112.5<=e&&e<247.5,r=202.5<=e&&e<337.5;return{up:r,down:!r&&22.5<=e&&e<157.5,left:n,right:!n&&(292.5<=e||e<67.5),angle:e,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}}])&&Re(e.prototype,n),r&&Re(e,r),i}($.BaseEvent);ze.InteractEvent=Be,Object.defineProperties(Be.prototype,{pageX:{get:function(){return this.page.x},set:function(t){this.page.x=t}},pageY:{get:function(){return this.page.y},set:function(t){this.page.y=t}},clientX:{get:function(){return this.client.x},set:function(t){this.client.x=t}},clientY:{get:function(){return this.client.y},set:function(t){this.client.y=t}},dx:{get:function(){return this.delta.x},set:function(t){this.delta.x=t}},dy:{get:function(){return this.delta.y},set:function(t){this.delta.y=t}},velocityX:{get:function(){return this.velocity.x},set:function(t){this.velocity.x=t}},velocityY:{get:function(){return this.velocity.y},set:function(t){this.velocity.y=t}}});var Ue={};Object.defineProperty(Ue,"__esModule",{value:!0}),Ue.PointerInfo=void 0;Ue.PointerInfo=function t(e,n,r,o,i){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.id=void 0,this.pointer=void 0,this.event=void 0,this.downTime=void 0,this.downTarget=void 0,this.id=e,this.pointer=n,this.event=r,this.downTime=o,this.downTarget=i};var Ne,Ve,qe={};function $e(t,e){for(var n=0;nthis.pointerMoveTolerance);var a=this.getPointerIndex(t),s={pointer:t,pointerIndex:a,pointerInfo:this.pointers[a],event:e,type:"move",eventTarget:n,dx:r,dy:o,duplicate:i,interaction:this};i||W.setCoordVelocity(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),i||this.simulation||(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&W.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(t){t&&t.event||W.setZeroCoords(this.coords.delta),(t=(0,j.default)({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},t||{})).phase="move",this._doPhase(t)}},{key:"pointerUp",value:function(t,e,n,r){var o=this.getPointerIndex(t);-1===o&&(o=this.updatePointer(t,e,n,!1));var i=/cancel$/i.test(e.type)?"cancel":"up";this._scopeFire("interactions:".concat(i),{pointer:t,pointerIndex:o,pointerInfo:this.pointers[o],event:e,eventTarget:n,type:i,curEventTarget:r,interaction:this}),this.simulation||this.end(e),this.removePointer(t,e)}},{key:"documentBlur",value:function(t){this.end(t),this._scopeFire("interactions:blur",{event:t,type:"blur",interaction:this})}},{key:"end",value:function(t){var e;this._ending=!0,t=t||this._latestPointer.event,this.interacting()&&(e=this._doPhase({event:t,interaction:this,phase:"end"})),this._ending=!1,!0===e&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(t){var e=W.getPointerId(t);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:K.findIndex(this.pointers,(function(t){return t.id===e}))}},{key:"getPointerInfo",value:function(t){return this.pointers[this.getPointerIndex(t)]}},{key:"updatePointer",value:function(t,e,n,r){var o=W.getPointerId(t),i=this.getPointerIndex(t),a=this.pointers[i];return r=!1!==r&&(r||/(down|start)$/i.test(e.type)),a?a.pointer=t:(a=new Ue.PointerInfo(o,t,e,null,null),i=this.pointers.length,this.pointers.push(a)),W.setCoords(this.coords.cur,this.pointers.map((function(t){return t.pointer})),this._now()),W.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),r&&(this.pointerIsDown=!0,a.downTime=this.coords.cur.timeStamp,a.downTarget=n,W.pointerExtend(this.downPointer,t),this.interacting()||(W.copyCoords(this.coords.start,this.coords.cur),W.copyCoords(this.coords.prev,this.coords.cur),this.downEvent=e,this.pointerWasMoved=!1)),this._updateLatestPointer(t,e,n),this._scopeFire("interactions:update-pointer",{pointer:t,event:e,eventTarget:n,down:r,pointerInfo:a,pointerIndex:i,interaction:this}),i}},{key:"removePointer",value:function(t,e){var n=this.getPointerIndex(t);if(-1!==n){var r=this.pointers[n];this._scopeFire("interactions:remove-pointer",{pointer:t,event:e,eventTarget:null,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1),this.pointerIsDown=!1}}},{key:"_updateLatestPointer",value:function(t,e,n){this._latestPointer.pointer=t,this._latestPointer.event=e,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(t,e,n,r){return new ze.InteractEvent(this,t,this.prepared.name,e,this.element,n,r)}},{key:"_fireEvent",value:function(t){this.interactable.fire(t),(!this.prevEvent||t.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=t)}},{key:"_doPhase",value:function(t){var e=t.event,n=t.phase,r=t.preEnd,o=t.type,i=this.rect;if(i&&"move"===n&&(k.addEdges(this.edges,i,this.coords.delta[this.interactable.options.deltaSource]),i.width=i.right-i.left,i.height=i.bottom-i.top),!1===this._scopeFire("interactions:before-action-".concat(n),t))return!1;var a=t.iEvent=this._createPreparedEvent(e,n,r,o);return this._scopeFire("interactions:action-".concat(n),t),"start"===n&&(this.prevEvent=a),this._fireEvent(a),this._scopeFire("interactions:after-action-".concat(n),t),!0}},{key:"_now",value:function(){return Date.now()}}]),t}();qe.Interaction=Ke;var Ze=Ke;qe.default=Ze;var Je={};function Qe(t){t.pointerIsDown&&(rn(t.coords.cur,t.offset.total),t.offset.pending.x=0,t.offset.pending.y=0)}function tn(t){en(t.interaction)}function en(t){if(!function(t){return!(!t.offset.pending.x&&!t.offset.pending.y)}(t))return!1;var e=t.offset.pending;return rn(t.coords.cur,e),rn(t.coords.delta,e),k.addEdges(t.edges,t.rect,e),e.x=0,e.y=0,!0}function nn(t){var e=t.x,n=t.y;this.offset.pending.x+=e,this.offset.pending.y+=n,this.offset.total.x+=e,this.offset.total.y+=n}function rn(t,e){var n=t.page,r=t.client,o=e.x,i=e.y;n.x+=o,n.y+=i,r.x+=o,r.y+=i}Object.defineProperty(Je,"__esModule",{value:!0}),Je.addTotal=Qe,Je.applyPending=en,Je.default=void 0,qe._ProxyMethods.offsetBy="";var on={id:"offset",before:["modifiers","pointer-events","actions","inertia"],install:function(t){t.Interaction.prototype.offsetBy=nn},listeners:{"interactions:new":function(t){t.interaction.offset={total:{x:0,y:0},pending:{x:0,y:0}}},"interactions:update-pointer":function(t){return Qe(t.interaction)},"interactions:before-action-start":tn,"interactions:before-action-move":tn,"interactions:before-action-end":function(t){var e=t.interaction;if(en(e))return e.move({offset:!0}),e.end(),!1},"interactions:stop":function(t){var e=t.interaction;e.offset.total.x=0,e.offset.total.y=0,e.offset.pending.x=0,e.offset.pending.y=0}}};Je.default=on;var an={};function sn(t,e){for(var n=0;nn.minSpeed&&o>n.endSpeed)this.startInertia();else{if(i.result=i.setAll(this.modifierArg),!i.result.changed)return!1;this.startSmoothEnd()}return e.modification.result.rect=null,e.offsetBy(this.targetOffset),e._doPhase({interaction:e,event:t,phase:"inertiastart"}),e.offsetBy({x:-this.targetOffset.x,y:-this.targetOffset.y}),e.modification.result.rect=null,this.active=!0,e.simulation=this,!0}},{key:"startInertia",value:function(){var t=this,e=this.interaction.coords.velocity.client,n=un(this.interaction),r=n.resistance,o=-Math.log(n.endSpeed/this.v0)/r;this.targetOffset={x:(e.x-o)/r,y:(e.y-o)/r},this.te=o,this.lambda_v0=r/this.v0,this.one_ve_v0=1-n.endSpeed/this.v0;var i=this.modification,a=this.modifierArg;a.pageCoords={x:this.startCoords.x+this.targetOffset.x,y:this.startCoords.y+this.targetOffset.y},i.result=i.setAll(a),i.result.changed&&(this.isModified=!0,this.modifiedOffset={x:this.targetOffset.x+i.result.delta.x,y:this.targetOffset.y+i.result.delta.y}),this.onNextFrame((function(){return t.inertiaTick()}))}},{key:"startSmoothEnd",value:function(){var t=this;this.smoothEnd=!0,this.isModified=!0,this.targetOffset={x:this.modification.result.delta.x,y:this.modification.result.delta.y},this.onNextFrame((function(){return t.smoothEndTick()}))}},{key:"onNextFrame",value:function(t){var e=this;this.timeout=Mt.default.request((function(){e.active&&t()}))}},{key:"inertiaTick",value:function(){var t,e,n,r,o,i,a,s=this,l=this.interaction,u=un(l).resistance,c=(l._now()-this.t0)/1e3;if(c=0;n--){var r=e[n],o=r.selector,a=r.context,s=r.listeners;o===this.target&&a===this._context&&e.splice(n,1);for(var l=s.length-1;l>=0;l--)this._scopeEvents.removeDelegate(this.target,this._context,t,s[l][0],s[l][1])}else this._scopeEvents.remove(this.target,"all")}}]),t}();mn.Interactable=wn;var _n={};function Sn(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;a--){var p=f[a];if(p.selector===t&&p.context===e){for(var v=p.listeners,h=v.length-1;h>=0;h--){var g=Tn(v[h],2),y=g[0],m=g[1],b=m.capture,x=m.passive;if(y===o&&b===c.capture&&x===c.passive){v.splice(h,1),v.length||(f.splice(a,1),s(e,r,l),s(e,r,u,!0)),d=!0;break}}if(d)break}}},delegateListener:l,delegateUseCapture:u,delegatedEvents:n,documents:r,targets:e,supportsOptions:!1,supportsPassive:!1};function a(t,n,r,i){var a=kn(i),s=K.find(e,(function(e){return e.eventTarget===t}));s||(s={eventTarget:t,events:{}},e.push(s)),s.events[n]||(s.events[n]=[]),t.addEventListener&&!K.contains(s.events[n],r)&&(t.addEventListener(n,r,o.supportsOptions?a:a.capture),s.events[n].push(r))}function s(t,n,r,i){var a=kn(i),l=K.findIndex(e,(function(e){return e.eventTarget===t})),u=e[l];if(u&&u.events)if("all"!==n){var c=!1,f=u.events[n];if(f){if("all"===r){for(var d=f.length-1;d>=0;d--)s(t,n,f[d],a);return}for(var p=0;p=2)continue;if(!o.interacting()&&e===o.pointerType)return o}return null}};function Cn(t,e){return t.pointers.some((function(t){return t.id===e}))}var Rn=zn;An.default=Rn;var Fn={};function Xn(t){return(Xn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Yn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}(t,e)||function(t,e){if(!t)return;if("string"==typeof t)return Wn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Wn(t,e)}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;r--){var o=e.interactions.list[r];o.interactable===n&&(o.stop(),e.fire("interactions:destroy",{interaction:o}),o.destroy(),e.interactions.list.length>2&&e.interactions.list.splice(r,1))}}},onDocSignal:Kn,doOnInteractions:Gn,methodNames:$n};Fn.default=Zn;var Jn={};function Qn(t){return(Qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function tr(t,e,n){return(tr="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=or(t)););return t}(t,e);if(r){var o=Object.getOwnPropertyDescriptor(r,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function er(t,e){return(er=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function nr(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=or(t);if(e){var o=or(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return rr(this,n)}}function rr(t,e){return!e||"object"!==Qn(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function or(t){return(or=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function ir(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ar(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);nMath.abs(l.y),s.coords,s.rect),(0,j.default)(r,s.coords));return s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function jr(t,e,n){var r=t.startCoords,o=t.edgeSign;e?n.y=r.y+(n.x-r.x)*o:n.x=r.x+(n.y-r.y)*o}function kr(t,e,n,r){var o=t.startRect,i=t.startCoords,a=t.ratio,s=t.edgeSign;if(e){var l=r.width/a;n.y=i.y+(l-o.height)*s}else{var u=r.height*a;n.x=i.x+(u-o.width)*s}}Pr.aspectRatio=Mr;var Ir=(0,ke.makeModifier)(Mr,"aspectRatio");Pr.default=Ir;var Dr={};Object.defineProperty(Dr,"__esModule",{value:!0}),Dr.default=void 0;var Ar=function(){};Ar._defaults={};var zr=Ar;Dr.default=zr;var Cr={};Object.defineProperty(Cr,"__esModule",{value:!0}),Object.defineProperty(Cr,"default",{enumerable:!0,get:function(){return Dr.default}});var Rr={};function Fr(t,e,n){return i.default.func(t)?k.resolveRectLike(t,e.interactable,e.element,[n.x,n.y,e]):k.resolveRectLike(t,e.interactable,e.element)}Object.defineProperty(Rr,"__esModule",{value:!0}),Rr.getRestrictionRect=Fr,Rr.restrict=Rr.default=void 0;var Xr={start:function(t){var e=t.rect,n=t.startOffset,r=t.state,o=t.interaction,i=t.pageCoords,a=r.options,s=a.elementRect,l=(0,j.default)({left:0,top:0,right:0,bottom:0},a.offset||{});if(e&&s){var u=Fr(a.restriction,o,i);if(u){var c=u.right-u.left-e.width,f=u.bottom-u.top-e.height;c<0&&(l.left+=c,l.right+=c),f<0&&(l.top+=f,l.bottom+=f)}l.left+=n.left-e.width*s.left,l.top+=n.top-e.height*s.top,l.right+=n.right-e.width*(1-s.right),l.bottom+=n.bottom-e.height*(1-s.bottom)}r.offset=l},set:function(t){var e=t.coords,n=t.interaction,r=t.state,o=r.options,i=r.offset,a=Fr(o.restriction,n,e);if(a){var s=k.xywhToTlbr(a);e.x=Math.max(Math.min(s.right-i.right,e.x),s.left+i.left),e.y=Math.max(Math.min(s.bottom-i.bottom,e.y),s.top+i.top)}},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};Rr.restrict=Xr;var Yr=(0,ke.makeModifier)(Xr,"restrict");Rr.default=Yr;var Wr={};Object.defineProperty(Wr,"__esModule",{value:!0}),Wr.restrictEdges=Wr.default=void 0;var Lr={top:1/0,left:1/0,bottom:-1/0,right:-1/0},Br={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function Ur(t,e){for(var n=["top","left","bottom","right"],r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n - * Released under the MIT License. - * https://raw.github.com/taye/interact.js/master/LICENSE - */ -(function(f){if(true){module.exports=f()}else { var g; }})(function(){var define,module,exports; -var createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}}; -var _$scope_24 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -/* common-shake removed: exports.createScope = */ void createScope; -/* common-shake removed: exports.initScope = */ void initScope; -exports.Scope = exports.ActionName = void 0; - -var utils = _interopRequireWildcard(_$utils_56); - -var _domObjects = _interopRequireDefault(_$domObjects_50); - -var _defaultOptions = _interopRequireDefault(_$defaultOptions_20); - -var _Eventable = _interopRequireDefault(_$Eventable_14); - -var _Interactable = _interopRequireDefault(_$Interactable_16); - -var _InteractableSet = _interopRequireDefault(_$InteractableSet_17); - -var _InteractEvent = _interopRequireDefault(_$InteractEvent_15); - -var _interactions = _interopRequireDefault(_$interactions_23({})); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } - -function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -var win = utils.win, - browser = utils.browser, - raf = utils.raf, - Signals = utils.Signals, - events = utils.events; -var ActionName; -exports.ActionName = ActionName; - -(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {})); - -function createScope() { - return new Scope(); -} - -var Scope = -/*#__PURE__*/ -function () { - function Scope() { - var _this = this; - - _classCallCheck(this, Scope); - - this.id = "__interact_scope_".concat(Math.floor(Math.random() * 100)); - this.signals = new Signals(); - this.browser = browser; - this.events = events; - this.utils = utils; - this.defaults = utils.clone(_defaultOptions["default"]); - this.Eventable = _Eventable["default"]; - this.actions = { - names: [], - methodDict: {}, - eventTypes: [] - }; - this.InteractEvent = _InteractEvent["default"]; - this.interactables = new _InteractableSet["default"](this); // all documents being listened to - - this.documents = []; - this._plugins = []; - this._pluginMap = {}; - - this.onWindowUnload = function (event) { - return _this.removeDocument(event.target); - }; - - var scope = this; - - this.Interactable = - /*#__PURE__*/ - function (_InteractableBase) { - _inherits(Interactable, _InteractableBase); - - function Interactable() { - _classCallCheck(this, Interactable); - - return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments)); - } - - _createClass(Interactable, [{ - key: "set", - value: function set(options) { - _get(_getPrototypeOf(Interactable.prototype), "set", this).call(this, options); - - scope.interactables.signals.fire('set', { - options: options, - interactable: this - }); - return this; - } - }, { - key: "unset", - value: function unset() { - _get(_getPrototypeOf(Interactable.prototype), "unset", this).call(this); - - for (var i = scope.interactions.list.length - 1; i >= 0; i--) { - var interaction = scope.interactions.list[i]; - - if (interaction.interactable === this) { - interaction.stop(); - scope.interactions.signals.fire('destroy', { - interaction: interaction - }); - interaction.destroy(); - - if (scope.interactions.list.length > 2) { - scope.interactions.list.splice(i, 1); - } - } - } - - scope.interactables.signals.fire('unset', { - interactable: this - }); - } - }, { - key: "_defaults", - get: function get() { - return scope.defaults; - } - }]); - - return Interactable; - }(_Interactable["default"]); - } - - _createClass(Scope, [{ - key: "init", - value: function init(window) { - return initScope(this, window); - } - }, { - key: "pluginIsInstalled", - value: function pluginIsInstalled(plugin) { - return this._pluginMap[plugin.id] || this._plugins.indexOf(plugin) !== -1; - } - }, { - key: "usePlugin", - value: function usePlugin(plugin, options) { - if (this.pluginIsInstalled(plugin)) { - return this; - } - - if (plugin.id) { - this._pluginMap[plugin.id] = plugin; - } - - plugin.install(this, options); - - this._plugins.push(plugin); - - return this; - } - }, { - key: "addDocument", - value: function addDocument(doc, options) { - // do nothing if document is already known - if (this.getDocIndex(doc) !== -1) { - return false; - } - - var window = win.getWindow(doc); - options = options ? utils.extend({}, options) : {}; - this.documents.push({ - doc: doc, - options: options - }); - events.documents.push(doc); // don't add an unload event for the main document - // so that the page may be cached in browser history - - if (doc !== this.document) { - events.add(window, 'unload', this.onWindowUnload); - } - - this.signals.fire('add-document', { - doc: doc, - window: window, - scope: this, - options: options - }); - } - }, { - key: "removeDocument", - value: function removeDocument(doc) { - var index = this.getDocIndex(doc); - var window = win.getWindow(doc); - var options = this.documents[index].options; - events.remove(window, 'unload', this.onWindowUnload); - this.documents.splice(index, 1); - events.documents.splice(index, 1); - this.signals.fire('remove-document', { - doc: doc, - window: window, - scope: this, - options: options - }); - } - }, { - key: "getDocIndex", - value: function getDocIndex(doc) { - for (var i = 0; i < this.documents.length; i++) { - if (this.documents[i].doc === doc) { - return i; - } - } - - return -1; - } - }, { - key: "getDocOptions", - value: function getDocOptions(doc) { - var docIndex = this.getDocIndex(doc); - return docIndex === -1 ? null : this.documents[docIndex].options; - } - }, { - key: "now", - value: function now() { - return (this.window.Date || Date).now(); - } - }]); - - return Scope; -}(); - -exports.Scope = Scope; - -function initScope(scope, window) { - win.init(window); - - _domObjects["default"].init(window); - - browser.init(window); - raf.init(window); - events.init(window); - scope.usePlugin(_interactions["default"]); - scope.document = window.document; - scope.window = window; - return scope; -} - -}); -var _$interactions_23 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _browser = _interopRequireDefault(_$browser_48); - -var _domObjects = _interopRequireDefault(_$domObjects_50); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var _events = _interopRequireDefault(_$events_52); - -var _pointerUtils = _interopRequireDefault(_$pointerUtils_61); - -var _Signals = _interopRequireDefault(_$Signals_46); - -var _Interaction = _interopRequireDefault(_$Interaction_18({})); - -var _interactionFinder = _interopRequireDefault(_$interactionFinder_22); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -var methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur']; - -function install(scope) { - var signals = new _Signals["default"](); - var listeners = {}; - - for (var _i = 0; _i < methodNames.length; _i++) { - var _ref; - - _ref = methodNames[_i]; - var method = _ref; - listeners[method] = doOnInteractions(method, scope); - } - - var pEventTypes = _browser["default"].pEventTypes; - var docEvents; - - if (_domObjects["default"].PointerEvent) { - docEvents = [{ - type: pEventTypes.down, - listener: releasePointersOnRemovedEls - }, { - type: pEventTypes.down, - listener: listeners.pointerDown - }, { - type: pEventTypes.move, - listener: listeners.pointerMove - }, { - type: pEventTypes.up, - listener: listeners.pointerUp - }, { - type: pEventTypes.cancel, - listener: listeners.pointerUp - }]; - } else { - docEvents = [{ - type: 'mousedown', - listener: listeners.pointerDown - }, { - type: 'mousemove', - listener: listeners.pointerMove - }, { - type: 'mouseup', - listener: listeners.pointerUp - }, { - type: 'touchstart', - listener: releasePointersOnRemovedEls - }, { - type: 'touchstart', - listener: listeners.pointerDown - }, { - type: 'touchmove', - listener: listeners.pointerMove - }, { - type: 'touchend', - listener: listeners.pointerUp - }, { - type: 'touchcancel', - listener: listeners.pointerUp - }]; - } - - docEvents.push({ - type: 'blur', - listener: function listener(event) { - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref2; - - _ref2 = scope.interactions.list[_i2]; - var interaction = _ref2; - interaction.documentBlur(event); - } - } - }); - scope.signals.on('add-document', onDocSignal); - scope.signals.on('remove-document', onDocSignal); // for ignoring browser's simulated mouse events - - scope.prevTouchTime = 0; - - scope.Interaction = - /*#__PURE__*/ - function (_InteractionBase) { - _inherits(Interaction, _InteractionBase); - - function Interaction() { - _classCallCheck(this, Interaction); - - return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments)); - } - - _createClass(Interaction, [{ - key: "_now", - value: function _now() { - return scope.now(); - } - }, { - key: "pointerMoveTolerance", - get: function get() { - return scope.interactions.pointerMoveTolerance; - }, - set: function set(value) { - scope.interactions.pointerMoveTolerance = value; - } - }]); - - return Interaction; - }(_Interaction["default"]); - - scope.interactions = { - signals: signals, - // all active and idle interactions - list: [], - "new": function _new(options) { - options.signals = signals; - var interaction = new scope.Interaction(options); - scope.interactions.list.push(interaction); - return interaction; - }, - listeners: listeners, - docEvents: docEvents, - pointerMoveTolerance: 1 - }; - - function releasePointersOnRemovedEls() { - // for all inactive touch interactions with pointers down - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref3; - - _ref3 = scope.interactions.list[_i3]; - var interaction = _ref3; - - if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) { - continue; - } // if a pointer is down on an element that is no longer in the DOM tree - - - var _loop = function _loop() { - _ref4 = interaction.pointers[_i4]; - var pointer = _ref4; - - if (!scope.documents.some(function (_ref5) { - var doc = _ref5.doc; - return (0, _$domUtils_51.nodeContains)(doc, pointer.downTarget); - })) { - // remove the pointer from the interaction - interaction.removePointer(pointer.pointer, pointer.event); - } - }; - - for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) { - var _ref4; - - _loop(); - } - } - } -} - -function doOnInteractions(method, scope) { - return function (event) { - var interactions = scope.interactions.list; - - var pointerType = _pointerUtils["default"].getPointerType(event); - - var _pointerUtils$getEven = _pointerUtils["default"].getEventTargets(event), - _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2), - eventTarget = _pointerUtils$getEven2[0], - curEventTarget = _pointerUtils$getEven2[1]; - - var matches = []; // [ [pointer, interaction], ...] - - if (/^touch/.test(event.type)) { - scope.prevTouchTime = scope.now(); - - for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) { - var _ref6; - - _ref6 = event.changedTouches[_i5]; - var changedTouch = _ref6; - var pointer = changedTouch; - - var pointerId = _pointerUtils["default"].getPointerId(pointer); - - var searchDetails = { - pointer: pointer, - pointerId: pointerId, - pointerType: pointerType, - eventType: event.type, - eventTarget: eventTarget, - curEventTarget: curEventTarget, - scope: scope - }; - var interaction = getInteraction(searchDetails); - matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]); - } - } else { - var invalidPointer = false; - - if (!_browser["default"].supportsPointerEvent && /mouse/.test(event.type)) { - // ignore mouse events while touch interactions are active - for (var i = 0; i < interactions.length && !invalidPointer; i++) { - invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown; - } // try to ignore mouse events that are simulated by the browser - // after a touch event - - - invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated - event.timeStamp === 0; - } - - if (!invalidPointer) { - var _searchDetails = { - pointer: event, - pointerId: _pointerUtils["default"].getPointerId(event), - pointerType: pointerType, - eventType: event.type, - curEventTarget: curEventTarget, - eventTarget: eventTarget, - scope: scope - }; - - var _interaction = getInteraction(_searchDetails); - - matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]); - } - } // eslint-disable-next-line no-shadow - - - for (var _i6 = 0; _i6 < matches.length; _i6++) { - var _matches$_i = _slicedToArray(matches[_i6], 4), - _pointer = _matches$_i[0], - _eventTarget = _matches$_i[1], - _curEventTarget = _matches$_i[2], - _interaction2 = _matches$_i[3]; - - _interaction2[method](_pointer, event, _eventTarget, _curEventTarget); - } - }; -} - -function getInteraction(searchDetails) { - var pointerType = searchDetails.pointerType, - scope = searchDetails.scope; - - var foundInteraction = _interactionFinder["default"].search(searchDetails); - - var signalArg = { - interaction: foundInteraction, - searchDetails: searchDetails - }; - scope.interactions.signals.fire('find', signalArg); - return signalArg.interaction || scope.interactions["new"]({ - pointerType: pointerType - }); -} - -function onDocSignal(_ref7, signalName) { - var doc = _ref7.doc, - scope = _ref7.scope, - options = _ref7.options; - var docEvents = scope.interactions.docEvents; - var eventMethod = signalName.indexOf('add') === 0 ? _events["default"].add : _events["default"].remove; - - if (scope.browser.isIOS && !options.events) { - options.events = { - passive: false - }; - } // delegate event listener - - - for (var eventType in _events["default"].delegatedEvents) { - eventMethod(doc, eventType, _events["default"].delegateListener); - eventMethod(doc, eventType, _events["default"].delegateUseCapture, true); - } - - var eventOptions = options && options.events; - - for (var _i7 = 0; _i7 < docEvents.length; _i7++) { - var _ref8; - - _ref8 = docEvents[_i7]; - var _ref9 = _ref8, - type = _ref9.type, - listener = _ref9.listener; - eventMethod(doc, type, listener, eventOptions); - } -} - -var _default = { - id: 'core/interactions', - install: install, - onDocSignal: onDocSignal, - doOnInteractions: doOnInteractions, - methodNames: methodNames -}; -exports["default"] = _default; - -}); -var _$Interaction_18 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -Object.defineProperty(exports, "PointerInfo", { - enumerable: true, - get: function get() { - return _PointerInfo["default"]; - } -}); -exports["default"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0; - -var utils = _interopRequireWildcard(_$utils_56); - -var _InteractEvent = _interopRequireWildcard(_$InteractEvent_15); - -var _PointerInfo = _interopRequireDefault(_$PointerInfo_19); - -var _scope = _$scope_24({}); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -var _ProxyValues; - -exports._ProxyValues = _ProxyValues; - -(function (_ProxyValues) { - _ProxyValues["interactable"] = ""; - _ProxyValues["element"] = ""; - _ProxyValues["prepared"] = ""; - _ProxyValues["pointerIsDown"] = ""; - _ProxyValues["pointerWasMoved"] = ""; - _ProxyValues["_proxy"] = ""; -})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {})); - -var _ProxyMethods; - -exports._ProxyMethods = _ProxyMethods; - -(function (_ProxyMethods) { - _ProxyMethods["start"] = ""; - _ProxyMethods["move"] = ""; - _ProxyMethods["end"] = ""; - _ProxyMethods["stop"] = ""; - _ProxyMethods["interacting"] = ""; -})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {})); - -var Interaction = -/*#__PURE__*/ -function () { - /** */ - function Interaction(_ref) { - var _this = this; - - var pointerType = _ref.pointerType, - signals = _ref.signals; - - _classCallCheck(this, Interaction); - - // current interactable being interacted with - this.interactable = null; // the target element of the interactable - - this.element = null; // action that's ready to be fired on next move event - - this.prepared = { - name: null, - axis: null, - edges: null - }; // keep track of added pointers - - this.pointers = []; // pointerdown/mousedown/touchstart event - - this.downEvent = null; - this.downPointer = {}; - this._latestPointer = { - pointer: null, - event: null, - eventTarget: null - }; // previous action event - - this.prevEvent = null; - this.pointerIsDown = false; - this.pointerWasMoved = false; - this._interacting = false; - this._ending = false; - this._stopped = true; - this._proxy = null; - this.simulation = null; - /** - * @alias Interaction.prototype.move - */ - - this.doMove = utils.warnOnce(function (signalArg) { - this.move(signalArg); - }, 'The interaction.doMove() method has been renamed to interaction.move()'); - this.coords = { - // Starting InteractEvent pointer coordinates - start: utils.pointer.newCoords(), - // Previous native pointer move event coordinates - prev: utils.pointer.newCoords(), - // current native pointer move event coordinates - cur: utils.pointer.newCoords(), - // Change in coordinates and time of the pointer - delta: utils.pointer.newCoords(), - // pointer velocity - velocity: utils.pointer.newCoords() - }; - this._signals = signals; - this.pointerType = pointerType; - var that = this; - this._proxy = {}; - - var _loop = function _loop(key) { - Object.defineProperty(_this._proxy, key, { - get: function get() { - return that[key]; - } - }); - }; - - for (var key in _ProxyValues) { - _loop(key); - } - - var _loop2 = function _loop2(_key) { - Object.defineProperty(_this._proxy, _key, { - value: function value() { - return that[_key].apply(that, arguments); - } - }); - }; - - for (var _key in _ProxyMethods) { - _loop2(_key); - } - - this._signals.fire('new', { - interaction: this - }); - } - - _createClass(Interaction, [{ - key: "pointerDown", - value: function pointerDown(pointer, event, eventTarget) { - var pointerIndex = this.updatePointer(pointer, event, eventTarget, true); - - this._signals.fire('down', { - pointer: pointer, - event: event, - eventTarget: eventTarget, - pointerIndex: pointerIndex, - interaction: this - }); - } - /** - * ```js - * interact(target) - * .draggable({ - * // disable the default drag start by down->move - * manualStart: true - * }) - * // start dragging after the user holds the pointer down - * .on('hold', function (event) { - * var interaction = event.interaction - * - * if (!interaction.interacting()) { - * interaction.start({ name: 'drag' }, - * event.interactable, - * event.currentTarget) - * } - * }) - * ``` - * - * Start an action with the given Interactable and Element as tartgets. The - * action must be enabled for the target Interactable and an appropriate - * number of pointers must be held down - 1 for drag/resize, 2 for gesture. - * - * Use it with `interactable.able({ manualStart: false })` to always - * [start actions manually](https://github.com/taye/interact.js/issues/114) - * - * @param {object} action The action to be performed - drag, resize, etc. - * @param {Interactable} target The Interactable to target - * @param {Element} element The DOM Element to target - * @return {object} interact - */ - - }, { - key: "start", - value: function start(action, interactable, element) { - if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) { - return false; - } - - utils.copyAction(this.prepared, action); - this.interactable = interactable; - this.element = element; - this.rect = interactable.getRect(element); - this.edges = this.prepared.edges; - this._stopped = false; - this._interacting = this._doPhase({ - interaction: this, - event: this.downEvent, - phase: _InteractEvent.EventPhase.Start - }) && !this._stopped; - return this._interacting; - } - }, { - key: "pointerMove", - value: function pointerMove(pointer, event, eventTarget) { - if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) { - this.updatePointer(pointer, event, eventTarget, false); - utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) { - return p.pointer; - }), this._now()); - } - - var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y; - var dx; - var dy; // register movement greater than pointerMoveTolerance - - if (this.pointerIsDown && !this.pointerWasMoved) { - dx = this.coords.cur.client.x - this.coords.start.client.x; - dy = this.coords.cur.client.y - this.coords.start.client.y; - this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance; - } - - var signalArg = { - pointer: pointer, - pointerIndex: this.getPointerIndex(pointer), - event: event, - eventTarget: eventTarget, - dx: dx, - dy: dy, - duplicate: duplicateMove, - interaction: this - }; - - if (!duplicateMove) { - // set pointer coordinate, time changes and velocity - utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur); - utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta); - } - - this._signals.fire('move', signalArg); - - if (!duplicateMove) { - // if interacting, fire an 'action-move' signal etc - if (this.interacting()) { - this.move(signalArg); - } - - if (this.pointerWasMoved) { - utils.pointer.copyCoords(this.coords.prev, this.coords.cur); - } - } - } - /** - * ```js - * interact(target) - * .draggable(true) - * .on('dragmove', function (event) { - * if (someCondition) { - * // change the snap settings - * event.interactable.draggable({ snap: { targets: [] }}) - * // fire another move event with re-calculated snap - * event.interaction.move() - * } - * }) - * ``` - * - * Force a move of the current action at the same coordinates. Useful if - * snap/restrict has been changed and you want a movement with the new - * settings. - */ - - }, { - key: "move", - value: function move(signalArg) { - signalArg = utils.extend({ - pointer: this._latestPointer.pointer, - event: this._latestPointer.event, - eventTarget: this._latestPointer.eventTarget, - interaction: this - }, signalArg || {}); - signalArg.phase = _InteractEvent.EventPhase.Move; - - this._doPhase(signalArg); - } // End interact move events and stop auto-scroll unless simulation is running - - }, { - key: "pointerUp", - value: function pointerUp(pointer, event, eventTarget, curEventTarget) { - var pointerIndex = this.getPointerIndex(pointer); - - if (pointerIndex === -1) { - pointerIndex = this.updatePointer(pointer, event, eventTarget, false); - } - - this._signals.fire(/cancel$/i.test(event.type) ? 'cancel' : 'up', { - pointer: pointer, - pointerIndex: pointerIndex, - event: event, - eventTarget: eventTarget, - curEventTarget: curEventTarget, - interaction: this - }); - - if (!this.simulation) { - this.end(event); - } - - this.pointerIsDown = false; - this.removePointer(pointer, event); - } - }, { - key: "documentBlur", - value: function documentBlur(event) { - this.end(event); - - this._signals.fire('blur', { - event: event, - interaction: this - }); - } - /** - * ```js - * interact(target) - * .draggable(true) - * .on('move', function (event) { - * if (event.pageX > 1000) { - * // end the current action - * event.interaction.end() - * // stop all further listeners from being called - * event.stopImmediatePropagation() - * } - * }) - * ``` - * - * @param {PointerEvent} [event] - */ - - }, { - key: "end", - value: function end(event) { - this._ending = true; - event = event || this._latestPointer.event; - var endPhaseResult; - - if (this.interacting()) { - endPhaseResult = this._doPhase({ - event: event, - interaction: this, - phase: _InteractEvent.EventPhase.End - }); - } - - this._ending = false; - - if (endPhaseResult === true) { - this.stop(); - } - } - }, { - key: "currentAction", - value: function currentAction() { - return this._interacting ? this.prepared.name : null; - } - }, { - key: "interacting", - value: function interacting() { - return this._interacting; - } - /** */ - - }, { - key: "stop", - value: function stop() { - this._signals.fire('stop', { - interaction: this - }); - - this.interactable = this.element = null; - this._interacting = false; - this._stopped = true; - this.prepared.name = this.prevEvent = null; - } - }, { - key: "getPointerIndex", - value: function getPointerIndex(pointer) { - var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer - - return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) { - return curPointer.id === pointerId; - }); - } - }, { - key: "getPointerInfo", - value: function getPointerInfo(pointer) { - return this.pointers[this.getPointerIndex(pointer)]; - } - }, { - key: "updatePointer", - value: function updatePointer(pointer, event, eventTarget, down) { - var id = utils.pointer.getPointerId(pointer); - var pointerIndex = this.getPointerIndex(pointer); - var pointerInfo = this.pointers[pointerIndex]; - down = down === false ? false : down || /(down|start)$/i.test(event.type); - - if (!pointerInfo) { - pointerInfo = new _PointerInfo["default"](id, pointer, event, null, null); - pointerIndex = this.pointers.length; - this.pointers.push(pointerInfo); - } else { - pointerInfo.pointer = pointer; - } - - if (down) { - this.pointerIsDown = true; - - if (!this.interacting()) { - utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) { - return p.pointer; - }), this._now()); - utils.pointer.copyCoords(this.coords.cur, this.coords.start); - utils.pointer.copyCoords(this.coords.prev, this.coords.start); - utils.pointer.pointerExtend(this.downPointer, pointer); - this.downEvent = event; - pointerInfo.downTime = this.coords.cur.timeStamp; - pointerInfo.downTarget = eventTarget; - this.pointerWasMoved = false; - } - } - - this._updateLatestPointer(pointer, event, eventTarget); - - this._signals.fire('update-pointer', { - pointer: pointer, - event: event, - eventTarget: eventTarget, - down: down, - pointerInfo: pointerInfo, - pointerIndex: pointerIndex, - interaction: this - }); - - return pointerIndex; - } - }, { - key: "removePointer", - value: function removePointer(pointer, event) { - var pointerIndex = this.getPointerIndex(pointer); - - if (pointerIndex === -1) { - return; - } - - var pointerInfo = this.pointers[pointerIndex]; - - this._signals.fire('remove-pointer', { - pointer: pointer, - event: event, - pointerIndex: pointerIndex, - pointerInfo: pointerInfo, - interaction: this - }); - - this.pointers.splice(pointerIndex, 1); - } - }, { - key: "_updateLatestPointer", - value: function _updateLatestPointer(pointer, event, eventTarget) { - this._latestPointer.pointer = pointer; - this._latestPointer.event = event; - this._latestPointer.eventTarget = eventTarget; - } - }, { - key: "destroy", - value: function destroy() { - this._latestPointer.pointer = null; - this._latestPointer.event = null; - this._latestPointer.eventTarget = null; - } - }, { - key: "_createPreparedEvent", - value: function _createPreparedEvent(event, phase, preEnd, type) { - var actionName = this.prepared.name; - return new _InteractEvent["default"](this, event, actionName, phase, this.element, null, preEnd, type); - } - }, { - key: "_fireEvent", - value: function _fireEvent(iEvent) { - this.interactable.fire(iEvent); - - if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) { - this.prevEvent = iEvent; - } - } - }, { - key: "_doPhase", - value: function _doPhase(signalArg) { - var event = signalArg.event, - phase = signalArg.phase, - preEnd = signalArg.preEnd, - type = signalArg.type; - - var beforeResult = this._signals.fire("before-action-".concat(phase), signalArg); - - if (beforeResult === false) { - return false; - } - - var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type); - - var rect = this.rect; - - if (rect) { - // update the rect modifications - var edges = this.edges || this.prepared.edges || { - left: true, - right: true, - top: true, - bottom: true - }; - - if (edges.top) { - rect.top += iEvent.delta.y; - } - - if (edges.bottom) { - rect.bottom += iEvent.delta.y; - } - - if (edges.left) { - rect.left += iEvent.delta.x; - } - - if (edges.right) { - rect.right += iEvent.delta.x; - } - - rect.width = rect.right - rect.left; - rect.height = rect.bottom - rect.top; - } - - this._signals.fire("action-".concat(phase), signalArg); - - this._fireEvent(iEvent); - - this._signals.fire("after-action-".concat(phase), signalArg); - - return true; - } - }, { - key: "_now", - value: function _now() { - return Date.now(); - } - }, { - key: "pointerMoveTolerance", - get: function get() { - return 1; - } - }]); - - return Interaction; -}(); - -exports.Interaction = Interaction; -var _default = Interaction; -exports["default"] = _default; - -}); -var _$arr_47 = {}; -"use strict"; - -Object.defineProperty(_$arr_47, "__esModule", { - value: true -}); -_$arr_47.contains = contains; -_$arr_47.remove = remove; -_$arr_47.merge = merge; -_$arr_47.from = from; -_$arr_47.findIndex = findIndex; -_$arr_47.find = find; - -function contains(array, target) { - return array.indexOf(target) !== -1; -} - -function remove(array, target) { - return array.splice(array.indexOf(target), 1); -} - -function merge(target, source) { - for (var _i = 0; _i < source.length; _i++) { - var _ref; - - _ref = source[_i]; - var item = _ref; - target.push(item); - } - - return target; -} - -function from(source) { - return merge([], source); -} - -function findIndex(array, func) { - for (var i = 0; i < array.length; i++) { - if (func(array[i], i, array)) { - return i; - } - } - - return -1; -} - -function find(array, func) { - return array[findIndex(array, func)]; -} - -var _$domObjects_50 = {}; -"use strict"; - -Object.defineProperty(_$domObjects_50, "__esModule", { - value: true -}); -_$domObjects_50["default"] = void 0; -var domObjects = { - init: init, - document: null, - DocumentFragment: null, - SVGElement: null, - SVGSVGElement: null, - // eslint-disable-next-line no-undef - SVGElementInstance: null, - Element: null, - HTMLElement: null, - Event: null, - Touch: null, - PointerEvent: null -}; - -function blank() {} - -var _default = domObjects; -_$domObjects_50["default"] = _default; - -function init(window) { - var win = window; - domObjects.document = win.document; - domObjects.DocumentFragment = win.DocumentFragment || blank; - domObjects.SVGElement = win.SVGElement || blank; - domObjects.SVGSVGElement = win.SVGSVGElement || blank; - domObjects.SVGElementInstance = win.SVGElementInstance || blank; - domObjects.Element = win.Element || blank; - domObjects.HTMLElement = win.HTMLElement || domObjects.Element; - domObjects.Event = win.Event; - domObjects.Touch = win.Touch || blank; - domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent; -} - -var _$isWindow_58 = {}; -"use strict"; - -Object.defineProperty(_$isWindow_58, "__esModule", { - value: true -}); -_$isWindow_58["default"] = void 0; - -var ___default_58 = function _default(thing) { - return !!(thing && thing.Window) && thing instanceof thing.Window; -}; - -_$isWindow_58["default"] = ___default_58; - -var _$window_66 = {}; -"use strict"; - -Object.defineProperty(_$window_66, "__esModule", { - value: true -}); -_$window_66.init = __init_66; -_$window_66.getWindow = getWindow; -_$window_66["default"] = void 0; - -var _isWindow = _interopRequireDefault(_$isWindow_58); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var win = { - realWindow: undefined, - window: undefined, - getWindow: getWindow, - init: __init_66 -}; - -function __init_66(window) { - // get wrapped window if using Shadow DOM polyfill - win.realWindow = window; // create a TextNode - - var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill - - if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) { - // use wrapped window - window = window.wrap(window); - } - - win.window = window; -} - -if (typeof window === 'undefined') { - win.window = undefined; - win.realWindow = undefined; -} else { - __init_66(window); -} - -function getWindow(node) { - if ((0, _isWindow["default"])(node)) { - return node; - } - - var rootNode = node.ownerDocument || node; - return rootNode.defaultView || win.window; -} - -win.init = __init_66; -var ___default_66 = win; -_$window_66["default"] = ___default_66; - -var _$is_57 = {}; -"use strict"; - -Object.defineProperty(_$is_57, "__esModule", { - value: true -}); -_$is_57.array = _$is_57.plainObject = _$is_57.element = _$is_57.string = _$is_57.bool = _$is_57.number = _$is_57.func = _$is_57.object = _$is_57.docFrag = _$is_57.window = void 0; - -var ___isWindow_57 = ___interopRequireDefault_57(_$isWindow_58); - -var _window2 = ___interopRequireDefault_57(_$window_66); - -function ___interopRequireDefault_57(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -var __window_57 = function window(thing) { - return thing === _window2["default"].window || (0, ___isWindow_57["default"])(thing); -}; - -_$is_57.window = __window_57; - -var docFrag = function docFrag(thing) { - return object(thing) && thing.nodeType === 11; -}; - -_$is_57.docFrag = docFrag; - -var object = function object(thing) { - return !!thing && _typeof(thing) === 'object'; -}; - -_$is_57.object = object; - -var func = function func(thing) { - return typeof thing === 'function'; -}; - -_$is_57.func = func; - -var number = function number(thing) { - return typeof thing === 'number'; -}; - -_$is_57.number = number; - -var bool = function bool(thing) { - return typeof thing === 'boolean'; -}; - -_$is_57.bool = bool; - -var string = function string(thing) { - return typeof thing === 'string'; -}; - -_$is_57.string = string; - -var element = function element(thing) { - if (!thing || _typeof(thing) !== 'object') { - return false; - } - - var _window = _window2["default"].getWindow(thing) || _window2["default"].window; - - return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2 - : thing.nodeType === 1 && typeof thing.nodeName === 'string'; -}; - -_$is_57.element = element; - -var plainObject = function plainObject(thing) { - return object(thing) && !!thing.constructor && /function Object\b/.test(thing.constructor.toString()); -}; - -_$is_57.plainObject = plainObject; - -var array = function array(thing) { - return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice); -}; - -_$is_57.array = array; - -var _$browser_48 = {}; -"use strict"; - -Object.defineProperty(_$browser_48, "__esModule", { - value: true -}); -_$browser_48["default"] = void 0; - -var _domObjects = ___interopRequireDefault_48(_$domObjects_50); - -var is = _interopRequireWildcard(_$is_57); - -var _window = ___interopRequireDefault_48(_$window_66); - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_48(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var browser = { - init: __init_48, - supportsTouch: null, - supportsPointerEvent: null, - isIOS7: null, - isIOS: null, - isIe9: null, - isOperaMobile: null, - prefixedMatchesSelector: null, - pEventTypes: null, - wheelEvent: null -}; - -function __init_48(window) { - var Element = _domObjects["default"].Element; - var navigator = _window["default"].window.navigator; // Does the browser support touch input? - - browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects["default"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents - - browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects["default"].PointerEvent; - browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7 - - browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\d]/.test(navigator.appVersion); - browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently - - browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector - - browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector'; - browser.pEventTypes = browser.supportsPointerEvent ? _domObjects["default"].PointerEvent === window.MSPointerEvent ? { - up: 'MSPointerUp', - down: 'MSPointerDown', - over: 'mouseover', - out: 'mouseout', - move: 'MSPointerMove', - cancel: 'MSPointerCancel' - } : { - up: 'pointerup', - down: 'pointerdown', - over: 'pointerover', - out: 'pointerout', - move: 'pointermove', - cancel: 'pointercancel' - } : null; // because Webkit and Opera still use 'mousewheel' event type - - browser.wheelEvent = 'onmousewheel' in _domObjects["default"].document ? 'mousewheel' : 'wheel'; -} - -var ___default_48 = browser; -_$browser_48["default"] = ___default_48; - -var _$domUtils_51 = {}; -"use strict"; - -Object.defineProperty(_$domUtils_51, "__esModule", { - value: true -}); -_$domUtils_51.nodeContains = nodeContains; -_$domUtils_51.closest = closest; -_$domUtils_51.parentNode = parentNode; -_$domUtils_51.matchesSelector = matchesSelector; -_$domUtils_51.indexOfDeepestElement = indexOfDeepestElement; -_$domUtils_51.matchesUpTo = matchesUpTo; -_$domUtils_51.getActualElement = getActualElement; -_$domUtils_51.getScrollXY = getScrollXY; -_$domUtils_51.getElementClientRect = getElementClientRect; -_$domUtils_51.getElementRect = getElementRect; -_$domUtils_51.getPath = getPath; -_$domUtils_51.trySelector = trySelector; - -var _browser = ___interopRequireDefault_51(_$browser_48); - -var ___domObjects_51 = ___interopRequireDefault_51(_$domObjects_50); - -var __is_51 = ___interopRequireWildcard_51(_$is_57); - -var ___window_51 = ___interopRequireWildcard_51(_$window_66); - -function ___getRequireWildcardCache_51() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function nodeContains(parent, child) { - while (child) { - if (child === parent) { - return true; - } - - child = child.parentNode; - } - - return false; -} - -function closest(element, selector) { - while (__is_51.element(element)) { - if (matchesSelector(element, selector)) { - return element; - } - - element = parentNode(element); - } - - return null; -} - -function parentNode(node) { - var parent = node.parentNode; - - if (__is_51.docFrag(parent)) { - // skip past #shado-root fragments - // tslint:disable-next-line - while ((parent = parent.host) && __is_51.docFrag(parent)) { - continue; - } - - return parent; - } - - return parent; -} - -function matchesSelector(element, selector) { - // remove /deep/ from selectors if shadowDOM polyfill is used - if (___window_51["default"].window !== ___window_51["default"].realWindow) { - selector = selector.replace(/\/deep\//g, ' '); - } - - return element[_browser["default"].prefixedMatchesSelector](selector); -} - -var getParent = function getParent(el) { - return el.parentNode ? el.parentNode : el.host; -}; // Test for the element that's "above" all other qualifiers - - -function indexOfDeepestElement(elements) { - var deepestZoneParents = []; - var deepestZone = elements[0]; - var index = deepestZone ? 0 : -1; - var i; - var n; - - for (i = 1; i < elements.length; i++) { - var dropzone = elements[i]; // an element might belong to multiple selector dropzones - - if (!dropzone || dropzone === deepestZone) { - continue; - } - - if (!deepestZone) { - deepestZone = dropzone; - index = i; - continue; - } // check if the deepest or current are document.documentElement or document.rootElement - // - if the current dropzone is, do nothing and continue - - - if (dropzone.parentNode === dropzone.ownerDocument) { - continue; - } // - if deepest is, update with the current dropzone and continue to next - else if (deepestZone.parentNode === dropzone.ownerDocument) { - deepestZone = dropzone; - index = i; - continue; - } // compare zIndex of siblings - - - if (dropzone.parentNode === deepestZone.parentNode) { - var deepestZIndex = parseInt((0, ___window_51.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0; - var dropzoneZIndex = parseInt((0, ___window_51.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0; - - if (dropzoneZIndex >= deepestZIndex) { - deepestZone = dropzone; - index = i; - } - - continue; - } // populate the ancestry array for the latest deepest dropzone - - - if (!deepestZoneParents.length) { - var _parent = deepestZone; - var parentParent = void 0; - - while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) { - deepestZoneParents.unshift(_parent); - _parent = parentParent; - } - } - - var parent = void 0; // if this element is an svg element and the current deepest is an - // HTMLElement - - if (deepestZone instanceof ___domObjects_51["default"].HTMLElement && dropzone instanceof ___domObjects_51["default"].SVGElement && !(dropzone instanceof ___domObjects_51["default"].SVGSVGElement)) { - if (dropzone === deepestZone.parentNode) { - continue; - } - - parent = dropzone.ownerSVGElement; - } else { - parent = dropzone; - } - - var dropzoneParents = []; - - while (parent.parentNode !== parent.ownerDocument) { - dropzoneParents.unshift(parent); - parent = getParent(parent); - } - - n = 0; // get (position of last common ancestor) + 1 - - while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) { - n++; - } - - var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]]; - var child = parents[0].lastChild; - - while (child) { - if (child === parents[1]) { - deepestZone = dropzone; - index = i; - deepestZoneParents = dropzoneParents; - break; - } else if (child === parents[2]) { - break; - } - - child = child.previousSibling; - } - } - - return index; -} - -function matchesUpTo(element, selector, limit) { - while (__is_51.element(element)) { - if (matchesSelector(element, selector)) { - return true; - } - - element = parentNode(element); - - if (element === limit) { - return matchesSelector(element, selector); - } - } - - return false; -} - -function getActualElement(element) { - return element instanceof ___domObjects_51["default"].SVGElementInstance ? element.correspondingUseElement : element; -} - -function getScrollXY(relevantWindow) { - relevantWindow = relevantWindow || ___window_51["default"].window; - return { - x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft, - y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop - }; -} - -function getElementClientRect(element) { - var clientRect = element instanceof ___domObjects_51["default"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0]; - return clientRect && { - left: clientRect.left, - right: clientRect.right, - top: clientRect.top, - bottom: clientRect.bottom, - width: clientRect.width || clientRect.right - clientRect.left, - height: clientRect.height || clientRect.bottom - clientRect.top - }; -} - -function getElementRect(element) { - var clientRect = getElementClientRect(element); - - if (!_browser["default"].isIOS7 && clientRect) { - var scroll = getScrollXY(___window_51["default"].getWindow(element)); - clientRect.left += scroll.x; - clientRect.right += scroll.x; - clientRect.top += scroll.y; - clientRect.bottom += scroll.y; - } - - return clientRect; -} - -function getPath(node) { - var path = []; - - while (node) { - path.push(node); - node = parentNode(node); - } - - return path; -} - -function trySelector(value) { - if (!__is_51.string(value)) { - return false; - } // an exception will be raised if it is invalid - - - ___domObjects_51["default"].document.querySelector(value); - - return true; -} - -var _$clone_49 = {}; -"use strict"; - -Object.defineProperty(_$clone_49, "__esModule", { - value: true -}); -_$clone_49["default"] = clone; - -var arr = ___interopRequireWildcard_49(_$arr_47); - -var __is_49 = ___interopRequireWildcard_49(_$is_57); - -function ___getRequireWildcardCache_49() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_49 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_49(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_49(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function clone(source) { - var dest = {}; - - for (var prop in source) { - var value = source[prop]; - - if (__is_49.plainObject(value)) { - dest[prop] = clone(value); - } else if (__is_49.array(value)) { - dest[prop] = arr.from(value); - } else { - dest[prop] = value; - } - } - - return dest; -} - -var _$pointerExtend_60 = {}; -"use strict"; - -Object.defineProperty(_$pointerExtend_60, "__esModule", { - value: true -}); -_$pointerExtend_60["default"] = void 0; - -function pointerExtend(dest, source) { - for (var prop in source) { - var prefixedPropREs = pointerExtend.prefixedPropREs; - var deprecated = false; // skip deprecated prefixed properties - - for (var vendor in prefixedPropREs) { - if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) { - deprecated = true; - break; - } - } - - if (!deprecated && typeof source[prop] !== 'function') { - dest[prop] = source[prop]; - } - } - - return dest; -} - -pointerExtend.prefixedPropREs = { - webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/, - moz: /(Pressure)$/ -}; -var ___default_60 = pointerExtend; -_$pointerExtend_60["default"] = ___default_60; - -var _$hypot_55 = {}; -"use strict"; - -Object.defineProperty(_$hypot_55, "__esModule", { - value: true -}); -_$hypot_55["default"] = void 0; - -var ___default_55 = function _default(x, y) { - return Math.sqrt(x * x + y * y); -}; - -_$hypot_55["default"] = ___default_55; - -var _$pointerUtils_61 = {}; -"use strict"; - -Object.defineProperty(_$pointerUtils_61, "__esModule", { - value: true -}); -_$pointerUtils_61["default"] = void 0; - -var ___browser_61 = ___interopRequireDefault_61(_$browser_48); - -var ___domObjects_61 = ___interopRequireDefault_61(_$domObjects_50); - -var domUtils = ___interopRequireWildcard_61(_$domUtils_51); - -var _hypot = ___interopRequireDefault_61(_$hypot_55); - -var __is_61 = ___interopRequireWildcard_61(_$is_57); - -var _pointerExtend = ___interopRequireDefault_61(_$pointerExtend_60); - -function ___getRequireWildcardCache_61() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_61 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_61(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_61(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_61(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var pointerUtils = { - copyCoords: function copyCoords(dest, src) { - dest.page = dest.page || {}; - dest.page.x = src.page.x; - dest.page.y = src.page.y; - dest.client = dest.client || {}; - dest.client.x = src.client.x; - dest.client.y = src.client.y; - dest.timeStamp = src.timeStamp; - }, - setCoordDeltas: function setCoordDeltas(targetObj, prev, cur) { - targetObj.page.x = cur.page.x - prev.page.x; - targetObj.page.y = cur.page.y - prev.page.y; - targetObj.client.x = cur.client.x - prev.client.x; - targetObj.client.y = cur.client.y - prev.client.y; - targetObj.timeStamp = cur.timeStamp - prev.timeStamp; - }, - setCoordVelocity: function setCoordVelocity(targetObj, delta) { - var dt = Math.max(delta.timeStamp / 1000, 0.001); - targetObj.page.x = delta.page.x / dt; - targetObj.page.y = delta.page.y / dt; - targetObj.client.x = delta.client.x / dt; - targetObj.client.y = delta.client.y / dt; - targetObj.timeStamp = dt; - }, - isNativePointer: function isNativePointer(pointer) { - return pointer instanceof ___domObjects_61["default"].Event || pointer instanceof ___domObjects_61["default"].Touch; - }, - // Get specified X/Y coords for mouse or event.touches[0] - getXY: function getXY(type, pointer, xy) { - xy = xy || {}; - type = type || 'page'; - xy.x = pointer[type + 'X']; - xy.y = pointer[type + 'Y']; - return xy; - }, - getPageXY: function getPageXY(pointer, page) { - page = page || { - x: 0, - y: 0 - }; // Opera Mobile handles the viewport and scrolling oddly - - if (___browser_61["default"].isOperaMobile && pointerUtils.isNativePointer(pointer)) { - pointerUtils.getXY('screen', pointer, page); - page.x += window.scrollX; - page.y += window.scrollY; - } else { - pointerUtils.getXY('page', pointer, page); - } - - return page; - }, - getClientXY: function getClientXY(pointer, client) { - client = client || {}; - - if (___browser_61["default"].isOperaMobile && pointerUtils.isNativePointer(pointer)) { - // Opera Mobile handles the viewport and scrolling oddly - pointerUtils.getXY('screen', pointer, client); - } else { - pointerUtils.getXY('client', pointer, client); - } - - return client; - }, - getPointerId: function getPointerId(pointer) { - return __is_61.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier; - }, - setCoords: function setCoords(targetObj, pointers, timeStamp) { - var pointer = pointers.length > 1 ? pointerUtils.pointerAverage(pointers) : pointers[0]; - var tmpXY = {}; - pointerUtils.getPageXY(pointer, tmpXY); - targetObj.page.x = tmpXY.x; - targetObj.page.y = tmpXY.y; - pointerUtils.getClientXY(pointer, tmpXY); - targetObj.client.x = tmpXY.x; - targetObj.client.y = tmpXY.y; - targetObj.timeStamp = timeStamp; - }, - pointerExtend: _pointerExtend["default"], - getTouchPair: function getTouchPair(event) { - var touches = []; // array of touches is supplied - - if (__is_61.array(event)) { - touches[0] = event[0]; - touches[1] = event[1]; - } // an event - else { - if (event.type === 'touchend') { - if (event.touches.length === 1) { - touches[0] = event.touches[0]; - touches[1] = event.changedTouches[0]; - } else if (event.touches.length === 0) { - touches[0] = event.changedTouches[0]; - touches[1] = event.changedTouches[1]; - } - } else { - touches[0] = event.touches[0]; - touches[1] = event.touches[1]; - } - } - - return touches; - }, - pointerAverage: function pointerAverage(pointers) { - var average = { - pageX: 0, - pageY: 0, - clientX: 0, - clientY: 0, - screenX: 0, - screenY: 0 - }; - - for (var _i = 0; _i < pointers.length; _i++) { - var _ref; - - _ref = pointers[_i]; - var pointer = _ref; - - for (var _prop in average) { - average[_prop] += pointer[_prop]; - } - } - - for (var prop in average) { - average[prop] /= pointers.length; - } - - return average; - }, - touchBBox: function touchBBox(event) { - if (!event.length && !(event.touches && event.touches.length > 1)) { - return null; - } - - var touches = pointerUtils.getTouchPair(event); - var minX = Math.min(touches[0].pageX, touches[1].pageX); - var minY = Math.min(touches[0].pageY, touches[1].pageY); - var maxX = Math.max(touches[0].pageX, touches[1].pageX); - var maxY = Math.max(touches[0].pageY, touches[1].pageY); - return { - x: minX, - y: minY, - left: minX, - top: minY, - right: maxX, - bottom: maxY, - width: maxX - minX, - height: maxY - minY - }; - }, - touchDistance: function touchDistance(event, deltaSource) { - var sourceX = deltaSource + 'X'; - var sourceY = deltaSource + 'Y'; - var touches = pointerUtils.getTouchPair(event); - var dx = touches[0][sourceX] - touches[1][sourceX]; - var dy = touches[0][sourceY] - touches[1][sourceY]; - return (0, _hypot["default"])(dx, dy); - }, - touchAngle: function touchAngle(event, deltaSource) { - var sourceX = deltaSource + 'X'; - var sourceY = deltaSource + 'Y'; - var touches = pointerUtils.getTouchPair(event); - var dx = touches[1][sourceX] - touches[0][sourceX]; - var dy = touches[1][sourceY] - touches[0][sourceY]; - var angle = 180 * Math.atan2(dy, dx) / Math.PI; - return angle; - }, - getPointerType: function getPointerType(pointer) { - return __is_61.string(pointer.pointerType) ? pointer.pointerType : __is_61.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the "pointer" must - // be either a MouseEvent, TouchEvent, or Touch object - : /touch/.test(pointer.type) || pointer instanceof ___domObjects_61["default"].Touch ? 'touch' : 'mouse'; - }, - // [ event.target, event.currentTarget ] - getEventTargets: function getEventTargets(event) { - var path = __is_61.func(event.composedPath) ? event.composedPath() : event.path; - return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)]; - }, - newCoords: function newCoords() { - return { - page: { - x: 0, - y: 0 - }, - client: { - x: 0, - y: 0 - }, - timeStamp: 0 - }; - }, - coordsToEvent: function coordsToEvent(coords) { - var event = { - coords: coords, - - get page() { - return this.coords.page; - }, - - get client() { - return this.coords.client; - }, - - get timeStamp() { - return this.coords.timeStamp; - }, - - get pageX() { - return this.coords.page.x; - }, - - get pageY() { - return this.coords.page.y; - }, - - get clientX() { - return this.coords.client.x; - }, - - get clientY() { - return this.coords.client.y; - }, - - get pointerId() { - return this.coords.pointerId; - }, - - get target() { - return this.coords.target; - }, - - get type() { - return this.coords.type; - }, - - get pointerType() { - return this.coords.pointerType; - }, - - get buttons() { - return this.coords.buttons; - } - - }; - return event; - } -}; -var ___default_61 = pointerUtils; -_$pointerUtils_61["default"] = ___default_61; - -var _$events_52 = {}; -"use strict"; - -Object.defineProperty(_$events_52, "__esModule", { - value: true -}); -_$events_52["default"] = _$events_52.FakeEvent = void 0; - -/* removed: var _$arr_47 = require("./arr"); */; - -var __domUtils_52 = ___interopRequireWildcard_52(_$domUtils_51); - -var __is_52 = ___interopRequireWildcard_52(_$is_57); - -var ___pointerExtend_52 = ___interopRequireDefault_52(_$pointerExtend_60); - -var _pointerUtils = ___interopRequireDefault_52(_$pointerUtils_61); - -function ___interopRequireDefault_52(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_52() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_52 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_52(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_52(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -var elements = []; -var targets = []; -var delegatedEvents = {}; -var documents = []; - -function add(element, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var elementIndex = elements.indexOf(element); - var target = targets[elementIndex]; - - if (!target) { - target = { - events: {}, - typeCount: 0 - }; - elementIndex = elements.push(element) - 1; - targets.push(target); - } - - if (!target.events[type]) { - target.events[type] = []; - target.typeCount++; - } - - if (!(0, _$arr_47.contains)(target.events[type], listener)) { - element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture); - target.events[type].push(listener); - } -} - -function __remove_52(element, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var elementIndex = elements.indexOf(element); - var target = targets[elementIndex]; - - if (!target || !target.events) { - return; - } - - if (type === 'all') { - for (type in target.events) { - if (target.events.hasOwnProperty(type)) { - __remove_52(element, type, 'all'); - } - } - - return; - } - - if (target.events[type]) { - var len = target.events[type].length; - - if (listener === 'all') { - for (var i = 0; i < len; i++) { - __remove_52(element, type, target.events[type][i], options); - } - - return; - } else { - for (var _i = 0; _i < len; _i++) { - if (target.events[type][_i] === listener) { - element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture); - target.events[type].splice(_i, 1); - break; - } - } - } - - if (target.events[type] && target.events[type].length === 0) { - target.events[type] = null; - target.typeCount--; - } - } - - if (!target.typeCount) { - targets.splice(elementIndex, 1); - elements.splice(elementIndex, 1); - } -} - -function addDelegate(selector, context, type, listener, optionalArg) { - var options = getOptions(optionalArg); - - if (!delegatedEvents[type]) { - delegatedEvents[type] = { - contexts: [], - listeners: [], - selectors: [] - }; // add delegate listener functions - - for (var _i2 = 0; _i2 < documents.length; _i2++) { - var _ref; - - _ref = documents[_i2]; - var doc = _ref; - add(doc, type, delegateListener); - add(doc, type, delegateUseCapture, true); - } - } - - var delegated = delegatedEvents[type]; - var index; - - for (index = delegated.selectors.length - 1; index >= 0; index--) { - if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { - break; - } - } - - if (index === -1) { - index = delegated.selectors.length; - delegated.selectors.push(selector); - delegated.contexts.push(context); - delegated.listeners.push([]); - } // keep listener and capture and passive flags - - - delegated.listeners[index].push([listener, !!options.capture, options.passive]); -} - -function removeDelegate(selector, context, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var delegated = delegatedEvents[type]; - var matchFound = false; - var index; - - if (!delegated) { - return; - } // count from last index of delegated to 0 - - - for (index = delegated.selectors.length - 1; index >= 0; index--) { - // look for matching selector and context Node - if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { - var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive] - - for (var i = listeners.length - 1; i >= 0; i--) { - var _listeners$i = _slicedToArray(listeners[i], 3), - fn = _listeners$i[0], - capture = _listeners$i[1], - passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match - - - if (fn === listener && capture === !!options.capture && passive === options.passive) { - // remove the listener from the array of listeners - listeners.splice(i, 1); // if all listeners for this interactable have been removed - // remove the interactable from the delegated arrays - - if (!listeners.length) { - delegated.selectors.splice(index, 1); - delegated.contexts.splice(index, 1); - delegated.listeners.splice(index, 1); // remove delegate function from context - - __remove_52(context, type, delegateListener); - __remove_52(context, type, delegateUseCapture, true); // remove the arrays if they are empty - - if (!delegated.selectors.length) { - delegatedEvents[type] = null; - } - } // only remove one listener - - - matchFound = true; - break; - } - } - - if (matchFound) { - break; - } - } - } -} // bound to the interactable context when a DOM event -// listener is added to a selector interactable - - -function delegateListener(event, optionalArg) { - var options = getOptions(optionalArg); - var fakeEvent = new FakeEvent(event); - var delegated = delegatedEvents[event.type]; - - var _pointerUtils$getEven = _pointerUtils["default"].getEventTargets(event), - _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1), - eventTarget = _pointerUtils$getEven2[0]; - - var element = eventTarget; // climb up document tree looking for selector matches - - while (__is_52.element(element)) { - for (var i = 0; i < delegated.selectors.length; i++) { - var selector = delegated.selectors[i]; - var context = delegated.contexts[i]; - - if (__domUtils_52.matchesSelector(element, selector) && __domUtils_52.nodeContains(context, eventTarget) && __domUtils_52.nodeContains(context, element)) { - var listeners = delegated.listeners[i]; - fakeEvent.currentTarget = element; - - for (var _i3 = 0; _i3 < listeners.length; _i3++) { - var _ref2; - - _ref2 = listeners[_i3]; - - var _ref3 = _ref2, - _ref4 = _slicedToArray(_ref3, 3), - fn = _ref4[0], - capture = _ref4[1], - passive = _ref4[2]; - - if (capture === !!options.capture && passive === options.passive) { - fn(fakeEvent); - } - } - } - } - - element = __domUtils_52.parentNode(element); - } -} - -function delegateUseCapture(event) { - return delegateListener.call(this, event, true); -} - -function getOptions(param) { - return __is_52.object(param) ? param : { - capture: param - }; -} - -var FakeEvent = -/*#__PURE__*/ -function () { - function FakeEvent(originalEvent) { - _classCallCheck(this, FakeEvent); - - this.originalEvent = originalEvent; // duplicate the event so that currentTarget can be changed - - (0, ___pointerExtend_52["default"])(this, originalEvent); - } - - _createClass(FakeEvent, [{ - key: "preventOriginalDefault", - value: function preventOriginalDefault() { - this.originalEvent.preventDefault(); - } - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.originalEvent.stopPropagation(); - } - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.originalEvent.stopImmediatePropagation(); - } - }]); - - return FakeEvent; -}(); - -_$events_52.FakeEvent = FakeEvent; -var events = { - add: add, - remove: __remove_52, - addDelegate: addDelegate, - removeDelegate: removeDelegate, - delegateListener: delegateListener, - delegateUseCapture: delegateUseCapture, - delegatedEvents: delegatedEvents, - documents: documents, - supportsOptions: false, - supportsPassive: false, - _elements: elements, - _targets: targets, - init: function init(window) { - window.document.createElement('div').addEventListener('test', null, { - get capture() { - return events.supportsOptions = true; - }, - - get passive() { - return events.supportsPassive = true; - } - - }); - } -}; -var ___default_52 = events; -_$events_52["default"] = ___default_52; - -var _$extend_53 = {}; -"use strict"; - -Object.defineProperty(_$extend_53, "__esModule", { - value: true -}); -_$extend_53["default"] = extend; - -function extend(dest, source) { - for (var prop in source) { - dest[prop] = source[prop]; - } - - return dest; -} - -var _$rect_63 = {}; -"use strict"; - -Object.defineProperty(_$rect_63, "__esModule", { - value: true -}); -_$rect_63.getStringOptionResult = getStringOptionResult; -_$rect_63.resolveRectLike = resolveRectLike; -_$rect_63.rectToXY = rectToXY; -_$rect_63.xywhToTlbr = xywhToTlbr; -_$rect_63.tlbrToXywh = tlbrToXywh; -_$rect_63["default"] = void 0; - -/* removed: var _$domUtils_51 = require("./domUtils"); */; - -var _extend = ___interopRequireDefault_63(_$extend_53); - -var __is_63 = ___interopRequireWildcard_63(_$is_57); - -function ___getRequireWildcardCache_63() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_63 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_63(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_63(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_63(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -function getStringOptionResult(value, target, element) { - if (value === 'parent') { - return (0, _$domUtils_51.parentNode)(element); - } - - if (value === 'self') { - return target.getRect(element); - } - - return (0, _$domUtils_51.closest)(element, value); -} - -function resolveRectLike(value, target, element, functionArgs) { - if (__is_63.string(value)) { - value = getStringOptionResult(value, target, element); - } else if (__is_63.func(value)) { - value = value.apply(void 0, _toConsumableArray(functionArgs)); - } - - if (__is_63.element(value)) { - value = (0, _$domUtils_51.getElementRect)(value); - } - - return value; -} - -function rectToXY(rect) { - return rect && { - x: 'x' in rect ? rect.x : rect.left, - y: 'y' in rect ? rect.y : rect.top - }; -} - -function xywhToTlbr(rect) { - if (rect && !('left' in rect && 'top' in rect)) { - rect = (0, _extend["default"])({}, rect); - rect.left = rect.x || 0; - rect.top = rect.y || 0; - rect.right = rect.right || rect.left + rect.width; - rect.bottom = rect.bottom || rect.top + rect.height; - } - - return rect; -} - -function tlbrToXywh(rect) { - if (rect && !('x' in rect && 'y' in rect)) { - rect = (0, _extend["default"])({}, rect); - rect.x = rect.left || 0; - rect.y = rect.top || 0; - rect.width = rect.width || rect.right - rect.x; - rect.height = rect.height || rect.bottom - rect.y; - } - - return rect; -} - -var ___default_63 = { - getStringOptionResult: getStringOptionResult, - resolveRectLike: resolveRectLike, - rectToXY: rectToXY, - xywhToTlbr: xywhToTlbr, - tlbrToXywh: tlbrToXywh -}; -_$rect_63["default"] = ___default_63; - -var _$getOriginXY_54 = {}; -"use strict"; - -Object.defineProperty(_$getOriginXY_54, "__esModule", { - value: true -}); -_$getOriginXY_54["default"] = ___default_54; - -/* removed: var _$rect_63 = require("./rect"); */; - -function ___default_54(target, element, action) { - var actionOptions = target.options[action]; - var actionOrigin = actionOptions && actionOptions.origin; - var origin = actionOrigin || target.options.origin; - var originRect = (0, _$rect_63.resolveRectLike)(origin, target, element, [target && element]); - return (0, _$rect_63.rectToXY)(originRect) || { - x: 0, - y: 0 - }; -} - -var _$normalizeListeners_59 = {}; -"use strict"; - -Object.defineProperty(_$normalizeListeners_59, "__esModule", { - value: true -}); -_$normalizeListeners_59["default"] = normalize; - -var ___extend_59 = ___interopRequireDefault_59(_$extend_53); - -var __is_59 = ___interopRequireWildcard_59(_$is_57); - -function ___getRequireWildcardCache_59() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_59 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_59(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_59(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_59(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function normalize(type, listeners, result) { - result = result || {}; - - if (__is_59.string(type) && type.search(' ') !== -1) { - type = split(type); - } - - if (__is_59.array(type)) { - return type.reduce(function (acc, t) { - return (0, ___extend_59["default"])(acc, normalize(t, listeners, result)); - }, result); - } // ({ type: fn }) -> ('', { type: fn }) - - - if (__is_59.object(type)) { - listeners = type; - type = ''; - } - - if (__is_59.func(listeners)) { - result[type] = result[type] || []; - result[type].push(listeners); - } else if (__is_59.array(listeners)) { - for (var _i = 0; _i < listeners.length; _i++) { - var _ref; - - _ref = listeners[_i]; - var l = _ref; - normalize(type, l, result); - } - } else if (__is_59.object(listeners)) { - for (var prefix in listeners) { - var combinedTypes = split(prefix).map(function (p) { - return "".concat(type).concat(p); - }); - normalize(combinedTypes, listeners[prefix], result); - } - } - - return result; -} - -function split(type) { - return type.trim().split(/ +/); -} - -var _$raf_62 = {}; -"use strict"; - -Object.defineProperty(_$raf_62, "__esModule", { - value: true -}); -_$raf_62["default"] = void 0; -var lastTime = 0; - -var _request; - -var _cancel; - -function __init_62(window) { - _request = window.requestAnimationFrame; - _cancel = window.cancelAnimationFrame; - - if (!_request) { - var vendors = ['ms', 'moz', 'webkit', 'o']; - - for (var _i = 0; _i < vendors.length; _i++) { - var vendor = vendors[_i]; - _request = window["".concat(vendor, "RequestAnimationFrame")]; - _cancel = window["".concat(vendor, "CancelAnimationFrame")] || window["".concat(vendor, "CancelRequestAnimationFrame")]; - } - } - - if (!_request) { - _request = function request(callback) { - var currTime = Date.now(); - var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal - - var token = setTimeout(function () { - callback(currTime + timeToCall); - }, timeToCall); - lastTime = currTime + timeToCall; - return token; - }; - - _cancel = function cancel(token) { - return clearTimeout(token); - }; - } -} - -var ___default_62 = { - request: function request(callback) { - return _request(callback); - }, - cancel: function cancel(token) { - return _cancel(token); - }, - init: __init_62 -}; -_$raf_62["default"] = ___default_62; - -var _$Signals_46 = {}; -"use strict"; - -Object.defineProperty(_$Signals_46, "__esModule", { - value: true -}); -_$Signals_46["default"] = void 0; - -function ___classCallCheck_46(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_46(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_46(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_46(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_46(Constructor, staticProps); return Constructor; } - -var Signals = -/*#__PURE__*/ -function () { - function Signals() { - ___classCallCheck_46(this, Signals); - - this.listeners = {}; - } - - ___createClass_46(Signals, [{ - key: "on", - value: function on(name, listener) { - if (!this.listeners[name]) { - this.listeners[name] = [listener]; - return; - } - - this.listeners[name].push(listener); - } - }, { - key: "off", - value: function off(name, listener) { - if (!this.listeners[name]) { - return; - } - - var index = this.listeners[name].indexOf(listener); - - if (index !== -1) { - this.listeners[name].splice(index, 1); - } - } - }, { - key: "fire", - value: function fire(name, arg) { - var targetListeners = this.listeners[name]; - - if (!targetListeners) { - return; - } - - for (var _i = 0; _i < targetListeners.length; _i++) { - var _ref; - - _ref = targetListeners[_i]; - var listener = _ref; - - if (listener(arg, name) === false) { - return false; - } - } - } - }]); - - return Signals; -}(); - -var ___default_46 = Signals; -_$Signals_46["default"] = ___default_46; - -var _$utils_56 = {}; -"use strict"; - -Object.defineProperty(_$utils_56, "__esModule", { - value: true -}); -_$utils_56.warnOnce = warnOnce; -_$utils_56._getQBezierValue = _getQBezierValue; -_$utils_56.getQuadraticCurvePoint = getQuadraticCurvePoint; -_$utils_56.easeOutQuad = easeOutQuad; -_$utils_56.copyAction = copyAction; -Object.defineProperty(_$utils_56, "win", { - enumerable: true, - get: function get() { - return ___window_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "browser", { - enumerable: true, - get: function get() { - return ___browser_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "clone", { - enumerable: true, - get: function get() { - return _clone["default"]; - } -}); -Object.defineProperty(_$utils_56, "events", { - enumerable: true, - get: function get() { - return _events["default"]; - } -}); -Object.defineProperty(_$utils_56, "extend", { - enumerable: true, - get: function get() { - return ___extend_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "getOriginXY", { - enumerable: true, - get: function get() { - return _getOriginXY["default"]; - } -}); -Object.defineProperty(_$utils_56, "hypot", { - enumerable: true, - get: function get() { - return ___hypot_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "normalizeListeners", { - enumerable: true, - get: function get() { - return _normalizeListeners["default"]; - } -}); -Object.defineProperty(_$utils_56, "pointer", { - enumerable: true, - get: function get() { - return ___pointerUtils_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "raf", { - enumerable: true, - get: function get() { - return _raf["default"]; - } -}); -Object.defineProperty(_$utils_56, "rect", { - enumerable: true, - get: function get() { - return ___rect_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "Signals", { - enumerable: true, - get: function get() { - return _Signals["default"]; - } -}); -_$utils_56.is = _$utils_56.dom = _$utils_56.arr = void 0; - -var __arr_56 = ___interopRequireWildcard_56(_$arr_47); - -_$utils_56.arr = __arr_56; - -var dom = ___interopRequireWildcard_56(_$domUtils_51); - -_$utils_56.dom = dom; - -var __is_56 = ___interopRequireWildcard_56(_$is_57); - -_$utils_56.is = __is_56; - -var ___window_56 = ___interopRequireDefault_56(_$window_66); - -var ___browser_56 = ___interopRequireDefault_56(_$browser_48); - -var _clone = ___interopRequireDefault_56(_$clone_49); - -var _events = ___interopRequireDefault_56(_$events_52); - -var ___extend_56 = ___interopRequireDefault_56(_$extend_53); - -var _getOriginXY = ___interopRequireDefault_56(_$getOriginXY_54); - -var ___hypot_56 = ___interopRequireDefault_56(_$hypot_55); - -var _normalizeListeners = ___interopRequireDefault_56(_$normalizeListeners_59); - -var ___pointerUtils_56 = ___interopRequireDefault_56(_$pointerUtils_61); - -var _raf = ___interopRequireDefault_56(_$raf_62); - -var ___rect_56 = ___interopRequireDefault_56(_$rect_63); - -var _Signals = ___interopRequireDefault_56(_$Signals_46); - -function ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_56() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_56 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_56(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_56(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function warnOnce(method, message) { - var warned = false; // eslint-disable-next-line no-shadow - - return function () { - if (!warned) { - ___window_56["default"].window.console.warn(message); - - warned = true; - } - - return method.apply(this, arguments); - }; -} // http://stackoverflow.com/a/5634528/2280888 - - -function _getQBezierValue(t, p1, p2, p3) { - var iT = 1 - t; - return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3; -} - -function getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) { - return { - x: _getQBezierValue(position, startX, cpX, endX), - y: _getQBezierValue(position, startY, cpY, endY) - }; -} // http://gizma.com/easing/ - - -function easeOutQuad(t, b, c, d) { - t /= d; - return -c * t * (t - 2) + b; -} - -function copyAction(dest, src) { - dest.name = src.name; - dest.axis = src.axis; - dest.edges = src.edges; - return dest; -} - -var _$defaultOptions_20 = {}; -"use strict"; - -Object.defineProperty(_$defaultOptions_20, "__esModule", { - value: true -}); -_$defaultOptions_20["default"] = _$defaultOptions_20.defaults = void 0; -// tslint:disable no-empty-interface -var defaults = { - base: { - preventDefault: 'auto', - deltaSource: 'page' - }, - perAction: { - enabled: false, - origin: { - x: 0, - y: 0 - } - }, - actions: {} -}; -_$defaultOptions_20.defaults = defaults; -var ___default_20 = defaults; -_$defaultOptions_20["default"] = ___default_20; - -var _$Eventable_14 = {}; -"use strict"; - -Object.defineProperty(_$Eventable_14, "__esModule", { - value: true -}); -_$Eventable_14["default"] = void 0; - -var __arr_14 = ___interopRequireWildcard_14(_$arr_47); - -var ___extend_14 = ___interopRequireDefault_14(_$extend_53); - -var ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_59); - -function ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_14() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; } - -function fireUntilImmediateStopped(event, listeners) { - for (var _i = 0; _i < listeners.length; _i++) { - var _ref; - - _ref = listeners[_i]; - var listener = _ref; - - if (event.immediatePropagationStopped) { - break; - } - - listener(event); - } -} - -var Eventable = -/*#__PURE__*/ -function () { - function Eventable(options) { - ___classCallCheck_14(this, Eventable); - - this.types = {}; - this.propagationStopped = false; - this.immediatePropagationStopped = false; - this.options = (0, ___extend_14["default"])({}, options || {}); - } - - ___createClass_14(Eventable, [{ - key: "fire", - value: function fire(event) { - var listeners; - var global = this.global; // Interactable#on() listeners - // tslint:disable no-conditional-assignment - - if (listeners = this.types[event.type]) { - fireUntilImmediateStopped(event, listeners); - } // interact.on() listeners - - - if (!event.propagationStopped && global && (listeners = global[event.type])) { - fireUntilImmediateStopped(event, listeners); - } - } - }, { - key: "on", - value: function on(type, listener) { - var listeners = (0, ___normalizeListeners_14["default"])(type, listener); - - for (type in listeners) { - this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]); - } - } - }, { - key: "off", - value: function off(type, listener) { - var listeners = (0, ___normalizeListeners_14["default"])(type, listener); - - for (type in listeners) { - var eventList = this.types[type]; - - if (!eventList || !eventList.length) { - continue; - } - - for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { - var _ref2; - - _ref2 = listeners[type][_i2]; - var subListener = _ref2; - var index = eventList.indexOf(subListener); - - if (index !== -1) { - eventList.splice(index, 1); - } - } - } - } - }, { - key: "getRect", - value: function getRect(_element) { - return null; - } - }]); - - return Eventable; -}(); - -var ___default_14 = Eventable; -_$Eventable_14["default"] = ___default_14; - -var _$Interactable_16 = {}; -"use strict"; - -Object.defineProperty(_$Interactable_16, "__esModule", { - value: true -}); -_$Interactable_16["default"] = _$Interactable_16.Interactable = void 0; - -var __arr_16 = ___interopRequireWildcard_16(_$arr_47); - -var ___browser_16 = ___interopRequireDefault_16(_$browser_48); - -var ___clone_16 = ___interopRequireDefault_16(_$clone_49); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___events_16 = ___interopRequireDefault_16(_$events_52); - -var ___extend_16 = ___interopRequireDefault_16(_$extend_53); - -var __is_16 = ___interopRequireWildcard_16(_$is_57); - -var ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_59); - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -var _Eventable = ___interopRequireDefault_16(_$Eventable_14); - -function ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_16() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; } - -/** */ -var Interactable = -/*#__PURE__*/ -function () { - /** */ - function Interactable(target, options, defaultContext) { - ___classCallCheck_16(this, Interactable); - - this.events = new _Eventable["default"](); - this._actions = options.actions; - this.target = target; - this._context = options.context || defaultContext; - this._win = (0, _$window_66.getWindow)((0, _$domUtils_51.trySelector)(target) ? this._context : target); - this._doc = this._win.document; - this.set(options); - } - - ___createClass_16(Interactable, [{ - key: "setOnEvents", - value: function setOnEvents(actionName, phases) { - if (__is_16.func(phases.onstart)) { - this.on("".concat(actionName, "start"), phases.onstart); - } - - if (__is_16.func(phases.onmove)) { - this.on("".concat(actionName, "move"), phases.onmove); - } - - if (__is_16.func(phases.onend)) { - this.on("".concat(actionName, "end"), phases.onend); - } - - if (__is_16.func(phases.oninertiastart)) { - this.on("".concat(actionName, "inertiastart"), phases.oninertiastart); - } - - return this; - } - }, { - key: "updatePerActionListeners", - value: function updatePerActionListeners(actionName, prev, cur) { - if (__is_16.array(prev) || __is_16.object(prev)) { - this.off(actionName, prev); - } - - if (__is_16.array(cur) || __is_16.object(cur)) { - this.on(actionName, cur); - } - } - }, { - key: "setPerAction", - value: function setPerAction(actionName, options) { - var defaults = this._defaults; // for all the default per-action options - - for (var optionName in options) { - var actionOptions = this.options[actionName]; - var optionValue = options[optionName]; - var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones - - if (optionName === 'listeners') { - this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue); - } // if the option value is an array - - - if (isArray) { - actionOptions[optionName] = __arr_16.from(optionValue); - } // if the option value is an object - else if (!isArray && __is_16.plainObject(optionValue)) { - // copy the object - actionOptions[optionName] = (0, ___extend_16["default"])(actionOptions[optionName] || {}, (0, ___clone_16["default"])(optionValue)); // set anabled field to true if it exists in the defaults - - if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) { - actionOptions[optionName].enabled = optionValue.enabled !== false; - } - } // if the option value is a boolean and the default is an object - else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) { - actionOptions[optionName].enabled = optionValue; - } // if it's anything else, do a plain assignment - else { - actionOptions[optionName] = optionValue; - } - } - } - /** - * The default function to get an Interactables bounding rect. Can be - * overridden using {@link Interactable.rectChecker}. - * - * @param {Element} [element] The element to measure. - * @return {object} The object's bounding rectangle. - */ - - }, { - key: "getRect", - value: function getRect(element) { - element = element || (__is_16.element(this.target) ? this.target : null); - - if (__is_16.string(this.target)) { - element = element || this._context.querySelector(this.target); - } - - return (0, _$domUtils_51.getElementRect)(element); - } - /** - * Returns or sets the function used to calculate the interactable's - * element's rectangle - * - * @param {function} [checker] A function which returns this Interactable's - * bounding rectangle. See {@link Interactable.getRect} - * @return {function | object} The checker function or this Interactable - */ - - }, { - key: "rectChecker", - value: function rectChecker(checker) { - if (__is_16.func(checker)) { - this.getRect = checker; - return this; - } - - if (checker === null) { - delete this.getRect; - return this; - } - - return this.getRect; - } - }, { - key: "_backCompatOption", - value: function _backCompatOption(optionName, newValue) { - if ((0, _$domUtils_51.trySelector)(newValue) || __is_16.object(newValue)) { - this.options[optionName] = newValue; - - for (var _i = 0; _i < this._actions.names.length; _i++) { - var _ref; - - _ref = this._actions.names[_i]; - var action = _ref; - this.options[action][optionName] = newValue; - } - - return this; - } - - return this.options[optionName]; - } - /** - * Gets or sets the origin of the Interactable's element. The x and y - * of the origin will be subtracted from action event coordinates. - * - * @param {Element | object | string} [origin] An HTML or SVG Element whose - * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self' - * or any CSS selector - * - * @return {object} The current origin or this Interactable - */ - - }, { - key: "origin", - value: function origin(newValue) { - return this._backCompatOption('origin', newValue); - } - /** - * Returns or sets the mouse coordinate types used to calculate the - * movement of the pointer. - * - * @param {string} [newValue] Use 'client' if you will be scrolling while - * interacting; Use 'page' if you want autoScroll to work - * @return {string | object} The current deltaSource or this Interactable - */ - - }, { - key: "deltaSource", - value: function deltaSource(newValue) { - if (newValue === 'page' || newValue === 'client') { - this.options.deltaSource = newValue; - return this; - } - - return this.options.deltaSource; - } - /** - * Gets the selector context Node of the Interactable. The default is - * `window.document`. - * - * @return {Node} The context Node of this Interactable - */ - - }, { - key: "context", - value: function context() { - return this._context; - } - }, { - key: "inContext", - value: function inContext(element) { - return this._context === element.ownerDocument || (0, _$domUtils_51.nodeContains)(this._context, element); - } - }, { - key: "testIgnoreAllow", - value: function testIgnoreAllow(options, targetNode, eventTarget) { - return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget); - } - }, { - key: "testAllow", - value: function testAllow(allowFrom, targetNode, element) { - if (!allowFrom) { - return true; - } - - if (!__is_16.element(element)) { - return false; - } - - if (__is_16.string(allowFrom)) { - return (0, _$domUtils_51.matchesUpTo)(element, allowFrom, targetNode); - } else if (__is_16.element(allowFrom)) { - return (0, _$domUtils_51.nodeContains)(allowFrom, element); - } - - return false; - } - }, { - key: "testIgnore", - value: function testIgnore(ignoreFrom, targetNode, element) { - if (!ignoreFrom || !__is_16.element(element)) { - return false; - } - - if (__is_16.string(ignoreFrom)) { - return (0, _$domUtils_51.matchesUpTo)(element, ignoreFrom, targetNode); - } else if (__is_16.element(ignoreFrom)) { - return (0, _$domUtils_51.nodeContains)(ignoreFrom, element); - } - - return false; - } - /** - * Calls listeners for the given InteractEvent type bound globally - * and directly to this Interactable - * - * @param {InteractEvent} iEvent The InteractEvent object to be fired on this - * Interactable - * @return {Interactable} this Interactable - */ - - }, { - key: "fire", - value: function fire(iEvent) { - this.events.fire(iEvent); - return this; - } - }, { - key: "_onOff", - value: function _onOff(method, typeArg, listenerArg, options) { - if (__is_16.object(typeArg) && !__is_16.array(typeArg)) { - options = listenerArg; - listenerArg = null; - } - - var addRemove = method === 'on' ? 'add' : 'remove'; - var listeners = (0, ___normalizeListeners_16["default"])(typeArg, listenerArg); - - for (var type in listeners) { - if (type === 'wheel') { - type = ___browser_16["default"].wheelEvent; - } - - for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { - var _ref2; - - _ref2 = listeners[type][_i2]; - var listener = _ref2; - - // if it is an action event type - if (__arr_16.contains(this._actions.eventTypes, type)) { - this.events[method](type, listener); - } // delegated event - else if (__is_16.string(this.target)) { - ___events_16["default"]["".concat(addRemove, "Delegate")](this.target, this._context, type, listener, options); - } // remove listener from this Interactable's element - else { - ___events_16["default"][addRemove](this.target, type, listener, options); - } - } - } - - return this; - } - /** - * Binds a listener for an InteractEvent, pointerEvent or DOM event. - * - * @param {string | array | object} types The types of events to listen - * for - * @param {function | array | object} [listener] The event listener function(s) - * @param {object | boolean} [options] options object or useCapture flag for - * addEventListener - * @return {Interactable} This Interactable - */ - - }, { - key: "on", - value: function on(types, listener, options) { - return this._onOff('on', types, listener, options); - } - /** - * Removes an InteractEvent, pointerEvent or DOM event listener. - * - * @param {string | array | object} types The types of events that were - * listened for - * @param {function | array | object} [listener] The event listener function(s) - * @param {object | boolean} [options] options object or useCapture flag for - * removeEventListener - * @return {Interactable} This Interactable - */ - - }, { - key: "off", - value: function off(types, listener, options) { - return this._onOff('off', types, listener, options); - } - /** - * Reset the options of this Interactable - * - * @param {object} options The new settings to apply - * @return {object} This Interactable - */ - - }, { - key: "set", - value: function set(options) { - var defaults = this._defaults; - - if (!__is_16.object(options)) { - options = {}; - } - - this.options = (0, ___clone_16["default"])(defaults.base); - - for (var actionName in this._actions.methodDict) { - var methodName = this._actions.methodDict[actionName]; - this.options[actionName] = {}; - this.setPerAction(actionName, (0, ___extend_16["default"])((0, ___extend_16["default"])({}, defaults.perAction), defaults.actions[actionName])); - this[methodName](options[actionName]); - } - - for (var setting in options) { - if (__is_16.func(this[setting])) { - this[setting](options[setting]); - } - } - - return this; - } - /** - * Remove this interactable from the list of interactables and remove it's - * action capabilities and event listeners - * - * @return {interact} - */ - - }, { - key: "unset", - value: function unset() { - ___events_16["default"].remove(this.target, 'all'); - - if (__is_16.string(this.target)) { - // remove delegated events - for (var type in ___events_16["default"].delegatedEvents) { - var delegated = ___events_16["default"].delegatedEvents[type]; - - if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) { - delegated.selectors.splice(0, 1); - delegated.contexts.splice(0, 1); - delegated.listeners.splice(0, 1); // remove the arrays if they are empty - - if (!delegated.selectors.length) { - delegated[type] = null; - } - } - - ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateListener); - - ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateUseCapture, true); - } - } else { - ___events_16["default"].remove(this.target, 'all'); - } - } - }, { - key: "_defaults", - get: function get() { - return { - base: {}, - perAction: {}, - actions: {} - }; - } - }]); - - return Interactable; -}(); - -_$Interactable_16.Interactable = Interactable; -var ___default_16 = Interactable; -_$Interactable_16["default"] = ___default_16; - -var _$InteractableSet_17 = {}; -"use strict"; - -Object.defineProperty(_$InteractableSet_17, "__esModule", { - value: true -}); -_$InteractableSet_17["default"] = void 0; - -var __arr_17 = ___interopRequireWildcard_17(_$arr_47); - -var __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_51); - -var ___extend_17 = ___interopRequireDefault_17(_$extend_53); - -var __is_17 = ___interopRequireWildcard_17(_$is_57); - -var ___Signals_17 = ___interopRequireDefault_17(_$Signals_46); - -function ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_17() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; } - -var InteractableSet = -/*#__PURE__*/ -function () { - function InteractableSet(scope) { - var _this = this; - - ___classCallCheck_17(this, InteractableSet); - - this.scope = scope; - this.signals = new ___Signals_17["default"](); // all set interactables - - this.list = []; - this.selectorMap = {}; - this.signals.on('unset', function (_ref) { - var interactable = _ref.interactable; - var target = interactable.target, - context = interactable._context; - var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id]; - var targetIndex = targetMappings.findIndex(function (m) { - return m.context === context; - }); - - if (targetMappings[targetIndex]) { - // Destroying mappingInfo's context and interactable - targetMappings[targetIndex].context = null; - targetMappings[targetIndex].interactable = null; - } - - targetMappings.splice(targetIndex, 1); - }); - } - - ___createClass_17(InteractableSet, [{ - key: "new", - value: function _new(target, options) { - options = (0, ___extend_17["default"])(options || {}, { - actions: this.scope.actions - }); - var interactable = new this.scope.Interactable(target, options, this.scope.document); - var mappingInfo = { - context: interactable._context, - interactable: interactable - }; - this.scope.addDocument(interactable._doc); - this.list.push(interactable); - - if (__is_17.string(target)) { - if (!this.selectorMap[target]) { - this.selectorMap[target] = []; - } - - this.selectorMap[target].push(mappingInfo); - } else { - if (!interactable.target[this.scope.id]) { - Object.defineProperty(target, this.scope.id, { - value: [], - configurable: true - }); - } - - target[this.scope.id].push(mappingInfo); - } - - this.signals.fire('new', { - target: target, - options: options, - interactable: interactable, - win: this.scope._win - }); - return interactable; - } - }, { - key: "get", - value: function get(target, options) { - var context = options && options.context || this.scope.document; - var isSelector = __is_17.string(target); - var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id]; - - if (!targetMappings) { - return null; - } - - var found = __arr_17.find(targetMappings, function (m) { - return m.context === context && (isSelector || m.interactable.inContext(target)); - }); - return found && found.interactable; - } - }, { - key: "forEachMatch", - value: function forEachMatch(node, callback) { - for (var _i = 0; _i < this.list.length; _i++) { - var _ref2; - - _ref2 = this.list[_i]; - var interactable = _ref2; - var ret = void 0; - - if ((__is_17.string(interactable.target) // target is a selector and the element matches - ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element - node === interactable.target) && // the element is in context - interactable.inContext(node)) { - ret = callback(interactable); - } - - if (ret !== undefined) { - return ret; - } - } - } - }]); - - return InteractableSet; -}(); - -_$InteractableSet_17["default"] = InteractableSet; - -var _$BaseEvent_13 = {}; -"use strict"; - -Object.defineProperty(_$BaseEvent_13, "__esModule", { - value: true -}); -_$BaseEvent_13["default"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0; - -function ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; } - -var EventPhase; -_$BaseEvent_13.EventPhase = EventPhase; - -(function (EventPhase) { - EventPhase["Start"] = "start"; - EventPhase["Move"] = "move"; - EventPhase["End"] = "end"; - EventPhase["_NONE"] = ""; -})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {})); - -var BaseEvent = -/*#__PURE__*/ -function () { - function BaseEvent(interaction) { - ___classCallCheck_13(this, BaseEvent); - - this.immediatePropagationStopped = false; - this.propagationStopped = false; - this._interaction = interaction; - } - - ___createClass_13(BaseEvent, [{ - key: "preventDefault", - value: function preventDefault() {} - /** - * Don't call any other listeners (even on the current target) - */ - - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - /** - * Don't call listeners on the remaining targets - */ - - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - }, { - key: "interaction", - get: function get() { - return this._interaction._proxy; - } - }]); - - return BaseEvent; -}(); - -_$BaseEvent_13.BaseEvent = BaseEvent; -var ___default_13 = BaseEvent; -_$BaseEvent_13["default"] = ___default_13; - -var _$InteractEvent_15 = {}; -"use strict"; - -Object.defineProperty(_$InteractEvent_15, "__esModule", { - value: true -}); -_$InteractEvent_15["default"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0; - -var ___extend_15 = ___interopRequireDefault_15(_$extend_53); - -var ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_54); - -var ___hypot_15 = ___interopRequireDefault_15(_$hypot_55); - -var _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13); - -var _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20); - -function ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_15(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_15(obj); } - -function ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; } - -function _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -var __EventPhase_15; -_$InteractEvent_15.EventPhase = __EventPhase_15; - -(function (EventPhase) { - EventPhase["Start"] = "start"; - EventPhase["Move"] = "move"; - EventPhase["End"] = "end"; - EventPhase["_NONE"] = ""; -})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {})); - -var InteractEvent = -/*#__PURE__*/ -function (_BaseEvent) { - _inherits(InteractEvent, _BaseEvent); - - /** */ - function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) { - var _this; - - ___classCallCheck_15(this, InteractEvent); - - _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction)); - element = element || interaction.element; - var target = interaction.interactable; - var deltaSource = (target && target.options || _defaultOptions["default"]).deltaSource; - var origin = (0, ___getOriginXY_15["default"])(target, element, actionName); - var starting = phase === 'start'; - var ending = phase === 'end'; - var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent; - var coords = starting ? interaction.coords.start : ending ? { - page: prevEvent.page, - client: prevEvent.client, - timeStamp: interaction.coords.cur.timeStamp - } : interaction.coords.cur; - _this.page = (0, ___extend_15["default"])({}, coords.page); - _this.client = (0, ___extend_15["default"])({}, coords.client); - _this.rect = (0, ___extend_15["default"])({}, interaction.rect); - _this.timeStamp = coords.timeStamp; - - if (!ending) { - _this.page.x -= origin.x; - _this.page.y -= origin.y; - _this.client.x -= origin.x; - _this.client.y -= origin.y; - } - - _this.ctrlKey = event.ctrlKey; - _this.altKey = event.altKey; - _this.shiftKey = event.shiftKey; - _this.metaKey = event.metaKey; - _this.button = event.button; - _this.buttons = event.buttons; - _this.target = element; - _this.currentTarget = element; - _this.relatedTarget = related || null; - _this.preEnd = preEnd; - _this.type = type || actionName + (phase || ''); - _this.interactable = target; - _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0; - _this.x0 = interaction.coords.start.page.x - origin.x; - _this.y0 = interaction.coords.start.page.y - origin.y; - _this.clientX0 = interaction.coords.start.client.x - origin.x; - _this.clientY0 = interaction.coords.start.client.y - origin.y; - - if (starting || ending) { - _this.delta = { - x: 0, - y: 0 - }; - } else { - _this.delta = { - x: _this[deltaSource].x - prevEvent[deltaSource].x, - y: _this[deltaSource].y - prevEvent[deltaSource].y - }; - } - - _this.dt = interaction.coords.delta.timeStamp; - _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second - - _this.velocity = (0, ___extend_15["default"])({}, interaction.coords.velocity[deltaSource]); - _this.speed = (0, ___hypot_15["default"])(_this.velocity.x, _this.velocity.y); - _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null; - return _this; - } - - ___createClass_15(InteractEvent, [{ - key: "getSwipe", - value: function getSwipe() { - var interaction = this._interaction; - - if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) { - return null; - } - - var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI; - var overlap = 22.5; - - if (angle < 0) { - angle += 360; - } - - var left = 135 - overlap <= angle && angle < 225 + overlap; - var up = 225 - overlap <= angle && angle < 315 + overlap; - var right = !left && (315 - overlap <= angle || angle < 45 + overlap); - var down = !up && 45 - overlap <= angle && angle < 135 + overlap; - return { - up: up, - down: down, - left: left, - right: right, - angle: angle, - speed: interaction.prevEvent.speed, - velocity: { - x: interaction.prevEvent.velocityX, - y: interaction.prevEvent.velocityY - } - }; - } - }, { - key: "preventDefault", - value: function preventDefault() {} - /** - * Don't call listeners on the remaining targets - */ - - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - /** - * Don't call any other listeners (even on the current target) - */ - - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - }, { - key: "pageX", - get: function get() { - return this.page.x; - }, - set: function set(value) { - this.page.x = value; - } - }, { - key: "pageY", - get: function get() { - return this.page.y; - }, - set: function set(value) { - this.page.y = value; - } - }, { - key: "clientX", - get: function get() { - return this.client.x; - }, - set: function set(value) { - this.client.x = value; - } - }, { - key: "clientY", - get: function get() { - return this.client.y; - }, - set: function set(value) { - this.client.y = value; - } - }, { - key: "dx", - get: function get() { - return this.delta.x; - }, - set: function set(value) { - this.delta.x = value; - } - }, { - key: "dy", - get: function get() { - return this.delta.y; - }, - set: function set(value) { - this.delta.y = value; - } - }, { - key: "velocityX", - get: function get() { - return this.velocity.x; - }, - set: function set(value) { - this.velocity.x = value; - } - }, { - key: "velocityY", - get: function get() { - return this.velocity.y; - }, - set: function set(value) { - this.velocity.y = value; - } - }]); - - return InteractEvent; -}(_BaseEvent2["default"]); - -_$InteractEvent_15.InteractEvent = InteractEvent; -var ___default_15 = InteractEvent; -_$InteractEvent_15["default"] = ___default_15; - -var _$PointerInfo_19 = {}; -"use strict"; - -Object.defineProperty(_$PointerInfo_19, "__esModule", { - value: true -}); -_$PointerInfo_19["default"] = _$PointerInfo_19.PointerInfo = void 0; - -function ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/* eslint-disable @typescript-eslint/no-parameter-properties */ -var PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) { - ___classCallCheck_19(this, PointerInfo); - - this.id = id; - this.pointer = pointer; - this.event = event; - this.downTime = downTime; - this.downTarget = downTarget; -}; - -_$PointerInfo_19.PointerInfo = PointerInfo; -var ___default_19 = PointerInfo; -_$PointerInfo_19["default"] = ___default_19; - -var _$interactionFinder_22 = {}; -"use strict"; - -Object.defineProperty(_$interactionFinder_22, "__esModule", { - value: true -}); -_$interactionFinder_22["default"] = void 0; - -var __dom_22 = ___interopRequireWildcard_22(_$domUtils_51); - -function ___getRequireWildcardCache_22() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -var finder = { - methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'], - search: function search(details) { - for (var _i = 0; _i < finder.methodOrder.length; _i++) { - var _ref; - - _ref = finder.methodOrder[_i]; - var method = _ref; - var interaction = finder[method](details); - - if (interaction) { - return interaction; - } - } - }, - // try to resume simulation with a new pointer - simulationResume: function simulationResume(_ref2) { - var pointerType = _ref2.pointerType, - eventType = _ref2.eventType, - eventTarget = _ref2.eventTarget, - scope = _ref2.scope; - - if (!/down|start/i.test(eventType)) { - return null; - } - - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref3; - - _ref3 = scope.interactions.list[_i2]; - var interaction = _ref3; - var element = eventTarget; - - if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) { - while (element) { - // if the element is the interaction element - if (element === interaction.element) { - return interaction; - } - - element = __dom_22.parentNode(element); - } - } - } - - return null; - }, - // if it's a mouse or pen interaction - mouseOrPen: function mouseOrPen(_ref4) { - var pointerId = _ref4.pointerId, - pointerType = _ref4.pointerType, - eventType = _ref4.eventType, - scope = _ref4.scope; - - if (pointerType !== 'mouse' && pointerType !== 'pen') { - return null; - } - - var firstNonActive; - - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref5; - - _ref5 = scope.interactions.list[_i3]; - var interaction = _ref5; - - if (interaction.pointerType === pointerType) { - // if it's a down event, skip interactions with running simulations - if (interaction.simulation && !hasPointerId(interaction, pointerId)) { - continue; - } // if the interaction is active, return it immediately - - - if (interaction.interacting()) { - return interaction; - } // otherwise save it and look for another active interaction - else if (!firstNonActive) { - firstNonActive = interaction; - } - } - } // if no active mouse interaction was found use the first inactive mouse - // interaction - - - if (firstNonActive) { - return firstNonActive; - } // find any mouse or pen interaction. - // ignore the interaction if the eventType is a *down, and a simulation - // is active - - - for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { - var _ref6; - - _ref6 = scope.interactions.list[_i4]; - var _interaction = _ref6; - - if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) { - return _interaction; - } - } - - return null; - }, - // get interaction that has this pointer - hasPointer: function hasPointer(_ref7) { - var pointerId = _ref7.pointerId, - scope = _ref7.scope; - - for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) { - var _ref8; - - _ref8 = scope.interactions.list[_i5]; - var interaction = _ref8; - - if (hasPointerId(interaction, pointerId)) { - return interaction; - } - } - - return null; - }, - // get first idle interaction with a matching pointerType - idle: function idle(_ref9) { - var pointerType = _ref9.pointerType, - scope = _ref9.scope; - - for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) { - var _ref10; - - _ref10 = scope.interactions.list[_i6]; - var interaction = _ref10; - - // if there's already a pointer held down - if (interaction.pointers.length === 1) { - var target = interaction.interactable; // don't add this pointer if there is a target interactable and it - // isn't gesturable - - if (target && !(target.options.gesture && target.options.gesture.enabled)) { - continue; - } - } // maximum of 2 pointers per interaction - else if (interaction.pointers.length >= 2) { - continue; - } - - if (!interaction.interacting() && pointerType === interaction.pointerType) { - return interaction; - } - } - - return null; - } -}; - -function hasPointerId(interaction, pointerId) { - return interaction.pointers.some(function (_ref11) { - var id = _ref11.id; - return id === pointerId; - }); -} - -var ___default_22 = finder; -_$interactionFinder_22["default"] = ___default_22; - -var _$drag_1 = {}; -"use strict"; - -Object.defineProperty(_$drag_1, "__esModule", { - value: true -}); -_$drag_1["default"] = void 0; - -var ___scope_1 = _$scope_24({}); - -var __arr_1 = ___interopRequireWildcard_1(_$arr_47); - -var __is_1 = ___interopRequireWildcard_1(_$is_57); - -function ___getRequireWildcardCache_1() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -___scope_1.ActionName.Drag = 'drag'; - -function __install_1(scope) { - var actions = scope.actions, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - interactions.signals.on('before-action-move', beforeMove); - interactions.signals.on('action-resume', beforeMove); // dragmove - - interactions.signals.on('action-move', move); - Interactable.prototype.draggable = drag.draggable; - actions[___scope_1.ActionName.Drag] = drag; - actions.names.push(___scope_1.ActionName.Drag); - __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']); - actions.methodDict.drag = 'draggable'; - defaults.actions.drag = drag.defaults; -} - -function beforeMove(_ref) { - var interaction = _ref.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var axis = interaction.prepared.axis; - - if (axis === 'x') { - interaction.coords.cur.page.y = interaction.coords.start.page.y; - interaction.coords.cur.client.y = interaction.coords.start.client.y; - interaction.coords.velocity.client.y = 0; - interaction.coords.velocity.page.y = 0; - } else if (axis === 'y') { - interaction.coords.cur.page.x = interaction.coords.start.page.x; - interaction.coords.cur.client.x = interaction.coords.start.client.x; - interaction.coords.velocity.client.x = 0; - interaction.coords.velocity.page.x = 0; - } -} - -function move(_ref2) { - var iEvent = _ref2.iEvent, - interaction = _ref2.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var axis = interaction.prepared.axis; - - if (axis === 'x' || axis === 'y') { - var opposite = axis === 'x' ? 'y' : 'x'; - iEvent.page[opposite] = interaction.coords.start.page[opposite]; - iEvent.client[opposite] = interaction.coords.start.client[opposite]; - iEvent.delta[opposite] = 0; - } -} -/** - * ```js - * interact(element).draggable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * // the axis in which the first movement must be - * // for the drag sequence to start - * // 'xy' by default - any direction - * startAxis: 'x' || 'y' || 'xy', - * - * // 'xy' by default - don't restrict to one axis (move in any direction) - * // 'x' or 'y' to restrict movement to either axis - * // 'start' to restrict movement to the axis the drag started in - * lockAxis: 'x' || 'y' || 'xy' || 'start', - * - * // max number of drags that can happen concurrently - * // with elements of this Interactable. Infinity by default - * max: Infinity, - * - * // max number of drags that can target the same element+Interactable - * // 1 by default - * maxPerElement: 2 - * }) - * - * var isDraggable = interact('element').draggable(); // true - * ``` - * - * Get or set whether drag actions can be performed on the target - * - * @alias Interactable.prototype.draggable - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on drag events (object makes the Interactable - * draggable) - * @return {boolean | Interactable} boolean indicating if this can be the - * target of drag events, or this Interctable - */ - - -var draggable = function draggable(options) { - if (__is_1.object(options)) { - this.options.drag.enabled = options.enabled !== false; - this.setPerAction('drag', options); - this.setOnEvents('drag', options); - - if (/^(xy|x|y|start)$/.test(options.lockAxis)) { - this.options.drag.lockAxis = options.lockAxis; - } - - if (/^(xy|x|y)$/.test(options.startAxis)) { - this.options.drag.startAxis = options.startAxis; - } - - return this; - } - - if (__is_1.bool(options)) { - this.options.drag.enabled = options; - return this; - } - - return this.options.drag; -}; - -var drag = { - id: 'actions/drag', - install: __install_1, - draggable: draggable, - beforeMove: beforeMove, - move: move, - defaults: { - startAxis: 'xy', - lockAxis: 'xy' - }, - checker: function checker(_pointer, _event, interactable) { - var dragOptions = interactable.options.drag; - return dragOptions.enabled ? { - name: 'drag', - axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis - } : null; - }, - getCursor: function getCursor() { - return 'move'; - } -}; -var ___default_1 = drag; -_$drag_1["default"] = ___default_1; - -var _$DropEvent_2 = {}; -"use strict"; - -Object.defineProperty(_$DropEvent_2, "__esModule", { - value: true -}); -_$DropEvent_2["default"] = void 0; - -var ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13); - -var __arr_2 = ___interopRequireWildcard_2(_$arr_47); - -function ___getRequireWildcardCache_2() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_2(obj); } - -function ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); } - -function ___nonIterableSpread_2() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -function ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; } - -function ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_2(self); } - -function ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); } - -function ___inherits_2(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); } - -function ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); } - -var DropEvent = -/*#__PURE__*/ -function (_BaseEvent) { - ___inherits_2(DropEvent, _BaseEvent); - - /** - * Class of events fired on dropzones during drags with acceptable targets. - */ - function DropEvent(dropState, dragEvent, type) { - var _this; - - ___classCallCheck_2(this, DropEvent); - - _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction)); - _this.propagationStopped = false; - _this.immediatePropagationStopped = false; - - var _ref = type === 'dragleave' ? dropState.prev : dropState.cur, - element = _ref.element, - dropzone = _ref.dropzone; - - _this.type = type; - _this.target = element; - _this.currentTarget = element; - _this.dropzone = dropzone; - _this.dragEvent = dragEvent; - _this.relatedTarget = dragEvent.target; - _this.draggable = dragEvent.interactable; - _this.timeStamp = dragEvent.timeStamp; - return _this; - } - /** - * If this is a `dropactivate` event, the dropzone element will be - * deactivated. - * - * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the - * dropzone element and more. - */ - - - ___createClass_2(DropEvent, [{ - key: "reject", - value: function reject() { - var _this2 = this; - - var dropState = this._interaction.dropState; - - if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) { - return; - } - - dropState.prev.dropzone = this.dropzone; - dropState.prev.element = this.target; - dropState.rejected = true; - dropState.events.enter = null; - this.stopImmediatePropagation(); - - if (this.type === 'dropactivate') { - var activeDrops = dropState.activeDrops; - var index = __arr_2.findIndex(activeDrops, function (_ref2) { - var dropzone = _ref2.dropzone, - element = _ref2.element; - return dropzone === _this2.dropzone && element === _this2.target; - }); - dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1))); - var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate'); - deactivateEvent.dropzone = this.dropzone; - deactivateEvent.target = this.target; - this.dropzone.fire(deactivateEvent); - } else { - this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave')); - } - } - }, { - key: "preventDefault", - value: function preventDefault() {} - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - }]); - - return DropEvent; -}(___BaseEvent2_2["default"]); - -var ___default_2 = DropEvent; -_$DropEvent_2["default"] = ___default_2; - -var _$drop_3 = {}; -"use strict"; - -Object.defineProperty(_$drop_3, "__esModule", { - value: true -}); -_$drop_3["default"] = void 0; - -var __utils_3 = ___interopRequireWildcard_3(_$utils_56); - -var _drag = ___interopRequireDefault_3(_$drag_1); - -var _DropEvent = ___interopRequireDefault_3(_$DropEvent_2); - -function ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_3() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_3(scope) { - var actions = scope.actions, - interact = scope.interact, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(_drag["default"]); - interactions.signals.on('before-action-start', function (_ref) { - var interaction = _ref.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - interaction.dropState = { - cur: { - dropzone: null, - element: null - }, - prev: { - dropzone: null, - element: null - }, - rejected: null, - events: null, - activeDrops: null - }; - }); - interactions.signals.on('after-action-start', function (_ref2) { - var interaction = _ref2.interaction, - event = _ref2.event, - dragEvent = _ref2.iEvent; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var dropState = interaction.dropState; // reset active dropzones - - dropState.activeDrops = null; - dropState.events = null; - dropState.activeDrops = getActiveDrops(scope, interaction.element); - dropState.events = getDropEvents(interaction, event, dragEvent); - - if (dropState.events.activate) { - fireActivationEvents(dropState.activeDrops, dropState.events.activate); - } - }); // FIXME proper signal types - - interactions.signals.on('action-move', function (arg) { - return onEventCreated(arg, scope); - }); - interactions.signals.on('action-end', function (arg) { - return onEventCreated(arg, scope); - }); - interactions.signals.on('after-action-move', function (_ref3) { - var interaction = _ref3.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - fireDropEvents(interaction, interaction.dropState.events); - interaction.dropState.events = {}; - }); - interactions.signals.on('after-action-end', function (_ref4) { - var interaction = _ref4.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - fireDropEvents(interaction, interaction.dropState.events); - }); - interactions.signals.on('stop', function (_ref5) { - var interaction = _ref5.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var dropState = interaction.dropState; - - if (dropState) { - dropState.activeDrops = null; - dropState.events = null; - dropState.cur.dropzone = null; - dropState.cur.element = null; - dropState.prev.dropzone = null; - dropState.prev.element = null; - dropState.rejected = false; - } - }); - /** - * - * ```js - * interact('.drop').dropzone({ - * accept: '.can-drop' || document.getElementById('single-drop'), - * overlap: 'pointer' || 'center' || zeroToOne - * } - * ``` - * - * Returns or sets whether draggables can be dropped onto this target to - * trigger drop events - * - * Dropzones can receive the following events: - * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends - * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone - * - `dragmove` when a draggable that has entered the dropzone is moved - * - `drop` when a draggable is dropped into this dropzone - * - * Use the `accept` option to allow only elements that match the given CSS - * selector or element. The value can be: - * - * - **an Element** - only that element can be dropped into this dropzone. - * - **a string**, - the element being dragged must match it as a CSS selector. - * - **`null`** - accept options is cleared - it accepts any element. - * - * Use the `overlap` option to set how drops are checked for. The allowed - * values are: - * - * - `'pointer'`, the pointer must be over the dropzone (default) - * - `'center'`, the draggable element's center must be over the dropzone - * - a number from 0-1 which is the `(intersection area) / (draggable area)`. - * e.g. `0.5` for drop to happen when half of the area of the draggable is - * over the dropzone - * - * Use the `checker` option to specify a function to check if a dragged element - * is over this Interactable. - * - * @param {boolean | object | null} [options] The new options to be set. - * @return {boolean | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.dropzone = function (options) { - return dropzoneMethod(this, options); - }; - /** - * ```js - * interact(target) - * .dropChecker(function(dragEvent, // related dragmove or dragend event - * event, // TouchEvent/PointerEvent/MouseEvent - * dropped, // bool result of the default checker - * dropzone, // dropzone Interactable - * dropElement, // dropzone elemnt - * draggable, // draggable Interactable - * draggableElement) {// draggable element - * - * return dropped && event.target.hasAttribute('allow-drop') - * } - * ``` - */ - - - Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) { - return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect); - }; - /** - * Returns or sets whether the dimensions of dropzone elements are calculated - * on every dragmove or only on dragstart for the default dropChecker - * - * @param {boolean} [newValue] True to check on each move. False to check only - * before start - * @return {boolean | interact} The current setting or interact - */ - - - interact.dynamicDrop = function (newValue) { - if (__utils_3.is.bool(newValue)) { - // if (dragging && scope.dynamicDrop !== newValue && !newValue) { - // calcRects(dropzones) - // } - scope.dynamicDrop = newValue; - return interact; - } - - return scope.dynamicDrop; - }; - - __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']); - actions.methodDict.drop = 'dropzone'; - scope.dynamicDrop = false; - defaults.actions.drop = drop.defaults; -} - -function collectDrops(_ref6, draggableElement) { - var interactables = _ref6.interactables; - var drops = []; // collect all dropzones and their elements which qualify for a drop - - for (var _i = 0; _i < interactables.list.length; _i++) { - var _ref7; - - _ref7 = interactables.list[_i]; - var dropzone = _ref7; - - if (!dropzone.options.drop.enabled) { - continue; - } - - var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting - - if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({ - dropzone: dropzone, - draggableElement: draggableElement - })) { - continue; - } // query for new elements if necessary - - - var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target]; - - for (var _i2 = 0; _i2 < dropElements.length; _i2++) { - var _ref8; - - _ref8 = dropElements[_i2]; - var dropzoneElement = _ref8; - - if (dropzoneElement !== draggableElement) { - drops.push({ - dropzone: dropzone, - element: dropzoneElement - }); - } - } - } - - return drops; -} - -function fireActivationEvents(activeDrops, event) { - // loop through all active dropzones and trigger event - for (var _i3 = 0; _i3 < activeDrops.length; _i3++) { - var _ref9; - - _ref9 = activeDrops[_i3]; - var _ref10 = _ref9, - dropzone = _ref10.dropzone, - element = _ref10.element; - event.dropzone = dropzone; // set current element as event target - - event.target = element; - dropzone.fire(event); - event.propagationStopped = event.immediatePropagationStopped = false; - } -} // return a new array of possible drops. getActiveDrops should always be -// called when a drag has just started or a drag event happens while -// dynamicDrop is true - - -function getActiveDrops(scope, dragElement) { - // get dropzones and their elements that could receive the draggable - var activeDrops = collectDrops(scope, dragElement); - - for (var _i4 = 0; _i4 < activeDrops.length; _i4++) { - var _ref11; - - _ref11 = activeDrops[_i4]; - var activeDrop = _ref11; - activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element); - } - - return activeDrops; -} - -function getDrop(_ref12, dragEvent, pointerEvent) { - var dropState = _ref12.dropState, - draggable = _ref12.interactable, - dragElement = _ref12.element; - var validDrops = []; // collect all dropzones and their elements which qualify for a drop - - for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) { - var _ref13; - - _ref13 = dropState.activeDrops[_i5]; - var _ref14 = _ref13, - dropzone = _ref14.dropzone, - dropzoneElement = _ref14.element, - rect = _ref14.rect; - validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null); - } // get the most appropriate dropzone based on DOM depth and order - - - var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops); - return dropState.activeDrops[dropIndex] || null; -} - -function getDropEvents(interaction, _pointerEvent, dragEvent) { - var dropState = interaction.dropState; - var dropEvents = { - enter: null, - leave: null, - activate: null, - deactivate: null, - move: null, - drop: null - }; - - if (dragEvent.type === 'dragstart') { - dropEvents.activate = new _DropEvent["default"](dropState, dragEvent, 'dropactivate'); - dropEvents.activate.target = null; - dropEvents.activate.dropzone = null; - } - - if (dragEvent.type === 'dragend') { - dropEvents.deactivate = new _DropEvent["default"](dropState, dragEvent, 'dropdeactivate'); - dropEvents.deactivate.target = null; - dropEvents.deactivate.dropzone = null; - } - - if (dropState.rejected) { - return dropEvents; - } - - if (dropState.cur.element !== dropState.prev.element) { - // if there was a previous dropzone, create a dragleave event - if (dropState.prev.dropzone) { - dropEvents.leave = new _DropEvent["default"](dropState, dragEvent, 'dragleave'); - dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element; - dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone; - } // if dropzone is not null, create a dragenter event - - - if (dropState.cur.dropzone) { - dropEvents.enter = new _DropEvent["default"](dropState, dragEvent, 'dragenter'); - dragEvent.dragEnter = dropState.cur.element; - dragEvent.dropzone = dropState.cur.dropzone; - } - } - - if (dragEvent.type === 'dragend' && dropState.cur.dropzone) { - dropEvents.drop = new _DropEvent["default"](dropState, dragEvent, 'drop'); - dragEvent.dropzone = dropState.cur.dropzone; - dragEvent.relatedTarget = dropState.cur.element; - } - - if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) { - dropEvents.move = new _DropEvent["default"](dropState, dragEvent, 'dropmove'); - dropEvents.move.dragmove = dragEvent; - dragEvent.dropzone = dropState.cur.dropzone; - } - - return dropEvents; -} - -function fireDropEvents(interaction, events) { - var dropState = interaction.dropState; - var activeDrops = dropState.activeDrops, - cur = dropState.cur, - prev = dropState.prev; - - if (events.leave) { - prev.dropzone.fire(events.leave); - } - - if (events.move) { - cur.dropzone.fire(events.move); - } - - if (events.enter) { - cur.dropzone.fire(events.enter); - } - - if (events.drop) { - cur.dropzone.fire(events.drop); - } - - if (events.deactivate) { - fireActivationEvents(activeDrops, events.deactivate); - } - - dropState.prev.dropzone = cur.dropzone; - dropState.prev.element = cur.element; -} - -function onEventCreated(_ref15, scope) { - var interaction = _ref15.interaction, - iEvent = _ref15.iEvent, - event = _ref15.event; - - if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') { - return; - } - - var dropState = interaction.dropState; - - if (scope.dynamicDrop) { - dropState.activeDrops = getActiveDrops(scope, interaction.element); - } - - var dragEvent = iEvent; - var dropResult = getDrop(interaction, dragEvent, event); // update rejected status - - dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element; - dropState.cur.dropzone = dropResult && dropResult.dropzone; - dropState.cur.element = dropResult && dropResult.element; - dropState.events = getDropEvents(interaction, event, dragEvent); -} - -function dropzoneMethod(interactable, options) { - if (__utils_3.is.object(options)) { - interactable.options.drop.enabled = options.enabled !== false; - - if (options.listeners) { - var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop' - - var corrected = Object.keys(normalized).reduce(function (acc, type) { - var correctedType = /^(enter|leave)/.test(type) ? "drag".concat(type) : /^(activate|deactivate|move)/.test(type) ? "drop".concat(type) : type; - acc[correctedType] = normalized[type]; - return acc; - }, {}); - interactable.off(interactable.options.drop.listeners); - interactable.on(corrected); - interactable.options.drop.listeners = corrected; - } - - if (__utils_3.is.func(options.ondrop)) { - interactable.on('drop', options.ondrop); - } - - if (__utils_3.is.func(options.ondropactivate)) { - interactable.on('dropactivate', options.ondropactivate); - } - - if (__utils_3.is.func(options.ondropdeactivate)) { - interactable.on('dropdeactivate', options.ondropdeactivate); - } - - if (__utils_3.is.func(options.ondragenter)) { - interactable.on('dragenter', options.ondragenter); - } - - if (__utils_3.is.func(options.ondragleave)) { - interactable.on('dragleave', options.ondragleave); - } - - if (__utils_3.is.func(options.ondropmove)) { - interactable.on('dropmove', options.ondropmove); - } - - if (/^(pointer|center)$/.test(options.overlap)) { - interactable.options.drop.overlap = options.overlap; - } else if (__utils_3.is.number(options.overlap)) { - interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0); - } - - if ('accept' in options) { - interactable.options.drop.accept = options.accept; - } - - if ('checker' in options) { - interactable.options.drop.checker = options.checker; - } - - return interactable; - } - - if (__utils_3.is.bool(options)) { - interactable.options.drop.enabled = options; - return interactable; - } - - return interactable.options.drop; -} - -function dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) { - var dropped = false; // if the dropzone has no rect (eg. display: none) - // call the custom dropChecker or just return false - - if (!(rect = rect || interactable.getRect(dropElement))) { - return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false; - } - - var dropOverlap = interactable.options.drop.overlap; - - if (dropOverlap === 'pointer') { - var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag'); - var page = __utils_3.pointer.getPageXY(dragEvent); - page.x += origin.x; - page.y += origin.y; - var horizontal = page.x > rect.left && page.x < rect.right; - var vertical = page.y > rect.top && page.y < rect.bottom; - dropped = horizontal && vertical; - } - - var dragRect = draggable.getRect(draggableElement); - - if (dragRect && dropOverlap === 'center') { - var cx = dragRect.left + dragRect.width / 2; - var cy = dragRect.top + dragRect.height / 2; - dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom; - } - - if (dragRect && __utils_3.is.number(dropOverlap)) { - var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top)); - var overlapRatio = overlapArea / (dragRect.width * dragRect.height); - dropped = overlapRatio >= dropOverlap; - } - - if (interactable.options.drop.checker) { - dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement); - } - - return dropped; -} - -var drop = { - id: 'actions/drop', - install: __install_3, - getActiveDrops: getActiveDrops, - getDrop: getDrop, - getDropEvents: getDropEvents, - fireDropEvents: fireDropEvents, - defaults: { - enabled: false, - accept: null, - overlap: 'pointer' - } -}; -var ___default_3 = drop; -_$drop_3["default"] = ___default_3; - -var _$gesture_4 = {}; -"use strict"; - -Object.defineProperty(_$gesture_4, "__esModule", { - value: true -}); -_$gesture_4["default"] = void 0; - -var ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15); - -var ___scope_4 = _$scope_24({}); - -var __utils_4 = ___interopRequireWildcard_4(_$utils_56); - -function ___getRequireWildcardCache_4() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -___scope_4.ActionName.Gesture = 'gesture'; - -function __install_4(scope) { - var actions = scope.actions, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - /** - * ```js - * interact(element).gesturable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * // limit multiple gestures. - * // See the explanation in {@link Interactable.draggable} example - * max: Infinity, - * maxPerElement: 1, - * }) - * - * var isGestureable = interact(element).gesturable() - * ``` - * - * Gets or sets whether multitouch gestures can be performed on the target - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on gesture events (makes the Interactable gesturable) - * @return {boolean | Interactable} A boolean indicating if this can be the - * target of gesture events, or this Interactable - */ - - Interactable.prototype.gesturable = function (options) { - if (__utils_4.is.object(options)) { - this.options.gesture.enabled = options.enabled !== false; - this.setPerAction('gesture', options); - this.setOnEvents('gesture', options); - return this; - } - - if (__utils_4.is.bool(options)) { - this.options.gesture.enabled = options; - return this; - } - - return this.options.gesture; - }; - - interactions.signals.on('action-start', updateGestureProps); - interactions.signals.on('action-move', updateGestureProps); - interactions.signals.on('action-end', updateGestureProps); - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.gesture = { - angle: 0, - distance: 0, - scale: 1, - startAngle: 0, - startDistance: 0 - }; - }); - actions[___scope_4.ActionName.Gesture] = gesture; - actions.names.push(___scope_4.ActionName.Gesture); - __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']); - actions.methodDict.gesture = 'gesturable'; - defaults.actions.gesture = gesture.defaults; -} - -var gesture = { - id: 'actions/gesture', - install: __install_4, - defaults: {}, - checker: function checker(_pointer, _event, _interactable, _element, interaction) { - if (interaction.pointers.length >= 2) { - return { - name: 'gesture' - }; - } - - return null; - }, - getCursor: function getCursor() { - return ''; - } -}; - -function updateGestureProps(_ref2) { - var interaction = _ref2.interaction, - iEvent = _ref2.iEvent, - event = _ref2.event, - phase = _ref2.phase; - - if (interaction.prepared.name !== 'gesture') { - return; - } - - var pointers = interaction.pointers.map(function (p) { - return p.pointer; - }); - var starting = phase === 'start'; - var ending = phase === 'end'; - var deltaSource = interaction.interactable.options.deltaSource; - iEvent.touches = [pointers[0], pointers[1]]; - - if (starting) { - iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); - iEvent.box = __utils_4.pointer.touchBBox(pointers); - iEvent.scale = 1; - iEvent.ds = 0; - iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); - iEvent.da = 0; - interaction.gesture.startDistance = iEvent.distance; - interaction.gesture.startAngle = iEvent.angle; - } else if (ending || event instanceof ___InteractEvent_4["default"]) { - var prevEvent = interaction.prevEvent; - iEvent.distance = prevEvent.distance; - iEvent.box = prevEvent.box; - iEvent.scale = prevEvent.scale; - iEvent.ds = 0; - iEvent.angle = prevEvent.angle; - iEvent.da = 0; - } else { - iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); - iEvent.box = __utils_4.pointer.touchBBox(pointers); - iEvent.scale = iEvent.distance / interaction.gesture.startDistance; - iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); - iEvent.ds = iEvent.scale - interaction.gesture.scale; - iEvent.da = iEvent.angle - interaction.gesture.angle; - } - - interaction.gesture.distance = iEvent.distance; - interaction.gesture.angle = iEvent.angle; - - if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) { - interaction.gesture.scale = iEvent.scale; - } -} - -var ___default_4 = gesture; -_$gesture_4["default"] = ___default_4; - -var _$resize_6 = {}; -"use strict"; - -Object.defineProperty(_$resize_6, "__esModule", { - value: true -}); -_$resize_6["default"] = void 0; - -var ___scope_6 = _$scope_24({}); - -var __arr_6 = ___interopRequireWildcard_6(_$arr_47); - -var __dom_6 = ___interopRequireWildcard_6(_$domUtils_51); - -var ___extend_6 = ___interopRequireDefault_6(_$extend_53); - -var __is_6 = ___interopRequireWildcard_6(_$is_57); - -function ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_6() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -___scope_6.ActionName.Resize = 'resize'; - -function __install_6(scope) { - var actions = scope.actions, - browser = scope.browser, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; // Less Precision with touch input - - interactions.signals.on('new', function (interaction) { - interaction.resizeAxes = 'xy'; - }); - interactions.signals.on('action-start', start); - interactions.signals.on('action-move', __move_6); - interactions.signals.on('action-end', end); - interactions.signals.on('action-start', updateEventAxes); - interactions.signals.on('action-move', updateEventAxes); - resize.cursors = initCursors(browser); - resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10; - /** - * ```js - * interact(element).resizable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * edges: { - * top : true, // Use pointer coords to check for resize. - * left : false, // Disable resizing from left edge. - * bottom: '.resize-s',// Resize if pointer target matches selector - * right : handleEl // Resize if pointer target is the given Element - * }, - * - * // Width and height can be adjusted independently. When `true`, width and - * // height are adjusted at a 1:1 ratio. - * square: false, - * - * // Width and height can be adjusted independently. When `true`, width and - * // height maintain the aspect ratio they had when resizing started. - * preserveAspectRatio: false, - * - * // a value of 'none' will limit the resize rect to a minimum of 0x0 - * // 'negate' will allow the rect to have negative width/height - * // 'reposition' will keep the width/height positive by swapping - * // the top and bottom edges and/or swapping the left and right edges - * invert: 'none' || 'negate' || 'reposition' - * - * // limit multiple resizes. - * // See the explanation in the {@link Interactable.draggable} example - * max: Infinity, - * maxPerElement: 1, - * }) - * - * var isResizeable = interact(element).resizable() - * ``` - * - * Gets or sets whether resize actions can be performed on the target - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on resize events (object makes the Interactable - * resizable) - * @return {boolean | Interactable} A boolean indicating if this can be the - * target of resize elements, or this Interactable - */ - - Interactable.prototype.resizable = function (options) { - return resizable(this, options, scope); - }; - - actions[___scope_6.ActionName.Resize] = resize; - actions.names.push(___scope_6.ActionName.Resize); - __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']); - actions.methodDict.resize = 'resizable'; - defaults.actions.resize = resize.defaults; -} - -var resize = { - id: 'actions/resize', - install: __install_6, - defaults: { - square: false, - preserveAspectRatio: false, - axis: 'xy', - // use default margin - margin: NaN, - // object with props left, right, top, bottom which are - // true/false values to resize when the pointer is over that edge, - // CSS selectors to match the handles for each direction - // or the Elements for each handle - edges: null, - // a value of 'none' will limit the resize rect to a minimum of 0x0 - // 'negate' will alow the rect to have negative width/height - // 'reposition' will keep the width/height positive by swapping - // the top and bottom edges and/or swapping the left and right edges - invert: 'none' - }, - checker: function checker(_pointer, _event, interactable, element, interaction, rect) { - if (!rect) { - return null; - } - - var page = (0, ___extend_6["default"])({}, interaction.coords.cur.page); - var options = interactable.options; - - if (options.resize.enabled) { - var resizeOptions = options.resize; - var resizeEdges = { - left: false, - right: false, - top: false, - bottom: false - }; // if using resize.edges - - if (__is_6.object(resizeOptions.edges)) { - for (var edge in resizeEdges) { - resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin); - } - - resizeEdges.left = resizeEdges.left && !resizeEdges.right; - resizeEdges.top = resizeEdges.top && !resizeEdges.bottom; - - if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) { - return { - name: 'resize', - edges: resizeEdges - }; - } - } else { - var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin; - var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin; - - if (right || bottom) { - return { - name: 'resize', - axes: (right ? 'x' : '') + (bottom ? 'y' : '') - }; - } - } - } - - return null; - }, - cursors: null, - getCursor: function getCursor(_ref) { - var edges = _ref.edges, - axis = _ref.axis, - name = _ref.name; - var cursors = resize.cursors; - var result = null; - - if (axis) { - result = cursors[name + axis]; - } else if (edges) { - var cursorKey = ''; - var _arr = ['top', 'bottom', 'left', 'right']; - - for (var _i = 0; _i < _arr.length; _i++) { - var edge = _arr[_i]; - - if (edges[edge]) { - cursorKey += edge; - } - } - - result = cursors[cursorKey]; - } - - return result; - }, - defaultMargin: null -}; - -function resizable(interactable, options, scope) { - if (__is_6.object(options)) { - interactable.options.resize.enabled = options.enabled !== false; - interactable.setPerAction('resize', options); - interactable.setOnEvents('resize', options); - - if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) { - interactable.options.resize.axis = options.axis; - } else if (options.axis === null) { - interactable.options.resize.axis = scope.defaults.actions.resize.axis; - } - - if (__is_6.bool(options.preserveAspectRatio)) { - interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio; - } else if (__is_6.bool(options.square)) { - interactable.options.resize.square = options.square; - } - - return interactable; - } - - if (__is_6.bool(options)) { - interactable.options.resize.enabled = options; - return interactable; - } - - return interactable.options.resize; -} - -function checkResizeEdge(name, value, page, element, interactableElement, rect, margin) { - // false, '', undefined, null - if (!value) { - return false; - } // true value, use pointer coords and element rect - - - if (value === true) { - // if dimensions are negative, "switch" edges - var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left; - var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension - - margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2); - - if (width < 0) { - if (name === 'left') { - name = 'right'; - } else if (name === 'right') { - name = 'left'; - } - } - - if (height < 0) { - if (name === 'top') { - name = 'bottom'; - } else if (name === 'bottom') { - name = 'top'; - } - } - - if (name === 'left') { - return page.x < (width >= 0 ? rect.left : rect.right) + margin; - } - - if (name === 'top') { - return page.y < (height >= 0 ? rect.top : rect.bottom) + margin; - } - - if (name === 'right') { - return page.x > (width >= 0 ? rect.right : rect.left) - margin; - } - - if (name === 'bottom') { - return page.y > (height >= 0 ? rect.bottom : rect.top) - margin; - } - } // the remaining checks require an element - - - if (!__is_6.element(element)) { - return false; - } - - return __is_6.element(value) // the value is an element to use as a resize handle - ? value === element // otherwise check if element matches value as selector - : __dom_6.matchesUpTo(element, value, interactableElement); -} - -function initCursors(browser) { - return browser.isIe9 ? { - x: 'e-resize', - y: 's-resize', - xy: 'se-resize', - top: 'n-resize', - left: 'w-resize', - bottom: 's-resize', - right: 'e-resize', - topleft: 'se-resize', - bottomright: 'se-resize', - topright: 'ne-resize', - bottomleft: 'ne-resize' - } : { - x: 'ew-resize', - y: 'ns-resize', - xy: 'nwse-resize', - top: 'ns-resize', - left: 'ew-resize', - bottom: 'ns-resize', - right: 'ew-resize', - topleft: 'nwse-resize', - bottomright: 'nwse-resize', - topright: 'nesw-resize', - bottomleft: 'nesw-resize' - }; -} - -function start(_ref2) { - var iEvent = _ref2.iEvent, - interaction = _ref2.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - var startRect = (0, ___extend_6["default"])({}, interaction.rect); - var resizeOptions = interaction.interactable.options.resize; - /* - * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge - * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make - * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend - * on the active edges and the edge being interacted with. - */ - - if (resizeOptions.square || resizeOptions.preserveAspectRatio) { - var linkedEdges = (0, ___extend_6["default"])({}, interaction.prepared.edges); - linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom; - linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right; - linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top; - linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left; - interaction.prepared._linkedEdges = linkedEdges; - } else { - interaction.prepared._linkedEdges = null; - } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize - - - if (resizeOptions.preserveAspectRatio) { - interaction.resizeStartAspectRatio = startRect.width / startRect.height; - } - - interaction.resizeRects = { - start: startRect, - current: { - left: startRect.left, - right: startRect.right, - top: startRect.top, - bottom: startRect.bottom - }, - inverted: (0, ___extend_6["default"])({}, startRect), - previous: (0, ___extend_6["default"])({}, startRect), - delta: { - left: 0, - right: 0, - width: 0, - top: 0, - bottom: 0, - height: 0 - } - }; - iEvent.edges = interaction.prepared.edges; - iEvent.rect = interaction.resizeRects.inverted; - iEvent.deltaRect = interaction.resizeRects.delta; -} - -function __move_6(_ref3) { - var iEvent = _ref3.iEvent, - interaction = _ref3.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - var resizeOptions = interaction.interactable.options.resize; - var invert = resizeOptions.invert; - var invertible = invert === 'reposition' || invert === 'negate'; - var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow - - var start = interaction.resizeRects.start; - var current = interaction.resizeRects.current; - var inverted = interaction.resizeRects.inverted; - var deltaRect = interaction.resizeRects.delta; - var previous = (0, ___extend_6["default"])(interaction.resizeRects.previous, inverted); - var originalEdges = edges; - var eventDelta = (0, ___extend_6["default"])({}, iEvent.delta); - - if (resizeOptions.preserveAspectRatio || resizeOptions.square) { - // `resize.preserveAspectRatio` takes precedence over `resize.square` - var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1; - edges = interaction.prepared._linkedEdges; - - if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) { - eventDelta.y = -eventDelta.x / startAspectRatio; - } else if (originalEdges.left || originalEdges.right) { - eventDelta.y = eventDelta.x / startAspectRatio; - } else if (originalEdges.top || originalEdges.bottom) { - eventDelta.x = eventDelta.y * startAspectRatio; - } - } // update the 'current' rect without modifications - - - if (edges.top) { - current.top += eventDelta.y; - } - - if (edges.bottom) { - current.bottom += eventDelta.y; - } - - if (edges.left) { - current.left += eventDelta.x; - } - - if (edges.right) { - current.right += eventDelta.x; - } - - if (invertible) { - // if invertible, copy the current rect - (0, ___extend_6["default"])(inverted, current); - - if (invert === 'reposition') { - // swap edge values if necessary to keep width/height positive - var swap; - - if (inverted.top > inverted.bottom) { - swap = inverted.top; - inverted.top = inverted.bottom; - inverted.bottom = swap; - } - - if (inverted.left > inverted.right) { - swap = inverted.left; - inverted.left = inverted.right; - inverted.right = swap; - } - } - } else { - // if not invertible, restrict to minimum of 0x0 rect - inverted.top = Math.min(current.top, start.bottom); - inverted.bottom = Math.max(current.bottom, start.top); - inverted.left = Math.min(current.left, start.right); - inverted.right = Math.max(current.right, start.left); - } - - inverted.width = inverted.right - inverted.left; - inverted.height = inverted.bottom - inverted.top; - - for (var edge in inverted) { - deltaRect[edge] = inverted[edge] - previous[edge]; - } - - iEvent.edges = interaction.prepared.edges; - iEvent.rect = inverted; - iEvent.deltaRect = deltaRect; -} - -function end(_ref4) { - var iEvent = _ref4.iEvent, - interaction = _ref4.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - iEvent.edges = interaction.prepared.edges; - iEvent.rect = interaction.resizeRects.inverted; - iEvent.deltaRect = interaction.resizeRects.delta; -} - -function updateEventAxes(_ref5) { - var iEvent = _ref5.iEvent, - interaction = _ref5.interaction, - action = _ref5.action; - - if (action !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) { - return; - } - - var options = interaction.interactable.options; - - if (options.resize.square) { - if (interaction.resizeAxes === 'y') { - iEvent.delta.x = iEvent.delta.y; - } else { - iEvent.delta.y = iEvent.delta.x; - } - - iEvent.axes = 'xy'; - } else { - iEvent.axes = interaction.resizeAxes; - - if (interaction.resizeAxes === 'x') { - iEvent.delta.y = 0; - } else if (interaction.resizeAxes === 'y') { - iEvent.delta.x = 0; - } - } -} - -var ___default_6 = resize; -_$resize_6["default"] = ___default_6; - -var _$actions_5 = {}; -"use strict"; - -Object.defineProperty(_$actions_5, "__esModule", { - value: true -}); -_$actions_5.install = __install_5; -Object.defineProperty(_$actions_5, "drag", { - enumerable: true, - get: function get() { - return ___drag_5["default"]; - } -}); -Object.defineProperty(_$actions_5, "drop", { - enumerable: true, - get: function get() { - return _drop["default"]; - } -}); -Object.defineProperty(_$actions_5, "gesture", { - enumerable: true, - get: function get() { - return _gesture["default"]; - } -}); -Object.defineProperty(_$actions_5, "resize", { - enumerable: true, - get: function get() { - return _resize["default"]; - } -}); -_$actions_5.id = void 0; - -var ___drag_5 = ___interopRequireDefault_5(_$drag_1); - -var _drop = ___interopRequireDefault_5(_$drop_3); - -var _gesture = ___interopRequireDefault_5(_$gesture_4); - -var _resize = ___interopRequireDefault_5(_$resize_6); - -function ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_5(scope) { - scope.usePlugin(_gesture["default"]); - scope.usePlugin(_resize["default"]); - scope.usePlugin(___drag_5["default"]); - scope.usePlugin(_drop["default"]); -} - -var id = 'actions'; -_$actions_5.id = id; - -var _$autoScroll_7 = {}; -"use strict"; - -Object.defineProperty(_$autoScroll_7, "__esModule", { - value: true -}); -_$autoScroll_7.getContainer = getContainer; -_$autoScroll_7.getScroll = getScroll; -_$autoScroll_7.getScrollSize = getScrollSize; -_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta; -_$autoScroll_7["default"] = void 0; - -var __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_51); - -var __is_7 = ___interopRequireWildcard_7(_$is_57); - -var ___raf_7 = ___interopRequireDefault_7(_$raf_62); - -/* removed: var _$rect_63 = require("@interactjs/utils/rect"); */; - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -function ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_7() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_7(scope) { - var interactions = scope.interactions, - defaults = scope.defaults, - actions = scope.actions; - scope.autoScroll = autoScroll; - - autoScroll.now = function () { - return scope.now(); - }; - - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.autoScroll = null; - }); - interactions.signals.on('destroy', function (_ref2) { - var interaction = _ref2.interaction; - interaction.autoScroll = null; - autoScroll.stop(); - - if (autoScroll.interaction) { - autoScroll.interaction = null; - } - }); - interactions.signals.on('stop', autoScroll.stop); - interactions.signals.on('action-move', function (arg) { - return autoScroll.onInteractionMove(arg); - }); - actions.eventTypes.push('autoscroll'); - defaults.perAction.autoScroll = autoScroll.defaults; -} - -var autoScroll = { - defaults: { - enabled: false, - margin: 60, - // the item that is scrolled (Window or HTMLElement) - container: null, - // the scroll speed in pixels per second - speed: 300 - }, - now: Date.now, - interaction: null, - i: null, - x: 0, - y: 0, - isScrolling: false, - prevTime: 0, - margin: 0, - speed: 0, - start: function start(interaction) { - autoScroll.isScrolling = true; - - ___raf_7["default"].cancel(autoScroll.i); - - interaction.autoScroll = autoScroll; - autoScroll.interaction = interaction; - autoScroll.prevTime = autoScroll.now(); - autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); - }, - stop: function stop() { - autoScroll.isScrolling = false; - - if (autoScroll.interaction) { - autoScroll.interaction.autoScroll = null; - } - - ___raf_7["default"].cancel(autoScroll.i); - }, - // scroll the window by the values in scroll.x/y - scroll: function scroll() { - var interaction = autoScroll.interaction; - var interactable = interaction.interactable, - element = interaction.element; - var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll; - var container = getContainer(options.container, interactable, element); - var now = autoScroll.now(); // change in time in seconds - - var dt = (now - autoScroll.prevTime) / 1000; // displacement - - var s = options.speed * dt; - - if (s >= 1) { - var scrollBy = { - x: autoScroll.x * s, - y: autoScroll.y * s - }; - - if (scrollBy.x || scrollBy.y) { - var prevScroll = getScroll(container); - - if (__is_7.window(container)) { - container.scrollBy(scrollBy.x, scrollBy.y); - } else if (container) { - container.scrollLeft += scrollBy.x; - container.scrollTop += scrollBy.y; - } - - var curScroll = getScroll(container); - var delta = { - x: curScroll.x - prevScroll.x, - y: curScroll.y - prevScroll.y - }; - - if (delta.x || delta.y) { - interactable.fire({ - type: 'autoscroll', - target: element, - interactable: interactable, - delta: delta, - interaction: interaction, - container: container - }); - } - } - - autoScroll.prevTime = now; - } - - if (autoScroll.isScrolling) { - ___raf_7["default"].cancel(autoScroll.i); - - autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); - } - }, - check: function check(interactable, actionName) { - var options = interactable.options; - return options[actionName].autoScroll && options[actionName].autoScroll.enabled; - }, - onInteractionMove: function onInteractionMove(_ref3) { - var interaction = _ref3.interaction, - pointer = _ref3.pointer; - - if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) { - return; - } - - if (interaction.simulation) { - autoScroll.x = autoScroll.y = 0; - return; - } - - var top; - var right; - var bottom; - var left; - var interactable = interaction.interactable, - element = interaction.element; - var options = interactable.options[interaction.prepared.name].autoScroll; - var container = getContainer(options.container, interactable, element); - - if (__is_7.window(container)) { - left = pointer.clientX < autoScroll.margin; - top = pointer.clientY < autoScroll.margin; - right = pointer.clientX > container.innerWidth - autoScroll.margin; - bottom = pointer.clientY > container.innerHeight - autoScroll.margin; - } else { - var rect = __domUtils_7.getElementClientRect(container); - left = pointer.clientX < rect.left + autoScroll.margin; - top = pointer.clientY < rect.top + autoScroll.margin; - right = pointer.clientX > rect.right - autoScroll.margin; - bottom = pointer.clientY > rect.bottom - autoScroll.margin; - } - - autoScroll.x = right ? 1 : left ? -1 : 0; - autoScroll.y = bottom ? 1 : top ? -1 : 0; - - if (!autoScroll.isScrolling) { - // set the autoScroll properties to those of the target - autoScroll.margin = options.margin; - autoScroll.speed = options.speed; - autoScroll.start(interaction); - } - } -}; - -function getContainer(value, interactable, element) { - return (__is_7.string(value) ? (0, _$rect_63.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_66.getWindow)(element); -} - -function getScroll(container) { - if (__is_7.window(container)) { - container = window.document.body; - } - - return { - x: container.scrollLeft, - y: container.scrollTop - }; -} - -function getScrollSize(container) { - if (__is_7.window(container)) { - container = window.document.body; - } - - return { - x: container.scrollWidth, - y: container.scrollHeight - }; -} - -function getScrollSizeDelta(_ref4, func) { - var interaction = _ref4.interaction, - element = _ref4.element; - var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll; - - if (!scrollOptions || !scrollOptions.enabled) { - func(); - return { - x: 0, - y: 0 - }; - } - - var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element); - var prevSize = getScroll(scrollContainer); - func(); - var curSize = getScroll(scrollContainer); - return { - x: curSize.x - prevSize.x, - y: curSize.y - prevSize.y - }; -} - -var ___default_7 = { - id: 'auto-scroll', - install: __install_7 -}; -_$autoScroll_7["default"] = ___default_7; - -var _$InteractableMethods_8 = {}; -"use strict"; - -Object.defineProperty(_$InteractableMethods_8, "__esModule", { - value: true -}); -_$InteractableMethods_8["default"] = void 0; - -/* removed: var _$utils_56 = require("@interactjs/utils"); */; - -var __is_8 = ___interopRequireWildcard_8(_$is_57); - -function ___getRequireWildcardCache_8() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_8(scope) { - var Interactable = scope.Interactable, - actions = scope.actions; - Interactable.prototype.getAction = getAction; - /** - * ```js - * interact(element, { ignoreFrom: document.getElementById('no-action') }) - * // or - * interact(element).ignoreFrom('input, textarea, a') - * ``` - * @deprecated - * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any - * of it's parents match the given CSS selector or Element, no - * drag/resize/gesture is started. - * - * Don't use this method. Instead set the `ignoreFrom` option for each action - * or for `pointerEvents` - * - * @example - * interact(targett) - * .draggable({ - * ignoreFrom: 'input, textarea, a[href]'', - * }) - * .pointerEvents({ - * ignoreFrom: '[no-pointer]', - * }) - * - * @param {string | Element | null} [newValue] a CSS selector string, an - * Element or `null` to not ignore any elements - * @return {string | Element | object} The current ignoreFrom value or this - * Interactable - */ - - Interactable.prototype.ignoreFrom = (0, _$utils_56.warnOnce)(function (newValue) { - return this._backCompatOption('ignoreFrom', newValue); - }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).'); - /** - * @deprecated - * - * A drag/resize/gesture is started only If the target of the `mousedown`, - * `pointerdown` or `touchstart` event or any of it's parents match the given - * CSS selector or Element. - * - * Don't use this method. Instead set the `allowFrom` option for each action - * or for `pointerEvents` - * - * @example - * interact(targett) - * .resizable({ - * allowFrom: '.resize-handle', - * .pointerEvents({ - * allowFrom: '.handle',, - * }) - * - * @param {string | Element | null} [newValue] a CSS selector string, an - * Element or `null` to allow from any element - * @return {string | Element | object} The current allowFrom value or this - * Interactable - */ - - Interactable.prototype.allowFrom = (0, _$utils_56.warnOnce)(function (newValue) { - return this._backCompatOption('allowFrom', newValue); - }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).'); - /** - * ```js - * interact('.resize-drag') - * .resizable(true) - * .draggable(true) - * .actionChecker(function (pointer, event, action, interactable, element, interaction) { - * - * if (interact.matchesSelector(event.target, '.drag-handle')) { - * // force drag with handle target - * action.name = drag - * } - * else { - * // resize from the top and right edges - * action.name = 'resize' - * action.edges = { top: true, right: true } - * } - * - * return action - * }) - * ``` - * - * Returns or sets the function used to check action to be performed on - * pointerDown - * - * @param {function | null} [checker] A function which takes a pointer event, - * defaultAction string, interactable, element and interaction as parameters - * and returns an object with name property 'drag' 'resize' or 'gesture' and - * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right - * props. - * @return {Function | Interactable} The checker function or this Interactable - */ - - Interactable.prototype.actionChecker = actionChecker; - /** - * Returns or sets whether the the cursor should be changed depending on the - * action that would be performed if the mouse were pressed and dragged. - * - * @param {boolean} [newValue] - * @return {boolean | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.styleCursor = styleCursor; - - Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) { - return defaultActionChecker(this, pointer, event, interaction, element, actions); - }; -} - -function getAction(pointer, event, interaction, element) { - var action = this.defaultActionChecker(pointer, event, interaction, element); - - if (this.options.actionChecker) { - return this.options.actionChecker(pointer, event, action, this, element, interaction); - } - - return action; -} - -function defaultActionChecker(interactable, pointer, event, interaction, element, actions) { - var rect = interactable.getRect(element); - var buttons = event.buttons || { - 0: 1, - 1: 4, - 3: 8, - 4: 16 - }[event.button]; - var action = null; - - for (var _i = 0; _i < actions.names.length; _i++) { - var _ref; - - _ref = actions.names[_i]; - var actionName = _ref; - - // check mouseButton setting if the pointer is down - if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) { - continue; - } - - action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect); - - if (action) { - return action; - } - } -} - -function styleCursor(newValue) { - if (__is_8.bool(newValue)) { - this.options.styleCursor = newValue; - return this; - } - - if (newValue === null) { - delete this.options.styleCursor; - return this; - } - - return this.options.styleCursor; -} - -function actionChecker(checker) { - if (__is_8.func(checker)) { - this.options.actionChecker = checker; - return this; - } - - if (checker === null) { - delete this.options.actionChecker; - return this; - } - - return this.options.actionChecker; -} - -var ___default_8 = { - id: 'auto-start/interactableMethods', - install: __install_8 -}; -_$InteractableMethods_8["default"] = ___default_8; - -var _$base_9 = {}; -"use strict"; - -Object.defineProperty(_$base_9, "__esModule", { - value: true -}); -_$base_9["default"] = void 0; - -var __utils_9 = ___interopRequireWildcard_9(_$utils_56); - -var _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8); - -function ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_9() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_9(scope) { - var interact = scope.interact, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(_InteractableMethods["default"]); // set cursor style on mousedown - - interactions.signals.on('down', function (_ref) { - var interaction = _ref.interaction, - pointer = _ref.pointer, - event = _ref.event, - eventTarget = _ref.eventTarget; - - if (interaction.interacting()) { - return; - } - - var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); - prepare(interaction, actionInfo, scope); - }); // set cursor style on mousemove - - interactions.signals.on('move', function (_ref2) { - var interaction = _ref2.interaction, - pointer = _ref2.pointer, - event = _ref2.event, - eventTarget = _ref2.eventTarget; - - if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) { - return; - } - - var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); - prepare(interaction, actionInfo, scope); - }); - interactions.signals.on('move', function (arg) { - var interaction = arg.interaction; - - if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) { - return; - } - - scope.autoStart.signals.fire('before-start', arg); - var interactable = interaction.interactable; - - if (interaction.prepared.name && interactable) { - // check manualStart and interaction limit - if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) { - interaction.stop(); - } else { - interaction.start(interaction.prepared, interactable, interaction.element); - setInteractionCursor(interaction, scope); - } - } - }); - interactions.signals.on('stop', function (_ref3) { - var interaction = _ref3.interaction; - var interactable = interaction.interactable; - - if (interactable && interactable.options.styleCursor) { - setCursor(interaction.element, '', scope); - } - }); - defaults.base.actionChecker = null; - defaults.base.styleCursor = true; - __utils_9.extend(defaults.perAction, { - manualStart: false, - max: Infinity, - maxPerElement: 1, - allowFrom: null, - ignoreFrom: null, - // only allow left button by default - // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value - mouseButtons: 1 - }); - /** - * Returns or sets the maximum number of concurrent interactions allowed. By - * default only 1 interaction is allowed at a time (for backwards - * compatibility). To allow multiple interactions on the same Interactables and - * elements, you need to enable it in the draggable, resizable and gesturable - * `'max'` and `'maxPerElement'` options. - * - * @alias module:interact.maxInteractions - * - * @param {number} [newValue] Any number. newValue <= 0 means no interactions. - */ - - interact.maxInteractions = function (newValue) { - return maxInteractions(newValue, scope); - }; - - scope.autoStart = { - // Allow this many interactions to happen simultaneously - maxInteractions: Infinity, - withinInteractionLimit: withinInteractionLimit, - cursorElement: null, - signals: new __utils_9.Signals() - }; -} // Check if the current interactable supports the action. -// If so, return the validated action. Otherwise, return null - - -function validateAction(action, interactable, element, eventTarget, scope) { - if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) { - return action; - } - - return null; -} - -function validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) { - for (var i = 0, len = matches.length; i < len; i++) { - var match = matches[i]; - var matchElement = matchElements[i]; - var matchAction = match.getAction(pointer, event, interaction, matchElement); - - if (!matchAction) { - continue; - } - - var action = validateAction(matchAction, match, matchElement, eventTarget, scope); - - if (action) { - return { - action: action, - interactable: match, - element: matchElement - }; - } - } - - return { - action: null, - interactable: null, - element: null - }; -} - -function getActionInfo(interaction, pointer, event, eventTarget, scope) { - var matches = []; - var matchElements = []; - var element = eventTarget; - - function pushMatches(interactable) { - matches.push(interactable); - matchElements.push(element); - } - - while (__utils_9.is.element(element)) { - matches = []; - matchElements = []; - scope.interactables.forEachMatch(element, pushMatches); - var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope); - - if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) { - return actionInfo; - } - - element = __utils_9.dom.parentNode(element); - } - - return { - action: null, - interactable: null, - element: null - }; -} - -function prepare(interaction, _ref4, scope) { - var action = _ref4.action, - interactable = _ref4.interactable, - element = _ref4.element; - action = action || { - name: null - }; // clear previous target element cursor - - if (interaction.interactable && interaction.interactable.options.styleCursor) { - setCursor(interaction.element, '', scope); - } - - interaction.interactable = interactable; - interaction.element = element; - __utils_9.copyAction(interaction.prepared, action); - interaction.rect = interactable && action.name ? interactable.getRect(element) : null; - setInteractionCursor(interaction, scope); - scope.autoStart.signals.fire('prepared', { - interaction: interaction - }); -} - -function withinInteractionLimit(interactable, element, action, scope) { - var options = interactable.options; - var maxActions = options[action.name].max; - var maxPerElement = options[action.name].maxPerElement; - var autoStartMax = scope.autoStart.maxInteractions; - var activeInteractions = 0; - var interactableCount = 0; - var elementCount = 0; // no actions if any of these values == 0 - - if (!(maxActions && maxPerElement && autoStartMax)) { - return false; - } - - for (var _i = 0; _i < scope.interactions.list.length; _i++) { - var _ref5; - - _ref5 = scope.interactions.list[_i]; - var interaction = _ref5; - var otherAction = interaction.prepared.name; - - if (!interaction.interacting()) { - continue; - } - - activeInteractions++; - - if (activeInteractions >= autoStartMax) { - return false; - } - - if (interaction.interactable !== interactable) { - continue; - } - - interactableCount += otherAction === action.name ? 1 : 0; - - if (interactableCount >= maxActions) { - return false; - } - - if (interaction.element === element) { - elementCount++; - - if (otherAction === action.name && elementCount >= maxPerElement) { - return false; - } - } - } - - return autoStartMax > 0; -} - -function maxInteractions(newValue, scope) { - if (__utils_9.is.number(newValue)) { - scope.autoStart.maxInteractions = newValue; - return this; - } - - return scope.autoStart.maxInteractions; -} - -function setCursor(element, cursor, scope) { - if (scope.autoStart.cursorElement) { - scope.autoStart.cursorElement.style.cursor = ''; - } - - element.ownerDocument.documentElement.style.cursor = cursor; - element.style.cursor = cursor; - scope.autoStart.cursorElement = cursor ? element : null; -} - -function setInteractionCursor(interaction, scope) { - var interactable = interaction.interactable, - element = interaction.element, - prepared = interaction.prepared; - - if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) { - return; - } - - var cursor = ''; - - if (prepared.name) { - var cursorChecker = interactable.options[prepared.name].cursorChecker; - - if (__utils_9.is.func(cursorChecker)) { - cursor = cursorChecker(prepared, interactable, element, interaction._interacting); - } else { - cursor = scope.actions[prepared.name].getCursor(prepared); - } - } - - setCursor(interaction.element, cursor || '', scope); -} - -var ___default_9 = { - id: 'auto-start/base', - install: __install_9, - maxInteractions: maxInteractions, - withinInteractionLimit: withinInteractionLimit, - validateAction: validateAction -}; -_$base_9["default"] = ___default_9; - -var _$dragAxis_10 = {}; -"use strict"; - -Object.defineProperty(_$dragAxis_10, "__esModule", { - value: true -}); -_$dragAxis_10["default"] = void 0; - -var ___scope_10 = _$scope_24({}); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var __is_10 = ___interopRequireWildcard_10(_$is_57); - -var _base = ___interopRequireDefault_10(_$base_9); - -function ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_10() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_10(scope) { - scope.autoStart.signals.on('before-start', function (_ref) { - var interaction = _ref.interaction, - eventTarget = _ref.eventTarget, - dx = _ref.dx, - dy = _ref.dy; - - if (interaction.prepared.name !== 'drag') { - return; - } // check if a drag is in the correct axis - - - var absX = Math.abs(dx); - var absY = Math.abs(dy); - var targetOptions = interaction.interactable.options.drag; - var startAxis = targetOptions.startAxis; - var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy'; - interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy' - : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable - - if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) { - // cancel the prepared action - interaction.prepared.name = null; // then try to get a drag from another ineractable - - var element = eventTarget; - - var getDraggable = function getDraggable(interactable) { - if (interactable === interaction.interactable) { - return; - } - - var options = interaction.interactable.options.drag; - - if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) { - var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element); - - if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base["default"].validateAction(action, interactable, element, eventTarget, scope)) { - return interactable; - } - } - }; // check all interactables - - - while (__is_10.element(element)) { - var interactable = scope.interactables.forEachMatch(element, getDraggable); - - if (interactable) { - interaction.prepared.name = ___scope_10.ActionName.Drag; - interaction.interactable = interactable; - interaction.element = element; - break; - } - - element = (0, _$domUtils_51.parentNode)(element); - } - } - }); - - function checkStartAxis(startAxis, interactable) { - if (!interactable) { - return false; - } - - var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis; - return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis; - } -} - -var ___default_10 = { - id: 'auto-start/dragAxis', - install: __install_10 -}; -_$dragAxis_10["default"] = ___default_10; - -var _$hold_11 = {}; -"use strict"; - -Object.defineProperty(_$hold_11, "__esModule", { - value: true -}); -_$hold_11["default"] = void 0; - -var ___base_11 = ___interopRequireDefault_11(_$base_9); - -function ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_11(scope) { - var autoStart = scope.autoStart, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(___base_11["default"]); - defaults.perAction.hold = 0; - defaults.perAction.delay = 0; - interactions.signals.on('new', function (interaction) { - interaction.autoStartHoldTimer = null; - }); - autoStart.signals.on('prepared', function (_ref) { - var interaction = _ref.interaction; - var hold = getHoldDuration(interaction); - - if (hold > 0) { - interaction.autoStartHoldTimer = setTimeout(function () { - interaction.start(interaction.prepared, interaction.interactable, interaction.element); - }, hold); - } - }); - interactions.signals.on('move', function (_ref2) { - var interaction = _ref2.interaction, - duplicate = _ref2.duplicate; - - if (interaction.pointerWasMoved && !duplicate) { - clearTimeout(interaction.autoStartHoldTimer); - } - }); // prevent regular down->move autoStart - - autoStart.signals.on('before-start', function (_ref3) { - var interaction = _ref3.interaction; - var hold = getHoldDuration(interaction); - - if (hold > 0) { - interaction.prepared.name = null; - } - }); -} - -function getHoldDuration(interaction) { - var actionName = interaction.prepared && interaction.prepared.name; - - if (!actionName) { - return null; - } - - var options = interaction.interactable.options; - return options[actionName].hold || options[actionName].delay; -} - -var ___default_11 = { - id: 'auto-start/hold', - install: __install_11, - getHoldDuration: getHoldDuration -}; -_$hold_11["default"] = ___default_11; - -var _$autoStart_12 = {}; -"use strict"; - -Object.defineProperty(_$autoStart_12, "__esModule", { - value: true -}); -_$autoStart_12.install = __install_12; -Object.defineProperty(_$autoStart_12, "autoStart", { - enumerable: true, - get: function get() { - return ___base_12["default"]; - } -}); -Object.defineProperty(_$autoStart_12, "dragAxis", { - enumerable: true, - get: function get() { - return _dragAxis["default"]; - } -}); -Object.defineProperty(_$autoStart_12, "hold", { - enumerable: true, - get: function get() { - return _hold["default"]; - } -}); -_$autoStart_12.id = void 0; - -var ___base_12 = ___interopRequireDefault_12(_$base_9); - -var _dragAxis = ___interopRequireDefault_12(_$dragAxis_10); - -var _hold = ___interopRequireDefault_12(_$hold_11); - -function ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_12(scope) { - scope.usePlugin(___base_12["default"]); - scope.usePlugin(_hold["default"]); - scope.usePlugin(_dragAxis["default"]); -} - -var __id_12 = 'auto-start'; -_$autoStart_12.id = __id_12; - -var _$interactablePreventDefault_21 = {}; -"use strict"; - -Object.defineProperty(_$interactablePreventDefault_21, "__esModule", { - value: true -}); -_$interactablePreventDefault_21.install = __install_21; -_$interactablePreventDefault_21["default"] = void 0; - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___events_21 = ___interopRequireDefault_21(_$events_52); - -var __is_21 = ___interopRequireWildcard_21(_$is_57); - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -function ___getRequireWildcardCache_21() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function preventDefault(newValue) { - if (/^(always|never|auto)$/.test(newValue)) { - this.options.preventDefault = newValue; - return this; - } - - if (__is_21.bool(newValue)) { - this.options.preventDefault = newValue ? 'always' : 'never'; - return this; - } - - return this.options.preventDefault; -} - -function checkAndPreventDefault(interactable, scope, event) { - var setting = interactable.options.preventDefault; - - if (setting === 'never') { - return; - } - - if (setting === 'always') { - event.preventDefault(); - return; - } // setting === 'auto' - // if the browser supports passive event listeners and isn't running on iOS, - // don't preventDefault of touch{start,move} events. CSS touch-action and - // user-select should be used instead of calling event.preventDefault(). - - - if (___events_21["default"].supportsPassive && /^touch(start|move)$/.test(event.type)) { - var doc = (0, _$window_66.getWindow)(event.target).document; - var docOptions = scope.getDocOptions(doc); - - if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) { - return; - } - } // don't preventDefault of pointerdown events - - - if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) { - return; - } // don't preventDefault on editable elements - - - if (__is_21.element(event.target) && (0, _$domUtils_51.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) { - return; - } - - event.preventDefault(); -} - -function onInteractionEvent(_ref) { - var interaction = _ref.interaction, - event = _ref.event; - - if (interaction.interactable) { - interaction.interactable.checkAndPreventDefault(event); - } -} - -function __install_21(scope) { - /** @lends Interactable */ - var Interactable = scope.Interactable; - /** - * Returns or sets whether to prevent the browser's default behaviour in - * response to pointer events. Can be set to: - * - `'always'` to always prevent - * - `'never'` to never prevent - * - `'auto'` to let interact.js try to determine what would be best - * - * @param {string} [newValue] `'always'`, `'never'` or `'auto'` - * @return {string | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.preventDefault = preventDefault; - - Interactable.prototype.checkAndPreventDefault = function (event) { - return checkAndPreventDefault(this, scope, event); - }; - - var _arr = ['down', 'move', 'up', 'cancel']; - - for (var _i = 0; _i < _arr.length; _i++) { - var eventSignal = _arr[_i]; - scope.interactions.signals.on(eventSignal, onInteractionEvent); - } // prevent native HTML5 drag on interact.js target elements - - - scope.interactions.docEvents.push({ - type: 'dragstart', - listener: function listener(event) { - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref2; - - _ref2 = scope.interactions.list[_i2]; - var interaction = _ref2; - - if (interaction.element && (interaction.element === event.target || (0, _$domUtils_51.nodeContains)(interaction.element, event.target))) { - interaction.interactable.checkAndPreventDefault(event); - return; - } - } - } - }); -} - -var ___default_21 = { - id: 'core/interactablePreventDefault', - install: __install_21 -}; -_$interactablePreventDefault_21["default"] = ___default_21; - -var _$devTools_25 = {}; -"use strict"; - -Object.defineProperty(_$devTools_25, "__esModule", { - value: true -}); -_$devTools_25["default"] = void 0; - -var ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_50); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___extend_25 = ___interopRequireDefault_25(_$extend_53); - -var __is_25 = ___interopRequireWildcard_25(_$is_57); - -var ___window_25 = ___interopRequireDefault_25(_$window_66); - -function ___getRequireWildcardCache_25() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); } - -function ___nonIterableSpread_25() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -var CheckName; - -(function (CheckName) { - CheckName["touchAction"] = ""; - CheckName["boxSizing"] = ""; - CheckName["noListeners"] = ""; -})(CheckName || (CheckName = {})); - -var prefix = '[interact.js] '; -var links = { - touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action', - boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing' -}; -var isProduction = "production" === 'production'; // eslint-disable-next-line no-restricted-syntax - -function __install_25(scope) { - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - logger = _ref.logger; - - var interactions = scope.interactions, - Interactable = scope.Interactable, - defaults = scope.defaults; - logger = logger || console; - interactions.signals.on('action-start', function (_ref2) { - var interaction = _ref2.interaction; - - for (var _i = 0; _i < checks.length; _i++) { - var _ref3; - - _ref3 = checks[_i]; - var check = _ref3; - var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name]; - - if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) { - var _logger; - - (_logger = logger).warn.apply(_logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction)))); - } - } - }); - defaults.base.devTools = { - ignore: {} - }; - - Interactable.prototype.devTools = function (options) { - if (options) { - (0, ___extend_25["default"])(this.options.devTools, options); - return this; - } - - return this.options.devTools; - }; -} - -var checks = [{ - name: 'touchAction', - perform: function perform(_ref4) { - var element = _ref4.element; - return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/); - }, - getInfo: function getInfo(_ref5) { - var element = _ref5.element; - return [element, links.touchAction]; - }, - text: 'Consider adding CSS "touch-action: none" to this element\n' -}, { - name: 'boxSizing', - perform: function perform(interaction) { - var element = interaction.element; - return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25["default"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/); - }, - text: 'Consider adding CSS "box-sizing: border-box" to this resizable element', - getInfo: function getInfo(_ref6) { - var element = _ref6.element; - return [element, links.boxSizing]; - } -}, { - name: 'noListeners', - perform: function perform(interaction) { - var actionName = interaction.prepared.name; - var moveListeners = interaction.interactable.events.types["".concat(actionName, "move")] || []; - return !moveListeners.length; - }, - getInfo: function getInfo(interaction) { - return [interaction.prepared.name, interaction.interactable]; - }, - text: 'There are no listeners set for this action' -}]; - -function hasStyle(element, prop, styleRe) { - return styleRe.test(element.style[prop] || ___window_25["default"].window.getComputedStyle(element)[prop]); -} - -function parentHasStyle(element, prop, styleRe) { - var parent = element; - - while (__is_25.element(parent)) { - if (hasStyle(parent, prop, styleRe)) { - return true; - } - - parent = (0, _$domUtils_51.parentNode)(parent); - } - - return false; -} - -var __id_25 = 'dev-tools'; -var defaultExport = isProduction ? { - id: __id_25, - install: function install() {} -} : { - id: __id_25, - install: __install_25, - checks: checks, - CheckName: CheckName, - links: links, - prefix: prefix -}; -var ___default_25 = defaultExport; -_$devTools_25["default"] = ___default_25; - -var _$base_30 = {}; -"use strict"; - -Object.defineProperty(_$base_30, "__esModule", { - value: true -}); -_$base_30.startAll = startAll; -_$base_30.setAll = setAll; -_$base_30.prepareStates = prepareStates; -_$base_30.setCoords = setCoords; -_$base_30.restoreCoords = restoreCoords; -_$base_30.makeModifier = makeModifier; -_$base_30["default"] = void 0; - -var ___extend_30 = ___interopRequireDefault_30(_$extend_53); - -function ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); } - -function ___nonIterableRest_30() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; } - -function __install_30(scope) { - var interactions = scope.interactions; - scope.defaults.perAction.modifiers = []; - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.modifiers = { - startOffset: { - left: 0, - right: 0, - top: 0, - bottom: 0 - }, - offsets: {}, - states: null, - result: null, - endPrevented: false, - startDelta: null - }; - }); - interactions.signals.on('before-action-start', function (arg) { - __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page); - }); - interactions.signals.on('action-resume', function (arg) { - stop(arg); - __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords); - __beforeMove_30(arg); - }); - interactions.signals.on('after-action-move', restoreCoords); - interactions.signals.on('before-action-move', __beforeMove_30); - interactions.signals.on('before-action-start', setCoords); - interactions.signals.on('after-action-start', restoreCoords); - interactions.signals.on('before-action-end', beforeEnd); - interactions.signals.on('stop', stop); -} - -function __start_30(_ref2, pageCoords, prevCoords) { - var interaction = _ref2.interaction, - phase = _ref2.phase; - var interactable = interaction.interactable, - element = interaction.element; - var modifierList = getModifierList(interaction); - var states = prepareStates(modifierList); - var rect = (0, ___extend_30["default"])({}, interaction.rect); - - if (!('width' in rect)) { - rect.width = rect.right - rect.left; - } - - if (!('height' in rect)) { - rect.height = rect.bottom - rect.top; - } - - var startOffset = getRectOffset(rect, pageCoords); - interaction.modifiers.startOffset = startOffset; - interaction.modifiers.startDelta = { - x: 0, - y: 0 - }; - var arg = { - interaction: interaction, - interactable: interactable, - element: element, - pageCoords: pageCoords, - phase: phase, - rect: rect, - startOffset: startOffset, - states: states, - preEnd: false, - requireEndOnly: false, - prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page) - }; - interaction.modifiers.states = states; - interaction.modifiers.result = null; - startAll(arg); - var result = interaction.modifiers.result = setAll(arg); - return result; -} - -function startAll(arg) { - var states = arg.states; - - for (var _i = 0; _i < states.length; _i++) { - var _ref3; - - _ref3 = states[_i]; - var state = _ref3; - - if (state.methods.start) { - arg.state = state; - state.methods.start(arg); - } - } -} - -function setAll(arg) { - var prevCoords = arg.prevCoords, - phase = arg.phase, - preEnd = arg.preEnd, - requireEndOnly = arg.requireEndOnly, - rect = arg.rect, - states = arg.states; - arg.coords = (0, ___extend_30["default"])({}, arg.pageCoords); - arg.rect = (0, ___extend_30["default"])({}, rect); - var result = { - delta: { - x: 0, - y: 0 - }, - rectDelta: { - left: 0, - right: 0, - top: 0, - bottom: 0 - }, - coords: arg.coords, - changed: true - }; - - for (var _i2 = 0; _i2 < states.length; _i2++) { - var _ref4; - - _ref4 = states[_i2]; - var state = _ref4; - var options = state.options; - - if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) { - continue; - } - - arg.state = state; - state.methods.set(arg); - } - - result.delta.x = arg.coords.x - arg.pageCoords.x; - result.delta.y = arg.coords.y - arg.pageCoords.y; - var rectChanged = false; - - if (rect) { - result.rectDelta.left = arg.rect.left - rect.left; - result.rectDelta.right = arg.rect.right - rect.right; - result.rectDelta.top = arg.rect.top - rect.top; - result.rectDelta.bottom = arg.rect.bottom - rect.bottom; - rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0; - } - - result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged; - return result; -} - -function __beforeMove_30(arg) { - var interaction = arg.interaction, - phase = arg.phase, - preEnd = arg.preEnd, - skipModifiers = arg.skipModifiers; - var interactable = interaction.interactable, - element = interaction.element; - var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states; - var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page); - var modifierResult = setAll({ - interaction: interaction, - interactable: interactable, - element: element, - preEnd: preEnd, - phase: phase, - pageCoords: arg.modifiedCoords || interaction.coords.cur.page, - prevCoords: prevCoords, - rect: interaction.rect, - states: states, - requireEndOnly: false - }); - interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same - // cordinates as before - - if (!modifierResult.changed && interaction.interacting()) { - return false; - } - - if (arg.modifiedCoords) { - var page = interaction.coords.cur.page; - var adjustment = { - x: arg.modifiedCoords.x - page.x, - y: arg.modifiedCoords.y - page.y - }; - modifierResult.coords.x += adjustment.x; - modifierResult.coords.y += adjustment.y; - modifierResult.delta.x += adjustment.x; - modifierResult.delta.y += adjustment.y; - } - - setCoords(arg); -} - -function beforeEnd(arg) { - var interaction = arg.interaction, - event = arg.event, - noPreEnd = arg.noPreEnd; - var states = interaction.modifiers.states; - - if (noPreEnd || !states || !states.length) { - return; - } - - var didPreEnd = false; - - for (var _i3 = 0; _i3 < states.length; _i3++) { - var _ref5; - - _ref5 = states[_i3]; - var state = _ref5; - arg.state = state; - var options = state.options, - methods = state.methods; - var endResult = methods.beforeEnd && methods.beforeEnd(arg); - - if (endResult === false) { - interaction.modifiers.endPrevented = true; - return false; - } // if the endOnly option is true for any modifier - - - if (!didPreEnd && shouldDo(options, true, true)) { - // fire a move event at the modified coordinates - interaction.move({ - event: event, - preEnd: true - }); - didPreEnd = true; - } - } -} - -function stop(arg) { - var interaction = arg.interaction; - var states = interaction.modifiers.states; - - if (!states || !states.length) { - return; - } - - var modifierArg = (0, ___extend_30["default"])({ - states: states, - interactable: interaction.interactable, - element: interaction.element, - rect: null - }, arg); - - for (var _i4 = 0; _i4 < states.length; _i4++) { - var _ref6; - - _ref6 = states[_i4]; - var state = _ref6; - modifierArg.state = state; - - if (state.methods.stop) { - state.methods.stop(modifierArg); - } - } - - arg.interaction.modifiers.states = null; - arg.interaction.modifiers.endPrevented = false; -} - -function getModifierList(interaction) { - var actionOptions = interaction.interactable.options[interaction.prepared.name]; - var actionModifiers = actionOptions.modifiers; - - if (actionModifiers && actionModifiers.length) { - return actionModifiers.filter(function (modifier) { - return !modifier.options || modifier.options.enabled !== false; - }); - } - - return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) { - var options = actionOptions[type]; - return options && options.enabled && { - options: options, - methods: options._methods - }; - }).filter(function (m) { - return !!m; - }); -} - -function prepareStates(modifierList) { - var states = []; - - for (var index = 0; index < modifierList.length; index++) { - var _modifierList$index = modifierList[index], - options = _modifierList$index.options, - methods = _modifierList$index.methods, - name = _modifierList$index.name; - - if (options && options.enabled === false) { - continue; - } - - states.push({ - options: options, - methods: methods, - index: index, - name: name - }); - } - - return states; -} - -function setCoords(arg) { - var interaction = arg.interaction, - phase = arg.phase; - var curCoords = interaction.coords.cur; - var startCoords = interaction.coords.start; - var _interaction$modifier = interaction.modifiers, - result = _interaction$modifier.result, - startDelta = _interaction$modifier.startDelta; - var curDelta = result.delta; - - if (phase === 'start') { - (0, ___extend_30["default"])(interaction.modifiers.startDelta, result.delta); - } - - var _arr = [[startCoords, startDelta], [curCoords, curDelta]]; - - for (var _i5 = 0; _i5 < _arr.length; _i5++) { - var _arr$_i = ___slicedToArray_30(_arr[_i5], 2), - coordsSet = _arr$_i[0], - delta = _arr$_i[1]; - - coordsSet.page.x += delta.x; - coordsSet.page.y += delta.y; - coordsSet.client.x += delta.x; - coordsSet.client.y += delta.y; - } - - var rectDelta = interaction.modifiers.result.rectDelta; - var rect = arg.rect || interaction.rect; - rect.left += rectDelta.left; - rect.right += rectDelta.right; - rect.top += rectDelta.top; - rect.bottom += rectDelta.bottom; - rect.width = rect.right - rect.left; - rect.height = rect.bottom - rect.top; -} - -function restoreCoords(_ref7) { - var _ref7$interaction = _ref7.interaction, - coords = _ref7$interaction.coords, - rect = _ref7$interaction.rect, - modifiers = _ref7$interaction.modifiers; - - if (!modifiers.result) { - return; - } - - var startDelta = modifiers.startDelta; - var _modifiers$result = modifiers.result, - curDelta = _modifiers$result.delta, - rectDelta = _modifiers$result.rectDelta; - var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]]; - - for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) { - var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2), - coordsSet = _coordsAndDeltas$_i[0], - delta = _coordsAndDeltas$_i[1]; - - coordsSet.page.x -= delta.x; - coordsSet.page.y -= delta.y; - coordsSet.client.x -= delta.x; - coordsSet.client.y -= delta.y; - } - - rect.left -= rectDelta.left; - rect.right -= rectDelta.right; - rect.top -= rectDelta.top; - rect.bottom -= rectDelta.bottom; -} - -function shouldDo(options, preEnd, requireEndOnly, phase) { - return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly; -} - -function getRectOffset(rect, coords) { - return rect ? { - left: coords.x - rect.left, - top: coords.y - rect.top, - right: rect.right - coords.x, - bottom: rect.bottom - coords.y - } : { - left: 0, - top: 0, - right: 0, - bottom: 0 - }; -} - -function makeModifier(module, name) { - var defaults = module.defaults; - var methods = { - start: module.start, - set: module.set, - beforeEnd: module.beforeEnd, - stop: module.stop - }; - - var modifier = function modifier(_options) { - var options = _options || {}; - options.enabled = options.enabled !== false; // add missing defaults to options - - for (var prop in defaults) { - if (!(prop in options)) { - options[prop] = defaults[prop]; - } - } - - var m = { - options: options, - methods: methods, - name: name - }; - return m; - }; - - if (name && typeof name === 'string') { - // for backwrads compatibility - modifier._defaults = defaults; - modifier._methods = methods; - } - - return modifier; -} - -var ___default_30 = { - id: 'modifiers/base', - install: __install_30, - startAll: startAll, - setAll: setAll, - prepareStates: prepareStates, - start: __start_30, - beforeMove: __beforeMove_30, - beforeEnd: beforeEnd, - stop: stop, - shouldDo: shouldDo, - getModifierList: getModifierList, - getRectOffset: getRectOffset, - makeModifier: makeModifier -}; -_$base_30["default"] = ___default_30; - -var _$inertia_26 = {}; -"use strict"; - -Object.defineProperty(_$inertia_26, "__esModule", { - value: true -}); -_$inertia_26["default"] = void 0; - -/* removed: var _$InteractEvent_15 = require("@interactjs/core/InteractEvent"); */; - -var ___base_26 = ___interopRequireWildcard_26(_$base_30); - -var __utils_26 = ___interopRequireWildcard_26(_$utils_56); - -var ___raf_26 = ___interopRequireDefault_26(_$raf_62); - -function ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_26() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -_$InteractEvent_15.EventPhase.Resume = 'resume'; -_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart'; - -function __install_26(scope) { - var interactions = scope.interactions, - defaults = scope.defaults; - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.inertia = { - active: false, - smoothEnd: false, - allowResume: false, - upCoords: {}, - timeout: null - }; - }); - interactions.signals.on('before-action-end', function (arg) { - return release(arg, scope); - }); - interactions.signals.on('down', function (arg) { - return resume(arg, scope); - }); - interactions.signals.on('stop', __stop_26); - defaults.perAction.inertia = { - enabled: false, - resistance: 10, - minSpeed: 100, - endSpeed: 10, - allowResume: true, - smoothEndDuration: 300 - }; - scope.usePlugin(___base_26["default"]); -} - -function resume(_ref2, scope) { - var interaction = _ref2.interaction, - event = _ref2.event, - pointer = _ref2.pointer, - eventTarget = _ref2.eventTarget; - var state = interaction.inertia; // Check if the down event hits the current inertia target - - if (state.active) { - var element = eventTarget; // climb up the DOM tree from the event target - - while (__utils_26.is.element(element)) { - // if interaction element is the current inertia target element - if (element === interaction.element) { - // stop inertia - ___raf_26["default"].cancel(state.timeout); - - state.active = false; - interaction.simulation = null; // update pointers to the down event's coordinates - - interaction.updatePointer(pointer, event, eventTarget, true); - __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) { - return p.pointer; - }), interaction._now()); // fire appropriate signals - - var signalArg = { - interaction: interaction, - phase: _$InteractEvent_15.EventPhase.Resume - }; - scope.interactions.signals.fire('action-resume', signalArg); // fire a reume event - - var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element); - - interaction._fireEvent(resumeEvent); - - __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); - break; - } - - element = __utils_26.dom.parentNode(element); - } - } -} - -function release(_ref3, scope) { - var interaction = _ref3.interaction, - event = _ref3.event, - noPreEnd = _ref3.noPreEnd; - var state = interaction.inertia; - - if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) { - return null; - } - - var options = __getOptions_26(interaction); - - var now = interaction._now(); - - var velocityClient = interaction.coords.velocity.client; - var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y); - var smoothEnd = false; - var modifierResult; // check if inertia should be started - - var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent; - var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed; - var modifierArg = { - interaction: interaction, - pageCoords: interaction.coords.cur.page, - states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) { - return __utils_26.extend({}, modifierStatus); - }), - preEnd: true, - prevCoords: null, - requireEndOnly: null, - phase: _$InteractEvent_15.EventPhase.InertiaStart - }; // smoothEnd - - if (inertiaPossible && !inertia) { - modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page; - modifierArg.requireEndOnly = false; - modifierResult = ___base_26["default"].setAll(modifierArg); - - if (modifierResult.changed) { - smoothEnd = true; - } - } - - if (!(inertia || smoothEnd)) { - return null; - } - - __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur); - (0, ___base_26.setCoords)(modifierArg); - interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name - interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element); - (0, ___base_26.restoreCoords)(modifierArg); - state.t0 = now; - state.active = true; - state.allowResume = options.allowResume; - interaction.simulation = state; - interaction.interactable.fire(state.startEvent); - - if (inertia) { - state.vx0 = interaction.coords.velocity.client.x; - state.vy0 = interaction.coords.velocity.client.y; - state.v0 = pointerSpeed; - calcInertia(interaction, state); - __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page); - modifierArg.pageCoords.x += state.xe; - modifierArg.pageCoords.y += state.ye; - modifierArg.prevCoords = null; - modifierArg.requireEndOnly = true; - modifierResult = ___base_26["default"].setAll(modifierArg); - state.modifiedXe += modifierResult.delta.x; - state.modifiedYe += modifierResult.delta.y; - state.timeout = ___raf_26["default"].request(function () { - return inertiaTick(interaction); - }); - } else { - state.smoothEnd = true; - state.xe = modifierResult.delta.x; - state.ye = modifierResult.delta.y; - state.sx = state.sy = 0; - state.timeout = ___raf_26["default"].request(function () { - return smothEndTick(interaction); - }); - } - - return false; -} - -function __stop_26(_ref4) { - var interaction = _ref4.interaction; - var state = interaction.inertia; - - if (state.active) { - ___raf_26["default"].cancel(state.timeout); - - state.active = false; - interaction.simulation = null; - } -} - -function calcInertia(interaction, state) { - var options = __getOptions_26(interaction); - var lambda = options.resistance; - var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda; - state.x0 = interaction.prevEvent.page.x; - state.y0 = interaction.prevEvent.page.y; - state.t0 = state.startEvent.timeStamp / 1000; - state.sx = state.sy = 0; - state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda; - state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda; - state.te = inertiaDur; - state.lambda_v0 = lambda / state.v0; - state.one_ve_v0 = 1 - options.endSpeed / state.v0; -} - -function inertiaTick(interaction) { - updateInertiaCoords(interaction); - __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur); - __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta); - var state = interaction.inertia; - var options = __getOptions_26(interaction); - var lambda = options.resistance; - var t = interaction._now() / 1000 - state.t0; - - if (t < state.te) { - var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0; - - if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) { - state.sx = state.xe * progress; - state.sy = state.ye * progress; - } else { - var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress); - state.sx = quadPoint.x; - state.sy = quadPoint.y; - } - - interaction.move(); - state.timeout = ___raf_26["default"].request(function () { - return inertiaTick(interaction); - }); - } else { - state.sx = state.modifiedXe; - state.sy = state.modifiedYe; - interaction.move(); - interaction.end(state.startEvent); - state.active = false; - interaction.simulation = null; - } - - __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); -} - -function smothEndTick(interaction) { - updateInertiaCoords(interaction); - var state = interaction.inertia; - var t = interaction._now() - state.t0; - - var _getOptions = __getOptions_26(interaction), - duration = _getOptions.smoothEndDuration; - - if (t < duration) { - state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration); - state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration); - interaction.move(); - state.timeout = ___raf_26["default"].request(function () { - return smothEndTick(interaction); - }); - } else { - state.sx = state.xe; - state.sy = state.ye; - interaction.move(); - interaction.end(state.startEvent); - state.smoothEnd = state.active = false; - interaction.simulation = null; - } -} - -function updateInertiaCoords(interaction) { - var state = interaction.inertia; // return if inertia isn't running - - if (!state.active) { - return; - } - - var pageUp = state.upCoords.page; - var clientUp = state.upCoords.client; - __utils_26.pointer.setCoords(interaction.coords.cur, [{ - pageX: pageUp.x + state.sx, - pageY: pageUp.y + state.sy, - clientX: clientUp.x + state.sx, - clientY: clientUp.y + state.sy - }], interaction._now()); -} - -function __getOptions_26(_ref5) { - var interactable = _ref5.interactable, - prepared = _ref5.prepared; - return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia; -} - -var ___default_26 = { - id: 'inertia', - install: __install_26, - calcInertia: calcInertia, - inertiaTick: inertiaTick, - smothEndTick: smothEndTick, - updateInertiaCoords: updateInertiaCoords -}; -_$inertia_26["default"] = ___default_26; - -var _$pointer_33 = {}; -"use strict"; - -Object.defineProperty(_$pointer_33, "__esModule", { - value: true -}); -_$pointer_33["default"] = void 0; - -var ___extend_33 = ___interopRequireDefault_33(_$extend_53); - -var __is_33 = ___interopRequireWildcard_33(_$is_57); - -var ___rect_33 = ___interopRequireDefault_33(_$rect_63); - -function ___getRequireWildcardCache_33() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __start_33(_ref) { - var rect = _ref.rect, - startOffset = _ref.startOffset, - state = _ref.state, - interaction = _ref.interaction, - pageCoords = _ref.pageCoords; - var options = state.options; - var elementRect = options.elementRect; - var offset = (0, ___extend_33["default"])({ - left: 0, - top: 0, - right: 0, - bottom: 0 - }, options.offset || {}); - - if (rect && elementRect) { - var restriction = getRestrictionRect(options.restriction, interaction, pageCoords); - - if (restriction) { - var widthDiff = restriction.right - restriction.left - rect.width; - var heightDiff = restriction.bottom - restriction.top - rect.height; - - if (widthDiff < 0) { - offset.left += widthDiff; - offset.right += widthDiff; - } - - if (heightDiff < 0) { - offset.top += heightDiff; - offset.bottom += heightDiff; - } - } - - offset.left += startOffset.left - rect.width * elementRect.left; - offset.top += startOffset.top - rect.height * elementRect.top; - offset.right += startOffset.right - rect.width * (1 - elementRect.right); - offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom); - } - - state.offset = offset; -} - -function set(_ref2) { - var coords = _ref2.coords, - interaction = _ref2.interaction, - state = _ref2.state; - var options = state.options, - offset = state.offset; - var restriction = getRestrictionRect(options.restriction, interaction, coords); - - if (!restriction) { - return; - } - - var rect = ___rect_33["default"].xywhToTlbr(restriction); - - coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left); - coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top); -} - -function getRestrictionRect(value, interaction, coords) { - if (__is_33.func(value)) { - return ___rect_33["default"].resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]); - } else { - return ___rect_33["default"].resolveRectLike(value, interaction.interactable, interaction.element); - } -} - -var __defaults_33 = { - restriction: null, - elementRect: null, - offset: null, - endOnly: false, - enabled: false -}; -var restrict = { - start: __start_33, - set: set, - getRestrictionRect: getRestrictionRect, - defaults: __defaults_33 -}; -var ___default_33 = restrict; -_$pointer_33["default"] = ___default_33; - -var _$edges_32 = {}; -"use strict"; - -Object.defineProperty(_$edges_32, "__esModule", { - value: true -}); -_$edges_32["default"] = void 0; - -var ___extend_32 = ___interopRequireDefault_32(_$extend_53); - -var ___rect_32 = ___interopRequireDefault_32(_$rect_63); - -var _pointer = ___interopRequireDefault_32(_$pointer_33); - -function ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -// This module adds the options.resize.restrictEdges setting which sets min and -// max for the top, left, bottom and right edges of the target being resized. -// -// interact(target).resize({ -// edges: { top: true, left: true }, -// restrictEdges: { -// inner: { top: 200, left: 200, right: 400, bottom: 400 }, -// outer: { top: 0, left: 0, right: 600, bottom: 600 }, -// }, -// }) -var __getRestrictionRect_32 = _pointer["default"].getRestrictionRect; -var noInner = { - top: +Infinity, - left: +Infinity, - bottom: -Infinity, - right: -Infinity -}; -var noOuter = { - top: -Infinity, - left: -Infinity, - bottom: +Infinity, - right: +Infinity -}; - -function __start_32(_ref) { - var interaction = _ref.interaction, - state = _ref.state; - var options = state.options; - var startOffset = interaction.modifiers.startOffset; - var offset; - - if (options) { - var offsetRect = __getRestrictionRect_32(options.offset, interaction, interaction.coords.start.page); - offset = ___rect_32["default"].rectToXY(offsetRect); - } - - offset = offset || { - x: 0, - y: 0 - }; - state.offset = { - top: offset.y + startOffset.top, - left: offset.x + startOffset.left, - bottom: offset.y - startOffset.bottom, - right: offset.x - startOffset.right - }; -} - -function __set_32(_ref2) { - var coords = _ref2.coords, - interaction = _ref2.interaction, - state = _ref2.state; - var offset = state.offset, - options = state.options; - var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; - - if (!edges) { - return; - } - - var page = (0, ___extend_32["default"])({}, coords); - var inner = __getRestrictionRect_32(options.inner, interaction, page) || {}; - var outer = __getRestrictionRect_32(options.outer, interaction, page) || {}; - fixRect(inner, noInner); - fixRect(outer, noOuter); - - if (edges.top) { - coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top); - } else if (edges.bottom) { - coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom); - } - - if (edges.left) { - coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left); - } else if (edges.right) { - coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right); - } -} - -function fixRect(rect, defaults) { - var _arr = ['top', 'left', 'bottom', 'right']; - - for (var _i = 0; _i < _arr.length; _i++) { - var edge = _arr[_i]; - - if (!(edge in rect)) { - rect[edge] = defaults[edge]; - } - } - - return rect; -} - -var __defaults_32 = { - inner: null, - outer: null, - offset: null, - endOnly: false, - enabled: false -}; -var restrictEdges = { - noInner: noInner, - noOuter: noOuter, - getRestrictionRect: __getRestrictionRect_32, - start: __start_32, - set: __set_32, - defaults: __defaults_32 -}; -var ___default_32 = restrictEdges; -_$edges_32["default"] = ___default_32; - -var _$rect_34 = {}; -"use strict"; - -Object.defineProperty(_$rect_34, "__esModule", { - value: true -}); -_$rect_34["default"] = void 0; - -var ___extend_34 = ___interopRequireDefault_34(_$extend_53); - -var ___pointer_34 = ___interopRequireDefault_34(_$pointer_33); - -function ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var __defaults_34 = (0, ___extend_34["default"])({ - get elementRect() { - return { - top: 0, - left: 0, - bottom: 1, - right: 1 - }; - }, - - set elementRect(_) {} - -}, ___pointer_34["default"].defaults); -var restrictRect = { - start: ___pointer_34["default"].start, - set: ___pointer_34["default"].set, - defaults: __defaults_34 -}; -var ___default_34 = restrictRect; -_$rect_34["default"] = ___default_34; - -var _$size_35 = {}; -"use strict"; - -Object.defineProperty(_$size_35, "__esModule", { - value: true -}); -_$size_35["default"] = void 0; - -var ___extend_35 = ___interopRequireDefault_35(_$extend_53); - -var ___rect_35 = ___interopRequireDefault_35(_$rect_63); - -var _edges = ___interopRequireDefault_35(_$edges_32); - -function ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var noMin = { - width: -Infinity, - height: -Infinity -}; -var noMax = { - width: +Infinity, - height: +Infinity -}; - -function __start_35(arg) { - return _edges["default"].start(arg); -} - -function __set_35(arg) { - var interaction = arg.interaction, - state = arg.state; - var options = state.options; - var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; - - if (!edges) { - return; - } - - var rect = ___rect_35["default"].xywhToTlbr(interaction.resizeRects.inverted); - - var minSize = ___rect_35["default"].tlbrToXywh(_edges["default"].getRestrictionRect(options.min, interaction, arg.coords)) || noMin; - var maxSize = ___rect_35["default"].tlbrToXywh(_edges["default"].getRestrictionRect(options.max, interaction, arg.coords)) || noMax; - state.options = { - endOnly: options.endOnly, - inner: (0, ___extend_35["default"])({}, _edges["default"].noInner), - outer: (0, ___extend_35["default"])({}, _edges["default"].noOuter) - }; - - if (edges.top) { - state.options.inner.top = rect.bottom - minSize.height; - state.options.outer.top = rect.bottom - maxSize.height; - } else if (edges.bottom) { - state.options.inner.bottom = rect.top + minSize.height; - state.options.outer.bottom = rect.top + maxSize.height; - } - - if (edges.left) { - state.options.inner.left = rect.right - minSize.width; - state.options.outer.left = rect.right - maxSize.width; - } else if (edges.right) { - state.options.inner.right = rect.left + minSize.width; - state.options.outer.right = rect.left + maxSize.width; - } - - _edges["default"].set(arg); - - state.options = options; -} - -var __defaults_35 = { - min: null, - max: null, - endOnly: false, - enabled: false -}; -var restrictSize = { - start: __start_35, - set: __set_35, - defaults: __defaults_35 -}; -var ___default_35 = restrictSize; -_$size_35["default"] = ___default_35; - -var _$pointer_37 = {}; -"use strict"; - -Object.defineProperty(_$pointer_37, "__esModule", { - value: true -}); -_$pointer_37["default"] = void 0; - -var __utils_37 = ___interopRequireWildcard_37(_$utils_56); - -function ___getRequireWildcardCache_37() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __start_37(arg) { - var interaction = arg.interaction, - interactable = arg.interactable, - element = arg.element, - rect = arg.rect, - state = arg.state, - startOffset = arg.startOffset; - var options = state.options; - var offsets = []; - var origin = options.offsetWithOrigin ? getOrigin(arg) : { - x: 0, - y: 0 - }; - var snapOffset; - - if (options.offset === 'startCoords') { - snapOffset = { - x: interaction.coords.start.page.x, - y: interaction.coords.start.page.y - }; - } else { - var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]); - snapOffset = __utils_37.rect.rectToXY(offsetRect) || { - x: 0, - y: 0 - }; - snapOffset.x += origin.x; - snapOffset.y += origin.y; - } - - var relativePoints = options.relativePoints || []; - - if (rect && options.relativePoints && options.relativePoints.length) { - for (var index = 0; index < relativePoints.length; index++) { - var relativePoint = relativePoints[index]; - offsets.push({ - index: index, - relativePoint: relativePoint, - x: startOffset.left - rect.width * relativePoint.x + snapOffset.x, - y: startOffset.top - rect.height * relativePoint.y + snapOffset.y - }); - } - } else { - offsets.push(__utils_37.extend({ - index: 0, - relativePoint: null - }, snapOffset)); - } - - state.offsets = offsets; -} - -function __set_37(arg) { - var interaction = arg.interaction, - coords = arg.coords, - state = arg.state; - var options = state.options, - offsets = state.offsets; - var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name); - var page = __utils_37.extend({}, coords); - var targets = []; - var target; - - if (!options.offsetWithOrigin) { - page.x -= origin.x; - page.y -= origin.y; - } - - state.realX = page.x; - state.realY = page.y; - - for (var _i = 0; _i < offsets.length; _i++) { - var _ref; - - _ref = offsets[_i]; - var offset = _ref; - var relativeX = page.x - offset.x; - var relativeY = page.y - offset.y; - - for (var index = 0, _len = options.targets.length; index < _len; index++) { - var snapTarget = options.targets[index]; - - if (__utils_37.is.func(snapTarget)) { - target = snapTarget(relativeX, relativeY, interaction, offset, index); - } else { - target = snapTarget; - } - - if (!target) { - continue; - } - - targets.push({ - x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x, - y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y, - range: __utils_37.is.number(target.range) ? target.range : options.range - }); - } - } - - var closest = { - target: null, - inRange: false, - distance: 0, - range: 0, - dx: 0, - dy: 0 - }; - - for (var i = 0, len = targets.length; i < len; i++) { - target = targets[i]; - var range = target.range; - var dx = target.x - page.x; - var dy = target.y - page.y; - var distance = __utils_37.hypot(dx, dy); - var inRange = distance <= range; // Infinite targets count as being out of range - // compared to non infinite ones that are in range - - if (range === Infinity && closest.inRange && closest.range !== Infinity) { - inRange = false; - } - - if (!closest.target || (inRange // is the closest target in range? - ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target - ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't - : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest - distance < closest.distance : // The other is not in range and the pointer is closer to this target - !closest.inRange && distance < closest.distance)) { - closest.target = target; - closest.distance = distance; - closest.range = range; - closest.inRange = inRange; - closest.dx = dx; - closest.dy = dy; - state.range = range; - } - } - - if (closest.inRange) { - coords.x = closest.target.x; - coords.y = closest.target.y; - } - - state.closest = closest; -} - -function getOrigin(arg) { - var element = arg.interaction.element; - var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element])); - var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name); - return origin; -} - -var __defaults_37 = { - range: Infinity, - targets: null, - offset: null, - offsetWithOrigin: true, - origin: null, - relativePoints: null, - endOnly: false, - enabled: false -}; -var snap = { - start: __start_37, - set: __set_37, - defaults: __defaults_37 -}; -var ___default_37 = snap; -_$pointer_37["default"] = ___default_37; - -var _$size_38 = {}; -"use strict"; - -Object.defineProperty(_$size_38, "__esModule", { - value: true -}); -_$size_38["default"] = void 0; - -var ___extend_38 = ___interopRequireDefault_38(_$extend_53); - -var __is_38 = ___interopRequireWildcard_38(_$is_57); - -var ___pointer_38 = ___interopRequireDefault_38(_$pointer_37); - -function ___getRequireWildcardCache_38() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); } - -function ___nonIterableRest_38() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; } - -function __start_38(arg) { - var interaction = arg.interaction, - state = arg.state; - var options = state.options; - var edges = interaction.prepared.edges; - - if (!edges) { - return null; - } - - arg.state = { - options: { - targets: null, - relativePoints: [{ - x: edges.left ? 0 : 1, - y: edges.top ? 0 : 1 - }], - offset: options.offset || 'self', - origin: { - x: 0, - y: 0 - }, - range: options.range - } - }; - state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']]; - - ___pointer_38["default"].start(arg); - - state.offsets = arg.state.offsets; - arg.state = state; -} - -function __set_38(arg) { - var interaction = arg.interaction, - state = arg.state, - coords = arg.coords; - var options = state.options, - offsets = state.offsets; - var relative = { - x: coords.x - offsets[0].x, - y: coords.y - offsets[0].y - }; - state.options = (0, ___extend_38["default"])({}, options); - state.options.targets = []; - - for (var _i = 0; _i < (options.targets || []).length; _i++) { - var _ref; - - _ref = (options.targets || [])[_i]; - var snapTarget = _ref; - var target = void 0; - - if (__is_38.func(snapTarget)) { - target = snapTarget(relative.x, relative.y, interaction); - } else { - target = snapTarget; - } - - if (!target) { - continue; - } - - for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) { - var _ref2; - - _ref2 = state.targetFields[_i2]; - - var _ref3 = _ref2, - _ref4 = ___slicedToArray_38(_ref3, 2), - xField = _ref4[0], - yField = _ref4[1]; - - if (xField in target || yField in target) { - target.x = target[xField]; - target.y = target[yField]; - break; - } - } - - state.options.targets.push(target); - } - - ___pointer_38["default"].set(arg); - - state.options = options; -} - -var __defaults_38 = { - range: Infinity, - targets: null, - offset: null, - endOnly: false, - enabled: false -}; -var snapSize = { - start: __start_38, - set: __set_38, - defaults: __defaults_38 -}; -var ___default_38 = snapSize; -_$size_38["default"] = ___default_38; - -var _$edges_36 = {}; -"use strict"; - -Object.defineProperty(_$edges_36, "__esModule", { - value: true -}); -_$edges_36["default"] = void 0; - -var ___clone_36 = ___interopRequireDefault_36(_$clone_49); - -var ___extend_36 = ___interopRequireDefault_36(_$extend_53); - -var _size = ___interopRequireDefault_36(_$size_38); - -function ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -/** - * @module modifiers/snapEdges - * - * @description - * This module allows snapping of the edges of targets during resize - * interactions. - * - * @example - * interact(target).resizable({ - * snapEdges: { - * targets: [interact.snappers.grid({ x: 100, y: 50 })], - * }, - * }) - * - * interact(target).resizable({ - * snapEdges: { - * targets: [ - * interact.snappers.grid({ - * top: 50, - * left: 50, - * bottom: 100, - * right: 100, - * }), - * ], - * }, - * }) - */ -function __start_36(arg) { - var edges = arg.interaction.prepared.edges; - - if (!edges) { - return null; - } - - arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']]; - return _size["default"].start(arg); -} - -function __set_36(arg) { - return _size["default"].set(arg); -} - -var snapEdges = { - start: __start_36, - set: __set_36, - defaults: (0, ___extend_36["default"])((0, ___clone_36["default"])(_size["default"].defaults), { - offset: { - x: 0, - y: 0 - } - }) -}; -var ___default_36 = snapEdges; -_$edges_36["default"] = ___default_36; - -var _$modifiers_31 = {}; -"use strict"; - -Object.defineProperty(_$modifiers_31, "__esModule", { - value: true -}); -_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0; - -var ___base_31 = ___interopRequireDefault_31(_$base_30); - -var ___edges_31 = ___interopRequireDefault_31(_$edges_32); - -var ___pointer_31 = ___interopRequireDefault_31(_$pointer_33); - -var ___rect_31 = ___interopRequireDefault_31(_$rect_34); - -var ___size_31 = ___interopRequireDefault_31(_$size_35); - -var _edges2 = ___interopRequireDefault_31(_$edges_36); - -var _pointer2 = ___interopRequireDefault_31(_$pointer_37); - -var _size2 = ___interopRequireDefault_31(_$size_38); - -function ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var __makeModifier_31 = ___base_31["default"].makeModifier; -var __snap_31 = __makeModifier_31(_pointer2["default"], 'snap'); -_$modifiers_31.snap = __snap_31; -var __snapSize_31 = __makeModifier_31(_size2["default"], 'snapSize'); -_$modifiers_31.snapSize = __snapSize_31; -var __snapEdges_31 = __makeModifier_31(_edges2["default"], 'snapEdges'); -_$modifiers_31.snapEdges = __snapEdges_31; -var __restrict_31 = __makeModifier_31(___pointer_31["default"], 'restrict'); -_$modifiers_31.restrict = __restrict_31; -var __restrictRect_31 = __makeModifier_31(___rect_31["default"], 'restrictRect'); -_$modifiers_31.restrictRect = __restrictRect_31; -var __restrictEdges_31 = __makeModifier_31(___edges_31["default"], 'restrictEdges'); -_$modifiers_31.restrictEdges = __restrictEdges_31; -var __restrictSize_31 = __makeModifier_31(___size_31["default"], 'restrictSize'); -_$modifiers_31.restrictSize = __restrictSize_31; - -var _$PointerEvent_39 = {}; -"use strict"; - -Object.defineProperty(_$PointerEvent_39, "__esModule", { - value: true -}); -_$PointerEvent_39["default"] = void 0; - -var ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13); - -var ___pointerUtils_39 = ___interopRequireDefault_39(_$pointerUtils_61); - -function ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_39(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_39(obj); } - -function ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; } - -function ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_39(self); } - -function ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); } - -function ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function ___inherits_39(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); } - -function ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); } - -/** */ -var PointerEvent = -/*#__PURE__*/ -function (_BaseEvent) { - ___inherits_39(PointerEvent, _BaseEvent); - - /** */ - function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) { - var _this; - - ___classCallCheck_39(this, PointerEvent); - - _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction)); - - ___pointerUtils_39["default"].pointerExtend(___assertThisInitialized_39(_this), event); - - if (event !== pointer) { - ___pointerUtils_39["default"].pointerExtend(___assertThisInitialized_39(_this), pointer); - } - - _this.timeStamp = timeStamp; - _this.originalEvent = event; - _this.type = type; - _this.pointerId = ___pointerUtils_39["default"].getPointerId(pointer); - _this.pointerType = ___pointerUtils_39["default"].getPointerType(pointer); - _this.target = eventTarget; - _this.currentTarget = null; - - if (type === 'tap') { - var pointerIndex = interaction.getPointerIndex(pointer); - _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime; - var interval = _this.timeStamp - interaction.tapTime; - _this["double"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500); - } else if (type === 'doubletap') { - _this.dt = pointer.timeStamp - interaction.tapTime; - } - - return _this; - } - - ___createClass_39(PointerEvent, [{ - key: "_subtractOrigin", - value: function _subtractOrigin(_ref) { - var originX = _ref.x, - originY = _ref.y; - this.pageX -= originX; - this.pageY -= originY; - this.clientX -= originX; - this.clientY -= originY; - return this; - } - }, { - key: "_addOrigin", - value: function _addOrigin(_ref2) { - var originX = _ref2.x, - originY = _ref2.y; - this.pageX += originX; - this.pageY += originY; - this.clientX += originX; - this.clientY += originY; - return this; - } - /** - * Prevent the default behaviour of the original Event - */ - - }, { - key: "preventDefault", - value: function preventDefault() { - this.originalEvent.preventDefault(); - } - }]); - - return PointerEvent; -}(___BaseEvent2_39["default"]); - -_$PointerEvent_39["default"] = PointerEvent; - -var _$base_40 = {}; -"use strict"; - -Object.defineProperty(_$base_40, "__esModule", { - value: true -}); -_$base_40["default"] = void 0; - -var __utils_40 = ___interopRequireWildcard_40(_$utils_56); - -var _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39); - -function ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_40() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -var signals = new __utils_40.Signals(); -var simpleSignals = ['down', 'up', 'cancel']; -var simpleEvents = ['down', 'up', 'cancel']; -var __defaults_40 = { - holdDuration: 600, - ignoreFrom: null, - allowFrom: null, - origin: { - x: 0, - y: 0 - } -}; -var pointerEvents = { - id: 'pointer-events/base', - install: __install_40, - signals: signals, - PointerEvent: _PointerEvent["default"], - fire: fire, - collectEventTargets: collectEventTargets, - createSignalListener: createSignalListener, - defaults: __defaults_40, - types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold'] -}; - -function fire(arg, scope) { - var interaction = arg.interaction, - pointer = arg.pointer, - event = arg.event, - eventTarget = arg.eventTarget, - _arg$type = arg.type, - type = _arg$type === void 0 ? arg.pointerEvent.type : _arg$type, - _arg$targets = arg.targets, - targets = _arg$targets === void 0 ? collectEventTargets(arg) : _arg$targets; - var _arg$pointerEvent = arg.pointerEvent, - pointerEvent = _arg$pointerEvent === void 0 ? new _PointerEvent["default"](type, pointer, event, eventTarget, interaction, scope.now()) : _arg$pointerEvent; - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - targets: targets, - type: type, - pointerEvent: pointerEvent - }; - - for (var i = 0; i < targets.length; i++) { - var target = targets[i]; - - for (var prop in target.props || {}) { - pointerEvent[prop] = target.props[prop]; - } - - var origin = __utils_40.getOriginXY(target.eventable, target.node); - - pointerEvent._subtractOrigin(origin); - - pointerEvent.eventable = target.eventable; - pointerEvent.currentTarget = target.node; - target.eventable.fire(pointerEvent); - - pointerEvent._addOrigin(origin); - - if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) { - break; - } - } - - signals.fire('fired', signalArg); - - if (type === 'tap') { - // if pointerEvent should make a double tap, create and fire a doubletap - // PointerEvent and use that as the prevTap - var prevTap = pointerEvent["double"] ? fire({ - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'doubletap' - }, scope) : pointerEvent; - interaction.prevTap = prevTap; - interaction.tapTime = prevTap.timeStamp; - } - - return pointerEvent; -} - -function collectEventTargets(_ref) { - var interaction = _ref.interaction, - pointer = _ref.pointer, - event = _ref.event, - eventTarget = _ref.eventTarget, - type = _ref.type; - var pointerIndex = interaction.getPointerIndex(pointer); - var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted - - if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target - !(pointerInfo && pointerInfo.downTarget === eventTarget))) { - return []; - } - - var path = __utils_40.dom.getPath(eventTarget); - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: type, - path: path, - targets: [], - node: null - }; - - for (var _i = 0; _i < path.length; _i++) { - var _ref2; - - _ref2 = path[_i]; - var node = _ref2; - signalArg.node = node; - signals.fire('collect-targets', signalArg); - } - - if (type === 'hold') { - signalArg.targets = signalArg.targets.filter(function (target) { - return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration; - }); - } - - return signalArg.targets; -} - -function __install_40(scope) { - var interactions = scope.interactions; - scope.pointerEvents = pointerEvents; - scope.defaults.actions.pointerEvents = pointerEvents.defaults; - interactions.signals.on('new', function (_ref3) { - var interaction = _ref3.interaction; - interaction.prevTap = null; // the most recent tap event on this interaction - - interaction.tapTime = 0; // time of the most recent tap event - }); - interactions.signals.on('update-pointer', function (_ref4) { - var down = _ref4.down, - pointerInfo = _ref4.pointerInfo; - - if (!down && pointerInfo.hold) { - return; - } - - pointerInfo.hold = { - duration: Infinity, - timeout: null - }; - }); - interactions.signals.on('move', function (_ref5) { - var interaction = _ref5.interaction, - pointer = _ref5.pointer, - event = _ref5.event, - eventTarget = _ref5.eventTarget, - duplicateMove = _ref5.duplicateMove; - var pointerIndex = interaction.getPointerIndex(pointer); - - if (!duplicateMove && (!interaction.pointerIsDown || interaction.pointerWasMoved)) { - if (interaction.pointerIsDown) { - clearTimeout(interaction.pointers[pointerIndex].hold.timeout); - } - - fire({ - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'move' - }, scope); - } - }); - interactions.signals.on('down', function (_ref6) { - var interaction = _ref6.interaction, - pointer = _ref6.pointer, - event = _ref6.event, - eventTarget = _ref6.eventTarget, - pointerIndex = _ref6.pointerIndex; - var timer = interaction.pointers[pointerIndex].hold; - var path = __utils_40.dom.getPath(eventTarget); - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'hold', - targets: [], - path: path, - node: null - }; - - for (var _i2 = 0; _i2 < path.length; _i2++) { - var _ref7; - - _ref7 = path[_i2]; - var node = _ref7; - signalArg.node = node; - signals.fire('collect-targets', signalArg); - } - - if (!signalArg.targets.length) { - return; - } - - var minDuration = Infinity; - - for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) { - var _ref8; - - _ref8 = signalArg.targets[_i3]; - var target = _ref8; - var holdDuration = target.eventable.options.holdDuration; - - if (holdDuration < minDuration) { - minDuration = holdDuration; - } - } - - timer.duration = minDuration; - timer.timeout = setTimeout(function () { - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: 'hold' - }, scope); - }, minDuration); - }); - var _arr = ['up', 'cancel']; - - for (var _i4 = 0; _i4 < _arr.length; _i4++) { - var signalName = _arr[_i4]; - interactions.signals.on(signalName, function (_ref10) { - var interaction = _ref10.interaction, - pointerIndex = _ref10.pointerIndex; - - if (interaction.pointers[pointerIndex].hold) { - clearTimeout(interaction.pointers[pointerIndex].hold.timeout); - } - }); - } - - for (var i = 0; i < simpleSignals.length; i++) { - interactions.signals.on(simpleSignals[i], createSignalListener(simpleEvents[i], scope)); - } - - interactions.signals.on('up', function (_ref9) { - var interaction = _ref9.interaction, - pointer = _ref9.pointer, - event = _ref9.event, - eventTarget = _ref9.eventTarget; - - if (!interaction.pointerWasMoved) { - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: 'tap' - }, scope); - } - }); -} - -function createSignalListener(type, scope) { - return function (_ref11) { - var interaction = _ref11.interaction, - pointer = _ref11.pointer, - event = _ref11.event, - eventTarget = _ref11.eventTarget; - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: type - }, scope); - }; -} - -var ___default_40 = pointerEvents; -_$base_40["default"] = ___default_40; - -var _$holdRepeat_41 = {}; -"use strict"; - -Object.defineProperty(_$holdRepeat_41, "__esModule", { - value: true -}); -_$holdRepeat_41["default"] = void 0; - -var ___base_41 = ___interopRequireDefault_41(_$base_40); - -function ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_41(scope) { - var pointerEvents = scope.pointerEvents, - interactions = scope.interactions; - scope.usePlugin(___base_41["default"]); - pointerEvents.signals.on('new', onNew); - pointerEvents.signals.on('fired', function (arg) { - return onFired(arg, scope); - }); - var _arr = ['move', 'up', 'cancel', 'endall']; - - for (var _i = 0; _i < _arr.length; _i++) { - var signal = _arr[_i]; - interactions.signals.on(signal, endHoldRepeat); - } // don't repeat by default - - - pointerEvents.defaults.holdRepeatInterval = 0; - pointerEvents.types.push('holdrepeat'); -} - -function onNew(_ref) { - var pointerEvent = _ref.pointerEvent; - - if (pointerEvent.type !== 'hold') { - return; - } - - pointerEvent.count = (pointerEvent.count || 0) + 1; -} - -function onFired(_ref2, scope) { - var interaction = _ref2.interaction, - pointerEvent = _ref2.pointerEvent, - eventTarget = _ref2.eventTarget, - targets = _ref2.targets; - - if (pointerEvent.type !== 'hold' || !targets.length) { - return; - } // get the repeat interval from the first eventable - - - var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less - - if (interval <= 0) { - return; - } // set a timeout to fire the holdrepeat event - - - interaction.holdIntervalHandle = setTimeout(function () { - scope.pointerEvents.fire({ - interaction: interaction, - eventTarget: eventTarget, - type: 'hold', - pointer: pointerEvent, - event: pointerEvent - }, scope); - }, interval); -} - -function endHoldRepeat(_ref3) { - var interaction = _ref3.interaction; - - // set the interaction's holdStopTime property - // to stop further holdRepeat events - if (interaction.holdIntervalHandle) { - clearInterval(interaction.holdIntervalHandle); - interaction.holdIntervalHandle = null; - } -} - -var ___default_41 = { - id: 'pointer-events/holdRepeat', - install: __install_41 -}; -_$holdRepeat_41["default"] = ___default_41; - -var _$interactableTargets_43 = {}; -"use strict"; - -Object.defineProperty(_$interactableTargets_43, "__esModule", { - value: true -}); -_$interactableTargets_43["default"] = void 0; - -/* removed: var _$arr_47 = require("@interactjs/utils/arr"); */; - -var ___extend_43 = ___interopRequireDefault_43(_$extend_53); - -function ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_43(scope) { - var pointerEvents = scope.pointerEvents, - actions = scope.actions, - Interactable = scope.Interactable, - interactables = scope.interactables; - pointerEvents.signals.on('collect-targets', function (_ref) { - var targets = _ref.targets, - node = _ref.node, - type = _ref.type, - eventTarget = _ref.eventTarget; - scope.interactables.forEachMatch(node, function (interactable) { - var eventable = interactable.events; - var options = eventable.options; - - if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) { - targets.push({ - node: node, - eventable: eventable, - props: { - interactable: interactable - } - }); - } - }); - }); - interactables.signals.on('new', function (_ref2) { - var interactable = _ref2.interactable; - - interactable.events.getRect = function (element) { - return interactable.getRect(element); - }; - }); - interactables.signals.on('set', function (_ref3) { - var interactable = _ref3.interactable, - options = _ref3.options; - (0, ___extend_43["default"])(interactable.events.options, pointerEvents.defaults); - (0, ___extend_43["default"])(interactable.events.options, options.pointerEvents || {}); - }); - (0, _$arr_47.merge)(actions.eventTypes, pointerEvents.types); - Interactable.prototype.pointerEvents = pointerEventsMethod; - var __backCompatOption = Interactable.prototype._backCompatOption; - - Interactable.prototype._backCompatOption = function (optionName, newValue) { - var ret = __backCompatOption.call(this, optionName, newValue); - - if (ret === this) { - this.events.options[optionName] = newValue; - } - - return ret; - }; -} - -function pointerEventsMethod(options) { - (0, ___extend_43["default"])(this.events.options, options); - return this; -} - -var ___default_43 = { - id: 'pointer-events/interactableTargets', - install: __install_43 -}; -_$interactableTargets_43["default"] = ___default_43; - -var _$pointerEvents_42 = {}; -"use strict"; - -Object.defineProperty(_$pointerEvents_42, "__esModule", { - value: true -}); -_$pointerEvents_42.install = __install_42; -Object.defineProperty(_$pointerEvents_42, "pointerEvents", { - enumerable: true, - get: function get() { - return ___base_42["default"]; - } -}); -Object.defineProperty(_$pointerEvents_42, "holdRepeat", { - enumerable: true, - get: function get() { - return _holdRepeat["default"]; - } -}); -Object.defineProperty(_$pointerEvents_42, "interactableTargets", { - enumerable: true, - get: function get() { - return _interactableTargets["default"]; - } -}); -_$pointerEvents_42.id = void 0; - -var ___base_42 = ___interopRequireDefault_42(_$base_40); - -var _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41); - -var _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43); - -function ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_42(scope) { - scope.usePlugin(___base_42["default"]); - scope.usePlugin(_holdRepeat["default"]); - scope.usePlugin(_interactableTargets["default"]); -} - -var __id_42 = 'pointer-events'; -_$pointerEvents_42.id = __id_42; - -var _$reflow_44 = {}; -"use strict"; - -Object.defineProperty(_$reflow_44, "__esModule", { - value: true -}); -_$reflow_44.install = __install_44; -_$reflow_44["default"] = void 0; - -/* removed: var _$InteractEvent_15 = require("@interactjs/core/InteractEvent"); */; - -/* removed: var _$utils_56 = require("@interactjs/utils"); */; - -_$InteractEvent_15.EventPhase.Reflow = 'reflow'; - -function __install_44(scope) { - var actions = scope.actions, - interactions = scope.interactions, - Interactable = scope.Interactable; // add action reflow event types - - for (var _i = 0; _i < actions.names.length; _i++) { - var _ref; - - _ref = actions.names[_i]; - var actionName = _ref; - actions.eventTypes.push("".concat(actionName, "reflow")); - } // remove completed reflow interactions - - - interactions.signals.on('stop', function (_ref2) { - var interaction = _ref2.interaction; - - if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) { - if (interaction._reflowResolve) { - interaction._reflowResolve(); - } - - _$utils_56.arr.remove(scope.interactions.list, interaction); - } - }); - /** - * ```js - * const interactable = interact(target) - * const drag = { name: drag, axis: 'x' } - * const resize = { name: resize, edges: { left: true, bottom: true } - * - * interactable.reflow(drag) - * interactable.reflow(resize) - * ``` - * - * Start an action sequence to re-apply modifiers, check drops, etc. - * - * @param { Object } action The action to begin - * @param { string } action.name The name of the action - * @returns { Promise } - */ - - Interactable.prototype.reflow = function (action) { - return reflow(this, action, scope); - }; -} - -function reflow(interactable, action, scope) { - var elements = _$utils_56.is.string(interactable.target) ? _$utils_56.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name - - var Promise = _$utils_56.win.window.Promise; - var promises = Promise ? [] : null; - - var _loop = function _loop() { - _ref3 = elements[_i2]; - var element = _ref3; - var rect = interactable.getRect(element); - - if (!rect) { - return "break"; - } - - var runningInteraction = _$utils_56.arr.find(scope.interactions.list, function (interaction) { - return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name; - }); - - var reflowPromise = void 0; - - if (runningInteraction) { - runningInteraction.move(); - - if (promises) { - reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) { - runningInteraction._reflowResolve = resolve; - }); - } - } else { - var xywh = _$utils_56.rect.tlbrToXywh(rect); - - var coords = { - page: { - x: xywh.x, - y: xywh.y - }, - client: { - x: xywh.x, - y: xywh.y - }, - timeStamp: scope.now() - }; - - var event = _$utils_56.pointer.coordsToEvent(coords); - - reflowPromise = startReflow(scope, interactable, element, action, event); - } - - if (promises) { - promises.push(reflowPromise); - } - }; - - for (var _i2 = 0; _i2 < elements.length; _i2++) { - var _ref3; - - var _ret = _loop(); - - if (_ret === "break") break; - } - - return promises && Promise.all(promises).then(function () { - return interactable; - }); -} - -function startReflow(scope, interactable, element, action, event) { - var interaction = scope.interactions["new"]({ - pointerType: 'reflow' - }); - var signalArg = { - interaction: interaction, - event: event, - pointer: event, - eventTarget: element, - phase: _$InteractEvent_15.EventPhase.Reflow - }; - interaction.interactable = interactable; - interaction.element = element; - interaction.prepared = (0, _$utils_56.extend)({}, action); - interaction.prevEvent = event; - interaction.updatePointer(event, event, element, true); - - interaction._doPhase(signalArg); - - var reflowPromise = _$utils_56.win.window.Promise ? new _$utils_56.win.window.Promise(function (resolve) { - interaction._reflowResolve = resolve; - }) : null; - interaction._reflowPromise = reflowPromise; - interaction.start(action, interactable, element); - - if (interaction._interacting) { - interaction.move(signalArg); - interaction.end(event); - } else { - interaction.stop(); - } - - interaction.removePointer(event, event); - interaction.pointerIsDown = false; - return reflowPromise; -} - -var ___default_44 = { - id: 'reflow', - install: __install_44 -}; -_$reflow_44["default"] = ___default_44; - -var _$interact_28 = {}; -"use strict"; - -Object.defineProperty(_$interact_28, "__esModule", { - value: true -}); -_$interact_28["default"] = _$interact_28.scope = _$interact_28.interact = void 0; - -var ___scope_28 = _$scope_24({}); - -var __utils_28 = ___interopRequireWildcard_28(_$utils_56); - -var ___browser_28 = ___interopRequireDefault_28(_$browser_48); - -var ___events_28 = ___interopRequireDefault_28(_$events_52); - -function ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_28() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -/** @module interact */ -var globalEvents = {}; -var scope = new ___scope_28.Scope(); -/** - * ```js - * interact('#draggable').draggable(true) - * - * var rectables = interact('rect') - * rectables - * .gesturable(true) - * .on('gesturemove', function (event) { - * // ... - * }) - * ``` - * - * The methods of this variable can be used to set elements as interactables - * and also to change various default settings. - * - * Calling it as a function and passing an element or a valid CSS selector - * string returns an Interactable object which has various methods to configure - * it. - * - * @global - * - * @param {Element | string} target The HTML or SVG Element to interact with - * or CSS selector - * @return {Interactable} - */ - -_$interact_28.scope = scope; - -var interact = function interact(target, options) { - var interactable = scope.interactables.get(target, options); - - if (!interactable) { - interactable = scope.interactables["new"](target, options); - interactable.events.global = globalEvents; - } - - return interactable; -}; -/** - * Use a plugin - * - * @alias module:interact.use - * - * @param {Object} plugin - * @param {function} plugin.install - * @return {interact} - */ - - -_$interact_28.interact = interact; -interact.use = use; - -function use(plugin, options) { - scope.usePlugin(plugin, options); - return interact; -} -/** - * Check if an element or selector has been set with the {@link interact} - * function - * - * @alias module:interact.isSet - * - * @param {Element} element The Element being searched for - * @return {boolean} Indicates if the element or CSS selector was previously - * passed to interact - */ - - -interact.isSet = isSet; - -function isSet(target, options) { - return !!scope.interactables.get(target, options && options.context); -} -/** - * Add a global listener for an InteractEvent or adds a DOM event to `document` - * - * @alias module:interact.on - * - * @param {string | array | object} type The types of events to listen for - * @param {function} listener The function event (s) - * @param {object | boolean} [options] object or useCapture flag for - * addEventListener - * @return {object} interact - */ - - -interact.on = on; - -function on(type, listener, options) { - if (__utils_28.is.string(type) && type.search(' ') !== -1) { - type = type.trim().split(/ +/); - } - - if (__utils_28.is.array(type)) { - for (var _i = 0; _i < type.length; _i++) { - var _ref; - - _ref = type[_i]; - var eventType = _ref; - interact.on(eventType, listener, options); - } - - return interact; - } - - if (__utils_28.is.object(type)) { - for (var prop in type) { - interact.on(prop, type[prop], listener); - } - - return interact; - } // if it is an InteractEvent type, add listener to globalEvents - - - if (__utils_28.arr.contains(scope.actions.eventTypes, type)) { - // if this type of event was never bound - if (!globalEvents[type]) { - globalEvents[type] = [listener]; - } else { - globalEvents[type].push(listener); - } - } // If non InteractEvent type, addEventListener to document - else { - ___events_28["default"].add(scope.document, type, listener, { - options: options - }); - } - - return interact; -} -/** - * Removes a global InteractEvent listener or DOM event from `document` - * - * @alias module:interact.off - * - * @param {string | array | object} type The types of events that were listened - * for - * @param {function} listener The listener function to be removed - * @param {object | boolean} options [options] object or useCapture flag for - * removeEventListener - * @return {object} interact - */ - - -interact.off = off; - -function off(type, listener, options) { - if (__utils_28.is.string(type) && type.search(' ') !== -1) { - type = type.trim().split(/ +/); - } - - if (__utils_28.is.array(type)) { - for (var _i2 = 0; _i2 < type.length; _i2++) { - var _ref2; - - _ref2 = type[_i2]; - var eventType = _ref2; - interact.off(eventType, listener, options); - } - - return interact; - } - - if (__utils_28.is.object(type)) { - for (var prop in type) { - interact.off(prop, type[prop], listener); - } - - return interact; - } - - if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) { - ___events_28["default"].remove(scope.document, type, listener, options); - } else { - var index; - - if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) { - globalEvents[type].splice(index, 1); - } - } - - return interact; -} -/** - * Returns an object which exposes internal data - * @alias module:interact.debug - * - * @return {object} An object with properties that outline the current state - * and expose internal functions and variables - */ - - -interact.debug = debug; - -function debug() { - return scope; -} // expose the functions used to calculate multi-touch properties - - -interact.getPointerAverage = __utils_28.pointer.pointerAverage; -interact.getTouchBBox = __utils_28.pointer.touchBBox; -interact.getTouchDistance = __utils_28.pointer.touchDistance; -interact.getTouchAngle = __utils_28.pointer.touchAngle; -interact.getElementRect = __utils_28.dom.getElementRect; -interact.getElementClientRect = __utils_28.dom.getElementClientRect; -interact.matchesSelector = __utils_28.dom.matchesSelector; -interact.closest = __utils_28.dom.closest; -/** - * @alias module:interact.supportsTouch - * - * @return {boolean} Whether or not the browser supports touch input - */ - -interact.supportsTouch = supportsTouch; - -function supportsTouch() { - return ___browser_28["default"].supportsTouch; -} -/** - * @alias module:interact.supportsPointerEvent - * - * @return {boolean} Whether or not the browser supports PointerEvents - */ - - -interact.supportsPointerEvent = supportsPointerEvent; - -function supportsPointerEvent() { - return ___browser_28["default"].supportsPointerEvent; -} -/** - * Cancels all interactions (end events are not fired) - * - * @alias module:interact.stop - * - * @return {object} interact - */ - - -interact.stop = __stop_28; - -function __stop_28() { - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref3; - - _ref3 = scope.interactions.list[_i3]; - var interaction = _ref3; - interaction.stop(); - } - - return interact; -} -/** - * Returns or sets the distance the pointer must be moved before an action - * sequence occurs. This also affects tolerance for tap events. - * - * @alias module:interact.pointerMoveTolerance - * - * @param {number} [newValue] The movement from the start position must be greater than this value - * @return {interact | number} - */ - - -interact.pointerMoveTolerance = pointerMoveTolerance; - -function pointerMoveTolerance(newValue) { - if (__utils_28.is.number(newValue)) { - scope.interactions.pointerMoveTolerance = newValue; - return interact; - } - - return scope.interactions.pointerMoveTolerance; -} - -scope.interactables.signals.on('unset', function (_ref4) { - var interactable = _ref4.interactable; - scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset - - for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { - var _ref5; - - _ref5 = scope.interactions.list[_i4]; - var interaction = _ref5; - - if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) { - interaction.stop(); - } - } -}); - -interact.addDocument = function (doc, options) { - return scope.addDocument(doc, options); -}; - -interact.removeDocument = function (doc) { - return scope.removeDocument(doc); -}; - -scope.interact = interact; -var ___default_28 = interact; -_$interact_28["default"] = ___default_28; - -var _$interact_27 = {}; -"use strict"; - -Object.defineProperty(_$interact_27, "__esModule", { - value: true -}); -_$interact_27.init = __init_27; -Object.defineProperty(_$interact_27, "autoScroll", { - enumerable: true, - get: function get() { - return _autoScroll["default"]; - } -}); -Object.defineProperty(_$interact_27, "interactablePreventDefault", { - enumerable: true, - get: function get() { - return _interactablePreventDefault["default"]; - } -}); -Object.defineProperty(_$interact_27, "inertia", { - enumerable: true, - get: function get() { - return _inertia["default"]; - } -}); -Object.defineProperty(_$interact_27, "modifiers", { - enumerable: true, - get: function get() { - return ___base_27["default"]; - } -}); -Object.defineProperty(_$interact_27, "reflow", { - enumerable: true, - get: function get() { - return _reflow["default"]; - } -}); -Object.defineProperty(_$interact_27, "interact", { - enumerable: true, - get: function get() { - return _interact["default"]; - } -}); -_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27["default"] = void 0; - -var actions = ___interopRequireWildcard_27(_$actions_5); - -_$interact_27.actions = actions; - -var _autoScroll = ___interopRequireDefault_27(_$autoScroll_7); - -var autoStart = ___interopRequireWildcard_27(_$autoStart_12); - -var _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21); - -var _devTools = ___interopRequireDefault_27(_$devTools_25); - -var _inertia = ___interopRequireDefault_27(_$inertia_26); - -var modifiers = ___interopRequireWildcard_27(_$modifiers_31); - -var ___base_27 = ___interopRequireDefault_27(_$base_30); - -var __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42); - -_$interact_27.pointerEvents = __pointerEvents_27; - -var _reflow = ___interopRequireDefault_27(_$reflow_44); - -var _interact = ___interopRequireWildcard_27(_$interact_28); - -function ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_27() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __init_27(window) { - _interact.scope.init(window); - - _interact["default"].use(_interactablePreventDefault["default"]); // pointerEvents - - - _interact["default"].use(__pointerEvents_27); // inertia - - - _interact["default"].use(_inertia["default"]); // autoStart, hold - - - _interact["default"].use(autoStart); // drag and drop, resize, gesture - - - _interact["default"].use(actions); // snap, resize, etc. - - - _interact["default"].use(___base_27["default"]); // for backwrads compatibility - - - for (var type in modifiers) { - var _modifiers$type = modifiers[type], - _defaults = _modifiers$type._defaults, - _methods = _modifiers$type._methods; - _defaults._methods = _methods; - _interact.scope.defaults.perAction[type] = _defaults; - } // autoScroll - - - _interact["default"].use(_autoScroll["default"]); // reflow - - - _interact["default"].use(_reflow["default"]); // eslint-disable-next-line no-undef - - - if (false) {} - - return _interact["default"]; -} // eslint-disable-next-line no-undef - - -_interact["default"].version = "1.6.3"; -var ___default_27 = _interact["default"]; -_$interact_27["default"] = ___default_27; - -var _$types_45 = {}; -/// -"use strict"; - -var _$grid_64 = {}; -"use strict"; - -Object.defineProperty(_$grid_64, "__esModule", { - value: true -}); -_$grid_64["default"] = void 0; - -function ___slicedToArray_64(arr, i) { return ___arrayWithHoles_64(arr) || ___iterableToArrayLimit_64(arr, i) || ___nonIterableRest_64(); } - -function ___nonIterableRest_64() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_64(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_64(arr) { if (Array.isArray(arr)) return arr; } - -function createGrid(grid) { - var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) { - var _ref2 = ___slicedToArray_64(_ref, 2), - xField = _ref2[0], - yField = _ref2[1]; - - return xField in grid || yField in grid; - }); - return function (x, y) { - var range = grid.range, - _grid$limits = grid.limits, - limits = _grid$limits === void 0 ? { - left: -Infinity, - right: Infinity, - top: -Infinity, - bottom: Infinity - } : _grid$limits, - _grid$offset = grid.offset, - offset = _grid$offset === void 0 ? { - x: 0, - y: 0 - } : _grid$offset; - var result = { - range: range - }; - - for (var _i2 = 0; _i2 < coordFields.length; _i2++) { - var _ref3; - - _ref3 = coordFields[_i2]; - - var _ref4 = _ref3, - _ref5 = ___slicedToArray_64(_ref4, 2), - xField = _ref5[0], - yField = _ref5[1]; - - var gridx = Math.round((x - offset.x) / grid[xField]); - var gridy = Math.round((y - offset.y) / grid[yField]); - result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x)); - result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y)); - } - - return result; - }; -} - -var ___default_64 = createGrid; -_$grid_64["default"] = ___default_64; - -var _$snappers_65 = {}; -"use strict"; - -Object.defineProperty(_$snappers_65, "__esModule", { - value: true -}); -Object.defineProperty(_$snappers_65, "grid", { - enumerable: true, - get: function get() { - return _grid["default"]; - } -}); - -var _grid = ___interopRequireDefault_65(_$grid_64); - -function ___interopRequireDefault_65(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var _$index_29 = { exports: {} }; -"use strict"; - -Object.defineProperty(_$index_29.exports, "__esModule", { - value: true -}); -_$index_29.exports.init = __init_29; -_$index_29.exports["default"] = void 0; - -var ___interact_29 = ___interopRequireWildcard_29(_$interact_27); - -var __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31); - -_$types_45; - -var ___extend_29 = ___interopRequireDefault_29(_$extend_53); - -var snappers = ___interopRequireWildcard_29(_$snappers_65); - -function ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_29() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___typeof_29(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_29(obj); } - -if ((typeof window === "undefined" ? "undefined" : ___typeof_29(window)) === 'object' && !!window) { - __init_29(window); -} - -function __init_29(win) { - (0, ___interact_29.init)(win); - return ___interact_29["default"].use({ - id: 'interactjs', - install: function install() { - ___interact_29["default"].modifiers = (0, ___extend_29["default"])({}, __modifiers_29); - ___interact_29["default"].snappers = snappers; - ___interact_29["default"].createSnapGrid = ___interact_29["default"].snappers.grid; - } - }); -} - -var ___default_29 = ___interact_29["default"]; -_$index_29.exports["default"] = ___default_29; -___interact_29["default"]["default"] = ___interact_29["default"] // tslint:disable-line no-string-literal -; -___interact_29["default"].init = __init_29; // tslint:disable-line no-string-literal - -if (( false ? undefined : ___typeof_29(_$index_29)) === 'object' && !!_$index_29) { - _$index_29.exports = ___interact_29["default"]; -} - -_$index_29 = _$index_29.exports -return _$index_29; - -}); - - -//# sourceMappingURL=interact.js.map - - /***/ }), /***/ "fca0": diff --git a/dist/vue-grid-layout.common.js.map b/dist/vue-grid-layout.common.js.map index 377db114..f2fb2210 100644 --- a/dist/vue-grid-layout.common.js.map +++ b/dist/vue-grid-layout.common.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?f4e6","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?a307","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["currentDir","hasDocument","document","hasWindow","window","getDocumentDir","direction","dir","getElementsByTagName","getAttribute","setDocumentDir","html","setAttribute","addWindowEventListener","event","callback","addEventListener","removeWindowEventListener","removeEventListener","VueGridLayout","GridLayout","GridItem","install","Vue","installed","Object","keys","forEach","name","component","plugin","GlobalVue","global","use","getBreakpointFromWidth","breakpoints","width","sorted","sortBreakpoints","matching","i","len","length","breakpointName","getColsFromBreakpoint","breakpoint","cols","Error","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","slice","indexOf","b","compact","correctBounds","generateResponsiveLayout","sort","a","bottom","max","bottomY","y","h","newLayout","Array","cloneLayoutItem","layoutItem","JSON","parse","stringify","collides","l1","l2","x","w","compareWith","getStatics","sortLayoutItemsByRowCol","out","l","static","compactItem","push","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","id","getAllCollisions","filter","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","Math","undefined","perc","num","setTransform","top","left","height","translate","transform","WebkitTransform","MozTransform","msTransform","OTransform","position","setTransformRtl","right","setTopLeft","setTopRight","concat","validateLayout","contextName","subProps","isArray","item","j","autoBindHandlers","el","fns","key","bind","createMarkup","obj","result","val","hyphenate","addPx","IS_UNITLESS","animationIterationCount","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridColumn","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","stopOpacity","strokeDashoffset","strokeOpacity","strokeWidth","value","hyphenateRE","str","replace","toLowerCase","findItemInArray","array","property","findAndRemove","index","splice","getControlPosition","e","offsetXYFromParentOf","evt","offsetParent","target","body","offsetParentRect","getBoundingClientRect","clientX","scrollLeft","clientY","scrollTop","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","isNaN"],"mappings":"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e,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,+CAA+C,oBAAoB,QAAQ,SAAS,aAAa,cAAc,cAAc,YAAY,WAAW,YAAY,gBAAgB,sBAAsB;;AAEtM;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtNa;;AAEb;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;;;;;ACtCA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA,IAAIA;AAAkC;AAAA,EAAI,MAA1C,C,CACA;;AAEA,SAASC,WAAT,GAAsB;AAClB,SAAQ,OAAOC,QAAP,KAAoB,WAA5B;AACH;;AAED,SAASC,SAAT,GAAoB;AAChB,SAAQ,OAAOC,MAAP,KAAkB,WAA1B;AACH;;AAEM,SAASC,cAAT,GAAyB;AAC5B,MAAG,CAACJ,WAAW,EAAf,EAAkB;AACd,WAAOD,UAAP;AACH;;AACD,MAAMM,SAAS,GAAI,OAAOJ,QAAQ,CAACK,GAAhB,KAAwB,WAAzB,GACdL,QAAQ,CAACK,GADK,GAEdL,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,EAAyCC,YAAzC,CAAsD,KAAtD,CAFJ;AAGA,SAAOH,SAAP;AACH;AAEM,SAASI,cAAT,CAAwBH;AAAxB;AAAA,EAAoD;AAC3D;AACI,MAAG,CAACN,WAAJ,EAAgB;AACZD,cAAU,GAAGO,GAAb;AACA;AACH;;AAED,MAAMI,IAAI,GAAGT,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,CAAb;AACAG,MAAI,CAACC,YAAL,CAAkB,KAAlB,EAAyBL,GAAzB;AACH;AAEM,SAASM,sBAAT,CAAgCC;AAAhC;AAAA,EAA8CC;AAA9C;AAAA,EAAoE;AACvE,MAAG,CAACZ,SAAJ,EAAc;AAEVY,YAAQ;AACR;AACH;;AACDX,QAAM,CAACY,gBAAP,CAAwBF,KAAxB,EAA+BC,QAA/B;AACH;AAEM,SAASE,yBAAT,CAAmCH;AAAnC;AAAA,EAAiDC;AAAjD;AAAA,EAAuE;AAC1E,MAAG,CAACZ,SAAJ,EAAc;AACV;AACH;;AACDC,QAAM,CAACc,mBAAP,CAA2BJ,KAA3B,EAAkCC,QAAlC;AACH,C;;;;;;;AC9CD,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;;ACNa;AACb,mBAAO,CAAC,MAAmB;AAC3B,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,YAAY,mBAAO,CAAC,MAAU;AAC9B,cAAc,mBAAO,CAAC,MAAY;AAClC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,iBAAiB,mBAAO,CAAC,MAAgB;;AAEzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,yBAAyB,4CAA4C;AACrE;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,2BAA2B,mBAAmB,aAAa;AAC3D;AACA;AACA;AACA;AACA,6CAA6C,WAAW;AACxD;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAkB;AAClB;AACA,gBAAgB;AAChB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;;;;;;;;AC/FA,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD,IAAI;AACJ;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oDAAoD,cAAc;;AAElE;AACA;;;;;;;;AC3EA;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA,2BAA2B,kBAAkB,EAAE;;AAE/C;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBA;;;;;;;;;ACAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;AC5FA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACNA,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAuB;AAC/C;AACA;;AAEA,mBAAO,CAAC,MAAS;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;AC9BD;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,UAAU,mBAAO,CAAC,MAAe;AACjC,kBAAkB,mBAAO,CAAC,MAAkB;AAC5C,eAAe,mBAAO,CAAC,MAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,MAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,MAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA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CA;AACA;AACA,GA5HA;AA6HA;AACA;AACA,GA/HA;AAgIA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA,sCAHA,CAKA;;AACA;AAEA;AAEA;AAEA;AACA;AACA;AACA,8BADA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA,WAFA;AAGA,SATA;AAUA,OAvBA;AAwBA,KA7BA;AA8BA,GAhKA;AAiKA;AACA;AACA;AACA;AAAA;;AACA;AACA;;AACA;AACA;;;;;;;;;;;;;;;;;;AAoBA;AACA;AACA,WAFA;AAGA;;AACA;AACA,OA7BA;AA8BA,KAjCA;AAkCA;AACA;AACA,KApCA;AAqCA;AACA;AACA,KAvCA;AAwCA;AACA;AACA,KA1CA;AA2CA;AACA;AACA,KA7CA;AA8CA;AACA;AACA,KAhDA;AAiDA,cAjDA,wBAiDA;AACA;AACA;AACA;AACA;;AACA;AACA,KAvDA;AAwDA;AACA;AACA,KA1DA;AA2DA,UA3DA,oBA2DA;AACA;AACA;AA7DA,GAjKA;AAgOA;AACA,gBADA,0BACA;AACA;AACA;AACA;AAEA;;AACA;AACA;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;AACA;AACA,iBAFA;AAGA,eAJA;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AAEA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AADA;AAGA,KAnCA;AAoCA;AACA;AACA;AACA;;AACA;AACA,KAzCA;AA0CA;AACA,iCADA,CAEA;AACA;;AACA;AACA;AACA,KAhDA;AAiDA;AACA;AACA,sEAFA,CAGA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AACA,OAXA,MAWA;AACA;AACA;AACA,SAFA;AAGA,OAvBA,CAyBA;;;AACA;AACA,0EA3BA,CA4BA;;AACA;AACA;AACA;AACA,KAjFA;AAkFA;AACA,sEADA,CAEA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;;AACA;AACA;AAAA;AAAA;AAAA,mBACA;AAAA;AAAA,SADA;AAGA,8CAJA,CAMA;;AACA;AACA;AACA;AAAA,cACA,iBADA;AAEA;AACA;AACA;AACA,WAHA;AAKA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AAEA,OAZA,MAYA;AACA;AACA;AACA,SAFA;AAGA;;AAEA;AAEA;AACA;AACA;AAEA;AACA,KA9IA;AAgJA;AACA,wBAjJA,kCAiJA;AACA;AACA,oEAFA,CAIA;;AACA,6EACA,sFANA,CAQA;;AACA,kDACA,mBADA,EAEA,YAFA,EAGA,gBAHA,EAIA,aAJA,EAKA,mBALA,EAMA,OANA,EAOA,oBAPA,EATA,CAmBA;;AACA;;AAEA;AACA;AACA,OAxBA,CA0BA;;;AACA;AAEA;AACA;AACA,KAhLA;AAkLA;AACA,0BAnLA,oCAmLA;AACA;AACA;AACA,KAtLA;AAwLA;AACA,kBAzLA,0BAyLA,MAzLA,EAyLA,cAzLA,EAyLA;AAEA;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAHA,CASA;;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAVA,CAgBA;;AACA;AACA;AA3MA;AAhOA,G;;AC7BoU,CAAgB,oHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGtE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,6CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,2F;;;;;;;ACnBf;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;ACZa;AACb,aAAa,mBAAO,CAAC,MAAkB;AACvC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,MAAS,qBAAqB,mBAAO,CAAC,MAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;;ACZA,mBAAO,CAAC,MAA0C;AAClD,cAAc,mBAAO,CAAC,MAAqB;AAC3C;AACA;AACA;;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,YAAY,mBAAO,CAAC,MAAgB;;AAEpC,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACPA,cAAc,mBAAO,CAAC,MAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,MAAgB,cAAc,iBAAiB,mBAAO,CAAC,MAAc,KAAK;;;;;;;;;ACFtG;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;;AAElD;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACvCD;AACA;AACA;AACA;AACe;AACf;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAwB;AAC3D,KAAK;AACL;AACA;AACA;AACA;AACA;;;AC1BA;AAAA;AACA;AACA;AACA;AACA;;AAEyC;;AAEzC;;AAEA;AACA;AACA;AACA;AACA,UAAU,iBAAiB;AAC3B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEe;AACf;;AAEA;;AAEA,eAAe,YAAY;AAC3B;;AAEA;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY;AAC3B;AACA,KAAK;AACL;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA,uBAAuB,2BAA2B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC7Na;;AAEb;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,+CAA+C,SAAS;AACxD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uBAAu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AC,EAAjC;AACI,QAAI8I,KAAK,CAAC9I,CAAD,CAAL,CAAS+I,QAAT,KAAsBP,KAA1B,EACI,OAAO,IAAP;AAFR;;AAIA,SAAO,KAAP;AACH;AAEM,SAASQ,aAAT,CAAuBF,KAAvB,EAA8BC,QAA9B,EAAwCP,KAAxC,EAA+C;AAClDM,OAAK,CAAC3J,OAAN,CAAc,UAAUoH,MAAV,EAAkB0C,KAAlB,EAAyB;AACnC,QAAI1C,MAAM,CAACwC,QAAD,CAAN,KAAqBP,KAAzB,EAAgC;AAC5B;AACAM,WAAK,CAACI,MAAN,CAAaD,KAAb,EAAoB,CAApB;AACH;AACJ,GALD;AAMH,C;;;;;;;;AC9kBY;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,gBAAgB,mBAAO,CAAC,MAAe;AACvC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACrHD,cAAc,mBAAO,CAAC,MAAW;AACjC,cAAc,mBAAO,CAAC,MAAY;AAClC,YAAY,mBAAO,CAAC,MAAU;AAC9B,aAAa,mBAAO,CAAC,MAAc;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;AC7Ba;;AAEb;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,iBAAiB;AACjB,mCAAmC,sBAAsB;AACzD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;;AC1CA,iBAAiB,mBAAO,CAAC,MAAsB;AAC/C,cAAc,mBAAO,CAAC,MAAgB;AACtC,eAAe,mBAAO,CAAC,MAAa;AACpC,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,gBAAgB,mBAAO,CAAC,MAAc;AACtC,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oDAAoD,wBAAwB;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzDA,2BAA2B,mBAAO,CAAC,MAA+C;AAClF;;;AAGA;AACA,cAAc,QAAS,oBAAoB,kBAAkB,mCAAmC,2BAA2B;;AAE3H;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACPa;AACb,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,mBAAO,CAAC,MAAW;AACnB;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;;ACRY;;AAEb;;AAEA;AACA;AACA;AACA,WAAW,EAAE;AACb,WA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AlBA;AAmBA,gBAnBA;AAqBA,yBArBA;AAsBA,2BAtBA;AAwBA,qBAxBA;AAyBA,qBAzBA;AA0BA,qBA1BA;AA2BA,qBA3BA;AA4BA,oBA5BA;AA6BA,oBA7BA;AA8BA,oBA9BA;AA+BA;AA/BA;AAiCA,GAtIA;AAuIA,SAvIA,qBAuIA;AAAA;;AACA,oBADA,CAGA;;AACA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;;AACA;AACA,KAHA;;AAKA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,GA1LA;AA2LA;AACA,oBADA,CAEA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,+BADA,CACA;AACA;AACA,GAzMA;AA0MA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,GA5NA;AA6NA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA;AACA,KAPA;AAQA;AACA;AACA,KAVA;AAWA;AACA;AACA,KAbA;AAcA;AACA;AACA,KAhBA;AAiBA;AACA;AACA;AACA,KApBA;AAqBA;AACA;AACA;AACA;AACA,KAzBA;AA0BA;AACA;AACA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AACA,KAlCA;AAmCA;AACA;AACA;AACA,KAtCA;AAuCA;AACA;AACA,yBAFA,CAGA;AACA,KA3CA;AA4CA;AACA;AACA,yBAFA,CAGA;AACA,KAhDA;AAiDA;AACA;AACA;AACA;AACA,KArDA;AAsDA;AACA;AACA,KAxDA;AAyDA;AACA;AACA,KA3DA;AA4DA;AACA;AACA,KA9DA;AA+DA;AACA;AACA,KAjEA;AAkEA;AACA;AACA;AACA;;AACA;AAAA;AAAA;AACA;AACA;AACA;AAzEA,GA7NA;AAwSA;AACA,YADA,sBACA;AACA;AACA,mDADA;AAEA,6BAFA;AAGA,mCAHA;AAIA,iDAJA;AAKA,8CALA;AAMA,oCANA;AAOA,6CAPA;AAQA;AARA;AAUA,KAZA;AAaA,yBAbA,mCAaA;AACA;AACA,KAfA;AAgBA,oCAhBA,8CAgBA;AACA;AACA,KAlBA;AAmBA,aAnBA,uBAmBA;AACA;AACA,KArBA;AAsBA,aAtBA,uBAsBA;AACA;AACA,KAxBA;AAyBA,wBAzBA,kCAyBA;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA;AA/BA,GAxSA;AAyUA;AACA;AACA;AACA;AACA;AACA,OAHA,MAGA;AACA;AACA;AACA;;AACA;;AAGA;AACA,oCADA,CAEA;;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;;AAEA,gBAzBA,CA0BA;;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AAEA,OARA,MAQA;AAAA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA,KA7CA;AA8CA,wBA9CA,kCA8CA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA,sBACA;AACA;AACA;;AACA;AACA,KA1DA;AA2DA;AACA;AACA,+CAFA,CAGA;;AACA,mCAJA,CAIA;;AAJA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAAA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAOA;AAAA;AAAA;AAAA;AACA;;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,qEARA,CAUA;;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA;AACA,wCAJA,CAKA;;AACA;AACA;AACA;AACA;AAlCA,OATA,CA8CA;;;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KAzIA;AA0IA,cA1IA,sBA0IA,KA1IA,EA0IA;AACA;AACA;AAEA,+CAJA,CAMA;;AACA,oCAPA,CAOA;;AAPA,UAQA,CARA,GAQA,QARA,CAQA,CARA;AAAA,UAQA,CARA,GAQA,QARA,CAQA,CARA,EAUA;;AACA;AAAA;AAAA;AAAA;;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;;AACA;;AACA,mEAHA,CAIA;;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,gEAVA,CAWA;AACA;;AACA;AACA,oCAdA,CAeA;;AACA;AACA;;AACA;AAAA;AACA,yEADA,CAEA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,mEARA,CASA;AACA;AACA;;AACA;AACA;AACA;AAjDA,OAZA,CAgEA;;;AACA;;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KA5NA;AA6NA;AACA,yCADA,CAEA;;AACA;;AACA;AACA;AACA,oEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA,OAVA,MAUA;AACA;AACA,mEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA;;AAGA;AACA,KAzPA;;AA0PA;;;;;;AAMA;AACA,UAjQA,kBAiQA,GAjQA,EAiQA,IAjQA,EAiQA;AACA,yCADA,CAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,qFAXA,CAaA;;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA,KAnRA;AAoRA;AACA,gBArRA,0BAqRA;AACA,0FADA,CAEA;;AACA;AACA,KAzRA;;AA2RA;;;;;;AAMA,UAjSA,kBAiSA,MAjSA,EAiSA,KAjSA,EAiSA;AACA,yCADA,CAGA;AACA;AACA;;AACA;AACA,wFAPA,CASA;;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA,KA9SA;AA+SA;AACA;;AACA;AACA;AACA;AACA,KApTA;AAqTA;AACA;AACA,KAvTA;AAwTA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,yCADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA;AACA;AACA;AACA,WAFA;AAGA;AACA,OAbA,MAaA;AACA;AACA;AADA;AAGA;AACA,KA/UA;AAgVA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,oEAFA,CAIA;AACA;;AAEA;AACA,mCADA;AAEA;AACA;AACA,uBADA;AAEA,kDAFA;AAGA,mDAHA;AAIA;AAJA,WAHA;AASA,2CATA;AAUA;AACA;AACA,oCADA;AAEA;AAFA,aADA;AAKA;AACA,oCADA;AAEA;AAFA;AALA;AAVA;AAsBA;;AACA;AACA;AACA,2BACA,EADA,CACA,kCADA,EACA;AACA;AACA,WAHA;AAIA;AACA,OArCA,MAqCA;AACA;AACA;AADA;AAGA;AACA,KA/XA;AAgYA;AACA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA,OAzBA,CA2BA;AACA;;;AAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AAraA;AAzUA,G;;AC/FkU,CAAgB,gHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGpE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,2CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,yF;;;;;;;ACnBf;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;;AAEb,YAAY,mBAAO,CAAC,MAAS;;AAE7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA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;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,mCAAmC,iBAAiB;AACpD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kEAAkE,iBAAiB,YAAY,aAAa,aAAa,kBAAkB,WAAW,YAAY;AAClK;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,2CAA2C,kBAAkB,sBAAsB,wBAAwB;AAC3G;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc,WAAW,UAAU;AAC7K,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB;AAC7H,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,SAAS,QAAQ;AAC/E,8DAA8D,aAAa,cAAc;;AAEzF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtoBA;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;AACb,uBAAuB,mBAAO,CAAC,MAAuB;AACtD,WAAW,mBAAO,CAAC,MAAc;AACjC,gBAAgB,mBAAO,CAAC,MAAc;AACtC,gBAAgB,mBAAO,CAAC,MAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;;ACjCA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAe;AACvC,mBAAmB,mBAAO,CAAC,MAAmB;AAC9C,eAAe,mBAAO,CAAC,MAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChBA;AACA;AACA;;;;;;;;ACFA;AACA,UAAU;AACV;;;;;;;;;ACFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;;ACHA,eAAe,mBAAO,CAAC,MAAc;AACrC,qBAAqB,mBAAO,CAAC,MAAmB;AAChD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;;ACfA;AACA;AACA;AACA;;;;;;;;;ACHA;AAAA;AAAA;AAAkf,CAAgB,whBAAG,EAAC,C;;;;;;;ACAtgB,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;;ACL5B;;AAEb,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAgB;AACtD,8BAA8B,mBAAO,CAAC,MAAc;AACpD,8BAA8B,mBAAO,CAAC,MAAY;AAClD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAiB;;AAEvD;AACA,8BAA8B,mBAAO,CAAC,MAAgC;AACtE,8BAA8B,mBAAO,CAAC,MAAgC;;AAEtE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB;;AAEA;AACA;AACA,UAAU;AACV,cAAc,QAAQ;AACtB;AACA;AACA,cAAc,UAAU;AACxB;AACA,cAAc,SAAS;AACvB;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,qCAAqC,6CAA6C,EAAE;AACpF;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,mFAAmF,qBAAqB;;AAExG;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,SAAS;AACxB,eAAe,kBAAkB;AACjC,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA,8EAA8E;AAC9E;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA,yDAAyD,eAAe;AACxE;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,qBAAqB;AACrB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AChUa;AACb,sBAA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AyE,eAAe,sDAAsD,EAAE,EAAE,uDAAuD;;AAE/X,gCAAgC,4EAA4E,iBAAiB,UAAU,GAAG,8BAA8B;;AAExK;;AAEA;AACA;AACA;;AAEA,kBAAkB,yBAAyB;AAC3C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,uBAAuB,sCAAsC;AAC7D;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,mDAAmD;;AAEnD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;;AAGP;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA,uBAAuB,mCAAmC;AAC1D;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,qBAAqB;;AAErB;AACA;;AAEA,uBAAuB,mCAAmC;AAC1D;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA,uBAAuB,4CAA4C;AACnE;AACA,SAAS;AACT;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;;AAGL,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,wBAAwB;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0BAA0B;;AAE1B,sCAAsC,uCAAuC,kBAAkB;;AAE/F,qCAAqC,gDAAgD,2BAA2B,iEAAiE,cAAc,GAAG,cAAc;;AAEhN,uCAAuC,6BAA6B,YAAY,EAAE,wCAAwC,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEtpB,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE3T,6DAA6D,sEAAsE,8DAA8D,oBAAoB;;AAErN;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,2DAA2D;;AAE5D;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,8DAA8D;;AAE/D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,6BAA6B;;AAE7B,wBAAwB;;AAExB;AACA;AACA;AACA;AACA,MAAM;;AAEN,uBAAuB;;AAEvB;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,gCAAgC,eAAe;AAC/C;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,qBAAqB;AACpE;AACA;AACA,eAAe,OAAO;AACtB,eAAe,aAAa;AAC5B,eAAe,QAAQ;AACvB,gBAAgB,OAAO;AACvB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,QAAQ,eAAe;AAClE;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,iBAAiB;AACxB;;AAEA;AACA,KAAK;;AAEL,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,eAAe,aAAa;AAC5B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,0DAA0D;;AAE1D;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA,CAAC;AACD;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kBAAkB,oBAAoB;AACtC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;;AAEA,sCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0BAA0B;;AAE1B,8CAA8C;;AAE9C;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,uBAAuB,2EAA2E,kCAAkC,mBAAmB,GAAG,EAAE,OAAO,kCAAkC,8HAA8H,GAAG,EAAE,qBAAqB;;AAE7V;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,qCAAqC,gDAAgD,2BAA2B,iEAAiE,cAAc,GAAG,cAAc;;AAEhN,uCAAuC,6BAA6B,YAAY,EAAE,wCAAwC,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEtpB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sDAAsD;;AAEtD,uJAAuJ;;AAEvJ;AACA,4DAA4D;;AAE5D;AACA,qDAAqD;;AAErD,uHAAuH;;AAEvH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,QAAQ;;AAEX;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAa,qBAAqB;AAClC,+BAA+B;;AAE/B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;;;AAGP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;;AAGL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB;AACxB;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;;AAEV;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA,2BAA2B;;AAE3B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,qBAAqB;;AAErB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,sBAAsB;AAC1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,4CAA4C;;AAE5C;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,2CAA2C,gBAAgB,kBAAkB,OAAO,2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A;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8CAA8C;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG,MAAM,WAAW,WAAW,WAAW;;;AAG1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,uBAAuB;AAC3C;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,+DAA+D;;AAE/D;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA,sBAAsB,6BAA6B;AACnD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OA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AAgC;AAChC,gBAAgB,kBAAkB;AAClC;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,wBAAwB,iCAAiC;AACzD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,0BAA0B;AACzC,yCAAyC,aAAa;AACtD;AACA;AACA,gBAAgB,OAAO;AACvB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB,mBAAmB;AACnB,gBAAgB,gBAAgB;AAChC;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAK;AACrB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,cAAc;AAC7B;AACA,gBAAgB,aAAa;AAC7B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,yBAAyB,8BAA8B;AACvD;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,wBAAwB;AACvC;AACA,eAAe,0BAA0B;AACzC,eAAe,iBAAiB;AAChC;AACA,gBAAgB,aAAa;AAC7B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAA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E,oBAAoB;;AAEpO,iDAAiD,+EAA+E,aAAa,EAAE,qCAAqC;;AAEpL,6BAA6B,gGAAgG,gDAAgD,GAAG,2BAA2B;;AAE3M,uCAAuC,uBAAuB,uFAAuF,EAAE,aAAa;;AAEpK,0CAA0C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,uDAAuD;;AAE/X,gCAAgC,4EAA4E,iBAAiB,UAAU,GAAG,8BAA8B;;AAExK;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,0EAA0E;;AAE3E;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,gDAAgD;AAChD,kDAAkD;AAClD,gDAAgD;AAChD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA,gDAAgD;;AAEhD,oDAAoD;AACpD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA,oBAAoB,gCAAgC;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;;;AAGT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;AACA,KAAK;AACL;AACA;;;AAGA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA,8CAA8C;AAC9C;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8BAA8B;;AAE9B;;AAEA;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAiB;AAC5B;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB,0CAA0C,uCAAuC,kBAAkB;;AAEnG,2BAA2B,2EAA2E,sCAAsC,mBAAmB,GAAG,EAAE,OAAO,sCAAsC,8HAA8H,GAAG,EAAE,yBAAyB;;AAE7W,sCAAsC,6FAA6F;;AAEnI,mCAAmC,wEAAwE;;AAE3G,qCAAqC,+HAA+H;;AAEpK,sCAAsC,0BAA0B,8CAA8C,gBAAgB,OAAO,kBAAkB,EAAE,aAAa,EAAE;;AAExK,qDAAqD,0CAA0C,0DAA0D,EAAE;;AAE3J,+CAA+C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE/T,iEAAiE,0EAA0E,kEAAkE,oBAAoB;;AAEjO,qDAAqD,8EAA8E,aAAa,EAAE,yCAAyC;;AAE3L,2CAA2C,uBAAuB,uFAAuF,EAAE,aAAa;;AAExK,iCAAiC,oGAAoG,gDAAgD,GAAG,+BAA+B;;AAEvN,8CAA8C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,2DAA2D;;AAEvY,oCAAoC,gFAAgF,iBAAiB,UAAU,GAAG,kCAAkC;;AAEpL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,0CAA0C;;AAE1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,wBAAwB;AACrC,cAAc,uBAAuB;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB;;AAEjB,kBAAkB,gCAAgC;AAClD;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,8CAA8C;;AAE9C;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;;;AAGL;;AAEA,qBAAqB,2BAA2B;AAChD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,mBAAmB,0BAA0B;AAC7C;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;;;AAGA;AACA;AACA;;AAEA,mBAAmB,0BAA0B;AAC7C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB;;AAEtB,mBAAmB,oCAAoC;AACvD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,0DAA0D;;AAE1D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,uEAAuE;;AAEvE;AACA;AACA;AACA;AACA,OAAO,IAAI;AACX;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,sBAAsB;AACtB;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,8BAA8B;;AAE9B;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB,0CAA0C,uCAAuC,kBAAkB;;AAEnG;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC;AACA;AACA,oCAAoC,6BAA6B;AACjE;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA,cAAc,uBAAuB;AACrC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8BAA8B;;AAE9B;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;;AAEhC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,6BAA6B;AACnE;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA,cAAc,uBAAuB;AACrC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,6CAA6C;AAC7C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;;AAER;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA,sBAAsB,kBAAkB;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA,mFAAmF;;AAEnF;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yCAAyC;;AAEzC;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,8DAA8D;;AAE9D,kEAAkE;;AAElE,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;;AAE/B,gDAAgD;;AAEhD;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,0DAA0D;;AAE1D;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mDAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,aAAa,wBAAwB;AACrC;AACA,cAAc,0BAA0B;AACxC;AACA;;AAEA;AACA;AACA,GAAG,6EAA6E,qBAAqB;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,aAAa,wBAAwB;AACrC;AACA,cAAc,0BAA0B;AACxC;AACA;;AAEA;AACA;AACA,GAAG,4EAA4E,oBAAoB;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,aAAa,gBAAgB;AAC7B;AACA;AACA;AACA;AACA,cAAc,wBAAwB;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,cAAc,uBAAuB;AACrC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,kBAAkB,2BAA2B;AAC7C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA,mDAAmD;;AAEnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,uCAAuC,SAAS;AAChD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;;AAEvB;AACA;AACA;;AAEA,kBAAkB,qCAAqC;AACvD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+BAA+B;;AAE/B,sEAAsE;;AAEtE;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;AACA,uCAAuC;;AAEvC;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ;;;AAGR;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA,sEAAsE;;AAEtE;;AAEA;;AAEA,kEAAkE;;AAElE,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,mCAAmC,WAAW;AAC9C;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB,cAAc,sBAAsB;AACpC;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,kBAAkB,kBAAkB;AACpC;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA,uBAAuB,sCAAsC;AAC7D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,sEAAsE;;AAEtE;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG,uCAAuC,gGAAgG;;AAEvI,oCAAoC,wEAAwE;;AAE5G,sCAAsC,+HAA+H;;AAErK,uCAAuC,0BAA0B,8CAA8C,gBAAgB,OAAO,kBAAkB,EAAE,aAAa,EAAE;;AAEzK;;AAEA;AACA;AACA;AACA;AACA,CAAC,8BAA8B;;AAE/B;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA,mFAAmF;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,oBAAoB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,sCAAsC,mGAAmG;;AAEzI,kCAAkC,6EAA6E;;AAE/G,6CAA6C,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE/gB,oCAAoC,oCAAoC;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;;AAE5C;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,oBAAoB;AACtC;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C,4CAA4C;AAC5C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,gDAAgD;AAChD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;AAEA;AACA;;AAEA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,mBAAmB;AACtC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,8BAA8B;AACjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gDAAgD;;AAEhD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+EAA+E;;AAE/E;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kCAAkC;;AAElC;AACA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA,sCAAsC;;AAEtC;AACA;AACA;AACA,SAAS,uBAAuB;;AAEhC;AACA;AACA;AACA;AACA,oEAAoE;;AAEpE;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,qBAAqB;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,sBAAsB;;AAEzB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA,aAAa,wBAAwB;AACrC;AACA,eAAe,+CAA+C;AAC9D,eAAe,+CAA+C;AAC9D,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4CAA4C;AAC5C;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,kBAAkB;AACpC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C,0CAA0C;AAC1C;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,uBAAuB,+BAA+B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,qBAAqB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA,sDAAsD,cAAc;AACpE;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG,sCAAsC,mGAAmG;;AAEzI,kCAAkC,6EAA6E;;AAE/G,6CAA6C,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE/gB,oCAAoC,oCAAoC;;AAExE;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;;AAEA,kBAAkB,qCAAqC;AACvD;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,iCAAiC;AACtD;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,gBAAgB;AACzD,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,MAAM;AACN,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,4BAA4B,2EAA2E,uCAAuC,mBAAmB,GAAG,EAAE,OAAO,uCAAuC,8HAA8H,GAAG,EAAE,0BAA0B;;AAEjX,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO,sDAAsD,+EAA+E,aAAa,EAAE,0CAA0C;;AAE9L,kCAAkC,qGAAqG,gDAAgD,GAAG,gCAAgC;;AAE1N,4CAA4C,uBAAuB,uFAAuF,EAAE,aAAa;;AAEzK,+CAA+C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,4DAA4D;;AAEzY,qCAAqC,iFAAiF,iBAAiB,UAAU,GAAG,mCAAmC;;AAEvL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,oBAAoB;AACrC;;AAEA,uCAAuC;AACvC;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB,kBAAkB;AACpC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;;AAE/B,4BAA4B;AAC5B,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,mBAAmB;AACxC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,qBAAqB,gCAAgC;AACrD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL,GAAG;AACH;;AAEA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA,iBAAiB,0BAA0B;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,kBAAkB,kBAAkB;AACpC;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;;AAGH,iEAAiE;;AAEjE;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,4DAA4D;;AAE5D;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,yFAAyF;AACzF,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA,+EAA+E;;AAE/E,0DAA0D;;AAE1D;;AAEA;AACA;AACA;AACA,wCAAwC;;AAExC,kBAAkB,2BAA2B;AAC7C;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,mBAAmB;AACnB,qBAAqB,uBAAuB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,aAAa,SAAS;AACtB,eAAe;AACf;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sKAAsK;;AAEtK;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,mBAAmB,uBAAuB;AAC1C;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+BAA+B;;AAE/B;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAiB;AAC5B;AACA,YAAY;AACZ;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,SAAS;AACpB,YAAY;AACZ;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY,QAAQ;AACpB;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC,WAAW,SAAS;AACpB,WAAW,iBAAiB;AAC5B;AACA,YAAY,OAAO;AACnB;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,kBAAkB;AACtC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA,WAAW,SAAS;AACpB,WAAW,iBAAiB;AAC5B;AACA,YAAY,OAAO;AACnB;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB,mBAAmB;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;;;AAGA;;AAEA;AACA;AACA,CAAC;;;AAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;A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","file":"vue-grid-layout.common.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","/**\n * interact.js 1.6.3\n *\n * Copyright (c) 2012-2019 Taye Adeyemi \n * Released under the MIT License.\n * https://raw.github.com/taye/interact.js/master/LICENSE\n */\n(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.interact = f()}})(function(){var define,module,exports;\nvar createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}};\nvar _$scope_24 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/* common-shake removed: exports.createScope = */ void createScope;\n/* common-shake removed: exports.initScope = */ void initScope;\nexports.Scope = exports.ActionName = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\nvar _defaultOptions = _interopRequireDefault(_$defaultOptions_20);\n\nvar _Eventable = _interopRequireDefault(_$Eventable_14);\n\nvar _Interactable = _interopRequireDefault(_$Interactable_16);\n\nvar _InteractableSet = _interopRequireDefault(_$InteractableSet_17);\n\nvar _InteractEvent = _interopRequireDefault(_$InteractEvent_15);\n\nvar _interactions = _interopRequireDefault(_$interactions_23({}));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar win = utils.win,\n browser = utils.browser,\n raf = utils.raf,\n Signals = utils.Signals,\n events = utils.events;\nvar ActionName;\nexports.ActionName = ActionName;\n\n(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {}));\n\nfunction createScope() {\n return new Scope();\n}\n\nvar Scope =\n/*#__PURE__*/\nfunction () {\n function Scope() {\n var _this = this;\n\n _classCallCheck(this, Scope);\n\n this.id = \"__interact_scope_\".concat(Math.floor(Math.random() * 100));\n this.signals = new Signals();\n this.browser = browser;\n this.events = events;\n this.utils = utils;\n this.defaults = utils.clone(_defaultOptions[\"default\"]);\n this.Eventable = _Eventable[\"default\"];\n this.actions = {\n names: [],\n methodDict: {},\n eventTypes: []\n };\n this.InteractEvent = _InteractEvent[\"default\"];\n this.interactables = new _InteractableSet[\"default\"](this); // all documents being listened to\n\n this.documents = [];\n this._plugins = [];\n this._pluginMap = {};\n\n this.onWindowUnload = function (event) {\n return _this.removeDocument(event.target);\n };\n\n var scope = this;\n\n this.Interactable =\n /*#__PURE__*/\n function (_InteractableBase) {\n _inherits(Interactable, _InteractableBase);\n\n function Interactable() {\n _classCallCheck(this, Interactable);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments));\n }\n\n _createClass(Interactable, [{\n key: \"set\",\n value: function set(options) {\n _get(_getPrototypeOf(Interactable.prototype), \"set\", this).call(this, options);\n\n scope.interactables.signals.fire('set', {\n options: options,\n interactable: this\n });\n return this;\n }\n }, {\n key: \"unset\",\n value: function unset() {\n _get(_getPrototypeOf(Interactable.prototype), \"unset\", this).call(this);\n\n for (var i = scope.interactions.list.length - 1; i >= 0; i--) {\n var interaction = scope.interactions.list[i];\n\n if (interaction.interactable === this) {\n interaction.stop();\n scope.interactions.signals.fire('destroy', {\n interaction: interaction\n });\n interaction.destroy();\n\n if (scope.interactions.list.length > 2) {\n scope.interactions.list.splice(i, 1);\n }\n }\n }\n\n scope.interactables.signals.fire('unset', {\n interactable: this\n });\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return scope.defaults;\n }\n }]);\n\n return Interactable;\n }(_Interactable[\"default\"]);\n }\n\n _createClass(Scope, [{\n key: \"init\",\n value: function init(window) {\n return initScope(this, window);\n }\n }, {\n key: \"pluginIsInstalled\",\n value: function pluginIsInstalled(plugin) {\n return this._pluginMap[plugin.id] || this._plugins.indexOf(plugin) !== -1;\n }\n }, {\n key: \"usePlugin\",\n value: function usePlugin(plugin, options) {\n if (this.pluginIsInstalled(plugin)) {\n return this;\n }\n\n if (plugin.id) {\n this._pluginMap[plugin.id] = plugin;\n }\n\n plugin.install(this, options);\n\n this._plugins.push(plugin);\n\n return this;\n }\n }, {\n key: \"addDocument\",\n value: function addDocument(doc, options) {\n // do nothing if document is already known\n if (this.getDocIndex(doc) !== -1) {\n return false;\n }\n\n var window = win.getWindow(doc);\n options = options ? utils.extend({}, options) : {};\n this.documents.push({\n doc: doc,\n options: options\n });\n events.documents.push(doc); // don't add an unload event for the main document\n // so that the page may be cached in browser history\n\n if (doc !== this.document) {\n events.add(window, 'unload', this.onWindowUnload);\n }\n\n this.signals.fire('add-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"removeDocument\",\n value: function removeDocument(doc) {\n var index = this.getDocIndex(doc);\n var window = win.getWindow(doc);\n var options = this.documents[index].options;\n events.remove(window, 'unload', this.onWindowUnload);\n this.documents.splice(index, 1);\n events.documents.splice(index, 1);\n this.signals.fire('remove-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"getDocIndex\",\n value: function getDocIndex(doc) {\n for (var i = 0; i < this.documents.length; i++) {\n if (this.documents[i].doc === doc) {\n return i;\n }\n }\n\n return -1;\n }\n }, {\n key: \"getDocOptions\",\n value: function getDocOptions(doc) {\n var docIndex = this.getDocIndex(doc);\n return docIndex === -1 ? null : this.documents[docIndex].options;\n }\n }, {\n key: \"now\",\n value: function now() {\n return (this.window.Date || Date).now();\n }\n }]);\n\n return Scope;\n}();\n\nexports.Scope = Scope;\n\nfunction initScope(scope, window) {\n win.init(window);\n\n _domObjects[\"default\"].init(window);\n\n browser.init(window);\n raf.init(window);\n events.init(window);\n scope.usePlugin(_interactions[\"default\"]);\n scope.document = window.document;\n scope.window = window;\n return scope;\n}\n\n});\nvar _$interactions_23 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _browser = _interopRequireDefault(_$browser_48);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar _events = _interopRequireDefault(_$events_52);\n\nvar _pointerUtils = _interopRequireDefault(_$pointerUtils_61);\n\nvar _Signals = _interopRequireDefault(_$Signals_46);\n\nvar _Interaction = _interopRequireDefault(_$Interaction_18({}));\n\nvar _interactionFinder = _interopRequireDefault(_$interactionFinder_22);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur'];\n\nfunction install(scope) {\n var signals = new _Signals[\"default\"]();\n var listeners = {};\n\n for (var _i = 0; _i < methodNames.length; _i++) {\n var _ref;\n\n _ref = methodNames[_i];\n var method = _ref;\n listeners[method] = doOnInteractions(method, scope);\n }\n\n var pEventTypes = _browser[\"default\"].pEventTypes;\n var docEvents;\n\n if (_domObjects[\"default\"].PointerEvent) {\n docEvents = [{\n type: pEventTypes.down,\n listener: releasePointersOnRemovedEls\n }, {\n type: pEventTypes.down,\n listener: listeners.pointerDown\n }, {\n type: pEventTypes.move,\n listener: listeners.pointerMove\n }, {\n type: pEventTypes.up,\n listener: listeners.pointerUp\n }, {\n type: pEventTypes.cancel,\n listener: listeners.pointerUp\n }];\n } else {\n docEvents = [{\n type: 'mousedown',\n listener: listeners.pointerDown\n }, {\n type: 'mousemove',\n listener: listeners.pointerMove\n }, {\n type: 'mouseup',\n listener: listeners.pointerUp\n }, {\n type: 'touchstart',\n listener: releasePointersOnRemovedEls\n }, {\n type: 'touchstart',\n listener: listeners.pointerDown\n }, {\n type: 'touchmove',\n listener: listeners.pointerMove\n }, {\n type: 'touchend',\n listener: listeners.pointerUp\n }, {\n type: 'touchcancel',\n listener: listeners.pointerUp\n }];\n }\n\n docEvents.push({\n type: 'blur',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n interaction.documentBlur(event);\n }\n }\n });\n scope.signals.on('add-document', onDocSignal);\n scope.signals.on('remove-document', onDocSignal); // for ignoring browser's simulated mouse events\n\n scope.prevTouchTime = 0;\n\n scope.Interaction =\n /*#__PURE__*/\n function (_InteractionBase) {\n _inherits(Interaction, _InteractionBase);\n\n function Interaction() {\n _classCallCheck(this, Interaction);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments));\n }\n\n _createClass(Interaction, [{\n key: \"_now\",\n value: function _now() {\n return scope.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return scope.interactions.pointerMoveTolerance;\n },\n set: function set(value) {\n scope.interactions.pointerMoveTolerance = value;\n }\n }]);\n\n return Interaction;\n }(_Interaction[\"default\"]);\n\n scope.interactions = {\n signals: signals,\n // all active and idle interactions\n list: [],\n \"new\": function _new(options) {\n options.signals = signals;\n var interaction = new scope.Interaction(options);\n scope.interactions.list.push(interaction);\n return interaction;\n },\n listeners: listeners,\n docEvents: docEvents,\n pointerMoveTolerance: 1\n };\n\n function releasePointersOnRemovedEls() {\n // for all inactive touch interactions with pointers down\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n\n if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) {\n continue;\n } // if a pointer is down on an element that is no longer in the DOM tree\n\n\n var _loop = function _loop() {\n _ref4 = interaction.pointers[_i4];\n var pointer = _ref4;\n\n if (!scope.documents.some(function (_ref5) {\n var doc = _ref5.doc;\n return (0, _$domUtils_51.nodeContains)(doc, pointer.downTarget);\n })) {\n // remove the pointer from the interaction\n interaction.removePointer(pointer.pointer, pointer.event);\n }\n };\n\n for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) {\n var _ref4;\n\n _loop();\n }\n }\n }\n}\n\nfunction doOnInteractions(method, scope) {\n return function (event) {\n var interactions = scope.interactions.list;\n\n var pointerType = _pointerUtils[\"default\"].getPointerType(event);\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2),\n eventTarget = _pointerUtils$getEven2[0],\n curEventTarget = _pointerUtils$getEven2[1];\n\n var matches = []; // [ [pointer, interaction], ...]\n\n if (/^touch/.test(event.type)) {\n scope.prevTouchTime = scope.now();\n\n for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) {\n var _ref6;\n\n _ref6 = event.changedTouches[_i5];\n var changedTouch = _ref6;\n var pointer = changedTouch;\n\n var pointerId = _pointerUtils[\"default\"].getPointerId(pointer);\n\n var searchDetails = {\n pointer: pointer,\n pointerId: pointerId,\n pointerType: pointerType,\n eventType: event.type,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n scope: scope\n };\n var interaction = getInteraction(searchDetails);\n matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]);\n }\n } else {\n var invalidPointer = false;\n\n if (!_browser[\"default\"].supportsPointerEvent && /mouse/.test(event.type)) {\n // ignore mouse events while touch interactions are active\n for (var i = 0; i < interactions.length && !invalidPointer; i++) {\n invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown;\n } // try to ignore mouse events that are simulated by the browser\n // after a touch event\n\n\n invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated\n event.timeStamp === 0;\n }\n\n if (!invalidPointer) {\n var _searchDetails = {\n pointer: event,\n pointerId: _pointerUtils[\"default\"].getPointerId(event),\n pointerType: pointerType,\n eventType: event.type,\n curEventTarget: curEventTarget,\n eventTarget: eventTarget,\n scope: scope\n };\n\n var _interaction = getInteraction(_searchDetails);\n\n matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]);\n }\n } // eslint-disable-next-line no-shadow\n\n\n for (var _i6 = 0; _i6 < matches.length; _i6++) {\n var _matches$_i = _slicedToArray(matches[_i6], 4),\n _pointer = _matches$_i[0],\n _eventTarget = _matches$_i[1],\n _curEventTarget = _matches$_i[2],\n _interaction2 = _matches$_i[3];\n\n _interaction2[method](_pointer, event, _eventTarget, _curEventTarget);\n }\n };\n}\n\nfunction getInteraction(searchDetails) {\n var pointerType = searchDetails.pointerType,\n scope = searchDetails.scope;\n\n var foundInteraction = _interactionFinder[\"default\"].search(searchDetails);\n\n var signalArg = {\n interaction: foundInteraction,\n searchDetails: searchDetails\n };\n scope.interactions.signals.fire('find', signalArg);\n return signalArg.interaction || scope.interactions[\"new\"]({\n pointerType: pointerType\n });\n}\n\nfunction onDocSignal(_ref7, signalName) {\n var doc = _ref7.doc,\n scope = _ref7.scope,\n options = _ref7.options;\n var docEvents = scope.interactions.docEvents;\n var eventMethod = signalName.indexOf('add') === 0 ? _events[\"default\"].add : _events[\"default\"].remove;\n\n if (scope.browser.isIOS && !options.events) {\n options.events = {\n passive: false\n };\n } // delegate event listener\n\n\n for (var eventType in _events[\"default\"].delegatedEvents) {\n eventMethod(doc, eventType, _events[\"default\"].delegateListener);\n eventMethod(doc, eventType, _events[\"default\"].delegateUseCapture, true);\n }\n\n var eventOptions = options && options.events;\n\n for (var _i7 = 0; _i7 < docEvents.length; _i7++) {\n var _ref8;\n\n _ref8 = docEvents[_i7];\n var _ref9 = _ref8,\n type = _ref9.type,\n listener = _ref9.listener;\n eventMethod(doc, type, listener, eventOptions);\n }\n}\n\nvar _default = {\n id: 'core/interactions',\n install: install,\n onDocSignal: onDocSignal,\n doOnInteractions: doOnInteractions,\n methodNames: methodNames\n};\nexports[\"default\"] = _default;\n\n});\nvar _$Interaction_18 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"PointerInfo\", {\n enumerable: true,\n get: function get() {\n return _PointerInfo[\"default\"];\n }\n});\nexports[\"default\"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _InteractEvent = _interopRequireWildcard(_$InteractEvent_15);\n\nvar _PointerInfo = _interopRequireDefault(_$PointerInfo_19);\n\nvar _scope = _$scope_24({});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar _ProxyValues;\n\nexports._ProxyValues = _ProxyValues;\n\n(function (_ProxyValues) {\n _ProxyValues[\"interactable\"] = \"\";\n _ProxyValues[\"element\"] = \"\";\n _ProxyValues[\"prepared\"] = \"\";\n _ProxyValues[\"pointerIsDown\"] = \"\";\n _ProxyValues[\"pointerWasMoved\"] = \"\";\n _ProxyValues[\"_proxy\"] = \"\";\n})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {}));\n\nvar _ProxyMethods;\n\nexports._ProxyMethods = _ProxyMethods;\n\n(function (_ProxyMethods) {\n _ProxyMethods[\"start\"] = \"\";\n _ProxyMethods[\"move\"] = \"\";\n _ProxyMethods[\"end\"] = \"\";\n _ProxyMethods[\"stop\"] = \"\";\n _ProxyMethods[\"interacting\"] = \"\";\n})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {}));\n\nvar Interaction =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interaction(_ref) {\n var _this = this;\n\n var pointerType = _ref.pointerType,\n signals = _ref.signals;\n\n _classCallCheck(this, Interaction);\n\n // current interactable being interacted with\n this.interactable = null; // the target element of the interactable\n\n this.element = null; // action that's ready to be fired on next move event\n\n this.prepared = {\n name: null,\n axis: null,\n edges: null\n }; // keep track of added pointers\n\n this.pointers = []; // pointerdown/mousedown/touchstart event\n\n this.downEvent = null;\n this.downPointer = {};\n this._latestPointer = {\n pointer: null,\n event: null,\n eventTarget: null\n }; // previous action event\n\n this.prevEvent = null;\n this.pointerIsDown = false;\n this.pointerWasMoved = false;\n this._interacting = false;\n this._ending = false;\n this._stopped = true;\n this._proxy = null;\n this.simulation = null;\n /**\n * @alias Interaction.prototype.move\n */\n\n this.doMove = utils.warnOnce(function (signalArg) {\n this.move(signalArg);\n }, 'The interaction.doMove() method has been renamed to interaction.move()');\n this.coords = {\n // Starting InteractEvent pointer coordinates\n start: utils.pointer.newCoords(),\n // Previous native pointer move event coordinates\n prev: utils.pointer.newCoords(),\n // current native pointer move event coordinates\n cur: utils.pointer.newCoords(),\n // Change in coordinates and time of the pointer\n delta: utils.pointer.newCoords(),\n // pointer velocity\n velocity: utils.pointer.newCoords()\n };\n this._signals = signals;\n this.pointerType = pointerType;\n var that = this;\n this._proxy = {};\n\n var _loop = function _loop(key) {\n Object.defineProperty(_this._proxy, key, {\n get: function get() {\n return that[key];\n }\n });\n };\n\n for (var key in _ProxyValues) {\n _loop(key);\n }\n\n var _loop2 = function _loop2(_key) {\n Object.defineProperty(_this._proxy, _key, {\n value: function value() {\n return that[_key].apply(that, arguments);\n }\n });\n };\n\n for (var _key in _ProxyMethods) {\n _loop2(_key);\n }\n\n this._signals.fire('new', {\n interaction: this\n });\n }\n\n _createClass(Interaction, [{\n key: \"pointerDown\",\n value: function pointerDown(pointer, event, eventTarget) {\n var pointerIndex = this.updatePointer(pointer, event, eventTarget, true);\n\n this._signals.fire('down', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n pointerIndex: pointerIndex,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable({\n * // disable the default drag start by down->move\n * manualStart: true\n * })\n * // start dragging after the user holds the pointer down\n * .on('hold', function (event) {\n * var interaction = event.interaction\n *\n * if (!interaction.interacting()) {\n * interaction.start({ name: 'drag' },\n * event.interactable,\n * event.currentTarget)\n * }\n * })\n * ```\n *\n * Start an action with the given Interactable and Element as tartgets. The\n * action must be enabled for the target Interactable and an appropriate\n * number of pointers must be held down - 1 for drag/resize, 2 for gesture.\n *\n * Use it with `interactable.able({ manualStart: false })` to always\n * [start actions manually](https://github.com/taye/interact.js/issues/114)\n *\n * @param {object} action The action to be performed - drag, resize, etc.\n * @param {Interactable} target The Interactable to target\n * @param {Element} element The DOM Element to target\n * @return {object} interact\n */\n\n }, {\n key: \"start\",\n value: function start(action, interactable, element) {\n if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) {\n return false;\n }\n\n utils.copyAction(this.prepared, action);\n this.interactable = interactable;\n this.element = element;\n this.rect = interactable.getRect(element);\n this.edges = this.prepared.edges;\n this._stopped = false;\n this._interacting = this._doPhase({\n interaction: this,\n event: this.downEvent,\n phase: _InteractEvent.EventPhase.Start\n }) && !this._stopped;\n return this._interacting;\n }\n }, {\n key: \"pointerMove\",\n value: function pointerMove(pointer, event, eventTarget) {\n if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) {\n this.updatePointer(pointer, event, eventTarget, false);\n utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n }\n\n var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y;\n var dx;\n var dy; // register movement greater than pointerMoveTolerance\n\n if (this.pointerIsDown && !this.pointerWasMoved) {\n dx = this.coords.cur.client.x - this.coords.start.client.x;\n dy = this.coords.cur.client.y - this.coords.start.client.y;\n this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance;\n }\n\n var signalArg = {\n pointer: pointer,\n pointerIndex: this.getPointerIndex(pointer),\n event: event,\n eventTarget: eventTarget,\n dx: dx,\n dy: dy,\n duplicate: duplicateMove,\n interaction: this\n };\n\n if (!duplicateMove) {\n // set pointer coordinate, time changes and velocity\n utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur);\n utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta);\n }\n\n this._signals.fire('move', signalArg);\n\n if (!duplicateMove) {\n // if interacting, fire an 'action-move' signal etc\n if (this.interacting()) {\n this.move(signalArg);\n }\n\n if (this.pointerWasMoved) {\n utils.pointer.copyCoords(this.coords.prev, this.coords.cur);\n }\n }\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('dragmove', function (event) {\n * if (someCondition) {\n * // change the snap settings\n * event.interactable.draggable({ snap: { targets: [] }})\n * // fire another move event with re-calculated snap\n * event.interaction.move()\n * }\n * })\n * ```\n *\n * Force a move of the current action at the same coordinates. Useful if\n * snap/restrict has been changed and you want a movement with the new\n * settings.\n */\n\n }, {\n key: \"move\",\n value: function move(signalArg) {\n signalArg = utils.extend({\n pointer: this._latestPointer.pointer,\n event: this._latestPointer.event,\n eventTarget: this._latestPointer.eventTarget,\n interaction: this\n }, signalArg || {});\n signalArg.phase = _InteractEvent.EventPhase.Move;\n\n this._doPhase(signalArg);\n } // End interact move events and stop auto-scroll unless simulation is running\n\n }, {\n key: \"pointerUp\",\n value: function pointerUp(pointer, event, eventTarget, curEventTarget) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n pointerIndex = this.updatePointer(pointer, event, eventTarget, false);\n }\n\n this._signals.fire(/cancel$/i.test(event.type) ? 'cancel' : 'up', {\n pointer: pointer,\n pointerIndex: pointerIndex,\n event: event,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n interaction: this\n });\n\n if (!this.simulation) {\n this.end(event);\n }\n\n this.pointerIsDown = false;\n this.removePointer(pointer, event);\n }\n }, {\n key: \"documentBlur\",\n value: function documentBlur(event) {\n this.end(event);\n\n this._signals.fire('blur', {\n event: event,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('move', function (event) {\n * if (event.pageX > 1000) {\n * // end the current action\n * event.interaction.end()\n * // stop all further listeners from being called\n * event.stopImmediatePropagation()\n * }\n * })\n * ```\n *\n * @param {PointerEvent} [event]\n */\n\n }, {\n key: \"end\",\n value: function end(event) {\n this._ending = true;\n event = event || this._latestPointer.event;\n var endPhaseResult;\n\n if (this.interacting()) {\n endPhaseResult = this._doPhase({\n event: event,\n interaction: this,\n phase: _InteractEvent.EventPhase.End\n });\n }\n\n this._ending = false;\n\n if (endPhaseResult === true) {\n this.stop();\n }\n }\n }, {\n key: \"currentAction\",\n value: function currentAction() {\n return this._interacting ? this.prepared.name : null;\n }\n }, {\n key: \"interacting\",\n value: function interacting() {\n return this._interacting;\n }\n /** */\n\n }, {\n key: \"stop\",\n value: function stop() {\n this._signals.fire('stop', {\n interaction: this\n });\n\n this.interactable = this.element = null;\n this._interacting = false;\n this._stopped = true;\n this.prepared.name = this.prevEvent = null;\n }\n }, {\n key: \"getPointerIndex\",\n value: function getPointerIndex(pointer) {\n var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer\n\n return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) {\n return curPointer.id === pointerId;\n });\n }\n }, {\n key: \"getPointerInfo\",\n value: function getPointerInfo(pointer) {\n return this.pointers[this.getPointerIndex(pointer)];\n }\n }, {\n key: \"updatePointer\",\n value: function updatePointer(pointer, event, eventTarget, down) {\n var id = utils.pointer.getPointerId(pointer);\n var pointerIndex = this.getPointerIndex(pointer);\n var pointerInfo = this.pointers[pointerIndex];\n down = down === false ? false : down || /(down|start)$/i.test(event.type);\n\n if (!pointerInfo) {\n pointerInfo = new _PointerInfo[\"default\"](id, pointer, event, null, null);\n pointerIndex = this.pointers.length;\n this.pointers.push(pointerInfo);\n } else {\n pointerInfo.pointer = pointer;\n }\n\n if (down) {\n this.pointerIsDown = true;\n\n if (!this.interacting()) {\n utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n utils.pointer.copyCoords(this.coords.cur, this.coords.start);\n utils.pointer.copyCoords(this.coords.prev, this.coords.start);\n utils.pointer.pointerExtend(this.downPointer, pointer);\n this.downEvent = event;\n pointerInfo.downTime = this.coords.cur.timeStamp;\n pointerInfo.downTarget = eventTarget;\n this.pointerWasMoved = false;\n }\n }\n\n this._updateLatestPointer(pointer, event, eventTarget);\n\n this._signals.fire('update-pointer', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n down: down,\n pointerInfo: pointerInfo,\n pointerIndex: pointerIndex,\n interaction: this\n });\n\n return pointerIndex;\n }\n }, {\n key: \"removePointer\",\n value: function removePointer(pointer, event) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n return;\n }\n\n var pointerInfo = this.pointers[pointerIndex];\n\n this._signals.fire('remove-pointer', {\n pointer: pointer,\n event: event,\n pointerIndex: pointerIndex,\n pointerInfo: pointerInfo,\n interaction: this\n });\n\n this.pointers.splice(pointerIndex, 1);\n }\n }, {\n key: \"_updateLatestPointer\",\n value: function _updateLatestPointer(pointer, event, eventTarget) {\n this._latestPointer.pointer = pointer;\n this._latestPointer.event = event;\n this._latestPointer.eventTarget = eventTarget;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this._latestPointer.pointer = null;\n this._latestPointer.event = null;\n this._latestPointer.eventTarget = null;\n }\n }, {\n key: \"_createPreparedEvent\",\n value: function _createPreparedEvent(event, phase, preEnd, type) {\n var actionName = this.prepared.name;\n return new _InteractEvent[\"default\"](this, event, actionName, phase, this.element, null, preEnd, type);\n }\n }, {\n key: \"_fireEvent\",\n value: function _fireEvent(iEvent) {\n this.interactable.fire(iEvent);\n\n if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) {\n this.prevEvent = iEvent;\n }\n }\n }, {\n key: \"_doPhase\",\n value: function _doPhase(signalArg) {\n var event = signalArg.event,\n phase = signalArg.phase,\n preEnd = signalArg.preEnd,\n type = signalArg.type;\n\n var beforeResult = this._signals.fire(\"before-action-\".concat(phase), signalArg);\n\n if (beforeResult === false) {\n return false;\n }\n\n var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type);\n\n var rect = this.rect;\n\n if (rect) {\n // update the rect modifications\n var edges = this.edges || this.prepared.edges || {\n left: true,\n right: true,\n top: true,\n bottom: true\n };\n\n if (edges.top) {\n rect.top += iEvent.delta.y;\n }\n\n if (edges.bottom) {\n rect.bottom += iEvent.delta.y;\n }\n\n if (edges.left) {\n rect.left += iEvent.delta.x;\n }\n\n if (edges.right) {\n rect.right += iEvent.delta.x;\n }\n\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n }\n\n this._signals.fire(\"action-\".concat(phase), signalArg);\n\n this._fireEvent(iEvent);\n\n this._signals.fire(\"after-action-\".concat(phase), signalArg);\n\n return true;\n }\n }, {\n key: \"_now\",\n value: function _now() {\n return Date.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return 1;\n }\n }]);\n\n return Interaction;\n}();\n\nexports.Interaction = Interaction;\nvar _default = Interaction;\nexports[\"default\"] = _default;\n\n});\nvar _$arr_47 = {};\n\"use strict\";\n\nObject.defineProperty(_$arr_47, \"__esModule\", {\n value: true\n});\n_$arr_47.contains = contains;\n_$arr_47.remove = remove;\n_$arr_47.merge = merge;\n_$arr_47.from = from;\n_$arr_47.findIndex = findIndex;\n_$arr_47.find = find;\n\nfunction contains(array, target) {\n return array.indexOf(target) !== -1;\n}\n\nfunction remove(array, target) {\n return array.splice(array.indexOf(target), 1);\n}\n\nfunction merge(target, source) {\n for (var _i = 0; _i < source.length; _i++) {\n var _ref;\n\n _ref = source[_i];\n var item = _ref;\n target.push(item);\n }\n\n return target;\n}\n\nfunction from(source) {\n return merge([], source);\n}\n\nfunction findIndex(array, func) {\n for (var i = 0; i < array.length; i++) {\n if (func(array[i], i, array)) {\n return i;\n }\n }\n\n return -1;\n}\n\nfunction find(array, func) {\n return array[findIndex(array, func)];\n}\n\nvar _$domObjects_50 = {};\n\"use strict\";\n\nObject.defineProperty(_$domObjects_50, \"__esModule\", {\n value: true\n});\n_$domObjects_50[\"default\"] = void 0;\nvar domObjects = {\n init: init,\n document: null,\n DocumentFragment: null,\n SVGElement: null,\n SVGSVGElement: null,\n // eslint-disable-next-line no-undef\n SVGElementInstance: null,\n Element: null,\n HTMLElement: null,\n Event: null,\n Touch: null,\n PointerEvent: null\n};\n\nfunction blank() {}\n\nvar _default = domObjects;\n_$domObjects_50[\"default\"] = _default;\n\nfunction init(window) {\n var win = window;\n domObjects.document = win.document;\n domObjects.DocumentFragment = win.DocumentFragment || blank;\n domObjects.SVGElement = win.SVGElement || blank;\n domObjects.SVGSVGElement = win.SVGSVGElement || blank;\n domObjects.SVGElementInstance = win.SVGElementInstance || blank;\n domObjects.Element = win.Element || blank;\n domObjects.HTMLElement = win.HTMLElement || domObjects.Element;\n domObjects.Event = win.Event;\n domObjects.Touch = win.Touch || blank;\n domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent;\n}\n\nvar _$isWindow_58 = {};\n\"use strict\";\n\nObject.defineProperty(_$isWindow_58, \"__esModule\", {\n value: true\n});\n_$isWindow_58[\"default\"] = void 0;\n\nvar ___default_58 = function _default(thing) {\n return !!(thing && thing.Window) && thing instanceof thing.Window;\n};\n\n_$isWindow_58[\"default\"] = ___default_58;\n\nvar _$window_66 = {};\n\"use strict\";\n\nObject.defineProperty(_$window_66, \"__esModule\", {\n value: true\n});\n_$window_66.init = __init_66;\n_$window_66.getWindow = getWindow;\n_$window_66[\"default\"] = void 0;\n\nvar _isWindow = _interopRequireDefault(_$isWindow_58);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar win = {\n realWindow: undefined,\n window: undefined,\n getWindow: getWindow,\n init: __init_66\n};\n\nfunction __init_66(window) {\n // get wrapped window if using Shadow DOM polyfill\n win.realWindow = window; // create a TextNode\n\n var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill\n\n if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) {\n // use wrapped window\n window = window.wrap(window);\n }\n\n win.window = window;\n}\n\nif (typeof window === 'undefined') {\n win.window = undefined;\n win.realWindow = undefined;\n} else {\n __init_66(window);\n}\n\nfunction getWindow(node) {\n if ((0, _isWindow[\"default\"])(node)) {\n return node;\n }\n\n var rootNode = node.ownerDocument || node;\n return rootNode.defaultView || win.window;\n}\n\nwin.init = __init_66;\nvar ___default_66 = win;\n_$window_66[\"default\"] = ___default_66;\n\nvar _$is_57 = {};\n\"use strict\";\n\nObject.defineProperty(_$is_57, \"__esModule\", {\n value: true\n});\n_$is_57.array = _$is_57.plainObject = _$is_57.element = _$is_57.string = _$is_57.bool = _$is_57.number = _$is_57.func = _$is_57.object = _$is_57.docFrag = _$is_57.window = void 0;\n\nvar ___isWindow_57 = ___interopRequireDefault_57(_$isWindow_58);\n\nvar _window2 = ___interopRequireDefault_57(_$window_66);\n\nfunction ___interopRequireDefault_57(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar __window_57 = function window(thing) {\n return thing === _window2[\"default\"].window || (0, ___isWindow_57[\"default\"])(thing);\n};\n\n_$is_57.window = __window_57;\n\nvar docFrag = function docFrag(thing) {\n return object(thing) && thing.nodeType === 11;\n};\n\n_$is_57.docFrag = docFrag;\n\nvar object = function object(thing) {\n return !!thing && _typeof(thing) === 'object';\n};\n\n_$is_57.object = object;\n\nvar func = function func(thing) {\n return typeof thing === 'function';\n};\n\n_$is_57.func = func;\n\nvar number = function number(thing) {\n return typeof thing === 'number';\n};\n\n_$is_57.number = number;\n\nvar bool = function bool(thing) {\n return typeof thing === 'boolean';\n};\n\n_$is_57.bool = bool;\n\nvar string = function string(thing) {\n return typeof thing === 'string';\n};\n\n_$is_57.string = string;\n\nvar element = function element(thing) {\n if (!thing || _typeof(thing) !== 'object') {\n return false;\n }\n\n var _window = _window2[\"default\"].getWindow(thing) || _window2[\"default\"].window;\n\n return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2\n : thing.nodeType === 1 && typeof thing.nodeName === 'string';\n};\n\n_$is_57.element = element;\n\nvar plainObject = function plainObject(thing) {\n return object(thing) && !!thing.constructor && /function Object\\b/.test(thing.constructor.toString());\n};\n\n_$is_57.plainObject = plainObject;\n\nvar array = function array(thing) {\n return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice);\n};\n\n_$is_57.array = array;\n\nvar _$browser_48 = {};\n\"use strict\";\n\nObject.defineProperty(_$browser_48, \"__esModule\", {\n value: true\n});\n_$browser_48[\"default\"] = void 0;\n\nvar _domObjects = ___interopRequireDefault_48(_$domObjects_50);\n\nvar is = _interopRequireWildcard(_$is_57);\n\nvar _window = ___interopRequireDefault_48(_$window_66);\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_48(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar browser = {\n init: __init_48,\n supportsTouch: null,\n supportsPointerEvent: null,\n isIOS7: null,\n isIOS: null,\n isIe9: null,\n isOperaMobile: null,\n prefixedMatchesSelector: null,\n pEventTypes: null,\n wheelEvent: null\n};\n\nfunction __init_48(window) {\n var Element = _domObjects[\"default\"].Element;\n var navigator = _window[\"default\"].window.navigator; // Does the browser support touch input?\n\n browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects[\"default\"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents\n\n browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects[\"default\"].PointerEvent;\n browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7\n\n browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\\d]/.test(navigator.appVersion);\n browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently\n\n browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector\n\n browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector';\n browser.pEventTypes = browser.supportsPointerEvent ? _domObjects[\"default\"].PointerEvent === window.MSPointerEvent ? {\n up: 'MSPointerUp',\n down: 'MSPointerDown',\n over: 'mouseover',\n out: 'mouseout',\n move: 'MSPointerMove',\n cancel: 'MSPointerCancel'\n } : {\n up: 'pointerup',\n down: 'pointerdown',\n over: 'pointerover',\n out: 'pointerout',\n move: 'pointermove',\n cancel: 'pointercancel'\n } : null; // because Webkit and Opera still use 'mousewheel' event type\n\n browser.wheelEvent = 'onmousewheel' in _domObjects[\"default\"].document ? 'mousewheel' : 'wheel';\n}\n\nvar ___default_48 = browser;\n_$browser_48[\"default\"] = ___default_48;\n\nvar _$domUtils_51 = {};\n\"use strict\";\n\nObject.defineProperty(_$domUtils_51, \"__esModule\", {\n value: true\n});\n_$domUtils_51.nodeContains = nodeContains;\n_$domUtils_51.closest = closest;\n_$domUtils_51.parentNode = parentNode;\n_$domUtils_51.matchesSelector = matchesSelector;\n_$domUtils_51.indexOfDeepestElement = indexOfDeepestElement;\n_$domUtils_51.matchesUpTo = matchesUpTo;\n_$domUtils_51.getActualElement = getActualElement;\n_$domUtils_51.getScrollXY = getScrollXY;\n_$domUtils_51.getElementClientRect = getElementClientRect;\n_$domUtils_51.getElementRect = getElementRect;\n_$domUtils_51.getPath = getPath;\n_$domUtils_51.trySelector = trySelector;\n\nvar _browser = ___interopRequireDefault_51(_$browser_48);\n\nvar ___domObjects_51 = ___interopRequireDefault_51(_$domObjects_50);\n\nvar __is_51 = ___interopRequireWildcard_51(_$is_57);\n\nvar ___window_51 = ___interopRequireWildcard_51(_$window_66);\n\nfunction ___getRequireWildcardCache_51() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction nodeContains(parent, child) {\n while (child) {\n if (child === parent) {\n return true;\n }\n\n child = child.parentNode;\n }\n\n return false;\n}\n\nfunction closest(element, selector) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return element;\n }\n\n element = parentNode(element);\n }\n\n return null;\n}\n\nfunction parentNode(node) {\n var parent = node.parentNode;\n\n if (__is_51.docFrag(parent)) {\n // skip past #shado-root fragments\n // tslint:disable-next-line\n while ((parent = parent.host) && __is_51.docFrag(parent)) {\n continue;\n }\n\n return parent;\n }\n\n return parent;\n}\n\nfunction matchesSelector(element, selector) {\n // remove /deep/ from selectors if shadowDOM polyfill is used\n if (___window_51[\"default\"].window !== ___window_51[\"default\"].realWindow) {\n selector = selector.replace(/\\/deep\\//g, ' ');\n }\n\n return element[_browser[\"default\"].prefixedMatchesSelector](selector);\n}\n\nvar getParent = function getParent(el) {\n return el.parentNode ? el.parentNode : el.host;\n}; // Test for the element that's \"above\" all other qualifiers\n\n\nfunction indexOfDeepestElement(elements) {\n var deepestZoneParents = [];\n var deepestZone = elements[0];\n var index = deepestZone ? 0 : -1;\n var i;\n var n;\n\n for (i = 1; i < elements.length; i++) {\n var dropzone = elements[i]; // an element might belong to multiple selector dropzones\n\n if (!dropzone || dropzone === deepestZone) {\n continue;\n }\n\n if (!deepestZone) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // check if the deepest or current are document.documentElement or document.rootElement\n // - if the current dropzone is, do nothing and continue\n\n\n if (dropzone.parentNode === dropzone.ownerDocument) {\n continue;\n } // - if deepest is, update with the current dropzone and continue to next\n else if (deepestZone.parentNode === dropzone.ownerDocument) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // compare zIndex of siblings\n\n\n if (dropzone.parentNode === deepestZone.parentNode) {\n var deepestZIndex = parseInt((0, ___window_51.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0;\n var dropzoneZIndex = parseInt((0, ___window_51.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0;\n\n if (dropzoneZIndex >= deepestZIndex) {\n deepestZone = dropzone;\n index = i;\n }\n\n continue;\n } // populate the ancestry array for the latest deepest dropzone\n\n\n if (!deepestZoneParents.length) {\n var _parent = deepestZone;\n var parentParent = void 0;\n\n while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) {\n deepestZoneParents.unshift(_parent);\n _parent = parentParent;\n }\n }\n\n var parent = void 0; // if this element is an svg element and the current deepest is an\n // HTMLElement\n\n if (deepestZone instanceof ___domObjects_51[\"default\"].HTMLElement && dropzone instanceof ___domObjects_51[\"default\"].SVGElement && !(dropzone instanceof ___domObjects_51[\"default\"].SVGSVGElement)) {\n if (dropzone === deepestZone.parentNode) {\n continue;\n }\n\n parent = dropzone.ownerSVGElement;\n } else {\n parent = dropzone;\n }\n\n var dropzoneParents = [];\n\n while (parent.parentNode !== parent.ownerDocument) {\n dropzoneParents.unshift(parent);\n parent = getParent(parent);\n }\n\n n = 0; // get (position of last common ancestor) + 1\n\n while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) {\n n++;\n }\n\n var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]];\n var child = parents[0].lastChild;\n\n while (child) {\n if (child === parents[1]) {\n deepestZone = dropzone;\n index = i;\n deepestZoneParents = dropzoneParents;\n break;\n } else if (child === parents[2]) {\n break;\n }\n\n child = child.previousSibling;\n }\n }\n\n return index;\n}\n\nfunction matchesUpTo(element, selector, limit) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return true;\n }\n\n element = parentNode(element);\n\n if (element === limit) {\n return matchesSelector(element, selector);\n }\n }\n\n return false;\n}\n\nfunction getActualElement(element) {\n return element instanceof ___domObjects_51[\"default\"].SVGElementInstance ? element.correspondingUseElement : element;\n}\n\nfunction getScrollXY(relevantWindow) {\n relevantWindow = relevantWindow || ___window_51[\"default\"].window;\n return {\n x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft,\n y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop\n };\n}\n\nfunction getElementClientRect(element) {\n var clientRect = element instanceof ___domObjects_51[\"default\"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0];\n return clientRect && {\n left: clientRect.left,\n right: clientRect.right,\n top: clientRect.top,\n bottom: clientRect.bottom,\n width: clientRect.width || clientRect.right - clientRect.left,\n height: clientRect.height || clientRect.bottom - clientRect.top\n };\n}\n\nfunction getElementRect(element) {\n var clientRect = getElementClientRect(element);\n\n if (!_browser[\"default\"].isIOS7 && clientRect) {\n var scroll = getScrollXY(___window_51[\"default\"].getWindow(element));\n clientRect.left += scroll.x;\n clientRect.right += scroll.x;\n clientRect.top += scroll.y;\n clientRect.bottom += scroll.y;\n }\n\n return clientRect;\n}\n\nfunction getPath(node) {\n var path = [];\n\n while (node) {\n path.push(node);\n node = parentNode(node);\n }\n\n return path;\n}\n\nfunction trySelector(value) {\n if (!__is_51.string(value)) {\n return false;\n } // an exception will be raised if it is invalid\n\n\n ___domObjects_51[\"default\"].document.querySelector(value);\n\n return true;\n}\n\nvar _$clone_49 = {};\n\"use strict\";\n\nObject.defineProperty(_$clone_49, \"__esModule\", {\n value: true\n});\n_$clone_49[\"default\"] = clone;\n\nvar arr = ___interopRequireWildcard_49(_$arr_47);\n\nvar __is_49 = ___interopRequireWildcard_49(_$is_57);\n\nfunction ___getRequireWildcardCache_49() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_49 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_49(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_49(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction clone(source) {\n var dest = {};\n\n for (var prop in source) {\n var value = source[prop];\n\n if (__is_49.plainObject(value)) {\n dest[prop] = clone(value);\n } else if (__is_49.array(value)) {\n dest[prop] = arr.from(value);\n } else {\n dest[prop] = value;\n }\n }\n\n return dest;\n}\n\nvar _$pointerExtend_60 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerExtend_60, \"__esModule\", {\n value: true\n});\n_$pointerExtend_60[\"default\"] = void 0;\n\nfunction pointerExtend(dest, source) {\n for (var prop in source) {\n var prefixedPropREs = pointerExtend.prefixedPropREs;\n var deprecated = false; // skip deprecated prefixed properties\n\n for (var vendor in prefixedPropREs) {\n if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) {\n deprecated = true;\n break;\n }\n }\n\n if (!deprecated && typeof source[prop] !== 'function') {\n dest[prop] = source[prop];\n }\n }\n\n return dest;\n}\n\npointerExtend.prefixedPropREs = {\n webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,\n moz: /(Pressure)$/\n};\nvar ___default_60 = pointerExtend;\n_$pointerExtend_60[\"default\"] = ___default_60;\n\nvar _$hypot_55 = {};\n\"use strict\";\n\nObject.defineProperty(_$hypot_55, \"__esModule\", {\n value: true\n});\n_$hypot_55[\"default\"] = void 0;\n\nvar ___default_55 = function _default(x, y) {\n return Math.sqrt(x * x + y * y);\n};\n\n_$hypot_55[\"default\"] = ___default_55;\n\nvar _$pointerUtils_61 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerUtils_61, \"__esModule\", {\n value: true\n});\n_$pointerUtils_61[\"default\"] = void 0;\n\nvar ___browser_61 = ___interopRequireDefault_61(_$browser_48);\n\nvar ___domObjects_61 = ___interopRequireDefault_61(_$domObjects_50);\n\nvar domUtils = ___interopRequireWildcard_61(_$domUtils_51);\n\nvar _hypot = ___interopRequireDefault_61(_$hypot_55);\n\nvar __is_61 = ___interopRequireWildcard_61(_$is_57);\n\nvar _pointerExtend = ___interopRequireDefault_61(_$pointerExtend_60);\n\nfunction ___getRequireWildcardCache_61() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_61 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_61(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_61(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_61(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar pointerUtils = {\n copyCoords: function copyCoords(dest, src) {\n dest.page = dest.page || {};\n dest.page.x = src.page.x;\n dest.page.y = src.page.y;\n dest.client = dest.client || {};\n dest.client.x = src.client.x;\n dest.client.y = src.client.y;\n dest.timeStamp = src.timeStamp;\n },\n setCoordDeltas: function setCoordDeltas(targetObj, prev, cur) {\n targetObj.page.x = cur.page.x - prev.page.x;\n targetObj.page.y = cur.page.y - prev.page.y;\n targetObj.client.x = cur.client.x - prev.client.x;\n targetObj.client.y = cur.client.y - prev.client.y;\n targetObj.timeStamp = cur.timeStamp - prev.timeStamp;\n },\n setCoordVelocity: function setCoordVelocity(targetObj, delta) {\n var dt = Math.max(delta.timeStamp / 1000, 0.001);\n targetObj.page.x = delta.page.x / dt;\n targetObj.page.y = delta.page.y / dt;\n targetObj.client.x = delta.client.x / dt;\n targetObj.client.y = delta.client.y / dt;\n targetObj.timeStamp = dt;\n },\n isNativePointer: function isNativePointer(pointer) {\n return pointer instanceof ___domObjects_61[\"default\"].Event || pointer instanceof ___domObjects_61[\"default\"].Touch;\n },\n // Get specified X/Y coords for mouse or event.touches[0]\n getXY: function getXY(type, pointer, xy) {\n xy = xy || {};\n type = type || 'page';\n xy.x = pointer[type + 'X'];\n xy.y = pointer[type + 'Y'];\n return xy;\n },\n getPageXY: function getPageXY(pointer, page) {\n page = page || {\n x: 0,\n y: 0\n }; // Opera Mobile handles the viewport and scrolling oddly\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n pointerUtils.getXY('screen', pointer, page);\n page.x += window.scrollX;\n page.y += window.scrollY;\n } else {\n pointerUtils.getXY('page', pointer, page);\n }\n\n return page;\n },\n getClientXY: function getClientXY(pointer, client) {\n client = client || {};\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n // Opera Mobile handles the viewport and scrolling oddly\n pointerUtils.getXY('screen', pointer, client);\n } else {\n pointerUtils.getXY('client', pointer, client);\n }\n\n return client;\n },\n getPointerId: function getPointerId(pointer) {\n return __is_61.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier;\n },\n setCoords: function setCoords(targetObj, pointers, timeStamp) {\n var pointer = pointers.length > 1 ? pointerUtils.pointerAverage(pointers) : pointers[0];\n var tmpXY = {};\n pointerUtils.getPageXY(pointer, tmpXY);\n targetObj.page.x = tmpXY.x;\n targetObj.page.y = tmpXY.y;\n pointerUtils.getClientXY(pointer, tmpXY);\n targetObj.client.x = tmpXY.x;\n targetObj.client.y = tmpXY.y;\n targetObj.timeStamp = timeStamp;\n },\n pointerExtend: _pointerExtend[\"default\"],\n getTouchPair: function getTouchPair(event) {\n var touches = []; // array of touches is supplied\n\n if (__is_61.array(event)) {\n touches[0] = event[0];\n touches[1] = event[1];\n } // an event\n else {\n if (event.type === 'touchend') {\n if (event.touches.length === 1) {\n touches[0] = event.touches[0];\n touches[1] = event.changedTouches[0];\n } else if (event.touches.length === 0) {\n touches[0] = event.changedTouches[0];\n touches[1] = event.changedTouches[1];\n }\n } else {\n touches[0] = event.touches[0];\n touches[1] = event.touches[1];\n }\n }\n\n return touches;\n },\n pointerAverage: function pointerAverage(pointers) {\n var average = {\n pageX: 0,\n pageY: 0,\n clientX: 0,\n clientY: 0,\n screenX: 0,\n screenY: 0\n };\n\n for (var _i = 0; _i < pointers.length; _i++) {\n var _ref;\n\n _ref = pointers[_i];\n var pointer = _ref;\n\n for (var _prop in average) {\n average[_prop] += pointer[_prop];\n }\n }\n\n for (var prop in average) {\n average[prop] /= pointers.length;\n }\n\n return average;\n },\n touchBBox: function touchBBox(event) {\n if (!event.length && !(event.touches && event.touches.length > 1)) {\n return null;\n }\n\n var touches = pointerUtils.getTouchPair(event);\n var minX = Math.min(touches[0].pageX, touches[1].pageX);\n var minY = Math.min(touches[0].pageY, touches[1].pageY);\n var maxX = Math.max(touches[0].pageX, touches[1].pageX);\n var maxY = Math.max(touches[0].pageY, touches[1].pageY);\n return {\n x: minX,\n y: minY,\n left: minX,\n top: minY,\n right: maxX,\n bottom: maxY,\n width: maxX - minX,\n height: maxY - minY\n };\n },\n touchDistance: function touchDistance(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[0][sourceX] - touches[1][sourceX];\n var dy = touches[0][sourceY] - touches[1][sourceY];\n return (0, _hypot[\"default\"])(dx, dy);\n },\n touchAngle: function touchAngle(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[1][sourceX] - touches[0][sourceX];\n var dy = touches[1][sourceY] - touches[0][sourceY];\n var angle = 180 * Math.atan2(dy, dx) / Math.PI;\n return angle;\n },\n getPointerType: function getPointerType(pointer) {\n return __is_61.string(pointer.pointerType) ? pointer.pointerType : __is_61.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the \"pointer\" must\n // be either a MouseEvent, TouchEvent, or Touch object\n : /touch/.test(pointer.type) || pointer instanceof ___domObjects_61[\"default\"].Touch ? 'touch' : 'mouse';\n },\n // [ event.target, event.currentTarget ]\n getEventTargets: function getEventTargets(event) {\n var path = __is_61.func(event.composedPath) ? event.composedPath() : event.path;\n return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)];\n },\n newCoords: function newCoords() {\n return {\n page: {\n x: 0,\n y: 0\n },\n client: {\n x: 0,\n y: 0\n },\n timeStamp: 0\n };\n },\n coordsToEvent: function coordsToEvent(coords) {\n var event = {\n coords: coords,\n\n get page() {\n return this.coords.page;\n },\n\n get client() {\n return this.coords.client;\n },\n\n get timeStamp() {\n return this.coords.timeStamp;\n },\n\n get pageX() {\n return this.coords.page.x;\n },\n\n get pageY() {\n return this.coords.page.y;\n },\n\n get clientX() {\n return this.coords.client.x;\n },\n\n get clientY() {\n return this.coords.client.y;\n },\n\n get pointerId() {\n return this.coords.pointerId;\n },\n\n get target() {\n return this.coords.target;\n },\n\n get type() {\n return this.coords.type;\n },\n\n get pointerType() {\n return this.coords.pointerType;\n },\n\n get buttons() {\n return this.coords.buttons;\n }\n\n };\n return event;\n }\n};\nvar ___default_61 = pointerUtils;\n_$pointerUtils_61[\"default\"] = ___default_61;\n\nvar _$events_52 = {};\n\"use strict\";\n\nObject.defineProperty(_$events_52, \"__esModule\", {\n value: true\n});\n_$events_52[\"default\"] = _$events_52.FakeEvent = void 0;\n\n/* removed: var _$arr_47 = require(\"./arr\"); */;\n\nvar __domUtils_52 = ___interopRequireWildcard_52(_$domUtils_51);\n\nvar __is_52 = ___interopRequireWildcard_52(_$is_57);\n\nvar ___pointerExtend_52 = ___interopRequireDefault_52(_$pointerExtend_60);\n\nvar _pointerUtils = ___interopRequireDefault_52(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_52(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_52() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_52 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_52(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_52(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar elements = [];\nvar targets = [];\nvar delegatedEvents = {};\nvar documents = [];\n\nfunction add(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target) {\n target = {\n events: {},\n typeCount: 0\n };\n elementIndex = elements.push(element) - 1;\n targets.push(target);\n }\n\n if (!target.events[type]) {\n target.events[type] = [];\n target.typeCount++;\n }\n\n if (!(0, _$arr_47.contains)(target.events[type], listener)) {\n element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].push(listener);\n }\n}\n\nfunction __remove_52(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target || !target.events) {\n return;\n }\n\n if (type === 'all') {\n for (type in target.events) {\n if (target.events.hasOwnProperty(type)) {\n __remove_52(element, type, 'all');\n }\n }\n\n return;\n }\n\n if (target.events[type]) {\n var len = target.events[type].length;\n\n if (listener === 'all') {\n for (var i = 0; i < len; i++) {\n __remove_52(element, type, target.events[type][i], options);\n }\n\n return;\n } else {\n for (var _i = 0; _i < len; _i++) {\n if (target.events[type][_i] === listener) {\n element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].splice(_i, 1);\n break;\n }\n }\n }\n\n if (target.events[type] && target.events[type].length === 0) {\n target.events[type] = null;\n target.typeCount--;\n }\n }\n\n if (!target.typeCount) {\n targets.splice(elementIndex, 1);\n elements.splice(elementIndex, 1);\n }\n}\n\nfunction addDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n\n if (!delegatedEvents[type]) {\n delegatedEvents[type] = {\n contexts: [],\n listeners: [],\n selectors: []\n }; // add delegate listener functions\n\n for (var _i2 = 0; _i2 < documents.length; _i2++) {\n var _ref;\n\n _ref = documents[_i2];\n var doc = _ref;\n add(doc, type, delegateListener);\n add(doc, type, delegateUseCapture, true);\n }\n }\n\n var delegated = delegatedEvents[type];\n var index;\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n break;\n }\n }\n\n if (index === -1) {\n index = delegated.selectors.length;\n delegated.selectors.push(selector);\n delegated.contexts.push(context);\n delegated.listeners.push([]);\n } // keep listener and capture and passive flags\n\n\n delegated.listeners[index].push([listener, !!options.capture, options.passive]);\n}\n\nfunction removeDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var delegated = delegatedEvents[type];\n var matchFound = false;\n var index;\n\n if (!delegated) {\n return;\n } // count from last index of delegated to 0\n\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n // look for matching selector and context Node\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive]\n\n for (var i = listeners.length - 1; i >= 0; i--) {\n var _listeners$i = _slicedToArray(listeners[i], 3),\n fn = _listeners$i[0],\n capture = _listeners$i[1],\n passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match\n\n\n if (fn === listener && capture === !!options.capture && passive === options.passive) {\n // remove the listener from the array of listeners\n listeners.splice(i, 1); // if all listeners for this interactable have been removed\n // remove the interactable from the delegated arrays\n\n if (!listeners.length) {\n delegated.selectors.splice(index, 1);\n delegated.contexts.splice(index, 1);\n delegated.listeners.splice(index, 1); // remove delegate function from context\n\n __remove_52(context, type, delegateListener);\n __remove_52(context, type, delegateUseCapture, true); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegatedEvents[type] = null;\n }\n } // only remove one listener\n\n\n matchFound = true;\n break;\n }\n }\n\n if (matchFound) {\n break;\n }\n }\n }\n} // bound to the interactable context when a DOM event\n// listener is added to a selector interactable\n\n\nfunction delegateListener(event, optionalArg) {\n var options = getOptions(optionalArg);\n var fakeEvent = new FakeEvent(event);\n var delegated = delegatedEvents[event.type];\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1),\n eventTarget = _pointerUtils$getEven2[0];\n\n var element = eventTarget; // climb up document tree looking for selector matches\n\n while (__is_52.element(element)) {\n for (var i = 0; i < delegated.selectors.length; i++) {\n var selector = delegated.selectors[i];\n var context = delegated.contexts[i];\n\n if (__domUtils_52.matchesSelector(element, selector) && __domUtils_52.nodeContains(context, eventTarget) && __domUtils_52.nodeContains(context, element)) {\n var listeners = delegated.listeners[i];\n fakeEvent.currentTarget = element;\n\n for (var _i3 = 0; _i3 < listeners.length; _i3++) {\n var _ref2;\n\n _ref2 = listeners[_i3];\n\n var _ref3 = _ref2,\n _ref4 = _slicedToArray(_ref3, 3),\n fn = _ref4[0],\n capture = _ref4[1],\n passive = _ref4[2];\n\n if (capture === !!options.capture && passive === options.passive) {\n fn(fakeEvent);\n }\n }\n }\n }\n\n element = __domUtils_52.parentNode(element);\n }\n}\n\nfunction delegateUseCapture(event) {\n return delegateListener.call(this, event, true);\n}\n\nfunction getOptions(param) {\n return __is_52.object(param) ? param : {\n capture: param\n };\n}\n\nvar FakeEvent =\n/*#__PURE__*/\nfunction () {\n function FakeEvent(originalEvent) {\n _classCallCheck(this, FakeEvent);\n\n this.originalEvent = originalEvent; // duplicate the event so that currentTarget can be changed\n\n (0, ___pointerExtend_52[\"default\"])(this, originalEvent);\n }\n\n _createClass(FakeEvent, [{\n key: \"preventOriginalDefault\",\n value: function preventOriginalDefault() {\n this.originalEvent.preventDefault();\n }\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.originalEvent.stopPropagation();\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.originalEvent.stopImmediatePropagation();\n }\n }]);\n\n return FakeEvent;\n}();\n\n_$events_52.FakeEvent = FakeEvent;\nvar events = {\n add: add,\n remove: __remove_52,\n addDelegate: addDelegate,\n removeDelegate: removeDelegate,\n delegateListener: delegateListener,\n delegateUseCapture: delegateUseCapture,\n delegatedEvents: delegatedEvents,\n documents: documents,\n supportsOptions: false,\n supportsPassive: false,\n _elements: elements,\n _targets: targets,\n init: function init(window) {\n window.document.createElement('div').addEventListener('test', null, {\n get capture() {\n return events.supportsOptions = true;\n },\n\n get passive() {\n return events.supportsPassive = true;\n }\n\n });\n }\n};\nvar ___default_52 = events;\n_$events_52[\"default\"] = ___default_52;\n\nvar _$extend_53 = {};\n\"use strict\";\n\nObject.defineProperty(_$extend_53, \"__esModule\", {\n value: true\n});\n_$extend_53[\"default\"] = extend;\n\nfunction extend(dest, source) {\n for (var prop in source) {\n dest[prop] = source[prop];\n }\n\n return dest;\n}\n\nvar _$rect_63 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_63, \"__esModule\", {\n value: true\n});\n_$rect_63.getStringOptionResult = getStringOptionResult;\n_$rect_63.resolveRectLike = resolveRectLike;\n_$rect_63.rectToXY = rectToXY;\n_$rect_63.xywhToTlbr = xywhToTlbr;\n_$rect_63.tlbrToXywh = tlbrToXywh;\n_$rect_63[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"./domUtils\"); */;\n\nvar _extend = ___interopRequireDefault_63(_$extend_53);\n\nvar __is_63 = ___interopRequireWildcard_63(_$is_57);\n\nfunction ___getRequireWildcardCache_63() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_63 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_63(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_63(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_63(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction getStringOptionResult(value, target, element) {\n if (value === 'parent') {\n return (0, _$domUtils_51.parentNode)(element);\n }\n\n if (value === 'self') {\n return target.getRect(element);\n }\n\n return (0, _$domUtils_51.closest)(element, value);\n}\n\nfunction resolveRectLike(value, target, element, functionArgs) {\n if (__is_63.string(value)) {\n value = getStringOptionResult(value, target, element);\n } else if (__is_63.func(value)) {\n value = value.apply(void 0, _toConsumableArray(functionArgs));\n }\n\n if (__is_63.element(value)) {\n value = (0, _$domUtils_51.getElementRect)(value);\n }\n\n return value;\n}\n\nfunction rectToXY(rect) {\n return rect && {\n x: 'x' in rect ? rect.x : rect.left,\n y: 'y' in rect ? rect.y : rect.top\n };\n}\n\nfunction xywhToTlbr(rect) {\n if (rect && !('left' in rect && 'top' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.left = rect.x || 0;\n rect.top = rect.y || 0;\n rect.right = rect.right || rect.left + rect.width;\n rect.bottom = rect.bottom || rect.top + rect.height;\n }\n\n return rect;\n}\n\nfunction tlbrToXywh(rect) {\n if (rect && !('x' in rect && 'y' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.x = rect.left || 0;\n rect.y = rect.top || 0;\n rect.width = rect.width || rect.right - rect.x;\n rect.height = rect.height || rect.bottom - rect.y;\n }\n\n return rect;\n}\n\nvar ___default_63 = {\n getStringOptionResult: getStringOptionResult,\n resolveRectLike: resolveRectLike,\n rectToXY: rectToXY,\n xywhToTlbr: xywhToTlbr,\n tlbrToXywh: tlbrToXywh\n};\n_$rect_63[\"default\"] = ___default_63;\n\nvar _$getOriginXY_54 = {};\n\"use strict\";\n\nObject.defineProperty(_$getOriginXY_54, \"__esModule\", {\n value: true\n});\n_$getOriginXY_54[\"default\"] = ___default_54;\n\n/* removed: var _$rect_63 = require(\"./rect\"); */;\n\nfunction ___default_54(target, element, action) {\n var actionOptions = target.options[action];\n var actionOrigin = actionOptions && actionOptions.origin;\n var origin = actionOrigin || target.options.origin;\n var originRect = (0, _$rect_63.resolveRectLike)(origin, target, element, [target && element]);\n return (0, _$rect_63.rectToXY)(originRect) || {\n x: 0,\n y: 0\n };\n}\n\nvar _$normalizeListeners_59 = {};\n\"use strict\";\n\nObject.defineProperty(_$normalizeListeners_59, \"__esModule\", {\n value: true\n});\n_$normalizeListeners_59[\"default\"] = normalize;\n\nvar ___extend_59 = ___interopRequireDefault_59(_$extend_53);\n\nvar __is_59 = ___interopRequireWildcard_59(_$is_57);\n\nfunction ___getRequireWildcardCache_59() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_59 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_59(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_59(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_59(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction normalize(type, listeners, result) {\n result = result || {};\n\n if (__is_59.string(type) && type.search(' ') !== -1) {\n type = split(type);\n }\n\n if (__is_59.array(type)) {\n return type.reduce(function (acc, t) {\n return (0, ___extend_59[\"default\"])(acc, normalize(t, listeners, result));\n }, result);\n } // ({ type: fn }) -> ('', { type: fn })\n\n\n if (__is_59.object(type)) {\n listeners = type;\n type = '';\n }\n\n if (__is_59.func(listeners)) {\n result[type] = result[type] || [];\n result[type].push(listeners);\n } else if (__is_59.array(listeners)) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var l = _ref;\n normalize(type, l, result);\n }\n } else if (__is_59.object(listeners)) {\n for (var prefix in listeners) {\n var combinedTypes = split(prefix).map(function (p) {\n return \"\".concat(type).concat(p);\n });\n normalize(combinedTypes, listeners[prefix], result);\n }\n }\n\n return result;\n}\n\nfunction split(type) {\n return type.trim().split(/ +/);\n}\n\nvar _$raf_62 = {};\n\"use strict\";\n\nObject.defineProperty(_$raf_62, \"__esModule\", {\n value: true\n});\n_$raf_62[\"default\"] = void 0;\nvar lastTime = 0;\n\nvar _request;\n\nvar _cancel;\n\nfunction __init_62(window) {\n _request = window.requestAnimationFrame;\n _cancel = window.cancelAnimationFrame;\n\n if (!_request) {\n var vendors = ['ms', 'moz', 'webkit', 'o'];\n\n for (var _i = 0; _i < vendors.length; _i++) {\n var vendor = vendors[_i];\n _request = window[\"\".concat(vendor, \"RequestAnimationFrame\")];\n _cancel = window[\"\".concat(vendor, \"CancelAnimationFrame\")] || window[\"\".concat(vendor, \"CancelRequestAnimationFrame\")];\n }\n }\n\n if (!_request) {\n _request = function request(callback) {\n var currTime = Date.now();\n var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal\n\n var token = setTimeout(function () {\n callback(currTime + timeToCall);\n }, timeToCall);\n lastTime = currTime + timeToCall;\n return token;\n };\n\n _cancel = function cancel(token) {\n return clearTimeout(token);\n };\n }\n}\n\nvar ___default_62 = {\n request: function request(callback) {\n return _request(callback);\n },\n cancel: function cancel(token) {\n return _cancel(token);\n },\n init: __init_62\n};\n_$raf_62[\"default\"] = ___default_62;\n\nvar _$Signals_46 = {};\n\"use strict\";\n\nObject.defineProperty(_$Signals_46, \"__esModule\", {\n value: true\n});\n_$Signals_46[\"default\"] = void 0;\n\nfunction ___classCallCheck_46(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_46(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_46(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_46(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_46(Constructor, staticProps); return Constructor; }\n\nvar Signals =\n/*#__PURE__*/\nfunction () {\n function Signals() {\n ___classCallCheck_46(this, Signals);\n\n this.listeners = {};\n }\n\n ___createClass_46(Signals, [{\n key: \"on\",\n value: function on(name, listener) {\n if (!this.listeners[name]) {\n this.listeners[name] = [listener];\n return;\n }\n\n this.listeners[name].push(listener);\n }\n }, {\n key: \"off\",\n value: function off(name, listener) {\n if (!this.listeners[name]) {\n return;\n }\n\n var index = this.listeners[name].indexOf(listener);\n\n if (index !== -1) {\n this.listeners[name].splice(index, 1);\n }\n }\n }, {\n key: \"fire\",\n value: function fire(name, arg) {\n var targetListeners = this.listeners[name];\n\n if (!targetListeners) {\n return;\n }\n\n for (var _i = 0; _i < targetListeners.length; _i++) {\n var _ref;\n\n _ref = targetListeners[_i];\n var listener = _ref;\n\n if (listener(arg, name) === false) {\n return false;\n }\n }\n }\n }]);\n\n return Signals;\n}();\n\nvar ___default_46 = Signals;\n_$Signals_46[\"default\"] = ___default_46;\n\nvar _$utils_56 = {};\n\"use strict\";\n\nObject.defineProperty(_$utils_56, \"__esModule\", {\n value: true\n});\n_$utils_56.warnOnce = warnOnce;\n_$utils_56._getQBezierValue = _getQBezierValue;\n_$utils_56.getQuadraticCurvePoint = getQuadraticCurvePoint;\n_$utils_56.easeOutQuad = easeOutQuad;\n_$utils_56.copyAction = copyAction;\nObject.defineProperty(_$utils_56, \"win\", {\n enumerable: true,\n get: function get() {\n return ___window_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"browser\", {\n enumerable: true,\n get: function get() {\n return ___browser_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"clone\", {\n enumerable: true,\n get: function get() {\n return _clone[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"events\", {\n enumerable: true,\n get: function get() {\n return _events[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"extend\", {\n enumerable: true,\n get: function get() {\n return ___extend_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"getOriginXY\", {\n enumerable: true,\n get: function get() {\n return _getOriginXY[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"hypot\", {\n enumerable: true,\n get: function get() {\n return ___hypot_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"normalizeListeners\", {\n enumerable: true,\n get: function get() {\n return _normalizeListeners[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"pointer\", {\n enumerable: true,\n get: function get() {\n return ___pointerUtils_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"raf\", {\n enumerable: true,\n get: function get() {\n return _raf[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"rect\", {\n enumerable: true,\n get: function get() {\n return ___rect_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"Signals\", {\n enumerable: true,\n get: function get() {\n return _Signals[\"default\"];\n }\n});\n_$utils_56.is = _$utils_56.dom = _$utils_56.arr = void 0;\n\nvar __arr_56 = ___interopRequireWildcard_56(_$arr_47);\n\n_$utils_56.arr = __arr_56;\n\nvar dom = ___interopRequireWildcard_56(_$domUtils_51);\n\n_$utils_56.dom = dom;\n\nvar __is_56 = ___interopRequireWildcard_56(_$is_57);\n\n_$utils_56.is = __is_56;\n\nvar ___window_56 = ___interopRequireDefault_56(_$window_66);\n\nvar ___browser_56 = ___interopRequireDefault_56(_$browser_48);\n\nvar _clone = ___interopRequireDefault_56(_$clone_49);\n\nvar _events = ___interopRequireDefault_56(_$events_52);\n\nvar ___extend_56 = ___interopRequireDefault_56(_$extend_53);\n\nvar _getOriginXY = ___interopRequireDefault_56(_$getOriginXY_54);\n\nvar ___hypot_56 = ___interopRequireDefault_56(_$hypot_55);\n\nvar _normalizeListeners = ___interopRequireDefault_56(_$normalizeListeners_59);\n\nvar ___pointerUtils_56 = ___interopRequireDefault_56(_$pointerUtils_61);\n\nvar _raf = ___interopRequireDefault_56(_$raf_62);\n\nvar ___rect_56 = ___interopRequireDefault_56(_$rect_63);\n\nvar _Signals = ___interopRequireDefault_56(_$Signals_46);\n\nfunction ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_56() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_56 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_56(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_56(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction warnOnce(method, message) {\n var warned = false; // eslint-disable-next-line no-shadow\n\n return function () {\n if (!warned) {\n ___window_56[\"default\"].window.console.warn(message);\n\n warned = true;\n }\n\n return method.apply(this, arguments);\n };\n} // http://stackoverflow.com/a/5634528/2280888\n\n\nfunction _getQBezierValue(t, p1, p2, p3) {\n var iT = 1 - t;\n return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3;\n}\n\nfunction getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) {\n return {\n x: _getQBezierValue(position, startX, cpX, endX),\n y: _getQBezierValue(position, startY, cpY, endY)\n };\n} // http://gizma.com/easing/\n\n\nfunction easeOutQuad(t, b, c, d) {\n t /= d;\n return -c * t * (t - 2) + b;\n}\n\nfunction copyAction(dest, src) {\n dest.name = src.name;\n dest.axis = src.axis;\n dest.edges = src.edges;\n return dest;\n}\n\nvar _$defaultOptions_20 = {};\n\"use strict\";\n\nObject.defineProperty(_$defaultOptions_20, \"__esModule\", {\n value: true\n});\n_$defaultOptions_20[\"default\"] = _$defaultOptions_20.defaults = void 0;\n// tslint:disable no-empty-interface\nvar defaults = {\n base: {\n preventDefault: 'auto',\n deltaSource: 'page'\n },\n perAction: {\n enabled: false,\n origin: {\n x: 0,\n y: 0\n }\n },\n actions: {}\n};\n_$defaultOptions_20.defaults = defaults;\nvar ___default_20 = defaults;\n_$defaultOptions_20[\"default\"] = ___default_20;\n\nvar _$Eventable_14 = {};\n\"use strict\";\n\nObject.defineProperty(_$Eventable_14, \"__esModule\", {\n value: true\n});\n_$Eventable_14[\"default\"] = void 0;\n\nvar __arr_14 = ___interopRequireWildcard_14(_$arr_47);\n\nvar ___extend_14 = ___interopRequireDefault_14(_$extend_53);\n\nvar ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_59);\n\nfunction ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_14() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; }\n\nfunction fireUntilImmediateStopped(event, listeners) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var listener = _ref;\n\n if (event.immediatePropagationStopped) {\n break;\n }\n\n listener(event);\n }\n}\n\nvar Eventable =\n/*#__PURE__*/\nfunction () {\n function Eventable(options) {\n ___classCallCheck_14(this, Eventable);\n\n this.types = {};\n this.propagationStopped = false;\n this.immediatePropagationStopped = false;\n this.options = (0, ___extend_14[\"default\"])({}, options || {});\n }\n\n ___createClass_14(Eventable, [{\n key: \"fire\",\n value: function fire(event) {\n var listeners;\n var global = this.global; // Interactable#on() listeners\n // tslint:disable no-conditional-assignment\n\n if (listeners = this.types[event.type]) {\n fireUntilImmediateStopped(event, listeners);\n } // interact.on() listeners\n\n\n if (!event.propagationStopped && global && (listeners = global[event.type])) {\n fireUntilImmediateStopped(event, listeners);\n }\n }\n }, {\n key: \"on\",\n value: function on(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]);\n }\n }\n }, {\n key: \"off\",\n value: function off(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n var eventList = this.types[type];\n\n if (!eventList || !eventList.length) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var subListener = _ref2;\n var index = eventList.indexOf(subListener);\n\n if (index !== -1) {\n eventList.splice(index, 1);\n }\n }\n }\n }\n }, {\n key: \"getRect\",\n value: function getRect(_element) {\n return null;\n }\n }]);\n\n return Eventable;\n}();\n\nvar ___default_14 = Eventable;\n_$Eventable_14[\"default\"] = ___default_14;\n\nvar _$Interactable_16 = {};\n\"use strict\";\n\nObject.defineProperty(_$Interactable_16, \"__esModule\", {\n value: true\n});\n_$Interactable_16[\"default\"] = _$Interactable_16.Interactable = void 0;\n\nvar __arr_16 = ___interopRequireWildcard_16(_$arr_47);\n\nvar ___browser_16 = ___interopRequireDefault_16(_$browser_48);\n\nvar ___clone_16 = ___interopRequireDefault_16(_$clone_49);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_16 = ___interopRequireDefault_16(_$events_52);\n\nvar ___extend_16 = ___interopRequireDefault_16(_$extend_53);\n\nvar __is_16 = ___interopRequireWildcard_16(_$is_57);\n\nvar ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_59);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nvar _Eventable = ___interopRequireDefault_16(_$Eventable_14);\n\nfunction ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_16() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; }\n\n/** */\nvar Interactable =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interactable(target, options, defaultContext) {\n ___classCallCheck_16(this, Interactable);\n\n this.events = new _Eventable[\"default\"]();\n this._actions = options.actions;\n this.target = target;\n this._context = options.context || defaultContext;\n this._win = (0, _$window_66.getWindow)((0, _$domUtils_51.trySelector)(target) ? this._context : target);\n this._doc = this._win.document;\n this.set(options);\n }\n\n ___createClass_16(Interactable, [{\n key: \"setOnEvents\",\n value: function setOnEvents(actionName, phases) {\n if (__is_16.func(phases.onstart)) {\n this.on(\"\".concat(actionName, \"start\"), phases.onstart);\n }\n\n if (__is_16.func(phases.onmove)) {\n this.on(\"\".concat(actionName, \"move\"), phases.onmove);\n }\n\n if (__is_16.func(phases.onend)) {\n this.on(\"\".concat(actionName, \"end\"), phases.onend);\n }\n\n if (__is_16.func(phases.oninertiastart)) {\n this.on(\"\".concat(actionName, \"inertiastart\"), phases.oninertiastart);\n }\n\n return this;\n }\n }, {\n key: \"updatePerActionListeners\",\n value: function updatePerActionListeners(actionName, prev, cur) {\n if (__is_16.array(prev) || __is_16.object(prev)) {\n this.off(actionName, prev);\n }\n\n if (__is_16.array(cur) || __is_16.object(cur)) {\n this.on(actionName, cur);\n }\n }\n }, {\n key: \"setPerAction\",\n value: function setPerAction(actionName, options) {\n var defaults = this._defaults; // for all the default per-action options\n\n for (var optionName in options) {\n var actionOptions = this.options[actionName];\n var optionValue = options[optionName];\n var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones\n\n if (optionName === 'listeners') {\n this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue);\n } // if the option value is an array\n\n\n if (isArray) {\n actionOptions[optionName] = __arr_16.from(optionValue);\n } // if the option value is an object\n else if (!isArray && __is_16.plainObject(optionValue)) {\n // copy the object\n actionOptions[optionName] = (0, ___extend_16[\"default\"])(actionOptions[optionName] || {}, (0, ___clone_16[\"default\"])(optionValue)); // set anabled field to true if it exists in the defaults\n\n if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) {\n actionOptions[optionName].enabled = optionValue.enabled !== false;\n }\n } // if the option value is a boolean and the default is an object\n else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) {\n actionOptions[optionName].enabled = optionValue;\n } // if it's anything else, do a plain assignment\n else {\n actionOptions[optionName] = optionValue;\n }\n }\n }\n /**\n * The default function to get an Interactables bounding rect. Can be\n * overridden using {@link Interactable.rectChecker}.\n *\n * @param {Element} [element] The element to measure.\n * @return {object} The object's bounding rectangle.\n */\n\n }, {\n key: \"getRect\",\n value: function getRect(element) {\n element = element || (__is_16.element(this.target) ? this.target : null);\n\n if (__is_16.string(this.target)) {\n element = element || this._context.querySelector(this.target);\n }\n\n return (0, _$domUtils_51.getElementRect)(element);\n }\n /**\n * Returns or sets the function used to calculate the interactable's\n * element's rectangle\n *\n * @param {function} [checker] A function which returns this Interactable's\n * bounding rectangle. See {@link Interactable.getRect}\n * @return {function | object} The checker function or this Interactable\n */\n\n }, {\n key: \"rectChecker\",\n value: function rectChecker(checker) {\n if (__is_16.func(checker)) {\n this.getRect = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.getRect;\n return this;\n }\n\n return this.getRect;\n }\n }, {\n key: \"_backCompatOption\",\n value: function _backCompatOption(optionName, newValue) {\n if ((0, _$domUtils_51.trySelector)(newValue) || __is_16.object(newValue)) {\n this.options[optionName] = newValue;\n\n for (var _i = 0; _i < this._actions.names.length; _i++) {\n var _ref;\n\n _ref = this._actions.names[_i];\n var action = _ref;\n this.options[action][optionName] = newValue;\n }\n\n return this;\n }\n\n return this.options[optionName];\n }\n /**\n * Gets or sets the origin of the Interactable's element. The x and y\n * of the origin will be subtracted from action event coordinates.\n *\n * @param {Element | object | string} [origin] An HTML or SVG Element whose\n * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\n * or any CSS selector\n *\n * @return {object} The current origin or this Interactable\n */\n\n }, {\n key: \"origin\",\n value: function origin(newValue) {\n return this._backCompatOption('origin', newValue);\n }\n /**\n * Returns or sets the mouse coordinate types used to calculate the\n * movement of the pointer.\n *\n * @param {string} [newValue] Use 'client' if you will be scrolling while\n * interacting; Use 'page' if you want autoScroll to work\n * @return {string | object} The current deltaSource or this Interactable\n */\n\n }, {\n key: \"deltaSource\",\n value: function deltaSource(newValue) {\n if (newValue === 'page' || newValue === 'client') {\n this.options.deltaSource = newValue;\n return this;\n }\n\n return this.options.deltaSource;\n }\n /**\n * Gets the selector context Node of the Interactable. The default is\n * `window.document`.\n *\n * @return {Node} The context Node of this Interactable\n */\n\n }, {\n key: \"context\",\n value: function context() {\n return this._context;\n }\n }, {\n key: \"inContext\",\n value: function inContext(element) {\n return this._context === element.ownerDocument || (0, _$domUtils_51.nodeContains)(this._context, element);\n }\n }, {\n key: \"testIgnoreAllow\",\n value: function testIgnoreAllow(options, targetNode, eventTarget) {\n return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget);\n }\n }, {\n key: \"testAllow\",\n value: function testAllow(allowFrom, targetNode, element) {\n if (!allowFrom) {\n return true;\n }\n\n if (!__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(allowFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, allowFrom, targetNode);\n } else if (__is_16.element(allowFrom)) {\n return (0, _$domUtils_51.nodeContains)(allowFrom, element);\n }\n\n return false;\n }\n }, {\n key: \"testIgnore\",\n value: function testIgnore(ignoreFrom, targetNode, element) {\n if (!ignoreFrom || !__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(ignoreFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, ignoreFrom, targetNode);\n } else if (__is_16.element(ignoreFrom)) {\n return (0, _$domUtils_51.nodeContains)(ignoreFrom, element);\n }\n\n return false;\n }\n /**\n * Calls listeners for the given InteractEvent type bound globally\n * and directly to this Interactable\n *\n * @param {InteractEvent} iEvent The InteractEvent object to be fired on this\n * Interactable\n * @return {Interactable} this Interactable\n */\n\n }, {\n key: \"fire\",\n value: function fire(iEvent) {\n this.events.fire(iEvent);\n return this;\n }\n }, {\n key: \"_onOff\",\n value: function _onOff(method, typeArg, listenerArg, options) {\n if (__is_16.object(typeArg) && !__is_16.array(typeArg)) {\n options = listenerArg;\n listenerArg = null;\n }\n\n var addRemove = method === 'on' ? 'add' : 'remove';\n var listeners = (0, ___normalizeListeners_16[\"default\"])(typeArg, listenerArg);\n\n for (var type in listeners) {\n if (type === 'wheel') {\n type = ___browser_16[\"default\"].wheelEvent;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var listener = _ref2;\n\n // if it is an action event type\n if (__arr_16.contains(this._actions.eventTypes, type)) {\n this.events[method](type, listener);\n } // delegated event\n else if (__is_16.string(this.target)) {\n ___events_16[\"default\"][\"\".concat(addRemove, \"Delegate\")](this.target, this._context, type, listener, options);\n } // remove listener from this Interactable's element\n else {\n ___events_16[\"default\"][addRemove](this.target, type, listener, options);\n }\n }\n }\n\n return this;\n }\n /**\n * Binds a listener for an InteractEvent, pointerEvent or DOM event.\n *\n * @param {string | array | object} types The types of events to listen\n * for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * addEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"on\",\n value: function on(types, listener, options) {\n return this._onOff('on', types, listener, options);\n }\n /**\n * Removes an InteractEvent, pointerEvent or DOM event listener.\n *\n * @param {string | array | object} types The types of events that were\n * listened for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * removeEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"off\",\n value: function off(types, listener, options) {\n return this._onOff('off', types, listener, options);\n }\n /**\n * Reset the options of this Interactable\n *\n * @param {object} options The new settings to apply\n * @return {object} This Interactable\n */\n\n }, {\n key: \"set\",\n value: function set(options) {\n var defaults = this._defaults;\n\n if (!__is_16.object(options)) {\n options = {};\n }\n\n this.options = (0, ___clone_16[\"default\"])(defaults.base);\n\n for (var actionName in this._actions.methodDict) {\n var methodName = this._actions.methodDict[actionName];\n this.options[actionName] = {};\n this.setPerAction(actionName, (0, ___extend_16[\"default\"])((0, ___extend_16[\"default\"])({}, defaults.perAction), defaults.actions[actionName]));\n this[methodName](options[actionName]);\n }\n\n for (var setting in options) {\n if (__is_16.func(this[setting])) {\n this[setting](options[setting]);\n }\n }\n\n return this;\n }\n /**\n * Remove this interactable from the list of interactables and remove it's\n * action capabilities and event listeners\n *\n * @return {interact}\n */\n\n }, {\n key: \"unset\",\n value: function unset() {\n ___events_16[\"default\"].remove(this.target, 'all');\n\n if (__is_16.string(this.target)) {\n // remove delegated events\n for (var type in ___events_16[\"default\"].delegatedEvents) {\n var delegated = ___events_16[\"default\"].delegatedEvents[type];\n\n if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) {\n delegated.selectors.splice(0, 1);\n delegated.contexts.splice(0, 1);\n delegated.listeners.splice(0, 1); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegated[type] = null;\n }\n }\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateListener);\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateUseCapture, true);\n }\n } else {\n ___events_16[\"default\"].remove(this.target, 'all');\n }\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return {\n base: {},\n perAction: {},\n actions: {}\n };\n }\n }]);\n\n return Interactable;\n}();\n\n_$Interactable_16.Interactable = Interactable;\nvar ___default_16 = Interactable;\n_$Interactable_16[\"default\"] = ___default_16;\n\nvar _$InteractableSet_17 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableSet_17, \"__esModule\", {\n value: true\n});\n_$InteractableSet_17[\"default\"] = void 0;\n\nvar __arr_17 = ___interopRequireWildcard_17(_$arr_47);\n\nvar __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_51);\n\nvar ___extend_17 = ___interopRequireDefault_17(_$extend_53);\n\nvar __is_17 = ___interopRequireWildcard_17(_$is_57);\n\nvar ___Signals_17 = ___interopRequireDefault_17(_$Signals_46);\n\nfunction ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_17() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; }\n\nvar InteractableSet =\n/*#__PURE__*/\nfunction () {\n function InteractableSet(scope) {\n var _this = this;\n\n ___classCallCheck_17(this, InteractableSet);\n\n this.scope = scope;\n this.signals = new ___Signals_17[\"default\"](); // all set interactables\n\n this.list = [];\n this.selectorMap = {};\n this.signals.on('unset', function (_ref) {\n var interactable = _ref.interactable;\n var target = interactable.target,\n context = interactable._context;\n var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id];\n var targetIndex = targetMappings.findIndex(function (m) {\n return m.context === context;\n });\n\n if (targetMappings[targetIndex]) {\n // Destroying mappingInfo's context and interactable\n targetMappings[targetIndex].context = null;\n targetMappings[targetIndex].interactable = null;\n }\n\n targetMappings.splice(targetIndex, 1);\n });\n }\n\n ___createClass_17(InteractableSet, [{\n key: \"new\",\n value: function _new(target, options) {\n options = (0, ___extend_17[\"default\"])(options || {}, {\n actions: this.scope.actions\n });\n var interactable = new this.scope.Interactable(target, options, this.scope.document);\n var mappingInfo = {\n context: interactable._context,\n interactable: interactable\n };\n this.scope.addDocument(interactable._doc);\n this.list.push(interactable);\n\n if (__is_17.string(target)) {\n if (!this.selectorMap[target]) {\n this.selectorMap[target] = [];\n }\n\n this.selectorMap[target].push(mappingInfo);\n } else {\n if (!interactable.target[this.scope.id]) {\n Object.defineProperty(target, this.scope.id, {\n value: [],\n configurable: true\n });\n }\n\n target[this.scope.id].push(mappingInfo);\n }\n\n this.signals.fire('new', {\n target: target,\n options: options,\n interactable: interactable,\n win: this.scope._win\n });\n return interactable;\n }\n }, {\n key: \"get\",\n value: function get(target, options) {\n var context = options && options.context || this.scope.document;\n var isSelector = __is_17.string(target);\n var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id];\n\n if (!targetMappings) {\n return null;\n }\n\n var found = __arr_17.find(targetMappings, function (m) {\n return m.context === context && (isSelector || m.interactable.inContext(target));\n });\n return found && found.interactable;\n }\n }, {\n key: \"forEachMatch\",\n value: function forEachMatch(node, callback) {\n for (var _i = 0; _i < this.list.length; _i++) {\n var _ref2;\n\n _ref2 = this.list[_i];\n var interactable = _ref2;\n var ret = void 0;\n\n if ((__is_17.string(interactable.target) // target is a selector and the element matches\n ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element\n node === interactable.target) && // the element is in context\n interactable.inContext(node)) {\n ret = callback(interactable);\n }\n\n if (ret !== undefined) {\n return ret;\n }\n }\n }\n }]);\n\n return InteractableSet;\n}();\n\n_$InteractableSet_17[\"default\"] = InteractableSet;\n\nvar _$BaseEvent_13 = {};\n\"use strict\";\n\nObject.defineProperty(_$BaseEvent_13, \"__esModule\", {\n value: true\n});\n_$BaseEvent_13[\"default\"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0;\n\nfunction ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; }\n\nvar EventPhase;\n_$BaseEvent_13.EventPhase = EventPhase;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {}));\n\nvar BaseEvent =\n/*#__PURE__*/\nfunction () {\n function BaseEvent(interaction) {\n ___classCallCheck_13(this, BaseEvent);\n\n this.immediatePropagationStopped = false;\n this.propagationStopped = false;\n this._interaction = interaction;\n }\n\n ___createClass_13(BaseEvent, [{\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }, {\n key: \"interaction\",\n get: function get() {\n return this._interaction._proxy;\n }\n }]);\n\n return BaseEvent;\n}();\n\n_$BaseEvent_13.BaseEvent = BaseEvent;\nvar ___default_13 = BaseEvent;\n_$BaseEvent_13[\"default\"] = ___default_13;\n\nvar _$InteractEvent_15 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractEvent_15, \"__esModule\", {\n value: true\n});\n_$InteractEvent_15[\"default\"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0;\n\nvar ___extend_15 = ___interopRequireDefault_15(_$extend_53);\n\nvar ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_54);\n\nvar ___hypot_15 = ___interopRequireDefault_15(_$hypot_55);\n\nvar _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13);\n\nvar _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20);\n\nfunction ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_15(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_15(obj); }\n\nfunction ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar __EventPhase_15;\n_$InteractEvent_15.EventPhase = __EventPhase_15;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {}));\n\nvar InteractEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n _inherits(InteractEvent, _BaseEvent);\n\n /** */\n function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) {\n var _this;\n\n ___classCallCheck_15(this, InteractEvent);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction));\n element = element || interaction.element;\n var target = interaction.interactable;\n var deltaSource = (target && target.options || _defaultOptions[\"default\"]).deltaSource;\n var origin = (0, ___getOriginXY_15[\"default\"])(target, element, actionName);\n var starting = phase === 'start';\n var ending = phase === 'end';\n var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent;\n var coords = starting ? interaction.coords.start : ending ? {\n page: prevEvent.page,\n client: prevEvent.client,\n timeStamp: interaction.coords.cur.timeStamp\n } : interaction.coords.cur;\n _this.page = (0, ___extend_15[\"default\"])({}, coords.page);\n _this.client = (0, ___extend_15[\"default\"])({}, coords.client);\n _this.rect = (0, ___extend_15[\"default\"])({}, interaction.rect);\n _this.timeStamp = coords.timeStamp;\n\n if (!ending) {\n _this.page.x -= origin.x;\n _this.page.y -= origin.y;\n _this.client.x -= origin.x;\n _this.client.y -= origin.y;\n }\n\n _this.ctrlKey = event.ctrlKey;\n _this.altKey = event.altKey;\n _this.shiftKey = event.shiftKey;\n _this.metaKey = event.metaKey;\n _this.button = event.button;\n _this.buttons = event.buttons;\n _this.target = element;\n _this.currentTarget = element;\n _this.relatedTarget = related || null;\n _this.preEnd = preEnd;\n _this.type = type || actionName + (phase || '');\n _this.interactable = target;\n _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0;\n _this.x0 = interaction.coords.start.page.x - origin.x;\n _this.y0 = interaction.coords.start.page.y - origin.y;\n _this.clientX0 = interaction.coords.start.client.x - origin.x;\n _this.clientY0 = interaction.coords.start.client.y - origin.y;\n\n if (starting || ending) {\n _this.delta = {\n x: 0,\n y: 0\n };\n } else {\n _this.delta = {\n x: _this[deltaSource].x - prevEvent[deltaSource].x,\n y: _this[deltaSource].y - prevEvent[deltaSource].y\n };\n }\n\n _this.dt = interaction.coords.delta.timeStamp;\n _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second\n\n _this.velocity = (0, ___extend_15[\"default\"])({}, interaction.coords.velocity[deltaSource]);\n _this.speed = (0, ___hypot_15[\"default\"])(_this.velocity.x, _this.velocity.y);\n _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null;\n return _this;\n }\n\n ___createClass_15(InteractEvent, [{\n key: \"getSwipe\",\n value: function getSwipe() {\n var interaction = this._interaction;\n\n if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) {\n return null;\n }\n\n var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI;\n var overlap = 22.5;\n\n if (angle < 0) {\n angle += 360;\n }\n\n var left = 135 - overlap <= angle && angle < 225 + overlap;\n var up = 225 - overlap <= angle && angle < 315 + overlap;\n var right = !left && (315 - overlap <= angle || angle < 45 + overlap);\n var down = !up && 45 - overlap <= angle && angle < 135 + overlap;\n return {\n up: up,\n down: down,\n left: left,\n right: right,\n angle: angle,\n speed: interaction.prevEvent.speed,\n velocity: {\n x: interaction.prevEvent.velocityX,\n y: interaction.prevEvent.velocityY\n }\n };\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"pageX\",\n get: function get() {\n return this.page.x;\n },\n set: function set(value) {\n this.page.x = value;\n }\n }, {\n key: \"pageY\",\n get: function get() {\n return this.page.y;\n },\n set: function set(value) {\n this.page.y = value;\n }\n }, {\n key: \"clientX\",\n get: function get() {\n return this.client.x;\n },\n set: function set(value) {\n this.client.x = value;\n }\n }, {\n key: \"clientY\",\n get: function get() {\n return this.client.y;\n },\n set: function set(value) {\n this.client.y = value;\n }\n }, {\n key: \"dx\",\n get: function get() {\n return this.delta.x;\n },\n set: function set(value) {\n this.delta.x = value;\n }\n }, {\n key: \"dy\",\n get: function get() {\n return this.delta.y;\n },\n set: function set(value) {\n this.delta.y = value;\n }\n }, {\n key: \"velocityX\",\n get: function get() {\n return this.velocity.x;\n },\n set: function set(value) {\n this.velocity.x = value;\n }\n }, {\n key: \"velocityY\",\n get: function get() {\n return this.velocity.y;\n },\n set: function set(value) {\n this.velocity.y = value;\n }\n }]);\n\n return InteractEvent;\n}(_BaseEvent2[\"default\"]);\n\n_$InteractEvent_15.InteractEvent = InteractEvent;\nvar ___default_15 = InteractEvent;\n_$InteractEvent_15[\"default\"] = ___default_15;\n\nvar _$PointerInfo_19 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerInfo_19, \"__esModule\", {\n value: true\n});\n_$PointerInfo_19[\"default\"] = _$PointerInfo_19.PointerInfo = void 0;\n\nfunction ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* eslint-disable @typescript-eslint/no-parameter-properties */\nvar PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) {\n ___classCallCheck_19(this, PointerInfo);\n\n this.id = id;\n this.pointer = pointer;\n this.event = event;\n this.downTime = downTime;\n this.downTarget = downTarget;\n};\n\n_$PointerInfo_19.PointerInfo = PointerInfo;\nvar ___default_19 = PointerInfo;\n_$PointerInfo_19[\"default\"] = ___default_19;\n\nvar _$interactionFinder_22 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactionFinder_22, \"__esModule\", {\n value: true\n});\n_$interactionFinder_22[\"default\"] = void 0;\n\nvar __dom_22 = ___interopRequireWildcard_22(_$domUtils_51);\n\nfunction ___getRequireWildcardCache_22() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar finder = {\n methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'],\n search: function search(details) {\n for (var _i = 0; _i < finder.methodOrder.length; _i++) {\n var _ref;\n\n _ref = finder.methodOrder[_i];\n var method = _ref;\n var interaction = finder[method](details);\n\n if (interaction) {\n return interaction;\n }\n }\n },\n // try to resume simulation with a new pointer\n simulationResume: function simulationResume(_ref2) {\n var pointerType = _ref2.pointerType,\n eventType = _ref2.eventType,\n eventTarget = _ref2.eventTarget,\n scope = _ref2.scope;\n\n if (!/down|start/i.test(eventType)) {\n return null;\n }\n\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i2];\n var interaction = _ref3;\n var element = eventTarget;\n\n if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) {\n while (element) {\n // if the element is the interaction element\n if (element === interaction.element) {\n return interaction;\n }\n\n element = __dom_22.parentNode(element);\n }\n }\n }\n\n return null;\n },\n // if it's a mouse or pen interaction\n mouseOrPen: function mouseOrPen(_ref4) {\n var pointerId = _ref4.pointerId,\n pointerType = _ref4.pointerType,\n eventType = _ref4.eventType,\n scope = _ref4.scope;\n\n if (pointerType !== 'mouse' && pointerType !== 'pen') {\n return null;\n }\n\n var firstNonActive;\n\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i3];\n var interaction = _ref5;\n\n if (interaction.pointerType === pointerType) {\n // if it's a down event, skip interactions with running simulations\n if (interaction.simulation && !hasPointerId(interaction, pointerId)) {\n continue;\n } // if the interaction is active, return it immediately\n\n\n if (interaction.interacting()) {\n return interaction;\n } // otherwise save it and look for another active interaction\n else if (!firstNonActive) {\n firstNonActive = interaction;\n }\n }\n } // if no active mouse interaction was found use the first inactive mouse\n // interaction\n\n\n if (firstNonActive) {\n return firstNonActive;\n } // find any mouse or pen interaction.\n // ignore the interaction if the eventType is a *down, and a simulation\n // is active\n\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref6;\n\n _ref6 = scope.interactions.list[_i4];\n var _interaction = _ref6;\n\n if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) {\n return _interaction;\n }\n }\n\n return null;\n },\n // get interaction that has this pointer\n hasPointer: function hasPointer(_ref7) {\n var pointerId = _ref7.pointerId,\n scope = _ref7.scope;\n\n for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) {\n var _ref8;\n\n _ref8 = scope.interactions.list[_i5];\n var interaction = _ref8;\n\n if (hasPointerId(interaction, pointerId)) {\n return interaction;\n }\n }\n\n return null;\n },\n // get first idle interaction with a matching pointerType\n idle: function idle(_ref9) {\n var pointerType = _ref9.pointerType,\n scope = _ref9.scope;\n\n for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) {\n var _ref10;\n\n _ref10 = scope.interactions.list[_i6];\n var interaction = _ref10;\n\n // if there's already a pointer held down\n if (interaction.pointers.length === 1) {\n var target = interaction.interactable; // don't add this pointer if there is a target interactable and it\n // isn't gesturable\n\n if (target && !(target.options.gesture && target.options.gesture.enabled)) {\n continue;\n }\n } // maximum of 2 pointers per interaction\n else if (interaction.pointers.length >= 2) {\n continue;\n }\n\n if (!interaction.interacting() && pointerType === interaction.pointerType) {\n return interaction;\n }\n }\n\n return null;\n }\n};\n\nfunction hasPointerId(interaction, pointerId) {\n return interaction.pointers.some(function (_ref11) {\n var id = _ref11.id;\n return id === pointerId;\n });\n}\n\nvar ___default_22 = finder;\n_$interactionFinder_22[\"default\"] = ___default_22;\n\nvar _$drag_1 = {};\n\"use strict\";\n\nObject.defineProperty(_$drag_1, \"__esModule\", {\n value: true\n});\n_$drag_1[\"default\"] = void 0;\n\nvar ___scope_1 = _$scope_24({});\n\nvar __arr_1 = ___interopRequireWildcard_1(_$arr_47);\n\nvar __is_1 = ___interopRequireWildcard_1(_$is_57);\n\nfunction ___getRequireWildcardCache_1() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_1.ActionName.Drag = 'drag';\n\nfunction __install_1(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('before-action-move', beforeMove);\n interactions.signals.on('action-resume', beforeMove); // dragmove\n\n interactions.signals.on('action-move', move);\n Interactable.prototype.draggable = drag.draggable;\n actions[___scope_1.ActionName.Drag] = drag;\n actions.names.push(___scope_1.ActionName.Drag);\n __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']);\n actions.methodDict.drag = 'draggable';\n defaults.actions.drag = drag.defaults;\n}\n\nfunction beforeMove(_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x') {\n interaction.coords.cur.page.y = interaction.coords.start.page.y;\n interaction.coords.cur.client.y = interaction.coords.start.client.y;\n interaction.coords.velocity.client.y = 0;\n interaction.coords.velocity.page.y = 0;\n } else if (axis === 'y') {\n interaction.coords.cur.page.x = interaction.coords.start.page.x;\n interaction.coords.cur.client.x = interaction.coords.start.client.x;\n interaction.coords.velocity.client.x = 0;\n interaction.coords.velocity.page.x = 0;\n }\n}\n\nfunction move(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x' || axis === 'y') {\n var opposite = axis === 'x' ? 'y' : 'x';\n iEvent.page[opposite] = interaction.coords.start.page[opposite];\n iEvent.client[opposite] = interaction.coords.start.client[opposite];\n iEvent.delta[opposite] = 0;\n }\n}\n/**\n * ```js\n * interact(element).draggable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // the axis in which the first movement must be\n * // for the drag sequence to start\n * // 'xy' by default - any direction\n * startAxis: 'x' || 'y' || 'xy',\n *\n * // 'xy' by default - don't restrict to one axis (move in any direction)\n * // 'x' or 'y' to restrict movement to either axis\n * // 'start' to restrict movement to the axis the drag started in\n * lockAxis: 'x' || 'y' || 'xy' || 'start',\n *\n * // max number of drags that can happen concurrently\n * // with elements of this Interactable. Infinity by default\n * max: Infinity,\n *\n * // max number of drags that can target the same element+Interactable\n * // 1 by default\n * maxPerElement: 2\n * })\n *\n * var isDraggable = interact('element').draggable(); // true\n * ```\n *\n * Get or set whether drag actions can be performed on the target\n *\n * @alias Interactable.prototype.draggable\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on drag events (object makes the Interactable\n * draggable)\n * @return {boolean | Interactable} boolean indicating if this can be the\n * target of drag events, or this Interctable\n */\n\n\nvar draggable = function draggable(options) {\n if (__is_1.object(options)) {\n this.options.drag.enabled = options.enabled !== false;\n this.setPerAction('drag', options);\n this.setOnEvents('drag', options);\n\n if (/^(xy|x|y|start)$/.test(options.lockAxis)) {\n this.options.drag.lockAxis = options.lockAxis;\n }\n\n if (/^(xy|x|y)$/.test(options.startAxis)) {\n this.options.drag.startAxis = options.startAxis;\n }\n\n return this;\n }\n\n if (__is_1.bool(options)) {\n this.options.drag.enabled = options;\n return this;\n }\n\n return this.options.drag;\n};\n\nvar drag = {\n id: 'actions/drag',\n install: __install_1,\n draggable: draggable,\n beforeMove: beforeMove,\n move: move,\n defaults: {\n startAxis: 'xy',\n lockAxis: 'xy'\n },\n checker: function checker(_pointer, _event, interactable) {\n var dragOptions = interactable.options.drag;\n return dragOptions.enabled ? {\n name: 'drag',\n axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis\n } : null;\n },\n getCursor: function getCursor() {\n return 'move';\n }\n};\nvar ___default_1 = drag;\n_$drag_1[\"default\"] = ___default_1;\n\nvar _$DropEvent_2 = {};\n\"use strict\";\n\nObject.defineProperty(_$DropEvent_2, \"__esModule\", {\n value: true\n});\n_$DropEvent_2[\"default\"] = void 0;\n\nvar ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13);\n\nvar __arr_2 = ___interopRequireWildcard_2(_$arr_47);\n\nfunction ___getRequireWildcardCache_2() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_2(obj); }\n\nfunction ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); }\n\nfunction ___nonIterableSpread_2() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_2(self); }\n\nfunction ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); }\n\nfunction ___inherits_2(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); }\n\nfunction ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); }\n\nvar DropEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_2(DropEvent, _BaseEvent);\n\n /**\n * Class of events fired on dropzones during drags with acceptable targets.\n */\n function DropEvent(dropState, dragEvent, type) {\n var _this;\n\n ___classCallCheck_2(this, DropEvent);\n\n _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction));\n _this.propagationStopped = false;\n _this.immediatePropagationStopped = false;\n\n var _ref = type === 'dragleave' ? dropState.prev : dropState.cur,\n element = _ref.element,\n dropzone = _ref.dropzone;\n\n _this.type = type;\n _this.target = element;\n _this.currentTarget = element;\n _this.dropzone = dropzone;\n _this.dragEvent = dragEvent;\n _this.relatedTarget = dragEvent.target;\n _this.draggable = dragEvent.interactable;\n _this.timeStamp = dragEvent.timeStamp;\n return _this;\n }\n /**\n * If this is a `dropactivate` event, the dropzone element will be\n * deactivated.\n *\n * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the\n * dropzone element and more.\n */\n\n\n ___createClass_2(DropEvent, [{\n key: \"reject\",\n value: function reject() {\n var _this2 = this;\n\n var dropState = this._interaction.dropState;\n\n if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) {\n return;\n }\n\n dropState.prev.dropzone = this.dropzone;\n dropState.prev.element = this.target;\n dropState.rejected = true;\n dropState.events.enter = null;\n this.stopImmediatePropagation();\n\n if (this.type === 'dropactivate') {\n var activeDrops = dropState.activeDrops;\n var index = __arr_2.findIndex(activeDrops, function (_ref2) {\n var dropzone = _ref2.dropzone,\n element = _ref2.element;\n return dropzone === _this2.dropzone && element === _this2.target;\n });\n dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1)));\n var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate');\n deactivateEvent.dropzone = this.dropzone;\n deactivateEvent.target = this.target;\n this.dropzone.fire(deactivateEvent);\n } else {\n this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave'));\n }\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }]);\n\n return DropEvent;\n}(___BaseEvent2_2[\"default\"]);\n\nvar ___default_2 = DropEvent;\n_$DropEvent_2[\"default\"] = ___default_2;\n\nvar _$drop_3 = {};\n\"use strict\";\n\nObject.defineProperty(_$drop_3, \"__esModule\", {\n value: true\n});\n_$drop_3[\"default\"] = void 0;\n\nvar __utils_3 = ___interopRequireWildcard_3(_$utils_56);\n\nvar _drag = ___interopRequireDefault_3(_$drag_1);\n\nvar _DropEvent = ___interopRequireDefault_3(_$DropEvent_2);\n\nfunction ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_3() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_3(scope) {\n var actions = scope.actions,\n interact = scope.interact,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_drag[\"default\"]);\n interactions.signals.on('before-action-start', function (_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n interaction.dropState = {\n cur: {\n dropzone: null,\n element: null\n },\n prev: {\n dropzone: null,\n element: null\n },\n rejected: null,\n events: null,\n activeDrops: null\n };\n });\n interactions.signals.on('after-action-start', function (_ref2) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n dragEvent = _ref2.iEvent;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState; // reset active dropzones\n\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n dropState.events = getDropEvents(interaction, event, dragEvent);\n\n if (dropState.events.activate) {\n fireActivationEvents(dropState.activeDrops, dropState.events.activate);\n }\n }); // FIXME proper signal types\n\n interactions.signals.on('action-move', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('action-end', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('after-action-move', function (_ref3) {\n var interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n interaction.dropState.events = {};\n });\n interactions.signals.on('after-action-end', function (_ref4) {\n var interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n });\n interactions.signals.on('stop', function (_ref5) {\n var interaction = _ref5.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (dropState) {\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.cur.dropzone = null;\n dropState.cur.element = null;\n dropState.prev.dropzone = null;\n dropState.prev.element = null;\n dropState.rejected = false;\n }\n });\n /**\n *\n * ```js\n * interact('.drop').dropzone({\n * accept: '.can-drop' || document.getElementById('single-drop'),\n * overlap: 'pointer' || 'center' || zeroToOne\n * }\n * ```\n *\n * Returns or sets whether draggables can be dropped onto this target to\n * trigger drop events\n *\n * Dropzones can receive the following events:\n * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends\n * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone\n * - `dragmove` when a draggable that has entered the dropzone is moved\n * - `drop` when a draggable is dropped into this dropzone\n *\n * Use the `accept` option to allow only elements that match the given CSS\n * selector or element. The value can be:\n *\n * - **an Element** - only that element can be dropped into this dropzone.\n * - **a string**, - the element being dragged must match it as a CSS selector.\n * - **`null`** - accept options is cleared - it accepts any element.\n *\n * Use the `overlap` option to set how drops are checked for. The allowed\n * values are:\n *\n * - `'pointer'`, the pointer must be over the dropzone (default)\n * - `'center'`, the draggable element's center must be over the dropzone\n * - a number from 0-1 which is the `(intersection area) / (draggable area)`.\n * e.g. `0.5` for drop to happen when half of the area of the draggable is\n * over the dropzone\n *\n * Use the `checker` option to specify a function to check if a dragged element\n * is over this Interactable.\n *\n * @param {boolean | object | null} [options] The new options to be set.\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.dropzone = function (options) {\n return dropzoneMethod(this, options);\n };\n /**\n * ```js\n * interact(target)\n * .dropChecker(function(dragEvent, // related dragmove or dragend event\n * event, // TouchEvent/PointerEvent/MouseEvent\n * dropped, // bool result of the default checker\n * dropzone, // dropzone Interactable\n * dropElement, // dropzone elemnt\n * draggable, // draggable Interactable\n * draggableElement) {// draggable element\n *\n * return dropped && event.target.hasAttribute('allow-drop')\n * }\n * ```\n */\n\n\n Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) {\n return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect);\n };\n /**\n * Returns or sets whether the dimensions of dropzone elements are calculated\n * on every dragmove or only on dragstart for the default dropChecker\n *\n * @param {boolean} [newValue] True to check on each move. False to check only\n * before start\n * @return {boolean | interact} The current setting or interact\n */\n\n\n interact.dynamicDrop = function (newValue) {\n if (__utils_3.is.bool(newValue)) {\n // if (dragging && scope.dynamicDrop !== newValue && !newValue) {\n // calcRects(dropzones)\n // }\n scope.dynamicDrop = newValue;\n return interact;\n }\n\n return scope.dynamicDrop;\n };\n\n __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']);\n actions.methodDict.drop = 'dropzone';\n scope.dynamicDrop = false;\n defaults.actions.drop = drop.defaults;\n}\n\nfunction collectDrops(_ref6, draggableElement) {\n var interactables = _ref6.interactables;\n var drops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i = 0; _i < interactables.list.length; _i++) {\n var _ref7;\n\n _ref7 = interactables.list[_i];\n var dropzone = _ref7;\n\n if (!dropzone.options.drop.enabled) {\n continue;\n }\n\n var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting\n\n if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({\n dropzone: dropzone,\n draggableElement: draggableElement\n })) {\n continue;\n } // query for new elements if necessary\n\n\n var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target];\n\n for (var _i2 = 0; _i2 < dropElements.length; _i2++) {\n var _ref8;\n\n _ref8 = dropElements[_i2];\n var dropzoneElement = _ref8;\n\n if (dropzoneElement !== draggableElement) {\n drops.push({\n dropzone: dropzone,\n element: dropzoneElement\n });\n }\n }\n }\n\n return drops;\n}\n\nfunction fireActivationEvents(activeDrops, event) {\n // loop through all active dropzones and trigger event\n for (var _i3 = 0; _i3 < activeDrops.length; _i3++) {\n var _ref9;\n\n _ref9 = activeDrops[_i3];\n var _ref10 = _ref9,\n dropzone = _ref10.dropzone,\n element = _ref10.element;\n event.dropzone = dropzone; // set current element as event target\n\n event.target = element;\n dropzone.fire(event);\n event.propagationStopped = event.immediatePropagationStopped = false;\n }\n} // return a new array of possible drops. getActiveDrops should always be\n// called when a drag has just started or a drag event happens while\n// dynamicDrop is true\n\n\nfunction getActiveDrops(scope, dragElement) {\n // get dropzones and their elements that could receive the draggable\n var activeDrops = collectDrops(scope, dragElement);\n\n for (var _i4 = 0; _i4 < activeDrops.length; _i4++) {\n var _ref11;\n\n _ref11 = activeDrops[_i4];\n var activeDrop = _ref11;\n activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element);\n }\n\n return activeDrops;\n}\n\nfunction getDrop(_ref12, dragEvent, pointerEvent) {\n var dropState = _ref12.dropState,\n draggable = _ref12.interactable,\n dragElement = _ref12.element;\n var validDrops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) {\n var _ref13;\n\n _ref13 = dropState.activeDrops[_i5];\n var _ref14 = _ref13,\n dropzone = _ref14.dropzone,\n dropzoneElement = _ref14.element,\n rect = _ref14.rect;\n validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null);\n } // get the most appropriate dropzone based on DOM depth and order\n\n\n var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops);\n return dropState.activeDrops[dropIndex] || null;\n}\n\nfunction getDropEvents(interaction, _pointerEvent, dragEvent) {\n var dropState = interaction.dropState;\n var dropEvents = {\n enter: null,\n leave: null,\n activate: null,\n deactivate: null,\n move: null,\n drop: null\n };\n\n if (dragEvent.type === 'dragstart') {\n dropEvents.activate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropactivate');\n dropEvents.activate.target = null;\n dropEvents.activate.dropzone = null;\n }\n\n if (dragEvent.type === 'dragend') {\n dropEvents.deactivate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropdeactivate');\n dropEvents.deactivate.target = null;\n dropEvents.deactivate.dropzone = null;\n }\n\n if (dropState.rejected) {\n return dropEvents;\n }\n\n if (dropState.cur.element !== dropState.prev.element) {\n // if there was a previous dropzone, create a dragleave event\n if (dropState.prev.dropzone) {\n dropEvents.leave = new _DropEvent[\"default\"](dropState, dragEvent, 'dragleave');\n dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element;\n dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone;\n } // if dropzone is not null, create a dragenter event\n\n\n if (dropState.cur.dropzone) {\n dropEvents.enter = new _DropEvent[\"default\"](dropState, dragEvent, 'dragenter');\n dragEvent.dragEnter = dropState.cur.element;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n }\n\n if (dragEvent.type === 'dragend' && dropState.cur.dropzone) {\n dropEvents.drop = new _DropEvent[\"default\"](dropState, dragEvent, 'drop');\n dragEvent.dropzone = dropState.cur.dropzone;\n dragEvent.relatedTarget = dropState.cur.element;\n }\n\n if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) {\n dropEvents.move = new _DropEvent[\"default\"](dropState, dragEvent, 'dropmove');\n dropEvents.move.dragmove = dragEvent;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n\n return dropEvents;\n}\n\nfunction fireDropEvents(interaction, events) {\n var dropState = interaction.dropState;\n var activeDrops = dropState.activeDrops,\n cur = dropState.cur,\n prev = dropState.prev;\n\n if (events.leave) {\n prev.dropzone.fire(events.leave);\n }\n\n if (events.move) {\n cur.dropzone.fire(events.move);\n }\n\n if (events.enter) {\n cur.dropzone.fire(events.enter);\n }\n\n if (events.drop) {\n cur.dropzone.fire(events.drop);\n }\n\n if (events.deactivate) {\n fireActivationEvents(activeDrops, events.deactivate);\n }\n\n dropState.prev.dropzone = cur.dropzone;\n dropState.prev.element = cur.element;\n}\n\nfunction onEventCreated(_ref15, scope) {\n var interaction = _ref15.interaction,\n iEvent = _ref15.iEvent,\n event = _ref15.event;\n\n if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (scope.dynamicDrop) {\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n }\n\n var dragEvent = iEvent;\n var dropResult = getDrop(interaction, dragEvent, event); // update rejected status\n\n dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element;\n dropState.cur.dropzone = dropResult && dropResult.dropzone;\n dropState.cur.element = dropResult && dropResult.element;\n dropState.events = getDropEvents(interaction, event, dragEvent);\n}\n\nfunction dropzoneMethod(interactable, options) {\n if (__utils_3.is.object(options)) {\n interactable.options.drop.enabled = options.enabled !== false;\n\n if (options.listeners) {\n var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop'\n\n var corrected = Object.keys(normalized).reduce(function (acc, type) {\n var correctedType = /^(enter|leave)/.test(type) ? \"drag\".concat(type) : /^(activate|deactivate|move)/.test(type) ? \"drop\".concat(type) : type;\n acc[correctedType] = normalized[type];\n return acc;\n }, {});\n interactable.off(interactable.options.drop.listeners);\n interactable.on(corrected);\n interactable.options.drop.listeners = corrected;\n }\n\n if (__utils_3.is.func(options.ondrop)) {\n interactable.on('drop', options.ondrop);\n }\n\n if (__utils_3.is.func(options.ondropactivate)) {\n interactable.on('dropactivate', options.ondropactivate);\n }\n\n if (__utils_3.is.func(options.ondropdeactivate)) {\n interactable.on('dropdeactivate', options.ondropdeactivate);\n }\n\n if (__utils_3.is.func(options.ondragenter)) {\n interactable.on('dragenter', options.ondragenter);\n }\n\n if (__utils_3.is.func(options.ondragleave)) {\n interactable.on('dragleave', options.ondragleave);\n }\n\n if (__utils_3.is.func(options.ondropmove)) {\n interactable.on('dropmove', options.ondropmove);\n }\n\n if (/^(pointer|center)$/.test(options.overlap)) {\n interactable.options.drop.overlap = options.overlap;\n } else if (__utils_3.is.number(options.overlap)) {\n interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0);\n }\n\n if ('accept' in options) {\n interactable.options.drop.accept = options.accept;\n }\n\n if ('checker' in options) {\n interactable.options.drop.checker = options.checker;\n }\n\n return interactable;\n }\n\n if (__utils_3.is.bool(options)) {\n interactable.options.drop.enabled = options;\n return interactable;\n }\n\n return interactable.options.drop;\n}\n\nfunction dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) {\n var dropped = false; // if the dropzone has no rect (eg. display: none)\n // call the custom dropChecker or just return false\n\n if (!(rect = rect || interactable.getRect(dropElement))) {\n return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false;\n }\n\n var dropOverlap = interactable.options.drop.overlap;\n\n if (dropOverlap === 'pointer') {\n var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag');\n var page = __utils_3.pointer.getPageXY(dragEvent);\n page.x += origin.x;\n page.y += origin.y;\n var horizontal = page.x > rect.left && page.x < rect.right;\n var vertical = page.y > rect.top && page.y < rect.bottom;\n dropped = horizontal && vertical;\n }\n\n var dragRect = draggable.getRect(draggableElement);\n\n if (dragRect && dropOverlap === 'center') {\n var cx = dragRect.left + dragRect.width / 2;\n var cy = dragRect.top + dragRect.height / 2;\n dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom;\n }\n\n if (dragRect && __utils_3.is.number(dropOverlap)) {\n var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top));\n var overlapRatio = overlapArea / (dragRect.width * dragRect.height);\n dropped = overlapRatio >= dropOverlap;\n }\n\n if (interactable.options.drop.checker) {\n dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement);\n }\n\n return dropped;\n}\n\nvar drop = {\n id: 'actions/drop',\n install: __install_3,\n getActiveDrops: getActiveDrops,\n getDrop: getDrop,\n getDropEvents: getDropEvents,\n fireDropEvents: fireDropEvents,\n defaults: {\n enabled: false,\n accept: null,\n overlap: 'pointer'\n }\n};\nvar ___default_3 = drop;\n_$drop_3[\"default\"] = ___default_3;\n\nvar _$gesture_4 = {};\n\"use strict\";\n\nObject.defineProperty(_$gesture_4, \"__esModule\", {\n value: true\n});\n_$gesture_4[\"default\"] = void 0;\n\nvar ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15);\n\nvar ___scope_4 = _$scope_24({});\n\nvar __utils_4 = ___interopRequireWildcard_4(_$utils_56);\n\nfunction ___getRequireWildcardCache_4() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n___scope_4.ActionName.Gesture = 'gesture';\n\nfunction __install_4(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n /**\n * ```js\n * interact(element).gesturable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // limit multiple gestures.\n * // See the explanation in {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isGestureable = interact(element).gesturable()\n * ```\n *\n * Gets or sets whether multitouch gestures can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on gesture events (makes the Interactable gesturable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of gesture events, or this Interactable\n */\n\n Interactable.prototype.gesturable = function (options) {\n if (__utils_4.is.object(options)) {\n this.options.gesture.enabled = options.enabled !== false;\n this.setPerAction('gesture', options);\n this.setOnEvents('gesture', options);\n return this;\n }\n\n if (__utils_4.is.bool(options)) {\n this.options.gesture.enabled = options;\n return this;\n }\n\n return this.options.gesture;\n };\n\n interactions.signals.on('action-start', updateGestureProps);\n interactions.signals.on('action-move', updateGestureProps);\n interactions.signals.on('action-end', updateGestureProps);\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.gesture = {\n angle: 0,\n distance: 0,\n scale: 1,\n startAngle: 0,\n startDistance: 0\n };\n });\n actions[___scope_4.ActionName.Gesture] = gesture;\n actions.names.push(___scope_4.ActionName.Gesture);\n __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']);\n actions.methodDict.gesture = 'gesturable';\n defaults.actions.gesture = gesture.defaults;\n}\n\nvar gesture = {\n id: 'actions/gesture',\n install: __install_4,\n defaults: {},\n checker: function checker(_pointer, _event, _interactable, _element, interaction) {\n if (interaction.pointers.length >= 2) {\n return {\n name: 'gesture'\n };\n }\n\n return null;\n },\n getCursor: function getCursor() {\n return '';\n }\n};\n\nfunction updateGestureProps(_ref2) {\n var interaction = _ref2.interaction,\n iEvent = _ref2.iEvent,\n event = _ref2.event,\n phase = _ref2.phase;\n\n if (interaction.prepared.name !== 'gesture') {\n return;\n }\n\n var pointers = interaction.pointers.map(function (p) {\n return p.pointer;\n });\n var starting = phase === 'start';\n var ending = phase === 'end';\n var deltaSource = interaction.interactable.options.deltaSource;\n iEvent.touches = [pointers[0], pointers[1]];\n\n if (starting) {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = 1;\n iEvent.ds = 0;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.da = 0;\n interaction.gesture.startDistance = iEvent.distance;\n interaction.gesture.startAngle = iEvent.angle;\n } else if (ending || event instanceof ___InteractEvent_4[\"default\"]) {\n var prevEvent = interaction.prevEvent;\n iEvent.distance = prevEvent.distance;\n iEvent.box = prevEvent.box;\n iEvent.scale = prevEvent.scale;\n iEvent.ds = 0;\n iEvent.angle = prevEvent.angle;\n iEvent.da = 0;\n } else {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = iEvent.distance / interaction.gesture.startDistance;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.ds = iEvent.scale - interaction.gesture.scale;\n iEvent.da = iEvent.angle - interaction.gesture.angle;\n }\n\n interaction.gesture.distance = iEvent.distance;\n interaction.gesture.angle = iEvent.angle;\n\n if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) {\n interaction.gesture.scale = iEvent.scale;\n }\n}\n\nvar ___default_4 = gesture;\n_$gesture_4[\"default\"] = ___default_4;\n\nvar _$resize_6 = {};\n\"use strict\";\n\nObject.defineProperty(_$resize_6, \"__esModule\", {\n value: true\n});\n_$resize_6[\"default\"] = void 0;\n\nvar ___scope_6 = _$scope_24({});\n\nvar __arr_6 = ___interopRequireWildcard_6(_$arr_47);\n\nvar __dom_6 = ___interopRequireWildcard_6(_$domUtils_51);\n\nvar ___extend_6 = ___interopRequireDefault_6(_$extend_53);\n\nvar __is_6 = ___interopRequireWildcard_6(_$is_57);\n\nfunction ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_6() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_6.ActionName.Resize = 'resize';\n\nfunction __install_6(scope) {\n var actions = scope.actions,\n browser = scope.browser,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults; // Less Precision with touch input\n\n interactions.signals.on('new', function (interaction) {\n interaction.resizeAxes = 'xy';\n });\n interactions.signals.on('action-start', start);\n interactions.signals.on('action-move', __move_6);\n interactions.signals.on('action-end', end);\n interactions.signals.on('action-start', updateEventAxes);\n interactions.signals.on('action-move', updateEventAxes);\n resize.cursors = initCursors(browser);\n resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10;\n /**\n * ```js\n * interact(element).resizable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * edges: {\n * top : true, // Use pointer coords to check for resize.\n * left : false, // Disable resizing from left edge.\n * bottom: '.resize-s',// Resize if pointer target matches selector\n * right : handleEl // Resize if pointer target is the given Element\n * },\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height are adjusted at a 1:1 ratio.\n * square: false,\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height maintain the aspect ratio they had when resizing started.\n * preserveAspectRatio: false,\n *\n * // a value of 'none' will limit the resize rect to a minimum of 0x0\n * // 'negate' will allow the rect to have negative width/height\n * // 'reposition' will keep the width/height positive by swapping\n * // the top and bottom edges and/or swapping the left and right edges\n * invert: 'none' || 'negate' || 'reposition'\n *\n * // limit multiple resizes.\n * // See the explanation in the {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isResizeable = interact(element).resizable()\n * ```\n *\n * Gets or sets whether resize actions can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on resize events (object makes the Interactable\n * resizable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of resize elements, or this Interactable\n */\n\n Interactable.prototype.resizable = function (options) {\n return resizable(this, options, scope);\n };\n\n actions[___scope_6.ActionName.Resize] = resize;\n actions.names.push(___scope_6.ActionName.Resize);\n __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']);\n actions.methodDict.resize = 'resizable';\n defaults.actions.resize = resize.defaults;\n}\n\nvar resize = {\n id: 'actions/resize',\n install: __install_6,\n defaults: {\n square: false,\n preserveAspectRatio: false,\n axis: 'xy',\n // use default margin\n margin: NaN,\n // object with props left, right, top, bottom which are\n // true/false values to resize when the pointer is over that edge,\n // CSS selectors to match the handles for each direction\n // or the Elements for each handle\n edges: null,\n // a value of 'none' will limit the resize rect to a minimum of 0x0\n // 'negate' will alow the rect to have negative width/height\n // 'reposition' will keep the width/height positive by swapping\n // the top and bottom edges and/or swapping the left and right edges\n invert: 'none'\n },\n checker: function checker(_pointer, _event, interactable, element, interaction, rect) {\n if (!rect) {\n return null;\n }\n\n var page = (0, ___extend_6[\"default\"])({}, interaction.coords.cur.page);\n var options = interactable.options;\n\n if (options.resize.enabled) {\n var resizeOptions = options.resize;\n var resizeEdges = {\n left: false,\n right: false,\n top: false,\n bottom: false\n }; // if using resize.edges\n\n if (__is_6.object(resizeOptions.edges)) {\n for (var edge in resizeEdges) {\n resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin);\n }\n\n resizeEdges.left = resizeEdges.left && !resizeEdges.right;\n resizeEdges.top = resizeEdges.top && !resizeEdges.bottom;\n\n if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) {\n return {\n name: 'resize',\n edges: resizeEdges\n };\n }\n } else {\n var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin;\n var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin;\n\n if (right || bottom) {\n return {\n name: 'resize',\n axes: (right ? 'x' : '') + (bottom ? 'y' : '')\n };\n }\n }\n }\n\n return null;\n },\n cursors: null,\n getCursor: function getCursor(_ref) {\n var edges = _ref.edges,\n axis = _ref.axis,\n name = _ref.name;\n var cursors = resize.cursors;\n var result = null;\n\n if (axis) {\n result = cursors[name + axis];\n } else if (edges) {\n var cursorKey = '';\n var _arr = ['top', 'bottom', 'left', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (edges[edge]) {\n cursorKey += edge;\n }\n }\n\n result = cursors[cursorKey];\n }\n\n return result;\n },\n defaultMargin: null\n};\n\nfunction resizable(interactable, options, scope) {\n if (__is_6.object(options)) {\n interactable.options.resize.enabled = options.enabled !== false;\n interactable.setPerAction('resize', options);\n interactable.setOnEvents('resize', options);\n\n if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) {\n interactable.options.resize.axis = options.axis;\n } else if (options.axis === null) {\n interactable.options.resize.axis = scope.defaults.actions.resize.axis;\n }\n\n if (__is_6.bool(options.preserveAspectRatio)) {\n interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio;\n } else if (__is_6.bool(options.square)) {\n interactable.options.resize.square = options.square;\n }\n\n return interactable;\n }\n\n if (__is_6.bool(options)) {\n interactable.options.resize.enabled = options;\n return interactable;\n }\n\n return interactable.options.resize;\n}\n\nfunction checkResizeEdge(name, value, page, element, interactableElement, rect, margin) {\n // false, '', undefined, null\n if (!value) {\n return false;\n } // true value, use pointer coords and element rect\n\n\n if (value === true) {\n // if dimensions are negative, \"switch\" edges\n var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left;\n var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension\n\n margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2);\n\n if (width < 0) {\n if (name === 'left') {\n name = 'right';\n } else if (name === 'right') {\n name = 'left';\n }\n }\n\n if (height < 0) {\n if (name === 'top') {\n name = 'bottom';\n } else if (name === 'bottom') {\n name = 'top';\n }\n }\n\n if (name === 'left') {\n return page.x < (width >= 0 ? rect.left : rect.right) + margin;\n }\n\n if (name === 'top') {\n return page.y < (height >= 0 ? rect.top : rect.bottom) + margin;\n }\n\n if (name === 'right') {\n return page.x > (width >= 0 ? rect.right : rect.left) - margin;\n }\n\n if (name === 'bottom') {\n return page.y > (height >= 0 ? rect.bottom : rect.top) - margin;\n }\n } // the remaining checks require an element\n\n\n if (!__is_6.element(element)) {\n return false;\n }\n\n return __is_6.element(value) // the value is an element to use as a resize handle\n ? value === element // otherwise check if element matches value as selector\n : __dom_6.matchesUpTo(element, value, interactableElement);\n}\n\nfunction initCursors(browser) {\n return browser.isIe9 ? {\n x: 'e-resize',\n y: 's-resize',\n xy: 'se-resize',\n top: 'n-resize',\n left: 'w-resize',\n bottom: 's-resize',\n right: 'e-resize',\n topleft: 'se-resize',\n bottomright: 'se-resize',\n topright: 'ne-resize',\n bottomleft: 'ne-resize'\n } : {\n x: 'ew-resize',\n y: 'ns-resize',\n xy: 'nwse-resize',\n top: 'ns-resize',\n left: 'ew-resize',\n bottom: 'ns-resize',\n right: 'ew-resize',\n topleft: 'nwse-resize',\n bottomright: 'nwse-resize',\n topright: 'nesw-resize',\n bottomleft: 'nesw-resize'\n };\n}\n\nfunction start(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var startRect = (0, ___extend_6[\"default\"])({}, interaction.rect);\n var resizeOptions = interaction.interactable.options.resize;\n /*\n * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge\n * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make\n * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend\n * on the active edges and the edge being interacted with.\n */\n\n if (resizeOptions.square || resizeOptions.preserveAspectRatio) {\n var linkedEdges = (0, ___extend_6[\"default\"])({}, interaction.prepared.edges);\n linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom;\n linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right;\n linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top;\n linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left;\n interaction.prepared._linkedEdges = linkedEdges;\n } else {\n interaction.prepared._linkedEdges = null;\n } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize\n\n\n if (resizeOptions.preserveAspectRatio) {\n interaction.resizeStartAspectRatio = startRect.width / startRect.height;\n }\n\n interaction.resizeRects = {\n start: startRect,\n current: {\n left: startRect.left,\n right: startRect.right,\n top: startRect.top,\n bottom: startRect.bottom\n },\n inverted: (0, ___extend_6[\"default\"])({}, startRect),\n previous: (0, ___extend_6[\"default\"])({}, startRect),\n delta: {\n left: 0,\n right: 0,\n width: 0,\n top: 0,\n bottom: 0,\n height: 0\n }\n };\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction __move_6(_ref3) {\n var iEvent = _ref3.iEvent,\n interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var resizeOptions = interaction.interactable.options.resize;\n var invert = resizeOptions.invert;\n var invertible = invert === 'reposition' || invert === 'negate';\n var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow\n\n var start = interaction.resizeRects.start;\n var current = interaction.resizeRects.current;\n var inverted = interaction.resizeRects.inverted;\n var deltaRect = interaction.resizeRects.delta;\n var previous = (0, ___extend_6[\"default\"])(interaction.resizeRects.previous, inverted);\n var originalEdges = edges;\n var eventDelta = (0, ___extend_6[\"default\"])({}, iEvent.delta);\n\n if (resizeOptions.preserveAspectRatio || resizeOptions.square) {\n // `resize.preserveAspectRatio` takes precedence over `resize.square`\n var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1;\n edges = interaction.prepared._linkedEdges;\n\n if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) {\n eventDelta.y = -eventDelta.x / startAspectRatio;\n } else if (originalEdges.left || originalEdges.right) {\n eventDelta.y = eventDelta.x / startAspectRatio;\n } else if (originalEdges.top || originalEdges.bottom) {\n eventDelta.x = eventDelta.y * startAspectRatio;\n }\n } // update the 'current' rect without modifications\n\n\n if (edges.top) {\n current.top += eventDelta.y;\n }\n\n if (edges.bottom) {\n current.bottom += eventDelta.y;\n }\n\n if (edges.left) {\n current.left += eventDelta.x;\n }\n\n if (edges.right) {\n current.right += eventDelta.x;\n }\n\n if (invertible) {\n // if invertible, copy the current rect\n (0, ___extend_6[\"default\"])(inverted, current);\n\n if (invert === 'reposition') {\n // swap edge values if necessary to keep width/height positive\n var swap;\n\n if (inverted.top > inverted.bottom) {\n swap = inverted.top;\n inverted.top = inverted.bottom;\n inverted.bottom = swap;\n }\n\n if (inverted.left > inverted.right) {\n swap = inverted.left;\n inverted.left = inverted.right;\n inverted.right = swap;\n }\n }\n } else {\n // if not invertible, restrict to minimum of 0x0 rect\n inverted.top = Math.min(current.top, start.bottom);\n inverted.bottom = Math.max(current.bottom, start.top);\n inverted.left = Math.min(current.left, start.right);\n inverted.right = Math.max(current.right, start.left);\n }\n\n inverted.width = inverted.right - inverted.left;\n inverted.height = inverted.bottom - inverted.top;\n\n for (var edge in inverted) {\n deltaRect[edge] = inverted[edge] - previous[edge];\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = inverted;\n iEvent.deltaRect = deltaRect;\n}\n\nfunction end(_ref4) {\n var iEvent = _ref4.iEvent,\n interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction updateEventAxes(_ref5) {\n var iEvent = _ref5.iEvent,\n interaction = _ref5.interaction,\n action = _ref5.action;\n\n if (action !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) {\n return;\n }\n\n var options = interaction.interactable.options;\n\n if (options.resize.square) {\n if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = iEvent.delta.y;\n } else {\n iEvent.delta.y = iEvent.delta.x;\n }\n\n iEvent.axes = 'xy';\n } else {\n iEvent.axes = interaction.resizeAxes;\n\n if (interaction.resizeAxes === 'x') {\n iEvent.delta.y = 0;\n } else if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = 0;\n }\n }\n}\n\nvar ___default_6 = resize;\n_$resize_6[\"default\"] = ___default_6;\n\nvar _$actions_5 = {};\n\"use strict\";\n\nObject.defineProperty(_$actions_5, \"__esModule\", {\n value: true\n});\n_$actions_5.install = __install_5;\nObject.defineProperty(_$actions_5, \"drag\", {\n enumerable: true,\n get: function get() {\n return ___drag_5[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"drop\", {\n enumerable: true,\n get: function get() {\n return _drop[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"gesture\", {\n enumerable: true,\n get: function get() {\n return _gesture[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"resize\", {\n enumerable: true,\n get: function get() {\n return _resize[\"default\"];\n }\n});\n_$actions_5.id = void 0;\n\nvar ___drag_5 = ___interopRequireDefault_5(_$drag_1);\n\nvar _drop = ___interopRequireDefault_5(_$drop_3);\n\nvar _gesture = ___interopRequireDefault_5(_$gesture_4);\n\nvar _resize = ___interopRequireDefault_5(_$resize_6);\n\nfunction ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_5(scope) {\n scope.usePlugin(_gesture[\"default\"]);\n scope.usePlugin(_resize[\"default\"]);\n scope.usePlugin(___drag_5[\"default\"]);\n scope.usePlugin(_drop[\"default\"]);\n}\n\nvar id = 'actions';\n_$actions_5.id = id;\n\nvar _$autoScroll_7 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoScroll_7, \"__esModule\", {\n value: true\n});\n_$autoScroll_7.getContainer = getContainer;\n_$autoScroll_7.getScroll = getScroll;\n_$autoScroll_7.getScrollSize = getScrollSize;\n_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta;\n_$autoScroll_7[\"default\"] = void 0;\n\nvar __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_51);\n\nvar __is_7 = ___interopRequireWildcard_7(_$is_57);\n\nvar ___raf_7 = ___interopRequireDefault_7(_$raf_62);\n\n/* removed: var _$rect_63 = require(\"@interactjs/utils/rect\"); */;\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_7() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_7(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults,\n actions = scope.actions;\n scope.autoScroll = autoScroll;\n\n autoScroll.now = function () {\n return scope.now();\n };\n\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.autoScroll = null;\n });\n interactions.signals.on('destroy', function (_ref2) {\n var interaction = _ref2.interaction;\n interaction.autoScroll = null;\n autoScroll.stop();\n\n if (autoScroll.interaction) {\n autoScroll.interaction = null;\n }\n });\n interactions.signals.on('stop', autoScroll.stop);\n interactions.signals.on('action-move', function (arg) {\n return autoScroll.onInteractionMove(arg);\n });\n actions.eventTypes.push('autoscroll');\n defaults.perAction.autoScroll = autoScroll.defaults;\n}\n\nvar autoScroll = {\n defaults: {\n enabled: false,\n margin: 60,\n // the item that is scrolled (Window or HTMLElement)\n container: null,\n // the scroll speed in pixels per second\n speed: 300\n },\n now: Date.now,\n interaction: null,\n i: null,\n x: 0,\n y: 0,\n isScrolling: false,\n prevTime: 0,\n margin: 0,\n speed: 0,\n start: function start(interaction) {\n autoScroll.isScrolling = true;\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n interaction.autoScroll = autoScroll;\n autoScroll.interaction = interaction;\n autoScroll.prevTime = autoScroll.now();\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n },\n stop: function stop() {\n autoScroll.isScrolling = false;\n\n if (autoScroll.interaction) {\n autoScroll.interaction.autoScroll = null;\n }\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n },\n // scroll the window by the values in scroll.x/y\n scroll: function scroll() {\n var interaction = autoScroll.interaction;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n var now = autoScroll.now(); // change in time in seconds\n\n var dt = (now - autoScroll.prevTime) / 1000; // displacement\n\n var s = options.speed * dt;\n\n if (s >= 1) {\n var scrollBy = {\n x: autoScroll.x * s,\n y: autoScroll.y * s\n };\n\n if (scrollBy.x || scrollBy.y) {\n var prevScroll = getScroll(container);\n\n if (__is_7.window(container)) {\n container.scrollBy(scrollBy.x, scrollBy.y);\n } else if (container) {\n container.scrollLeft += scrollBy.x;\n container.scrollTop += scrollBy.y;\n }\n\n var curScroll = getScroll(container);\n var delta = {\n x: curScroll.x - prevScroll.x,\n y: curScroll.y - prevScroll.y\n };\n\n if (delta.x || delta.y) {\n interactable.fire({\n type: 'autoscroll',\n target: element,\n interactable: interactable,\n delta: delta,\n interaction: interaction,\n container: container\n });\n }\n }\n\n autoScroll.prevTime = now;\n }\n\n if (autoScroll.isScrolling) {\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n }\n },\n check: function check(interactable, actionName) {\n var options = interactable.options;\n return options[actionName].autoScroll && options[actionName].autoScroll.enabled;\n },\n onInteractionMove: function onInteractionMove(_ref3) {\n var interaction = _ref3.interaction,\n pointer = _ref3.pointer;\n\n if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) {\n return;\n }\n\n if (interaction.simulation) {\n autoScroll.x = autoScroll.y = 0;\n return;\n }\n\n var top;\n var right;\n var bottom;\n var left;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n\n if (__is_7.window(container)) {\n left = pointer.clientX < autoScroll.margin;\n top = pointer.clientY < autoScroll.margin;\n right = pointer.clientX > container.innerWidth - autoScroll.margin;\n bottom = pointer.clientY > container.innerHeight - autoScroll.margin;\n } else {\n var rect = __domUtils_7.getElementClientRect(container);\n left = pointer.clientX < rect.left + autoScroll.margin;\n top = pointer.clientY < rect.top + autoScroll.margin;\n right = pointer.clientX > rect.right - autoScroll.margin;\n bottom = pointer.clientY > rect.bottom - autoScroll.margin;\n }\n\n autoScroll.x = right ? 1 : left ? -1 : 0;\n autoScroll.y = bottom ? 1 : top ? -1 : 0;\n\n if (!autoScroll.isScrolling) {\n // set the autoScroll properties to those of the target\n autoScroll.margin = options.margin;\n autoScroll.speed = options.speed;\n autoScroll.start(interaction);\n }\n }\n};\n\nfunction getContainer(value, interactable, element) {\n return (__is_7.string(value) ? (0, _$rect_63.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_66.getWindow)(element);\n}\n\nfunction getScroll(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollLeft,\n y: container.scrollTop\n };\n}\n\nfunction getScrollSize(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollWidth,\n y: container.scrollHeight\n };\n}\n\nfunction getScrollSizeDelta(_ref4, func) {\n var interaction = _ref4.interaction,\n element = _ref4.element;\n var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll;\n\n if (!scrollOptions || !scrollOptions.enabled) {\n func();\n return {\n x: 0,\n y: 0\n };\n }\n\n var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element);\n var prevSize = getScroll(scrollContainer);\n func();\n var curSize = getScroll(scrollContainer);\n return {\n x: curSize.x - prevSize.x,\n y: curSize.y - prevSize.y\n };\n}\n\nvar ___default_7 = {\n id: 'auto-scroll',\n install: __install_7\n};\n_$autoScroll_7[\"default\"] = ___default_7;\n\nvar _$InteractableMethods_8 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableMethods_8, \"__esModule\", {\n value: true\n});\n_$InteractableMethods_8[\"default\"] = void 0;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\nvar __is_8 = ___interopRequireWildcard_8(_$is_57);\n\nfunction ___getRequireWildcardCache_8() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_8(scope) {\n var Interactable = scope.Interactable,\n actions = scope.actions;\n Interactable.prototype.getAction = getAction;\n /**\n * ```js\n * interact(element, { ignoreFrom: document.getElementById('no-action') })\n * // or\n * interact(element).ignoreFrom('input, textarea, a')\n * ```\n * @deprecated\n * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any\n * of it's parents match the given CSS selector or Element, no\n * drag/resize/gesture is started.\n *\n * Don't use this method. Instead set the `ignoreFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .draggable({\n * ignoreFrom: 'input, textarea, a[href]'',\n * })\n * .pointerEvents({\n * ignoreFrom: '[no-pointer]',\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to not ignore any elements\n * @return {string | Element | object} The current ignoreFrom value or this\n * Interactable\n */\n\n Interactable.prototype.ignoreFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('ignoreFrom', newValue);\n }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).');\n /**\n * @deprecated\n *\n * A drag/resize/gesture is started only If the target of the `mousedown`,\n * `pointerdown` or `touchstart` event or any of it's parents match the given\n * CSS selector or Element.\n *\n * Don't use this method. Instead set the `allowFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .resizable({\n * allowFrom: '.resize-handle',\n * .pointerEvents({\n * allowFrom: '.handle',,\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to allow from any element\n * @return {string | Element | object} The current allowFrom value or this\n * Interactable\n */\n\n Interactable.prototype.allowFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('allowFrom', newValue);\n }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).');\n /**\n * ```js\n * interact('.resize-drag')\n * .resizable(true)\n * .draggable(true)\n * .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n *\n * if (interact.matchesSelector(event.target, '.drag-handle')) {\n * // force drag with handle target\n * action.name = drag\n * }\n * else {\n * // resize from the top and right edges\n * action.name = 'resize'\n * action.edges = { top: true, right: true }\n * }\n *\n * return action\n * })\n * ```\n *\n * Returns or sets the function used to check action to be performed on\n * pointerDown\n *\n * @param {function | null} [checker] A function which takes a pointer event,\n * defaultAction string, interactable, element and interaction as parameters\n * and returns an object with name property 'drag' 'resize' or 'gesture' and\n * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right\n * props.\n * @return {Function | Interactable} The checker function or this Interactable\n */\n\n Interactable.prototype.actionChecker = actionChecker;\n /**\n * Returns or sets whether the the cursor should be changed depending on the\n * action that would be performed if the mouse were pressed and dragged.\n *\n * @param {boolean} [newValue]\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.styleCursor = styleCursor;\n\n Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) {\n return defaultActionChecker(this, pointer, event, interaction, element, actions);\n };\n}\n\nfunction getAction(pointer, event, interaction, element) {\n var action = this.defaultActionChecker(pointer, event, interaction, element);\n\n if (this.options.actionChecker) {\n return this.options.actionChecker(pointer, event, action, this, element, interaction);\n }\n\n return action;\n}\n\nfunction defaultActionChecker(interactable, pointer, event, interaction, element, actions) {\n var rect = interactable.getRect(element);\n var buttons = event.buttons || {\n 0: 1,\n 1: 4,\n 3: 8,\n 4: 16\n }[event.button];\n var action = null;\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n\n // check mouseButton setting if the pointer is down\n if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) {\n continue;\n }\n\n action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect);\n\n if (action) {\n return action;\n }\n }\n}\n\nfunction styleCursor(newValue) {\n if (__is_8.bool(newValue)) {\n this.options.styleCursor = newValue;\n return this;\n }\n\n if (newValue === null) {\n delete this.options.styleCursor;\n return this;\n }\n\n return this.options.styleCursor;\n}\n\nfunction actionChecker(checker) {\n if (__is_8.func(checker)) {\n this.options.actionChecker = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.options.actionChecker;\n return this;\n }\n\n return this.options.actionChecker;\n}\n\nvar ___default_8 = {\n id: 'auto-start/interactableMethods',\n install: __install_8\n};\n_$InteractableMethods_8[\"default\"] = ___default_8;\n\nvar _$base_9 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_9, \"__esModule\", {\n value: true\n});\n_$base_9[\"default\"] = void 0;\n\nvar __utils_9 = ___interopRequireWildcard_9(_$utils_56);\n\nvar _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8);\n\nfunction ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_9() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_9(scope) {\n var interact = scope.interact,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_InteractableMethods[\"default\"]); // set cursor style on mousedown\n\n interactions.signals.on('down', function (_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget;\n\n if (interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n }); // set cursor style on mousemove\n\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n pointer = _ref2.pointer,\n event = _ref2.event,\n eventTarget = _ref2.eventTarget;\n\n if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n });\n interactions.signals.on('move', function (arg) {\n var interaction = arg.interaction;\n\n if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) {\n return;\n }\n\n scope.autoStart.signals.fire('before-start', arg);\n var interactable = interaction.interactable;\n\n if (interaction.prepared.name && interactable) {\n // check manualStart and interaction limit\n if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) {\n interaction.stop();\n } else {\n interaction.start(interaction.prepared, interactable, interaction.element);\n setInteractionCursor(interaction, scope);\n }\n }\n });\n interactions.signals.on('stop', function (_ref3) {\n var interaction = _ref3.interaction;\n var interactable = interaction.interactable;\n\n if (interactable && interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n });\n defaults.base.actionChecker = null;\n defaults.base.styleCursor = true;\n __utils_9.extend(defaults.perAction, {\n manualStart: false,\n max: Infinity,\n maxPerElement: 1,\n allowFrom: null,\n ignoreFrom: null,\n // only allow left button by default\n // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value\n mouseButtons: 1\n });\n /**\n * Returns or sets the maximum number of concurrent interactions allowed. By\n * default only 1 interaction is allowed at a time (for backwards\n * compatibility). To allow multiple interactions on the same Interactables and\n * elements, you need to enable it in the draggable, resizable and gesturable\n * `'max'` and `'maxPerElement'` options.\n *\n * @alias module:interact.maxInteractions\n *\n * @param {number} [newValue] Any number. newValue <= 0 means no interactions.\n */\n\n interact.maxInteractions = function (newValue) {\n return maxInteractions(newValue, scope);\n };\n\n scope.autoStart = {\n // Allow this many interactions to happen simultaneously\n maxInteractions: Infinity,\n withinInteractionLimit: withinInteractionLimit,\n cursorElement: null,\n signals: new __utils_9.Signals()\n };\n} // Check if the current interactable supports the action.\n// If so, return the validated action. Otherwise, return null\n\n\nfunction validateAction(action, interactable, element, eventTarget, scope) {\n if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) {\n return action;\n }\n\n return null;\n}\n\nfunction validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) {\n for (var i = 0, len = matches.length; i < len; i++) {\n var match = matches[i];\n var matchElement = matchElements[i];\n var matchAction = match.getAction(pointer, event, interaction, matchElement);\n\n if (!matchAction) {\n continue;\n }\n\n var action = validateAction(matchAction, match, matchElement, eventTarget, scope);\n\n if (action) {\n return {\n action: action,\n interactable: match,\n element: matchElement\n };\n }\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction getActionInfo(interaction, pointer, event, eventTarget, scope) {\n var matches = [];\n var matchElements = [];\n var element = eventTarget;\n\n function pushMatches(interactable) {\n matches.push(interactable);\n matchElements.push(element);\n }\n\n while (__utils_9.is.element(element)) {\n matches = [];\n matchElements = [];\n scope.interactables.forEachMatch(element, pushMatches);\n var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope);\n\n if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) {\n return actionInfo;\n }\n\n element = __utils_9.dom.parentNode(element);\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction prepare(interaction, _ref4, scope) {\n var action = _ref4.action,\n interactable = _ref4.interactable,\n element = _ref4.element;\n action = action || {\n name: null\n }; // clear previous target element cursor\n\n if (interaction.interactable && interaction.interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n\n interaction.interactable = interactable;\n interaction.element = element;\n __utils_9.copyAction(interaction.prepared, action);\n interaction.rect = interactable && action.name ? interactable.getRect(element) : null;\n setInteractionCursor(interaction, scope);\n scope.autoStart.signals.fire('prepared', {\n interaction: interaction\n });\n}\n\nfunction withinInteractionLimit(interactable, element, action, scope) {\n var options = interactable.options;\n var maxActions = options[action.name].max;\n var maxPerElement = options[action.name].maxPerElement;\n var autoStartMax = scope.autoStart.maxInteractions;\n var activeInteractions = 0;\n var interactableCount = 0;\n var elementCount = 0; // no actions if any of these values == 0\n\n if (!(maxActions && maxPerElement && autoStartMax)) {\n return false;\n }\n\n for (var _i = 0; _i < scope.interactions.list.length; _i++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i];\n var interaction = _ref5;\n var otherAction = interaction.prepared.name;\n\n if (!interaction.interacting()) {\n continue;\n }\n\n activeInteractions++;\n\n if (activeInteractions >= autoStartMax) {\n return false;\n }\n\n if (interaction.interactable !== interactable) {\n continue;\n }\n\n interactableCount += otherAction === action.name ? 1 : 0;\n\n if (interactableCount >= maxActions) {\n return false;\n }\n\n if (interaction.element === element) {\n elementCount++;\n\n if (otherAction === action.name && elementCount >= maxPerElement) {\n return false;\n }\n }\n }\n\n return autoStartMax > 0;\n}\n\nfunction maxInteractions(newValue, scope) {\n if (__utils_9.is.number(newValue)) {\n scope.autoStart.maxInteractions = newValue;\n return this;\n }\n\n return scope.autoStart.maxInteractions;\n}\n\nfunction setCursor(element, cursor, scope) {\n if (scope.autoStart.cursorElement) {\n scope.autoStart.cursorElement.style.cursor = '';\n }\n\n element.ownerDocument.documentElement.style.cursor = cursor;\n element.style.cursor = cursor;\n scope.autoStart.cursorElement = cursor ? element : null;\n}\n\nfunction setInteractionCursor(interaction, scope) {\n var interactable = interaction.interactable,\n element = interaction.element,\n prepared = interaction.prepared;\n\n if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) {\n return;\n }\n\n var cursor = '';\n\n if (prepared.name) {\n var cursorChecker = interactable.options[prepared.name].cursorChecker;\n\n if (__utils_9.is.func(cursorChecker)) {\n cursor = cursorChecker(prepared, interactable, element, interaction._interacting);\n } else {\n cursor = scope.actions[prepared.name].getCursor(prepared);\n }\n }\n\n setCursor(interaction.element, cursor || '', scope);\n}\n\nvar ___default_9 = {\n id: 'auto-start/base',\n install: __install_9,\n maxInteractions: maxInteractions,\n withinInteractionLimit: withinInteractionLimit,\n validateAction: validateAction\n};\n_$base_9[\"default\"] = ___default_9;\n\nvar _$dragAxis_10 = {};\n\"use strict\";\n\nObject.defineProperty(_$dragAxis_10, \"__esModule\", {\n value: true\n});\n_$dragAxis_10[\"default\"] = void 0;\n\nvar ___scope_10 = _$scope_24({});\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar __is_10 = ___interopRequireWildcard_10(_$is_57);\n\nvar _base = ___interopRequireDefault_10(_$base_9);\n\nfunction ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_10() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_10(scope) {\n scope.autoStart.signals.on('before-start', function (_ref) {\n var interaction = _ref.interaction,\n eventTarget = _ref.eventTarget,\n dx = _ref.dx,\n dy = _ref.dy;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n } // check if a drag is in the correct axis\n\n\n var absX = Math.abs(dx);\n var absY = Math.abs(dy);\n var targetOptions = interaction.interactable.options.drag;\n var startAxis = targetOptions.startAxis;\n var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy';\n interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy'\n : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable\n\n if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) {\n // cancel the prepared action\n interaction.prepared.name = null; // then try to get a drag from another ineractable\n\n var element = eventTarget;\n\n var getDraggable = function getDraggable(interactable) {\n if (interactable === interaction.interactable) {\n return;\n }\n\n var options = interaction.interactable.options.drag;\n\n if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) {\n var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element);\n\n if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base[\"default\"].validateAction(action, interactable, element, eventTarget, scope)) {\n return interactable;\n }\n }\n }; // check all interactables\n\n\n while (__is_10.element(element)) {\n var interactable = scope.interactables.forEachMatch(element, getDraggable);\n\n if (interactable) {\n interaction.prepared.name = ___scope_10.ActionName.Drag;\n interaction.interactable = interactable;\n interaction.element = element;\n break;\n }\n\n element = (0, _$domUtils_51.parentNode)(element);\n }\n }\n });\n\n function checkStartAxis(startAxis, interactable) {\n if (!interactable) {\n return false;\n }\n\n var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis;\n return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis;\n }\n}\n\nvar ___default_10 = {\n id: 'auto-start/dragAxis',\n install: __install_10\n};\n_$dragAxis_10[\"default\"] = ___default_10;\n\nvar _$hold_11 = {};\n\"use strict\";\n\nObject.defineProperty(_$hold_11, \"__esModule\", {\n value: true\n});\n_$hold_11[\"default\"] = void 0;\n\nvar ___base_11 = ___interopRequireDefault_11(_$base_9);\n\nfunction ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_11(scope) {\n var autoStart = scope.autoStart,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(___base_11[\"default\"]);\n defaults.perAction.hold = 0;\n defaults.perAction.delay = 0;\n interactions.signals.on('new', function (interaction) {\n interaction.autoStartHoldTimer = null;\n });\n autoStart.signals.on('prepared', function (_ref) {\n var interaction = _ref.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.autoStartHoldTimer = setTimeout(function () {\n interaction.start(interaction.prepared, interaction.interactable, interaction.element);\n }, hold);\n }\n });\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n duplicate = _ref2.duplicate;\n\n if (interaction.pointerWasMoved && !duplicate) {\n clearTimeout(interaction.autoStartHoldTimer);\n }\n }); // prevent regular down->move autoStart\n\n autoStart.signals.on('before-start', function (_ref3) {\n var interaction = _ref3.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.prepared.name = null;\n }\n });\n}\n\nfunction getHoldDuration(interaction) {\n var actionName = interaction.prepared && interaction.prepared.name;\n\n if (!actionName) {\n return null;\n }\n\n var options = interaction.interactable.options;\n return options[actionName].hold || options[actionName].delay;\n}\n\nvar ___default_11 = {\n id: 'auto-start/hold',\n install: __install_11,\n getHoldDuration: getHoldDuration\n};\n_$hold_11[\"default\"] = ___default_11;\n\nvar _$autoStart_12 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoStart_12, \"__esModule\", {\n value: true\n});\n_$autoStart_12.install = __install_12;\nObject.defineProperty(_$autoStart_12, \"autoStart\", {\n enumerable: true,\n get: function get() {\n return ___base_12[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"dragAxis\", {\n enumerable: true,\n get: function get() {\n return _dragAxis[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"hold\", {\n enumerable: true,\n get: function get() {\n return _hold[\"default\"];\n }\n});\n_$autoStart_12.id = void 0;\n\nvar ___base_12 = ___interopRequireDefault_12(_$base_9);\n\nvar _dragAxis = ___interopRequireDefault_12(_$dragAxis_10);\n\nvar _hold = ___interopRequireDefault_12(_$hold_11);\n\nfunction ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_12(scope) {\n scope.usePlugin(___base_12[\"default\"]);\n scope.usePlugin(_hold[\"default\"]);\n scope.usePlugin(_dragAxis[\"default\"]);\n}\n\nvar __id_12 = 'auto-start';\n_$autoStart_12.id = __id_12;\n\nvar _$interactablePreventDefault_21 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactablePreventDefault_21, \"__esModule\", {\n value: true\n});\n_$interactablePreventDefault_21.install = __install_21;\n_$interactablePreventDefault_21[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_21 = ___interopRequireDefault_21(_$events_52);\n\nvar __is_21 = ___interopRequireWildcard_21(_$is_57);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___getRequireWildcardCache_21() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction preventDefault(newValue) {\n if (/^(always|never|auto)$/.test(newValue)) {\n this.options.preventDefault = newValue;\n return this;\n }\n\n if (__is_21.bool(newValue)) {\n this.options.preventDefault = newValue ? 'always' : 'never';\n return this;\n }\n\n return this.options.preventDefault;\n}\n\nfunction checkAndPreventDefault(interactable, scope, event) {\n var setting = interactable.options.preventDefault;\n\n if (setting === 'never') {\n return;\n }\n\n if (setting === 'always') {\n event.preventDefault();\n return;\n } // setting === 'auto'\n // if the browser supports passive event listeners and isn't running on iOS,\n // don't preventDefault of touch{start,move} events. CSS touch-action and\n // user-select should be used instead of calling event.preventDefault().\n\n\n if (___events_21[\"default\"].supportsPassive && /^touch(start|move)$/.test(event.type)) {\n var doc = (0, _$window_66.getWindow)(event.target).document;\n var docOptions = scope.getDocOptions(doc);\n\n if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) {\n return;\n }\n } // don't preventDefault of pointerdown events\n\n\n if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) {\n return;\n } // don't preventDefault on editable elements\n\n\n if (__is_21.element(event.target) && (0, _$domUtils_51.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) {\n return;\n }\n\n event.preventDefault();\n}\n\nfunction onInteractionEvent(_ref) {\n var interaction = _ref.interaction,\n event = _ref.event;\n\n if (interaction.interactable) {\n interaction.interactable.checkAndPreventDefault(event);\n }\n}\n\nfunction __install_21(scope) {\n /** @lends Interactable */\n var Interactable = scope.Interactable;\n /**\n * Returns or sets whether to prevent the browser's default behaviour in\n * response to pointer events. Can be set to:\n * - `'always'` to always prevent\n * - `'never'` to never prevent\n * - `'auto'` to let interact.js try to determine what would be best\n *\n * @param {string} [newValue] `'always'`, `'never'` or `'auto'`\n * @return {string | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.preventDefault = preventDefault;\n\n Interactable.prototype.checkAndPreventDefault = function (event) {\n return checkAndPreventDefault(this, scope, event);\n };\n\n var _arr = ['down', 'move', 'up', 'cancel'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var eventSignal = _arr[_i];\n scope.interactions.signals.on(eventSignal, onInteractionEvent);\n } // prevent native HTML5 drag on interact.js target elements\n\n\n scope.interactions.docEvents.push({\n type: 'dragstart',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n\n if (interaction.element && (interaction.element === event.target || (0, _$domUtils_51.nodeContains)(interaction.element, event.target))) {\n interaction.interactable.checkAndPreventDefault(event);\n return;\n }\n }\n }\n });\n}\n\nvar ___default_21 = {\n id: 'core/interactablePreventDefault',\n install: __install_21\n};\n_$interactablePreventDefault_21[\"default\"] = ___default_21;\n\nvar _$devTools_25 = {};\n\"use strict\";\n\nObject.defineProperty(_$devTools_25, \"__esModule\", {\n value: true\n});\n_$devTools_25[\"default\"] = void 0;\n\nvar ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___extend_25 = ___interopRequireDefault_25(_$extend_53);\n\nvar __is_25 = ___interopRequireWildcard_25(_$is_57);\n\nvar ___window_25 = ___interopRequireDefault_25(_$window_66);\n\nfunction ___getRequireWildcardCache_25() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); }\n\nfunction ___nonIterableSpread_25() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nvar CheckName;\n\n(function (CheckName) {\n CheckName[\"touchAction\"] = \"\";\n CheckName[\"boxSizing\"] = \"\";\n CheckName[\"noListeners\"] = \"\";\n})(CheckName || (CheckName = {}));\n\nvar prefix = '[interact.js] ';\nvar links = {\n touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action',\n boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing'\n};\nvar isProduction = \"production\" === 'production'; // eslint-disable-next-line no-restricted-syntax\n\nfunction __install_25(scope) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n logger = _ref.logger;\n\n var interactions = scope.interactions,\n Interactable = scope.Interactable,\n defaults = scope.defaults;\n logger = logger || console;\n interactions.signals.on('action-start', function (_ref2) {\n var interaction = _ref2.interaction;\n\n for (var _i = 0; _i < checks.length; _i++) {\n var _ref3;\n\n _ref3 = checks[_i];\n var check = _ref3;\n var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name];\n\n if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) {\n var _logger;\n\n (_logger = logger).warn.apply(_logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction))));\n }\n }\n });\n defaults.base.devTools = {\n ignore: {}\n };\n\n Interactable.prototype.devTools = function (options) {\n if (options) {\n (0, ___extend_25[\"default\"])(this.options.devTools, options);\n return this;\n }\n\n return this.options.devTools;\n };\n}\n\nvar checks = [{\n name: 'touchAction',\n perform: function perform(_ref4) {\n var element = _ref4.element;\n return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/);\n },\n getInfo: function getInfo(_ref5) {\n var element = _ref5.element;\n return [element, links.touchAction];\n },\n text: 'Consider adding CSS \"touch-action: none\" to this element\\n'\n}, {\n name: 'boxSizing',\n perform: function perform(interaction) {\n var element = interaction.element;\n return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25[\"default\"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/);\n },\n text: 'Consider adding CSS \"box-sizing: border-box\" to this resizable element',\n getInfo: function getInfo(_ref6) {\n var element = _ref6.element;\n return [element, links.boxSizing];\n }\n}, {\n name: 'noListeners',\n perform: function perform(interaction) {\n var actionName = interaction.prepared.name;\n var moveListeners = interaction.interactable.events.types[\"\".concat(actionName, \"move\")] || [];\n return !moveListeners.length;\n },\n getInfo: function getInfo(interaction) {\n return [interaction.prepared.name, interaction.interactable];\n },\n text: 'There are no listeners set for this action'\n}];\n\nfunction hasStyle(element, prop, styleRe) {\n return styleRe.test(element.style[prop] || ___window_25[\"default\"].window.getComputedStyle(element)[prop]);\n}\n\nfunction parentHasStyle(element, prop, styleRe) {\n var parent = element;\n\n while (__is_25.element(parent)) {\n if (hasStyle(parent, prop, styleRe)) {\n return true;\n }\n\n parent = (0, _$domUtils_51.parentNode)(parent);\n }\n\n return false;\n}\n\nvar __id_25 = 'dev-tools';\nvar defaultExport = isProduction ? {\n id: __id_25,\n install: function install() {}\n} : {\n id: __id_25,\n install: __install_25,\n checks: checks,\n CheckName: CheckName,\n links: links,\n prefix: prefix\n};\nvar ___default_25 = defaultExport;\n_$devTools_25[\"default\"] = ___default_25;\n\nvar _$base_30 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_30, \"__esModule\", {\n value: true\n});\n_$base_30.startAll = startAll;\n_$base_30.setAll = setAll;\n_$base_30.prepareStates = prepareStates;\n_$base_30.setCoords = setCoords;\n_$base_30.restoreCoords = restoreCoords;\n_$base_30.makeModifier = makeModifier;\n_$base_30[\"default\"] = void 0;\n\nvar ___extend_30 = ___interopRequireDefault_30(_$extend_53);\n\nfunction ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); }\n\nfunction ___nonIterableRest_30() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __install_30(scope) {\n var interactions = scope.interactions;\n scope.defaults.perAction.modifiers = [];\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.modifiers = {\n startOffset: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n offsets: {},\n states: null,\n result: null,\n endPrevented: false,\n startDelta: null\n };\n });\n interactions.signals.on('before-action-start', function (arg) {\n __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page);\n });\n interactions.signals.on('action-resume', function (arg) {\n stop(arg);\n __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords);\n __beforeMove_30(arg);\n });\n interactions.signals.on('after-action-move', restoreCoords);\n interactions.signals.on('before-action-move', __beforeMove_30);\n interactions.signals.on('before-action-start', setCoords);\n interactions.signals.on('after-action-start', restoreCoords);\n interactions.signals.on('before-action-end', beforeEnd);\n interactions.signals.on('stop', stop);\n}\n\nfunction __start_30(_ref2, pageCoords, prevCoords) {\n var interaction = _ref2.interaction,\n phase = _ref2.phase;\n var interactable = interaction.interactable,\n element = interaction.element;\n var modifierList = getModifierList(interaction);\n var states = prepareStates(modifierList);\n var rect = (0, ___extend_30[\"default\"])({}, interaction.rect);\n\n if (!('width' in rect)) {\n rect.width = rect.right - rect.left;\n }\n\n if (!('height' in rect)) {\n rect.height = rect.bottom - rect.top;\n }\n\n var startOffset = getRectOffset(rect, pageCoords);\n interaction.modifiers.startOffset = startOffset;\n interaction.modifiers.startDelta = {\n x: 0,\n y: 0\n };\n var arg = {\n interaction: interaction,\n interactable: interactable,\n element: element,\n pageCoords: pageCoords,\n phase: phase,\n rect: rect,\n startOffset: startOffset,\n states: states,\n preEnd: false,\n requireEndOnly: false,\n prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page)\n };\n interaction.modifiers.states = states;\n interaction.modifiers.result = null;\n startAll(arg);\n var result = interaction.modifiers.result = setAll(arg);\n return result;\n}\n\nfunction startAll(arg) {\n var states = arg.states;\n\n for (var _i = 0; _i < states.length; _i++) {\n var _ref3;\n\n _ref3 = states[_i];\n var state = _ref3;\n\n if (state.methods.start) {\n arg.state = state;\n state.methods.start(arg);\n }\n }\n}\n\nfunction setAll(arg) {\n var prevCoords = arg.prevCoords,\n phase = arg.phase,\n preEnd = arg.preEnd,\n requireEndOnly = arg.requireEndOnly,\n rect = arg.rect,\n states = arg.states;\n arg.coords = (0, ___extend_30[\"default\"])({}, arg.pageCoords);\n arg.rect = (0, ___extend_30[\"default\"])({}, rect);\n var result = {\n delta: {\n x: 0,\n y: 0\n },\n rectDelta: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n coords: arg.coords,\n changed: true\n };\n\n for (var _i2 = 0; _i2 < states.length; _i2++) {\n var _ref4;\n\n _ref4 = states[_i2];\n var state = _ref4;\n var options = state.options;\n\n if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) {\n continue;\n }\n\n arg.state = state;\n state.methods.set(arg);\n }\n\n result.delta.x = arg.coords.x - arg.pageCoords.x;\n result.delta.y = arg.coords.y - arg.pageCoords.y;\n var rectChanged = false;\n\n if (rect) {\n result.rectDelta.left = arg.rect.left - rect.left;\n result.rectDelta.right = arg.rect.right - rect.right;\n result.rectDelta.top = arg.rect.top - rect.top;\n result.rectDelta.bottom = arg.rect.bottom - rect.bottom;\n rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0;\n }\n\n result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged;\n return result;\n}\n\nfunction __beforeMove_30(arg) {\n var interaction = arg.interaction,\n phase = arg.phase,\n preEnd = arg.preEnd,\n skipModifiers = arg.skipModifiers;\n var interactable = interaction.interactable,\n element = interaction.element;\n var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states;\n var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page);\n var modifierResult = setAll({\n interaction: interaction,\n interactable: interactable,\n element: element,\n preEnd: preEnd,\n phase: phase,\n pageCoords: arg.modifiedCoords || interaction.coords.cur.page,\n prevCoords: prevCoords,\n rect: interaction.rect,\n states: states,\n requireEndOnly: false\n });\n interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same\n // cordinates as before\n\n if (!modifierResult.changed && interaction.interacting()) {\n return false;\n }\n\n if (arg.modifiedCoords) {\n var page = interaction.coords.cur.page;\n var adjustment = {\n x: arg.modifiedCoords.x - page.x,\n y: arg.modifiedCoords.y - page.y\n };\n modifierResult.coords.x += adjustment.x;\n modifierResult.coords.y += adjustment.y;\n modifierResult.delta.x += adjustment.x;\n modifierResult.delta.y += adjustment.y;\n }\n\n setCoords(arg);\n}\n\nfunction beforeEnd(arg) {\n var interaction = arg.interaction,\n event = arg.event,\n noPreEnd = arg.noPreEnd;\n var states = interaction.modifiers.states;\n\n if (noPreEnd || !states || !states.length) {\n return;\n }\n\n var didPreEnd = false;\n\n for (var _i3 = 0; _i3 < states.length; _i3++) {\n var _ref5;\n\n _ref5 = states[_i3];\n var state = _ref5;\n arg.state = state;\n var options = state.options,\n methods = state.methods;\n var endResult = methods.beforeEnd && methods.beforeEnd(arg);\n\n if (endResult === false) {\n interaction.modifiers.endPrevented = true;\n return false;\n } // if the endOnly option is true for any modifier\n\n\n if (!didPreEnd && shouldDo(options, true, true)) {\n // fire a move event at the modified coordinates\n interaction.move({\n event: event,\n preEnd: true\n });\n didPreEnd = true;\n }\n }\n}\n\nfunction stop(arg) {\n var interaction = arg.interaction;\n var states = interaction.modifiers.states;\n\n if (!states || !states.length) {\n return;\n }\n\n var modifierArg = (0, ___extend_30[\"default\"])({\n states: states,\n interactable: interaction.interactable,\n element: interaction.element,\n rect: null\n }, arg);\n\n for (var _i4 = 0; _i4 < states.length; _i4++) {\n var _ref6;\n\n _ref6 = states[_i4];\n var state = _ref6;\n modifierArg.state = state;\n\n if (state.methods.stop) {\n state.methods.stop(modifierArg);\n }\n }\n\n arg.interaction.modifiers.states = null;\n arg.interaction.modifiers.endPrevented = false;\n}\n\nfunction getModifierList(interaction) {\n var actionOptions = interaction.interactable.options[interaction.prepared.name];\n var actionModifiers = actionOptions.modifiers;\n\n if (actionModifiers && actionModifiers.length) {\n return actionModifiers.filter(function (modifier) {\n return !modifier.options || modifier.options.enabled !== false;\n });\n }\n\n return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) {\n var options = actionOptions[type];\n return options && options.enabled && {\n options: options,\n methods: options._methods\n };\n }).filter(function (m) {\n return !!m;\n });\n}\n\nfunction prepareStates(modifierList) {\n var states = [];\n\n for (var index = 0; index < modifierList.length; index++) {\n var _modifierList$index = modifierList[index],\n options = _modifierList$index.options,\n methods = _modifierList$index.methods,\n name = _modifierList$index.name;\n\n if (options && options.enabled === false) {\n continue;\n }\n\n states.push({\n options: options,\n methods: methods,\n index: index,\n name: name\n });\n }\n\n return states;\n}\n\nfunction setCoords(arg) {\n var interaction = arg.interaction,\n phase = arg.phase;\n var curCoords = interaction.coords.cur;\n var startCoords = interaction.coords.start;\n var _interaction$modifier = interaction.modifiers,\n result = _interaction$modifier.result,\n startDelta = _interaction$modifier.startDelta;\n var curDelta = result.delta;\n\n if (phase === 'start') {\n (0, ___extend_30[\"default\"])(interaction.modifiers.startDelta, result.delta);\n }\n\n var _arr = [[startCoords, startDelta], [curCoords, curDelta]];\n\n for (var _i5 = 0; _i5 < _arr.length; _i5++) {\n var _arr$_i = ___slicedToArray_30(_arr[_i5], 2),\n coordsSet = _arr$_i[0],\n delta = _arr$_i[1];\n\n coordsSet.page.x += delta.x;\n coordsSet.page.y += delta.y;\n coordsSet.client.x += delta.x;\n coordsSet.client.y += delta.y;\n }\n\n var rectDelta = interaction.modifiers.result.rectDelta;\n var rect = arg.rect || interaction.rect;\n rect.left += rectDelta.left;\n rect.right += rectDelta.right;\n rect.top += rectDelta.top;\n rect.bottom += rectDelta.bottom;\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n}\n\nfunction restoreCoords(_ref7) {\n var _ref7$interaction = _ref7.interaction,\n coords = _ref7$interaction.coords,\n rect = _ref7$interaction.rect,\n modifiers = _ref7$interaction.modifiers;\n\n if (!modifiers.result) {\n return;\n }\n\n var startDelta = modifiers.startDelta;\n var _modifiers$result = modifiers.result,\n curDelta = _modifiers$result.delta,\n rectDelta = _modifiers$result.rectDelta;\n var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]];\n\n for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) {\n var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2),\n coordsSet = _coordsAndDeltas$_i[0],\n delta = _coordsAndDeltas$_i[1];\n\n coordsSet.page.x -= delta.x;\n coordsSet.page.y -= delta.y;\n coordsSet.client.x -= delta.x;\n coordsSet.client.y -= delta.y;\n }\n\n rect.left -= rectDelta.left;\n rect.right -= rectDelta.right;\n rect.top -= rectDelta.top;\n rect.bottom -= rectDelta.bottom;\n}\n\nfunction shouldDo(options, preEnd, requireEndOnly, phase) {\n return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly;\n}\n\nfunction getRectOffset(rect, coords) {\n return rect ? {\n left: coords.x - rect.left,\n top: coords.y - rect.top,\n right: rect.right - coords.x,\n bottom: rect.bottom - coords.y\n } : {\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n };\n}\n\nfunction makeModifier(module, name) {\n var defaults = module.defaults;\n var methods = {\n start: module.start,\n set: module.set,\n beforeEnd: module.beforeEnd,\n stop: module.stop\n };\n\n var modifier = function modifier(_options) {\n var options = _options || {};\n options.enabled = options.enabled !== false; // add missing defaults to options\n\n for (var prop in defaults) {\n if (!(prop in options)) {\n options[prop] = defaults[prop];\n }\n }\n\n var m = {\n options: options,\n methods: methods,\n name: name\n };\n return m;\n };\n\n if (name && typeof name === 'string') {\n // for backwrads compatibility\n modifier._defaults = defaults;\n modifier._methods = methods;\n }\n\n return modifier;\n}\n\nvar ___default_30 = {\n id: 'modifiers/base',\n install: __install_30,\n startAll: startAll,\n setAll: setAll,\n prepareStates: prepareStates,\n start: __start_30,\n beforeMove: __beforeMove_30,\n beforeEnd: beforeEnd,\n stop: stop,\n shouldDo: shouldDo,\n getModifierList: getModifierList,\n getRectOffset: getRectOffset,\n makeModifier: makeModifier\n};\n_$base_30[\"default\"] = ___default_30;\n\nvar _$inertia_26 = {};\n\"use strict\";\n\nObject.defineProperty(_$inertia_26, \"__esModule\", {\n value: true\n});\n_$inertia_26[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\nvar ___base_26 = ___interopRequireWildcard_26(_$base_30);\n\nvar __utils_26 = ___interopRequireWildcard_26(_$utils_56);\n\nvar ___raf_26 = ___interopRequireDefault_26(_$raf_62);\n\nfunction ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_26() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n_$InteractEvent_15.EventPhase.Resume = 'resume';\n_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart';\n\nfunction __install_26(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.inertia = {\n active: false,\n smoothEnd: false,\n allowResume: false,\n upCoords: {},\n timeout: null\n };\n });\n interactions.signals.on('before-action-end', function (arg) {\n return release(arg, scope);\n });\n interactions.signals.on('down', function (arg) {\n return resume(arg, scope);\n });\n interactions.signals.on('stop', __stop_26);\n defaults.perAction.inertia = {\n enabled: false,\n resistance: 10,\n minSpeed: 100,\n endSpeed: 10,\n allowResume: true,\n smoothEndDuration: 300\n };\n scope.usePlugin(___base_26[\"default\"]);\n}\n\nfunction resume(_ref2, scope) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n pointer = _ref2.pointer,\n eventTarget = _ref2.eventTarget;\n var state = interaction.inertia; // Check if the down event hits the current inertia target\n\n if (state.active) {\n var element = eventTarget; // climb up the DOM tree from the event target\n\n while (__utils_26.is.element(element)) {\n // if interaction element is the current inertia target element\n if (element === interaction.element) {\n // stop inertia\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null; // update pointers to the down event's coordinates\n\n interaction.updatePointer(pointer, event, eventTarget, true);\n __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) {\n return p.pointer;\n }), interaction._now()); // fire appropriate signals\n\n var signalArg = {\n interaction: interaction,\n phase: _$InteractEvent_15.EventPhase.Resume\n };\n scope.interactions.signals.fire('action-resume', signalArg); // fire a reume event\n\n var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element);\n\n interaction._fireEvent(resumeEvent);\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n break;\n }\n\n element = __utils_26.dom.parentNode(element);\n }\n }\n}\n\nfunction release(_ref3, scope) {\n var interaction = _ref3.interaction,\n event = _ref3.event,\n noPreEnd = _ref3.noPreEnd;\n var state = interaction.inertia;\n\n if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) {\n return null;\n }\n\n var options = __getOptions_26(interaction);\n\n var now = interaction._now();\n\n var velocityClient = interaction.coords.velocity.client;\n var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y);\n var smoothEnd = false;\n var modifierResult; // check if inertia should be started\n\n var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent;\n var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed;\n var modifierArg = {\n interaction: interaction,\n pageCoords: interaction.coords.cur.page,\n states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) {\n return __utils_26.extend({}, modifierStatus);\n }),\n preEnd: true,\n prevCoords: null,\n requireEndOnly: null,\n phase: _$InteractEvent_15.EventPhase.InertiaStart\n }; // smoothEnd\n\n if (inertiaPossible && !inertia) {\n modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page;\n modifierArg.requireEndOnly = false;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n\n if (modifierResult.changed) {\n smoothEnd = true;\n }\n }\n\n if (!(inertia || smoothEnd)) {\n return null;\n }\n\n __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur);\n (0, ___base_26.setCoords)(modifierArg);\n interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name\n interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element);\n (0, ___base_26.restoreCoords)(modifierArg);\n state.t0 = now;\n state.active = true;\n state.allowResume = options.allowResume;\n interaction.simulation = state;\n interaction.interactable.fire(state.startEvent);\n\n if (inertia) {\n state.vx0 = interaction.coords.velocity.client.x;\n state.vy0 = interaction.coords.velocity.client.y;\n state.v0 = pointerSpeed;\n calcInertia(interaction, state);\n __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page);\n modifierArg.pageCoords.x += state.xe;\n modifierArg.pageCoords.y += state.ye;\n modifierArg.prevCoords = null;\n modifierArg.requireEndOnly = true;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n state.modifiedXe += modifierResult.delta.x;\n state.modifiedYe += modifierResult.delta.y;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.smoothEnd = true;\n state.xe = modifierResult.delta.x;\n state.ye = modifierResult.delta.y;\n state.sx = state.sy = 0;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n }\n\n return false;\n}\n\nfunction __stop_26(_ref4) {\n var interaction = _ref4.interaction;\n var state = interaction.inertia;\n\n if (state.active) {\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction calcInertia(interaction, state) {\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda;\n state.x0 = interaction.prevEvent.page.x;\n state.y0 = interaction.prevEvent.page.y;\n state.t0 = state.startEvent.timeStamp / 1000;\n state.sx = state.sy = 0;\n state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda;\n state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda;\n state.te = inertiaDur;\n state.lambda_v0 = lambda / state.v0;\n state.one_ve_v0 = 1 - options.endSpeed / state.v0;\n}\n\nfunction inertiaTick(interaction) {\n updateInertiaCoords(interaction);\n __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur);\n __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta);\n var state = interaction.inertia;\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var t = interaction._now() / 1000 - state.t0;\n\n if (t < state.te) {\n var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0;\n\n if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) {\n state.sx = state.xe * progress;\n state.sy = state.ye * progress;\n } else {\n var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress);\n state.sx = quadPoint.x;\n state.sy = quadPoint.y;\n }\n\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.sx = state.modifiedXe;\n state.sy = state.modifiedYe;\n interaction.move();\n interaction.end(state.startEvent);\n state.active = false;\n interaction.simulation = null;\n }\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n}\n\nfunction smothEndTick(interaction) {\n updateInertiaCoords(interaction);\n var state = interaction.inertia;\n var t = interaction._now() - state.t0;\n\n var _getOptions = __getOptions_26(interaction),\n duration = _getOptions.smoothEndDuration;\n\n if (t < duration) {\n state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration);\n state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration);\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n } else {\n state.sx = state.xe;\n state.sy = state.ye;\n interaction.move();\n interaction.end(state.startEvent);\n state.smoothEnd = state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction updateInertiaCoords(interaction) {\n var state = interaction.inertia; // return if inertia isn't running\n\n if (!state.active) {\n return;\n }\n\n var pageUp = state.upCoords.page;\n var clientUp = state.upCoords.client;\n __utils_26.pointer.setCoords(interaction.coords.cur, [{\n pageX: pageUp.x + state.sx,\n pageY: pageUp.y + state.sy,\n clientX: clientUp.x + state.sx,\n clientY: clientUp.y + state.sy\n }], interaction._now());\n}\n\nfunction __getOptions_26(_ref5) {\n var interactable = _ref5.interactable,\n prepared = _ref5.prepared;\n return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia;\n}\n\nvar ___default_26 = {\n id: 'inertia',\n install: __install_26,\n calcInertia: calcInertia,\n inertiaTick: inertiaTick,\n smothEndTick: smothEndTick,\n updateInertiaCoords: updateInertiaCoords\n};\n_$inertia_26[\"default\"] = ___default_26;\n\nvar _$pointer_33 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_33, \"__esModule\", {\n value: true\n});\n_$pointer_33[\"default\"] = void 0;\n\nvar ___extend_33 = ___interopRequireDefault_33(_$extend_53);\n\nvar __is_33 = ___interopRequireWildcard_33(_$is_57);\n\nvar ___rect_33 = ___interopRequireDefault_33(_$rect_63);\n\nfunction ___getRequireWildcardCache_33() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __start_33(_ref) {\n var rect = _ref.rect,\n startOffset = _ref.startOffset,\n state = _ref.state,\n interaction = _ref.interaction,\n pageCoords = _ref.pageCoords;\n var options = state.options;\n var elementRect = options.elementRect;\n var offset = (0, ___extend_33[\"default\"])({\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n }, options.offset || {});\n\n if (rect && elementRect) {\n var restriction = getRestrictionRect(options.restriction, interaction, pageCoords);\n\n if (restriction) {\n var widthDiff = restriction.right - restriction.left - rect.width;\n var heightDiff = restriction.bottom - restriction.top - rect.height;\n\n if (widthDiff < 0) {\n offset.left += widthDiff;\n offset.right += widthDiff;\n }\n\n if (heightDiff < 0) {\n offset.top += heightDiff;\n offset.bottom += heightDiff;\n }\n }\n\n offset.left += startOffset.left - rect.width * elementRect.left;\n offset.top += startOffset.top - rect.height * elementRect.top;\n offset.right += startOffset.right - rect.width * (1 - elementRect.right);\n offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom);\n }\n\n state.offset = offset;\n}\n\nfunction set(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var options = state.options,\n offset = state.offset;\n var restriction = getRestrictionRect(options.restriction, interaction, coords);\n\n if (!restriction) {\n return;\n }\n\n var rect = ___rect_33[\"default\"].xywhToTlbr(restriction);\n\n coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left);\n coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top);\n}\n\nfunction getRestrictionRect(value, interaction, coords) {\n if (__is_33.func(value)) {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]);\n } else {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element);\n }\n}\n\nvar __defaults_33 = {\n restriction: null,\n elementRect: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrict = {\n start: __start_33,\n set: set,\n getRestrictionRect: getRestrictionRect,\n defaults: __defaults_33\n};\nvar ___default_33 = restrict;\n_$pointer_33[\"default\"] = ___default_33;\n\nvar _$edges_32 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_32, \"__esModule\", {\n value: true\n});\n_$edges_32[\"default\"] = void 0;\n\nvar ___extend_32 = ___interopRequireDefault_32(_$extend_53);\n\nvar ___rect_32 = ___interopRequireDefault_32(_$rect_63);\n\nvar _pointer = ___interopRequireDefault_32(_$pointer_33);\n\nfunction ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n// This module adds the options.resize.restrictEdges setting which sets min and\n// max for the top, left, bottom and right edges of the target being resized.\n//\n// interact(target).resize({\n// edges: { top: true, left: true },\n// restrictEdges: {\n// inner: { top: 200, left: 200, right: 400, bottom: 400 },\n// outer: { top: 0, left: 0, right: 600, bottom: 600 },\n// },\n// })\nvar __getRestrictionRect_32 = _pointer[\"default\"].getRestrictionRect;\nvar noInner = {\n top: +Infinity,\n left: +Infinity,\n bottom: -Infinity,\n right: -Infinity\n};\nvar noOuter = {\n top: -Infinity,\n left: -Infinity,\n bottom: +Infinity,\n right: +Infinity\n};\n\nfunction __start_32(_ref) {\n var interaction = _ref.interaction,\n state = _ref.state;\n var options = state.options;\n var startOffset = interaction.modifiers.startOffset;\n var offset;\n\n if (options) {\n var offsetRect = __getRestrictionRect_32(options.offset, interaction, interaction.coords.start.page);\n offset = ___rect_32[\"default\"].rectToXY(offsetRect);\n }\n\n offset = offset || {\n x: 0,\n y: 0\n };\n state.offset = {\n top: offset.y + startOffset.top,\n left: offset.x + startOffset.left,\n bottom: offset.y - startOffset.bottom,\n right: offset.x - startOffset.right\n };\n}\n\nfunction __set_32(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var offset = state.offset,\n options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var page = (0, ___extend_32[\"default\"])({}, coords);\n var inner = __getRestrictionRect_32(options.inner, interaction, page) || {};\n var outer = __getRestrictionRect_32(options.outer, interaction, page) || {};\n fixRect(inner, noInner);\n fixRect(outer, noOuter);\n\n if (edges.top) {\n coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top);\n } else if (edges.bottom) {\n coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom);\n }\n\n if (edges.left) {\n coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left);\n } else if (edges.right) {\n coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right);\n }\n}\n\nfunction fixRect(rect, defaults) {\n var _arr = ['top', 'left', 'bottom', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (!(edge in rect)) {\n rect[edge] = defaults[edge];\n }\n }\n\n return rect;\n}\n\nvar __defaults_32 = {\n inner: null,\n outer: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrictEdges = {\n noInner: noInner,\n noOuter: noOuter,\n getRestrictionRect: __getRestrictionRect_32,\n start: __start_32,\n set: __set_32,\n defaults: __defaults_32\n};\nvar ___default_32 = restrictEdges;\n_$edges_32[\"default\"] = ___default_32;\n\nvar _$rect_34 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_34, \"__esModule\", {\n value: true\n});\n_$rect_34[\"default\"] = void 0;\n\nvar ___extend_34 = ___interopRequireDefault_34(_$extend_53);\n\nvar ___pointer_34 = ___interopRequireDefault_34(_$pointer_33);\n\nfunction ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __defaults_34 = (0, ___extend_34[\"default\"])({\n get elementRect() {\n return {\n top: 0,\n left: 0,\n bottom: 1,\n right: 1\n };\n },\n\n set elementRect(_) {}\n\n}, ___pointer_34[\"default\"].defaults);\nvar restrictRect = {\n start: ___pointer_34[\"default\"].start,\n set: ___pointer_34[\"default\"].set,\n defaults: __defaults_34\n};\nvar ___default_34 = restrictRect;\n_$rect_34[\"default\"] = ___default_34;\n\nvar _$size_35 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_35, \"__esModule\", {\n value: true\n});\n_$size_35[\"default\"] = void 0;\n\nvar ___extend_35 = ___interopRequireDefault_35(_$extend_53);\n\nvar ___rect_35 = ___interopRequireDefault_35(_$rect_63);\n\nvar _edges = ___interopRequireDefault_35(_$edges_32);\n\nfunction ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar noMin = {\n width: -Infinity,\n height: -Infinity\n};\nvar noMax = {\n width: +Infinity,\n height: +Infinity\n};\n\nfunction __start_35(arg) {\n return _edges[\"default\"].start(arg);\n}\n\nfunction __set_35(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var rect = ___rect_35[\"default\"].xywhToTlbr(interaction.resizeRects.inverted);\n\n var minSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.min, interaction, arg.coords)) || noMin;\n var maxSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.max, interaction, arg.coords)) || noMax;\n state.options = {\n endOnly: options.endOnly,\n inner: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noInner),\n outer: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noOuter)\n };\n\n if (edges.top) {\n state.options.inner.top = rect.bottom - minSize.height;\n state.options.outer.top = rect.bottom - maxSize.height;\n } else if (edges.bottom) {\n state.options.inner.bottom = rect.top + minSize.height;\n state.options.outer.bottom = rect.top + maxSize.height;\n }\n\n if (edges.left) {\n state.options.inner.left = rect.right - minSize.width;\n state.options.outer.left = rect.right - maxSize.width;\n } else if (edges.right) {\n state.options.inner.right = rect.left + minSize.width;\n state.options.outer.right = rect.left + maxSize.width;\n }\n\n _edges[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_35 = {\n min: null,\n max: null,\n endOnly: false,\n enabled: false\n};\nvar restrictSize = {\n start: __start_35,\n set: __set_35,\n defaults: __defaults_35\n};\nvar ___default_35 = restrictSize;\n_$size_35[\"default\"] = ___default_35;\n\nvar _$pointer_37 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_37, \"__esModule\", {\n value: true\n});\n_$pointer_37[\"default\"] = void 0;\n\nvar __utils_37 = ___interopRequireWildcard_37(_$utils_56);\n\nfunction ___getRequireWildcardCache_37() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __start_37(arg) {\n var interaction = arg.interaction,\n interactable = arg.interactable,\n element = arg.element,\n rect = arg.rect,\n state = arg.state,\n startOffset = arg.startOffset;\n var options = state.options;\n var offsets = [];\n var origin = options.offsetWithOrigin ? getOrigin(arg) : {\n x: 0,\n y: 0\n };\n var snapOffset;\n\n if (options.offset === 'startCoords') {\n snapOffset = {\n x: interaction.coords.start.page.x,\n y: interaction.coords.start.page.y\n };\n } else {\n var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]);\n snapOffset = __utils_37.rect.rectToXY(offsetRect) || {\n x: 0,\n y: 0\n };\n snapOffset.x += origin.x;\n snapOffset.y += origin.y;\n }\n\n var relativePoints = options.relativePoints || [];\n\n if (rect && options.relativePoints && options.relativePoints.length) {\n for (var index = 0; index < relativePoints.length; index++) {\n var relativePoint = relativePoints[index];\n offsets.push({\n index: index,\n relativePoint: relativePoint,\n x: startOffset.left - rect.width * relativePoint.x + snapOffset.x,\n y: startOffset.top - rect.height * relativePoint.y + snapOffset.y\n });\n }\n } else {\n offsets.push(__utils_37.extend({\n index: 0,\n relativePoint: null\n }, snapOffset));\n }\n\n state.offsets = offsets;\n}\n\nfunction __set_37(arg) {\n var interaction = arg.interaction,\n coords = arg.coords,\n state = arg.state;\n var options = state.options,\n offsets = state.offsets;\n var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name);\n var page = __utils_37.extend({}, coords);\n var targets = [];\n var target;\n\n if (!options.offsetWithOrigin) {\n page.x -= origin.x;\n page.y -= origin.y;\n }\n\n state.realX = page.x;\n state.realY = page.y;\n\n for (var _i = 0; _i < offsets.length; _i++) {\n var _ref;\n\n _ref = offsets[_i];\n var offset = _ref;\n var relativeX = page.x - offset.x;\n var relativeY = page.y - offset.y;\n\n for (var index = 0, _len = options.targets.length; index < _len; index++) {\n var snapTarget = options.targets[index];\n\n if (__utils_37.is.func(snapTarget)) {\n target = snapTarget(relativeX, relativeY, interaction, offset, index);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n targets.push({\n x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x,\n y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y,\n range: __utils_37.is.number(target.range) ? target.range : options.range\n });\n }\n }\n\n var closest = {\n target: null,\n inRange: false,\n distance: 0,\n range: 0,\n dx: 0,\n dy: 0\n };\n\n for (var i = 0, len = targets.length; i < len; i++) {\n target = targets[i];\n var range = target.range;\n var dx = target.x - page.x;\n var dy = target.y - page.y;\n var distance = __utils_37.hypot(dx, dy);\n var inRange = distance <= range; // Infinite targets count as being out of range\n // compared to non infinite ones that are in range\n\n if (range === Infinity && closest.inRange && closest.range !== Infinity) {\n inRange = false;\n }\n\n if (!closest.target || (inRange // is the closest target in range?\n ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target\n ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't\n : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest\n distance < closest.distance : // The other is not in range and the pointer is closer to this target\n !closest.inRange && distance < closest.distance)) {\n closest.target = target;\n closest.distance = distance;\n closest.range = range;\n closest.inRange = inRange;\n closest.dx = dx;\n closest.dy = dy;\n state.range = range;\n }\n }\n\n if (closest.inRange) {\n coords.x = closest.target.x;\n coords.y = closest.target.y;\n }\n\n state.closest = closest;\n}\n\nfunction getOrigin(arg) {\n var element = arg.interaction.element;\n var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element]));\n var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name);\n return origin;\n}\n\nvar __defaults_37 = {\n range: Infinity,\n targets: null,\n offset: null,\n offsetWithOrigin: true,\n origin: null,\n relativePoints: null,\n endOnly: false,\n enabled: false\n};\nvar snap = {\n start: __start_37,\n set: __set_37,\n defaults: __defaults_37\n};\nvar ___default_37 = snap;\n_$pointer_37[\"default\"] = ___default_37;\n\nvar _$size_38 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_38, \"__esModule\", {\n value: true\n});\n_$size_38[\"default\"] = void 0;\n\nvar ___extend_38 = ___interopRequireDefault_38(_$extend_53);\n\nvar __is_38 = ___interopRequireWildcard_38(_$is_57);\n\nvar ___pointer_38 = ___interopRequireDefault_38(_$pointer_37);\n\nfunction ___getRequireWildcardCache_38() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); }\n\nfunction ___nonIterableRest_38() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __start_38(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state = {\n options: {\n targets: null,\n relativePoints: [{\n x: edges.left ? 0 : 1,\n y: edges.top ? 0 : 1\n }],\n offset: options.offset || 'self',\n origin: {\n x: 0,\n y: 0\n },\n range: options.range\n }\n };\n state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']];\n\n ___pointer_38[\"default\"].start(arg);\n\n state.offsets = arg.state.offsets;\n arg.state = state;\n}\n\nfunction __set_38(arg) {\n var interaction = arg.interaction,\n state = arg.state,\n coords = arg.coords;\n var options = state.options,\n offsets = state.offsets;\n var relative = {\n x: coords.x - offsets[0].x,\n y: coords.y - offsets[0].y\n };\n state.options = (0, ___extend_38[\"default\"])({}, options);\n state.options.targets = [];\n\n for (var _i = 0; _i < (options.targets || []).length; _i++) {\n var _ref;\n\n _ref = (options.targets || [])[_i];\n var snapTarget = _ref;\n var target = void 0;\n\n if (__is_38.func(snapTarget)) {\n target = snapTarget(relative.x, relative.y, interaction);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) {\n var _ref2;\n\n _ref2 = state.targetFields[_i2];\n\n var _ref3 = _ref2,\n _ref4 = ___slicedToArray_38(_ref3, 2),\n xField = _ref4[0],\n yField = _ref4[1];\n\n if (xField in target || yField in target) {\n target.x = target[xField];\n target.y = target[yField];\n break;\n }\n }\n\n state.options.targets.push(target);\n }\n\n ___pointer_38[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_38 = {\n range: Infinity,\n targets: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar snapSize = {\n start: __start_38,\n set: __set_38,\n defaults: __defaults_38\n};\nvar ___default_38 = snapSize;\n_$size_38[\"default\"] = ___default_38;\n\nvar _$edges_36 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_36, \"__esModule\", {\n value: true\n});\n_$edges_36[\"default\"] = void 0;\n\nvar ___clone_36 = ___interopRequireDefault_36(_$clone_49);\n\nvar ___extend_36 = ___interopRequireDefault_36(_$extend_53);\n\nvar _size = ___interopRequireDefault_36(_$size_38);\n\nfunction ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @module modifiers/snapEdges\n *\n * @description\n * This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * @example\n * interact(target).resizable({\n * snapEdges: {\n * targets: [interact.snappers.grid({ x: 100, y: 50 })],\n * },\n * })\n *\n * interact(target).resizable({\n * snapEdges: {\n * targets: [\n * interact.snappers.grid({\n * top: 50,\n * left: 50,\n * bottom: 100,\n * right: 100,\n * }),\n * ],\n * },\n * })\n */\nfunction __start_36(arg) {\n var edges = arg.interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']];\n return _size[\"default\"].start(arg);\n}\n\nfunction __set_36(arg) {\n return _size[\"default\"].set(arg);\n}\n\nvar snapEdges = {\n start: __start_36,\n set: __set_36,\n defaults: (0, ___extend_36[\"default\"])((0, ___clone_36[\"default\"])(_size[\"default\"].defaults), {\n offset: {\n x: 0,\n y: 0\n }\n })\n};\nvar ___default_36 = snapEdges;\n_$edges_36[\"default\"] = ___default_36;\n\nvar _$modifiers_31 = {};\n\"use strict\";\n\nObject.defineProperty(_$modifiers_31, \"__esModule\", {\n value: true\n});\n_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0;\n\nvar ___base_31 = ___interopRequireDefault_31(_$base_30);\n\nvar ___edges_31 = ___interopRequireDefault_31(_$edges_32);\n\nvar ___pointer_31 = ___interopRequireDefault_31(_$pointer_33);\n\nvar ___rect_31 = ___interopRequireDefault_31(_$rect_34);\n\nvar ___size_31 = ___interopRequireDefault_31(_$size_35);\n\nvar _edges2 = ___interopRequireDefault_31(_$edges_36);\n\nvar _pointer2 = ___interopRequireDefault_31(_$pointer_37);\n\nvar _size2 = ___interopRequireDefault_31(_$size_38);\n\nfunction ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __makeModifier_31 = ___base_31[\"default\"].makeModifier;\nvar __snap_31 = __makeModifier_31(_pointer2[\"default\"], 'snap');\n_$modifiers_31.snap = __snap_31;\nvar __snapSize_31 = __makeModifier_31(_size2[\"default\"], 'snapSize');\n_$modifiers_31.snapSize = __snapSize_31;\nvar __snapEdges_31 = __makeModifier_31(_edges2[\"default\"], 'snapEdges');\n_$modifiers_31.snapEdges = __snapEdges_31;\nvar __restrict_31 = __makeModifier_31(___pointer_31[\"default\"], 'restrict');\n_$modifiers_31.restrict = __restrict_31;\nvar __restrictRect_31 = __makeModifier_31(___rect_31[\"default\"], 'restrictRect');\n_$modifiers_31.restrictRect = __restrictRect_31;\nvar __restrictEdges_31 = __makeModifier_31(___edges_31[\"default\"], 'restrictEdges');\n_$modifiers_31.restrictEdges = __restrictEdges_31;\nvar __restrictSize_31 = __makeModifier_31(___size_31[\"default\"], 'restrictSize');\n_$modifiers_31.restrictSize = __restrictSize_31;\n\nvar _$PointerEvent_39 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerEvent_39, \"__esModule\", {\n value: true\n});\n_$PointerEvent_39[\"default\"] = void 0;\n\nvar ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13);\n\nvar ___pointerUtils_39 = ___interopRequireDefault_39(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_39(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_39(obj); }\n\nfunction ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_39(self); }\n\nfunction ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); }\n\nfunction ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___inherits_39(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); }\n\nfunction ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); }\n\n/** */\nvar PointerEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_39(PointerEvent, _BaseEvent);\n\n /** */\n function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) {\n var _this;\n\n ___classCallCheck_39(this, PointerEvent);\n\n _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction));\n\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), event);\n\n if (event !== pointer) {\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), pointer);\n }\n\n _this.timeStamp = timeStamp;\n _this.originalEvent = event;\n _this.type = type;\n _this.pointerId = ___pointerUtils_39[\"default\"].getPointerId(pointer);\n _this.pointerType = ___pointerUtils_39[\"default\"].getPointerType(pointer);\n _this.target = eventTarget;\n _this.currentTarget = null;\n\n if (type === 'tap') {\n var pointerIndex = interaction.getPointerIndex(pointer);\n _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime;\n var interval = _this.timeStamp - interaction.tapTime;\n _this[\"double\"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500);\n } else if (type === 'doubletap') {\n _this.dt = pointer.timeStamp - interaction.tapTime;\n }\n\n return _this;\n }\n\n ___createClass_39(PointerEvent, [{\n key: \"_subtractOrigin\",\n value: function _subtractOrigin(_ref) {\n var originX = _ref.x,\n originY = _ref.y;\n this.pageX -= originX;\n this.pageY -= originY;\n this.clientX -= originX;\n this.clientY -= originY;\n return this;\n }\n }, {\n key: \"_addOrigin\",\n value: function _addOrigin(_ref2) {\n var originX = _ref2.x,\n originY = _ref2.y;\n this.pageX += originX;\n this.pageY += originY;\n this.clientX += originX;\n this.clientY += originY;\n return this;\n }\n /**\n * Prevent the default behaviour of the original Event\n */\n\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {\n this.originalEvent.preventDefault();\n }\n }]);\n\n return PointerEvent;\n}(___BaseEvent2_39[\"default\"]);\n\n_$PointerEvent_39[\"default\"] = PointerEvent;\n\nvar _$base_40 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_40, \"__esModule\", {\n value: true\n});\n_$base_40[\"default\"] = void 0;\n\nvar __utils_40 = ___interopRequireWildcard_40(_$utils_56);\n\nvar _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39);\n\nfunction ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_40() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar signals = new __utils_40.Signals();\nvar simpleSignals = ['down', 'up', 'cancel'];\nvar simpleEvents = ['down', 'up', 'cancel'];\nvar __defaults_40 = {\n holdDuration: 600,\n ignoreFrom: null,\n allowFrom: null,\n origin: {\n x: 0,\n y: 0\n }\n};\nvar pointerEvents = {\n id: 'pointer-events/base',\n install: __install_40,\n signals: signals,\n PointerEvent: _PointerEvent[\"default\"],\n fire: fire,\n collectEventTargets: collectEventTargets,\n createSignalListener: createSignalListener,\n defaults: __defaults_40,\n types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold']\n};\n\nfunction fire(arg, scope) {\n var interaction = arg.interaction,\n pointer = arg.pointer,\n event = arg.event,\n eventTarget = arg.eventTarget,\n _arg$type = arg.type,\n type = _arg$type === void 0 ? arg.pointerEvent.type : _arg$type,\n _arg$targets = arg.targets,\n targets = _arg$targets === void 0 ? collectEventTargets(arg) : _arg$targets;\n var _arg$pointerEvent = arg.pointerEvent,\n pointerEvent = _arg$pointerEvent === void 0 ? new _PointerEvent[\"default\"](type, pointer, event, eventTarget, interaction, scope.now()) : _arg$pointerEvent;\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n targets: targets,\n type: type,\n pointerEvent: pointerEvent\n };\n\n for (var i = 0; i < targets.length; i++) {\n var target = targets[i];\n\n for (var prop in target.props || {}) {\n pointerEvent[prop] = target.props[prop];\n }\n\n var origin = __utils_40.getOriginXY(target.eventable, target.node);\n\n pointerEvent._subtractOrigin(origin);\n\n pointerEvent.eventable = target.eventable;\n pointerEvent.currentTarget = target.node;\n target.eventable.fire(pointerEvent);\n\n pointerEvent._addOrigin(origin);\n\n if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) {\n break;\n }\n }\n\n signals.fire('fired', signalArg);\n\n if (type === 'tap') {\n // if pointerEvent should make a double tap, create and fire a doubletap\n // PointerEvent and use that as the prevTap\n var prevTap = pointerEvent[\"double\"] ? fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'doubletap'\n }, scope) : pointerEvent;\n interaction.prevTap = prevTap;\n interaction.tapTime = prevTap.timeStamp;\n }\n\n return pointerEvent;\n}\n\nfunction collectEventTargets(_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget,\n type = _ref.type;\n var pointerIndex = interaction.getPointerIndex(pointer);\n var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted\n\n if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target\n !(pointerInfo && pointerInfo.downTarget === eventTarget))) {\n return [];\n }\n\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: type,\n path: path,\n targets: [],\n node: null\n };\n\n for (var _i = 0; _i < path.length; _i++) {\n var _ref2;\n\n _ref2 = path[_i];\n var node = _ref2;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (type === 'hold') {\n signalArg.targets = signalArg.targets.filter(function (target) {\n return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration;\n });\n }\n\n return signalArg.targets;\n}\n\nfunction __install_40(scope) {\n var interactions = scope.interactions;\n scope.pointerEvents = pointerEvents;\n scope.defaults.actions.pointerEvents = pointerEvents.defaults;\n interactions.signals.on('new', function (_ref3) {\n var interaction = _ref3.interaction;\n interaction.prevTap = null; // the most recent tap event on this interaction\n\n interaction.tapTime = 0; // time of the most recent tap event\n });\n interactions.signals.on('update-pointer', function (_ref4) {\n var down = _ref4.down,\n pointerInfo = _ref4.pointerInfo;\n\n if (!down && pointerInfo.hold) {\n return;\n }\n\n pointerInfo.hold = {\n duration: Infinity,\n timeout: null\n };\n });\n interactions.signals.on('move', function (_ref5) {\n var interaction = _ref5.interaction,\n pointer = _ref5.pointer,\n event = _ref5.event,\n eventTarget = _ref5.eventTarget,\n duplicateMove = _ref5.duplicateMove;\n var pointerIndex = interaction.getPointerIndex(pointer);\n\n if (!duplicateMove && (!interaction.pointerIsDown || interaction.pointerWasMoved)) {\n if (interaction.pointerIsDown) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n\n fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'move'\n }, scope);\n }\n });\n interactions.signals.on('down', function (_ref6) {\n var interaction = _ref6.interaction,\n pointer = _ref6.pointer,\n event = _ref6.event,\n eventTarget = _ref6.eventTarget,\n pointerIndex = _ref6.pointerIndex;\n var timer = interaction.pointers[pointerIndex].hold;\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'hold',\n targets: [],\n path: path,\n node: null\n };\n\n for (var _i2 = 0; _i2 < path.length; _i2++) {\n var _ref7;\n\n _ref7 = path[_i2];\n var node = _ref7;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (!signalArg.targets.length) {\n return;\n }\n\n var minDuration = Infinity;\n\n for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) {\n var _ref8;\n\n _ref8 = signalArg.targets[_i3];\n var target = _ref8;\n var holdDuration = target.eventable.options.holdDuration;\n\n if (holdDuration < minDuration) {\n minDuration = holdDuration;\n }\n }\n\n timer.duration = minDuration;\n timer.timeout = setTimeout(function () {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'hold'\n }, scope);\n }, minDuration);\n });\n var _arr = ['up', 'cancel'];\n\n for (var _i4 = 0; _i4 < _arr.length; _i4++) {\n var signalName = _arr[_i4];\n interactions.signals.on(signalName, function (_ref10) {\n var interaction = _ref10.interaction,\n pointerIndex = _ref10.pointerIndex;\n\n if (interaction.pointers[pointerIndex].hold) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n });\n }\n\n for (var i = 0; i < simpleSignals.length; i++) {\n interactions.signals.on(simpleSignals[i], createSignalListener(simpleEvents[i], scope));\n }\n\n interactions.signals.on('up', function (_ref9) {\n var interaction = _ref9.interaction,\n pointer = _ref9.pointer,\n event = _ref9.event,\n eventTarget = _ref9.eventTarget;\n\n if (!interaction.pointerWasMoved) {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'tap'\n }, scope);\n }\n });\n}\n\nfunction createSignalListener(type, scope) {\n return function (_ref11) {\n var interaction = _ref11.interaction,\n pointer = _ref11.pointer,\n event = _ref11.event,\n eventTarget = _ref11.eventTarget;\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: type\n }, scope);\n };\n}\n\nvar ___default_40 = pointerEvents;\n_$base_40[\"default\"] = ___default_40;\n\nvar _$holdRepeat_41 = {};\n\"use strict\";\n\nObject.defineProperty(_$holdRepeat_41, \"__esModule\", {\n value: true\n});\n_$holdRepeat_41[\"default\"] = void 0;\n\nvar ___base_41 = ___interopRequireDefault_41(_$base_40);\n\nfunction ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_41(scope) {\n var pointerEvents = scope.pointerEvents,\n interactions = scope.interactions;\n scope.usePlugin(___base_41[\"default\"]);\n pointerEvents.signals.on('new', onNew);\n pointerEvents.signals.on('fired', function (arg) {\n return onFired(arg, scope);\n });\n var _arr = ['move', 'up', 'cancel', 'endall'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var signal = _arr[_i];\n interactions.signals.on(signal, endHoldRepeat);\n } // don't repeat by default\n\n\n pointerEvents.defaults.holdRepeatInterval = 0;\n pointerEvents.types.push('holdrepeat');\n}\n\nfunction onNew(_ref) {\n var pointerEvent = _ref.pointerEvent;\n\n if (pointerEvent.type !== 'hold') {\n return;\n }\n\n pointerEvent.count = (pointerEvent.count || 0) + 1;\n}\n\nfunction onFired(_ref2, scope) {\n var interaction = _ref2.interaction,\n pointerEvent = _ref2.pointerEvent,\n eventTarget = _ref2.eventTarget,\n targets = _ref2.targets;\n\n if (pointerEvent.type !== 'hold' || !targets.length) {\n return;\n } // get the repeat interval from the first eventable\n\n\n var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less\n\n if (interval <= 0) {\n return;\n } // set a timeout to fire the holdrepeat event\n\n\n interaction.holdIntervalHandle = setTimeout(function () {\n scope.pointerEvents.fire({\n interaction: interaction,\n eventTarget: eventTarget,\n type: 'hold',\n pointer: pointerEvent,\n event: pointerEvent\n }, scope);\n }, interval);\n}\n\nfunction endHoldRepeat(_ref3) {\n var interaction = _ref3.interaction;\n\n // set the interaction's holdStopTime property\n // to stop further holdRepeat events\n if (interaction.holdIntervalHandle) {\n clearInterval(interaction.holdIntervalHandle);\n interaction.holdIntervalHandle = null;\n }\n}\n\nvar ___default_41 = {\n id: 'pointer-events/holdRepeat',\n install: __install_41\n};\n_$holdRepeat_41[\"default\"] = ___default_41;\n\nvar _$interactableTargets_43 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactableTargets_43, \"__esModule\", {\n value: true\n});\n_$interactableTargets_43[\"default\"] = void 0;\n\n/* removed: var _$arr_47 = require(\"@interactjs/utils/arr\"); */;\n\nvar ___extend_43 = ___interopRequireDefault_43(_$extend_53);\n\nfunction ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_43(scope) {\n var pointerEvents = scope.pointerEvents,\n actions = scope.actions,\n Interactable = scope.Interactable,\n interactables = scope.interactables;\n pointerEvents.signals.on('collect-targets', function (_ref) {\n var targets = _ref.targets,\n node = _ref.node,\n type = _ref.type,\n eventTarget = _ref.eventTarget;\n scope.interactables.forEachMatch(node, function (interactable) {\n var eventable = interactable.events;\n var options = eventable.options;\n\n if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) {\n targets.push({\n node: node,\n eventable: eventable,\n props: {\n interactable: interactable\n }\n });\n }\n });\n });\n interactables.signals.on('new', function (_ref2) {\n var interactable = _ref2.interactable;\n\n interactable.events.getRect = function (element) {\n return interactable.getRect(element);\n };\n });\n interactables.signals.on('set', function (_ref3) {\n var interactable = _ref3.interactable,\n options = _ref3.options;\n (0, ___extend_43[\"default\"])(interactable.events.options, pointerEvents.defaults);\n (0, ___extend_43[\"default\"])(interactable.events.options, options.pointerEvents || {});\n });\n (0, _$arr_47.merge)(actions.eventTypes, pointerEvents.types);\n Interactable.prototype.pointerEvents = pointerEventsMethod;\n var __backCompatOption = Interactable.prototype._backCompatOption;\n\n Interactable.prototype._backCompatOption = function (optionName, newValue) {\n var ret = __backCompatOption.call(this, optionName, newValue);\n\n if (ret === this) {\n this.events.options[optionName] = newValue;\n }\n\n return ret;\n };\n}\n\nfunction pointerEventsMethod(options) {\n (0, ___extend_43[\"default\"])(this.events.options, options);\n return this;\n}\n\nvar ___default_43 = {\n id: 'pointer-events/interactableTargets',\n install: __install_43\n};\n_$interactableTargets_43[\"default\"] = ___default_43;\n\nvar _$pointerEvents_42 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerEvents_42, \"__esModule\", {\n value: true\n});\n_$pointerEvents_42.install = __install_42;\nObject.defineProperty(_$pointerEvents_42, \"pointerEvents\", {\n enumerable: true,\n get: function get() {\n return ___base_42[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"holdRepeat\", {\n enumerable: true,\n get: function get() {\n return _holdRepeat[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"interactableTargets\", {\n enumerable: true,\n get: function get() {\n return _interactableTargets[\"default\"];\n }\n});\n_$pointerEvents_42.id = void 0;\n\nvar ___base_42 = ___interopRequireDefault_42(_$base_40);\n\nvar _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41);\n\nvar _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43);\n\nfunction ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_42(scope) {\n scope.usePlugin(___base_42[\"default\"]);\n scope.usePlugin(_holdRepeat[\"default\"]);\n scope.usePlugin(_interactableTargets[\"default\"]);\n}\n\nvar __id_42 = 'pointer-events';\n_$pointerEvents_42.id = __id_42;\n\nvar _$reflow_44 = {};\n\"use strict\";\n\nObject.defineProperty(_$reflow_44, \"__esModule\", {\n value: true\n});\n_$reflow_44.install = __install_44;\n_$reflow_44[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\n_$InteractEvent_15.EventPhase.Reflow = 'reflow';\n\nfunction __install_44(scope) {\n var actions = scope.actions,\n interactions = scope.interactions,\n Interactable = scope.Interactable; // add action reflow event types\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n actions.eventTypes.push(\"\".concat(actionName, \"reflow\"));\n } // remove completed reflow interactions\n\n\n interactions.signals.on('stop', function (_ref2) {\n var interaction = _ref2.interaction;\n\n if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) {\n if (interaction._reflowResolve) {\n interaction._reflowResolve();\n }\n\n _$utils_56.arr.remove(scope.interactions.list, interaction);\n }\n });\n /**\n * ```js\n * const interactable = interact(target)\n * const drag = { name: drag, axis: 'x' }\n * const resize = { name: resize, edges: { left: true, bottom: true }\n *\n * interactable.reflow(drag)\n * interactable.reflow(resize)\n * ```\n *\n * Start an action sequence to re-apply modifiers, check drops, etc.\n *\n * @param { Object } action The action to begin\n * @param { string } action.name The name of the action\n * @returns { Promise }\n */\n\n Interactable.prototype.reflow = function (action) {\n return reflow(this, action, scope);\n };\n}\n\nfunction reflow(interactable, action, scope) {\n var elements = _$utils_56.is.string(interactable.target) ? _$utils_56.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name\n\n var Promise = _$utils_56.win.window.Promise;\n var promises = Promise ? [] : null;\n\n var _loop = function _loop() {\n _ref3 = elements[_i2];\n var element = _ref3;\n var rect = interactable.getRect(element);\n\n if (!rect) {\n return \"break\";\n }\n\n var runningInteraction = _$utils_56.arr.find(scope.interactions.list, function (interaction) {\n return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name;\n });\n\n var reflowPromise = void 0;\n\n if (runningInteraction) {\n runningInteraction.move();\n\n if (promises) {\n reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) {\n runningInteraction._reflowResolve = resolve;\n });\n }\n } else {\n var xywh = _$utils_56.rect.tlbrToXywh(rect);\n\n var coords = {\n page: {\n x: xywh.x,\n y: xywh.y\n },\n client: {\n x: xywh.x,\n y: xywh.y\n },\n timeStamp: scope.now()\n };\n\n var event = _$utils_56.pointer.coordsToEvent(coords);\n\n reflowPromise = startReflow(scope, interactable, element, action, event);\n }\n\n if (promises) {\n promises.push(reflowPromise);\n }\n };\n\n for (var _i2 = 0; _i2 < elements.length; _i2++) {\n var _ref3;\n\n var _ret = _loop();\n\n if (_ret === \"break\") break;\n }\n\n return promises && Promise.all(promises).then(function () {\n return interactable;\n });\n}\n\nfunction startReflow(scope, interactable, element, action, event) {\n var interaction = scope.interactions[\"new\"]({\n pointerType: 'reflow'\n });\n var signalArg = {\n interaction: interaction,\n event: event,\n pointer: event,\n eventTarget: element,\n phase: _$InteractEvent_15.EventPhase.Reflow\n };\n interaction.interactable = interactable;\n interaction.element = element;\n interaction.prepared = (0, _$utils_56.extend)({}, action);\n interaction.prevEvent = event;\n interaction.updatePointer(event, event, element, true);\n\n interaction._doPhase(signalArg);\n\n var reflowPromise = _$utils_56.win.window.Promise ? new _$utils_56.win.window.Promise(function (resolve) {\n interaction._reflowResolve = resolve;\n }) : null;\n interaction._reflowPromise = reflowPromise;\n interaction.start(action, interactable, element);\n\n if (interaction._interacting) {\n interaction.move(signalArg);\n interaction.end(event);\n } else {\n interaction.stop();\n }\n\n interaction.removePointer(event, event);\n interaction.pointerIsDown = false;\n return reflowPromise;\n}\n\nvar ___default_44 = {\n id: 'reflow',\n install: __install_44\n};\n_$reflow_44[\"default\"] = ___default_44;\n\nvar _$interact_28 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_28, \"__esModule\", {\n value: true\n});\n_$interact_28[\"default\"] = _$interact_28.scope = _$interact_28.interact = void 0;\n\nvar ___scope_28 = _$scope_24({});\n\nvar __utils_28 = ___interopRequireWildcard_28(_$utils_56);\n\nvar ___browser_28 = ___interopRequireDefault_28(_$browser_48);\n\nvar ___events_28 = ___interopRequireDefault_28(_$events_52);\n\nfunction ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_28() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/** @module interact */\nvar globalEvents = {};\nvar scope = new ___scope_28.Scope();\n/**\n * ```js\n * interact('#draggable').draggable(true)\n *\n * var rectables = interact('rect')\n * rectables\n * .gesturable(true)\n * .on('gesturemove', function (event) {\n * // ...\n * })\n * ```\n *\n * The methods of this variable can be used to set elements as interactables\n * and also to change various default settings.\n *\n * Calling it as a function and passing an element or a valid CSS selector\n * string returns an Interactable object which has various methods to configure\n * it.\n *\n * @global\n *\n * @param {Element | string} target The HTML or SVG Element to interact with\n * or CSS selector\n * @return {Interactable}\n */\n\n_$interact_28.scope = scope;\n\nvar interact = function interact(target, options) {\n var interactable = scope.interactables.get(target, options);\n\n if (!interactable) {\n interactable = scope.interactables[\"new\"](target, options);\n interactable.events.global = globalEvents;\n }\n\n return interactable;\n};\n/**\n * Use a plugin\n *\n * @alias module:interact.use\n *\n * @param {Object} plugin\n * @param {function} plugin.install\n * @return {interact}\n */\n\n\n_$interact_28.interact = interact;\ninteract.use = use;\n\nfunction use(plugin, options) {\n scope.usePlugin(plugin, options);\n return interact;\n}\n/**\n * Check if an element or selector has been set with the {@link interact}\n * function\n *\n * @alias module:interact.isSet\n *\n * @param {Element} element The Element being searched for\n * @return {boolean} Indicates if the element or CSS selector was previously\n * passed to interact\n */\n\n\ninteract.isSet = isSet;\n\nfunction isSet(target, options) {\n return !!scope.interactables.get(target, options && options.context);\n}\n/**\n * Add a global listener for an InteractEvent or adds a DOM event to `document`\n *\n * @alias module:interact.on\n *\n * @param {string | array | object} type The types of events to listen for\n * @param {function} listener The function event (s)\n * @param {object | boolean} [options] object or useCapture flag for\n * addEventListener\n * @return {object} interact\n */\n\n\ninteract.on = on;\n\nfunction on(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i = 0; _i < type.length; _i++) {\n var _ref;\n\n _ref = type[_i];\n var eventType = _ref;\n interact.on(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.on(prop, type[prop], listener);\n }\n\n return interact;\n } // if it is an InteractEvent type, add listener to globalEvents\n\n\n if (__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n // if this type of event was never bound\n if (!globalEvents[type]) {\n globalEvents[type] = [listener];\n } else {\n globalEvents[type].push(listener);\n }\n } // If non InteractEvent type, addEventListener to document\n else {\n ___events_28[\"default\"].add(scope.document, type, listener, {\n options: options\n });\n }\n\n return interact;\n}\n/**\n * Removes a global InteractEvent listener or DOM event from `document`\n *\n * @alias module:interact.off\n *\n * @param {string | array | object} type The types of events that were listened\n * for\n * @param {function} listener The listener function to be removed\n * @param {object | boolean} options [options] object or useCapture flag for\n * removeEventListener\n * @return {object} interact\n */\n\n\ninteract.off = off;\n\nfunction off(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i2 = 0; _i2 < type.length; _i2++) {\n var _ref2;\n\n _ref2 = type[_i2];\n var eventType = _ref2;\n interact.off(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.off(prop, type[prop], listener);\n }\n\n return interact;\n }\n\n if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n ___events_28[\"default\"].remove(scope.document, type, listener, options);\n } else {\n var index;\n\n if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) {\n globalEvents[type].splice(index, 1);\n }\n }\n\n return interact;\n}\n/**\n * Returns an object which exposes internal data\n * @alias module:interact.debug\n *\n * @return {object} An object with properties that outline the current state\n * and expose internal functions and variables\n */\n\n\ninteract.debug = debug;\n\nfunction debug() {\n return scope;\n} // expose the functions used to calculate multi-touch properties\n\n\ninteract.getPointerAverage = __utils_28.pointer.pointerAverage;\ninteract.getTouchBBox = __utils_28.pointer.touchBBox;\ninteract.getTouchDistance = __utils_28.pointer.touchDistance;\ninteract.getTouchAngle = __utils_28.pointer.touchAngle;\ninteract.getElementRect = __utils_28.dom.getElementRect;\ninteract.getElementClientRect = __utils_28.dom.getElementClientRect;\ninteract.matchesSelector = __utils_28.dom.matchesSelector;\ninteract.closest = __utils_28.dom.closest;\n/**\n * @alias module:interact.supportsTouch\n *\n * @return {boolean} Whether or not the browser supports touch input\n */\n\ninteract.supportsTouch = supportsTouch;\n\nfunction supportsTouch() {\n return ___browser_28[\"default\"].supportsTouch;\n}\n/**\n * @alias module:interact.supportsPointerEvent\n *\n * @return {boolean} Whether or not the browser supports PointerEvents\n */\n\n\ninteract.supportsPointerEvent = supportsPointerEvent;\n\nfunction supportsPointerEvent() {\n return ___browser_28[\"default\"].supportsPointerEvent;\n}\n/**\n * Cancels all interactions (end events are not fired)\n *\n * @alias module:interact.stop\n *\n * @return {object} interact\n */\n\n\ninteract.stop = __stop_28;\n\nfunction __stop_28() {\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n interaction.stop();\n }\n\n return interact;\n}\n/**\n * Returns or sets the distance the pointer must be moved before an action\n * sequence occurs. This also affects tolerance for tap events.\n *\n * @alias module:interact.pointerMoveTolerance\n *\n * @param {number} [newValue] The movement from the start position must be greater than this value\n * @return {interact | number}\n */\n\n\ninteract.pointerMoveTolerance = pointerMoveTolerance;\n\nfunction pointerMoveTolerance(newValue) {\n if (__utils_28.is.number(newValue)) {\n scope.interactions.pointerMoveTolerance = newValue;\n return interact;\n }\n\n return scope.interactions.pointerMoveTolerance;\n}\n\nscope.interactables.signals.on('unset', function (_ref4) {\n var interactable = _ref4.interactable;\n scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i4];\n var interaction = _ref5;\n\n if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) {\n interaction.stop();\n }\n }\n});\n\ninteract.addDocument = function (doc, options) {\n return scope.addDocument(doc, options);\n};\n\ninteract.removeDocument = function (doc) {\n return scope.removeDocument(doc);\n};\n\nscope.interact = interact;\nvar ___default_28 = interact;\n_$interact_28[\"default\"] = ___default_28;\n\nvar _$interact_27 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_27, \"__esModule\", {\n value: true\n});\n_$interact_27.init = __init_27;\nObject.defineProperty(_$interact_27, \"autoScroll\", {\n enumerable: true,\n get: function get() {\n return _autoScroll[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interactablePreventDefault\", {\n enumerable: true,\n get: function get() {\n return _interactablePreventDefault[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"inertia\", {\n enumerable: true,\n get: function get() {\n return _inertia[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"modifiers\", {\n enumerable: true,\n get: function get() {\n return ___base_27[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"reflow\", {\n enumerable: true,\n get: function get() {\n return _reflow[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interact\", {\n enumerable: true,\n get: function get() {\n return _interact[\"default\"];\n }\n});\n_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27[\"default\"] = void 0;\n\nvar actions = ___interopRequireWildcard_27(_$actions_5);\n\n_$interact_27.actions = actions;\n\nvar _autoScroll = ___interopRequireDefault_27(_$autoScroll_7);\n\nvar autoStart = ___interopRequireWildcard_27(_$autoStart_12);\n\nvar _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21);\n\nvar _devTools = ___interopRequireDefault_27(_$devTools_25);\n\nvar _inertia = ___interopRequireDefault_27(_$inertia_26);\n\nvar modifiers = ___interopRequireWildcard_27(_$modifiers_31);\n\nvar ___base_27 = ___interopRequireDefault_27(_$base_30);\n\nvar __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42);\n\n_$interact_27.pointerEvents = __pointerEvents_27;\n\nvar _reflow = ___interopRequireDefault_27(_$reflow_44);\n\nvar _interact = ___interopRequireWildcard_27(_$interact_28);\n\nfunction ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_27() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __init_27(window) {\n _interact.scope.init(window);\n\n _interact[\"default\"].use(_interactablePreventDefault[\"default\"]); // pointerEvents\n\n\n _interact[\"default\"].use(__pointerEvents_27); // inertia\n\n\n _interact[\"default\"].use(_inertia[\"default\"]); // autoStart, hold\n\n\n _interact[\"default\"].use(autoStart); // drag and drop, resize, gesture\n\n\n _interact[\"default\"].use(actions); // snap, resize, etc.\n\n\n _interact[\"default\"].use(___base_27[\"default\"]); // for backwrads compatibility\n\n\n for (var type in modifiers) {\n var _modifiers$type = modifiers[type],\n _defaults = _modifiers$type._defaults,\n _methods = _modifiers$type._methods;\n _defaults._methods = _methods;\n _interact.scope.defaults.perAction[type] = _defaults;\n } // autoScroll\n\n\n _interact[\"default\"].use(_autoScroll[\"default\"]); // reflow\n\n\n _interact[\"default\"].use(_reflow[\"default\"]); // eslint-disable-next-line no-undef\n\n\n if (\"production\" !== 'production') {\n _interact[\"default\"].use(_devTools[\"default\"]);\n }\n\n return _interact[\"default\"];\n} // eslint-disable-next-line no-undef\n\n\n_interact[\"default\"].version = \"1.6.3\";\nvar ___default_27 = _interact[\"default\"];\n_$interact_27[\"default\"] = ___default_27;\n\nvar _$types_45 = {};\n/// \n\"use strict\";\n\nvar _$grid_64 = {};\n\"use strict\";\n\nObject.defineProperty(_$grid_64, \"__esModule\", {\n value: true\n});\n_$grid_64[\"default\"] = void 0;\n\nfunction ___slicedToArray_64(arr, i) { return ___arrayWithHoles_64(arr) || ___iterableToArrayLimit_64(arr, i) || ___nonIterableRest_64(); }\n\nfunction ___nonIterableRest_64() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_64(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_64(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction createGrid(grid) {\n var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) {\n var _ref2 = ___slicedToArray_64(_ref, 2),\n xField = _ref2[0],\n yField = _ref2[1];\n\n return xField in grid || yField in grid;\n });\n return function (x, y) {\n var range = grid.range,\n _grid$limits = grid.limits,\n limits = _grid$limits === void 0 ? {\n left: -Infinity,\n right: Infinity,\n top: -Infinity,\n bottom: Infinity\n } : _grid$limits,\n _grid$offset = grid.offset,\n offset = _grid$offset === void 0 ? {\n x: 0,\n y: 0\n } : _grid$offset;\n var result = {\n range: range\n };\n\n for (var _i2 = 0; _i2 < coordFields.length; _i2++) {\n var _ref3;\n\n _ref3 = coordFields[_i2];\n\n var _ref4 = _ref3,\n _ref5 = ___slicedToArray_64(_ref4, 2),\n xField = _ref5[0],\n yField = _ref5[1];\n\n var gridx = Math.round((x - offset.x) / grid[xField]);\n var gridy = Math.round((y - offset.y) / grid[yField]);\n result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x));\n result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y));\n }\n\n return result;\n };\n}\n\nvar ___default_64 = createGrid;\n_$grid_64[\"default\"] = ___default_64;\n\nvar _$snappers_65 = {};\n\"use strict\";\n\nObject.defineProperty(_$snappers_65, \"__esModule\", {\n value: true\n});\nObject.defineProperty(_$snappers_65, \"grid\", {\n enumerable: true,\n get: function get() {\n return _grid[\"default\"];\n }\n});\n\nvar _grid = ___interopRequireDefault_65(_$grid_64);\n\nfunction ___interopRequireDefault_65(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar _$index_29 = { exports: {} };\n\"use strict\";\n\nObject.defineProperty(_$index_29.exports, \"__esModule\", {\n value: true\n});\n_$index_29.exports.init = __init_29;\n_$index_29.exports[\"default\"] = void 0;\n\nvar ___interact_29 = ___interopRequireWildcard_29(_$interact_27);\n\nvar __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31);\n\n_$types_45;\n\nvar ___extend_29 = ___interopRequireDefault_29(_$extend_53);\n\nvar snappers = ___interopRequireWildcard_29(_$snappers_65);\n\nfunction ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_29() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___typeof_29(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_29(obj); }\n\nif ((typeof window === \"undefined\" ? \"undefined\" : ___typeof_29(window)) === 'object' && !!window) {\n __init_29(window);\n}\n\nfunction __init_29(win) {\n (0, ___interact_29.init)(win);\n return ___interact_29[\"default\"].use({\n id: 'interactjs',\n install: function install() {\n ___interact_29[\"default\"].modifiers = (0, ___extend_29[\"default\"])({}, __modifiers_29);\n ___interact_29[\"default\"].snappers = snappers;\n ___interact_29[\"default\"].createSnapGrid = ___interact_29[\"default\"].snappers.grid;\n }\n });\n}\n\nvar ___default_29 = ___interact_29[\"default\"];\n_$index_29.exports[\"default\"] = ___default_29;\n___interact_29[\"default\"][\"default\"] = ___interact_29[\"default\"] // tslint:disable-line no-string-literal\n;\n___interact_29[\"default\"].init = __init_29; // tslint:disable-line no-string-literal\n\nif ((\"object\" === \"undefined\" ? \"undefined\" : ___typeof_29(_$index_29)) === 'object' && !!_$index_29) {\n _$index_29.exports = ___interact_29[\"default\"];\n}\n\n_$index_29 = _$index_29.exports\nreturn _$index_29;\n\n});\n\n\n//# sourceMappingURL=interact.js.map\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?0c71","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.min.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?d9a3","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["currentDir","hasDocument","document","hasWindow","window","getDocumentDir","direction","dir","getElementsByTagName","getAttribute","setDocumentDir","html","setAttribute","addWindowEventListener","event","callback","addEventListener","removeWindowEventListener","removeEventListener","VueGridLayout","GridLayout","GridItem","install","Vue","installed","Object","keys","forEach","name","component","plugin","GlobalVue","global","use","getBreakpointFromWidth","breakpoints","width","sorted","sortBreakpoints","matching","i","len","length","breakpointName","getColsFromBreakpoint","breakpoint","cols","Error","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","slice","indexOf","b","compact","correctBounds","generateResponsiveLayout","sort","a","bottom","max","bottomY","y","h","newLayout","Array","cloneLayoutItem","layoutItem","JSON","parse","stringify","collides","l1","l2","x","w","compareWith","getStatics","sortLayoutItemsByRowCol","out","l","static","compactItem","push","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","id","getAllCollisions","filter","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","Math","undefined","perc","num","setTransform","top","left","height","translate","transform","WebkitTransform","MozTransform","msTransform","OTransform","position","setTransformRtl","right","setTopLeft","setTopRight","concat","validateLayout","contextName","subProps","isArray","item","j","autoBindHandlers","el","fns","key","bind","createMarkup","obj","result","val","hyphenate","addPx","IS_UNITLESS","animationIterationCount","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridColumn","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","stopOpacity","strokeDashoffset","strokeOpacity","strokeWidth","value","hyphenateRE","str","replace","toLowerCase","findItemInArray","array","property","findAndRemove","index","splice","getControlPosition","e","offsetXYFromParentOf","evt","offsetParent","target","body","offsetParentRect","getBoundingClientRect","clientX","scrollLeft","clientY","scrollTop","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","isNaN"],"mappings":"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e,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,+CAA+C,oBAAoB,QAAQ,SAAS,aAAa,cAAc,cAAc,YAAY,WAAW,YAAY,gBAAgB,sBAAsB;;AAEtM;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtNa;;AAEb;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;;;;;ACtCA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA,IAAIA;AAAkC;AAAA,EAAI,MAA1C,C,CACA;;AAEA,SAASC,WAAT,GAAsB;AAClB,SAAQ,OAAOC,QAAP,KAAoB,WAA5B;AACH;;AAED,SAASC,SAAT,GAAoB;AAChB,SAAQ,OAAOC,MAAP,KAAkB,WAA1B;AACH;;AAEM,SAASC,cAAT,GAAyB;AAC5B,MAAG,CAACJ,WAAW,EAAf,EAAkB;AACd,WAAOD,UAAP;AACH;;AACD,MAAMM,SAAS,GAAI,OAAOJ,QAAQ,CAACK,GAAhB,KAAwB,WAAzB,GACdL,QAAQ,CAACK,GADK,GAEdL,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,EAAyCC,YAAzC,CAAsD,KAAtD,CAFJ;AAGA,SAAOH,SAAP;AACH;AAEM,SAASI,cAAT,CAAwBH;AAAxB;AAAA,EAAoD;AAC3D;AACI,MAAG,CAACN,WAAJ,EAAgB;AACZD,cAAU,GAAGO,GAAb;AACA;AACH;;AAED,MAAMI,IAAI,GAAGT,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,CAAb;AACAG,MAAI,CAACC,YAAL,CAAkB,KAAlB,EAAyBL,GAAzB;AACH;AAEM,SAASM,sBAAT,CAAgCC;AAAhC;AAAA,EAA8CC;AAA9C;AAAA,EAAoE;AACvE,MAAG,CAACZ,SAAJ,EAAc;AAEVY,YAAQ;AACR;AACH;;AACDX,QAAM,CAACY,gBAAP,CAAwBF,KAAxB,EAA+BC,QAA/B;AACH;AAEM,SAASE,yBAAT,CAAmCH;AAAnC;AAAA,EAAiDC;AAAjD;AAAA,EAAuE;AAC1E,MAAG,CAACZ,SAAJ,EAAc;AACV;AACH;;AACDC,QAAM,CAACc,mBAAP,CAA2BJ,KAA3B,EAAkCC,QAAlC;AACH,C;;;;;;;AC9CD,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;;ACNa;AACb,mBAAO,CAAC,MAAmB;AAC3B,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,YAAY,mBAAO,CAAC,MAAU;AAC9B,cAAc,mBAAO,CAAC,MAAY;AAClC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,iBAAiB,mBAAO,CAAC,MAAgB;;AAEzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,yBAAyB,4CAA4C;AACrE;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,2BAA2B,mBAAmB,aAAa;AAC3D;AACA;AACA;AACA;AACA,6CAA6C,WAAW;AACxD;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAkB;AAClB;AACA,gBAAgB;AAChB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;;;;;;;;AC/FA,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD,IAAI;AACJ;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oDAAoD,cAAc;;AAElE;AACA;;;;;;;;AC3EA;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA,2BAA2B,kBAAkB,EAAE;;AAE/C;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBA;;;;;;;;;ACAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;AC5FA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACNA,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAuB;AAC/C;AACA;;AAEA,mBAAO,CAAC,MAAS;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;AC9BD;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,UAAU,mBAAO,CAAC,MAAe;AACjC,kBAAkB,mBAAO,CAAC,MAAkB;AAC5C,eAAe,mBAAO,CAAC,MAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,MAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,MAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA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CA;AACA;AACA,GA5HA;AA6HA;AACA;AACA,GA/HA;AAgIA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA,sCAHA,CAKA;;AACA;AAEA;AAEA;AAEA;AACA;AACA;AACA,8BADA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA,WAFA;AAGA,SATA;AAUA,OAvBA;AAwBA,KA7BA;AA8BA,GAhKA;AAiKA;AACA;AACA;AACA;AAAA;;AACA;AACA;;AACA;AACA;;;;;;;;;;;;;;;;;;AAoBA;AACA;AACA,WAFA;AAGA;;AACA;AACA,OA7BA;AA8BA,KAjCA;AAkCA;AACA;AACA,KApCA;AAqCA;AACA;AACA,KAvCA;AAwCA;AACA;AACA,KA1CA;AA2CA;AACA;AACA,KA7CA;AA8CA;AACA;AACA,KAhDA;AAiDA,cAjDA,wBAiDA;AACA;AACA;AACA;AACA;;AACA;AACA,KAvDA;AAwDA;AACA;AACA,KA1DA;AA2DA,UA3DA,oBA2DA;AACA;AACA;AA7DA,GAjKA;AAgOA;AACA,gBADA,0BACA;AACA;AACA;AACA;AAEA;;AACA;AACA;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;AACA;AACA,iBAFA;AAGA,eAJA;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AAEA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AADA;AAGA,KAnCA;AAoCA;AACA;AACA;AACA;;AACA;AACA,KAzCA;AA0CA;AACA,iCADA,CAEA;AACA;;AACA;AACA;AACA,KAhDA;AAiDA;AACA;AACA,sEAFA,CAGA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AACA,OAXA,MAWA;AACA;AACA;AACA,SAFA;AAGA,OAvBA,CAyBA;;;AACA;AACA,0EA3BA,CA4BA;;AACA;AACA;AACA;AACA,KAjFA;AAkFA;AACA,sEADA,CAEA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;;AACA;AACA;AAAA;AAAA;AAAA,mBACA;AAAA;AAAA,SADA;AAGA,8CAJA,CAMA;;AACA;AACA;AACA;AAAA,cACA,iBADA;AAEA;AACA;AACA;AACA,WAHA;AAKA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AAEA,OAZA,MAYA;AACA;AACA;AACA,SAFA;AAGA;;AAEA;AAEA;AACA;AACA;AAEA;AACA,KA9IA;AAgJA;AACA,wBAjJA,kCAiJA;AACA;AACA,oEAFA,CAIA;;AACA,6EACA,sFANA,CAQA;;AACA,kDACA,mBADA,EAEA,YAFA,EAGA,gBAHA,EAIA,aAJA,EAKA,mBALA,EAMA,OANA,EAOA,oBAPA,EATA,CAmBA;;AACA;;AAEA;AACA;AACA,OAxBA,CA0BA;;;AACA;AAEA;AACA;AACA,KAhLA;AAkLA;AACA,0BAnLA,oCAmLA;AACA;AACA;AACA,KAtLA;AAwLA;AACA,kBAzLA,0BAyLA,MAzLA,EAyLA,cAzLA,EAyLA;AAEA;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAHA,CASA;;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAVA,CAgBA;;AACA;AACA;AA3MA;AAhOA,G;;AC7BoU,CAAgB,oHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGtE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,6CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,2F;;;;;;;ACnBf;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;ACZa;AACb,aAAa,mBAAO,CAAC,MAAkB;AACvC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,MAAS,qBAAqB,mBAAO,CAAC,MAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;;ACZA,mBAAO,CAAC,MAA0C;AAClD,cAAc,mBAAO,CAAC,MAAqB;AAC3C;AACA;AACA;;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,YAAY,mBAAO,CAAC,MAAgB;;AAEpC,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACPA,cAAc,mBAAO,CAAC,MAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,MAAgB,cAAc,iBAAiB,mBAAO,CAAC,MAAc,KAAK;;;;;;;;;ACFtG;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;;AAElD;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACvCD;AACA;AACA;AACA;AACe;AACf;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAwB;AAC3D,KAAK;AACL;AACA;AACA;AACA;AACA;;;AC1BA;AAAA;AACA;AACA;AACA;AACA;;AAEyC;;AAEzC;;AAEA;AACA;AACA;AACA;AACA,UAAU,iBAAiB;AAC3B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEe;AACf;;AAEA;;AAEA,eAAe,YAAY;AAC3B;;AAEA;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY;AAC3B;AACA,KAAK;AACL;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA,uBAAuB,2BAA2B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC7Na;;AAEb;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,+CAA+C,SAAS;AACxD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uBAAu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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE;AACA,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,eAAe;AACf,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;;AC7DA;AACA,cAAc,mBAAO,CAAC,MAAY;AAClC,cAAc,mBAAO,CAAC,MAAY;AAClC;AACA;AACA;;;;;;;;ACLA,uBAAuB;AACvB;AACA;AACA;;;;;;;;ACHA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACXA;;AAEA;AACA,cAAc,mBAAO,CAAC,MAAga;AACtb,4CAA4C,QAAS;AACrD;AACA;AACA,UAAU,mBAAO,CAAC,MAA6D;AAC/E,6CAA6C,qCAAqC,E;;;;;;;;ACRrE;AACb;AACA,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C,cAAc,mBAAO,CAAC,MAAgB;AACtC,WAAW,mBAAO,CAAC,MAAgB;AACnC,UAAU,mBAAO,CAAC,MAAe;AACjC,eAAe,mBAAO,CAAC,MAAc;AACrC,cAAc,mBAAO,CAAC,MAAY;AAClC;;AAEA;AACA,6BAA6B,mBAAO,CAAC,MAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,UAAU,EAAE;AAChD,mBAAmB,sCAAsC;AACzD,CAAC,qCAAqC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;;ACrCD;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;ACLzC,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;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B,EAAyB;AACnC,QAAI1C,MAAM,CAACwC,QAAD,CAAN,KAAqBP,KAAzB,EAAgC;AAC5B;AACAM,WAAK,CAACI,MAAN,CAAaD,KAAb,EAAoB,CAApB;AACH;AACJ,GALD;AAMH,C;;;;;;;;AC9kBY;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,gBAAgB,mBAAO,CAAC,MAAe;AACvC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACrHD,cAAc,mBAAO,CAAC,MAAW;AACjC,cAAc,mBAAO,CAAC,MAAY;AAClC,YAAY,mBAAO,CAAC,MAAU;AAC9B,aAAa,mBAAO,CAAC,MAAc;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;AC7Ba;;AAEb;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,iBAAiB;AACjB,mCAAmC,sBAAsB;AACzD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;;AC1CA,iBAAiB,mBAAO,CAAC,MAAsB;AAC/C,cAAc,mBAAO,CAAC,MAAgB;AACtC,eAAe,mBAAO,CAAC,MAAa;AACpC,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,gBAAgB,mBAAO,CAAC,MAAc;AACtC,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oDAAoD,wBAAwB;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzDA,2BAA2B,mBAAO,CAAC,MAA+C;AAClF;;;AAGA;AACA,cAAc,QAAS,oBAAoB,kBAAkB,mCAAmC,2BAA2B;;AAE3H;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACPa;AACb,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,mBAAO,CAAC,MAAW;AACnB;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;;ACRY;;AAEb;;AAEA;AACA;AACA;AACA,WAAW,EAAE;AACb,WAAW,SAAS;AACpB,aAAa,EAAE;AACf;AACA;AACA,kBAAkB,uBAAuB;AACzC;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClBA,0BAA0B,aAAa,0BAA0B,wBAAwB,iBAAiB,4EAA4E,2DAA2D,4CAA4C;AAC7R;;;;;;;;;;;;;;;ACDA;AACO,SAASE,kBAAT,CAA4BC,CAA5B,EAA+B;AAClC,SAAOC,oBAAoB,CAACD,CAAD,CAA3B;AACH,C,CAGD;;AACO,SAASC,oBAAT,CAA8BC,GAA9B,EAAmC;AACtC,MAAMC,YAAY,GAAGD,GAAG,CAACE,MAAJ,CAAWD,YAAX,IAA2B7L,QAAQ,CAAC+L,IAAzD;AACA,MAAMC,gBAAgB,GAAGJ,GAAG,CAACC,YAAJ,KAAqB7L,QAAQ,CAAC+L,IAA9B,GAAqC;AAAC7E,QAAI,EAAE,CAAP;AAAUD,OAAG,EAAE;AAAf,GAArC,GAAyD4E,YAAY,CAACI,qBAAb,EAAlF;AAEA,MAAMnH,CAAC,GAAG8G,GAAG,CAACM,OAAJ,GAAcL,YAAY,CAACM,UAA3B,GAAwCH,gBAAgB,CAAC9E,IAAnE;AACA,MAAMhD,CAAC,GAAG0H,GAAG,CAACQ,OAAJ,GAAcP,YAAY,CAACQ,SAA3B,GAAuCL,gBAAgB,CAAC/E,GAAlE;AAEA;;;AAIA,SAAO;AAACnC,KAAC,EAADA,CAAD;AAAIZ,KAAC,EAADA;AAAJ,GAAP;AACH,C,CAGD;;AACO,SAASoI,cAAT,CAAwBC,KAAxB,EAA+BC,KAA/B,EAAsC1H,CAAtC,EAAyCZ,CAAzC,EAA4C;AAC/C;AACA,MAAMuI,OAAO,GAAG,CAACC,KAAK,CAACH,KAAD,CAAtB;;AAEA,MAAIE,OAAJ,EAAa;AACT;AACA,WAAO;AACHE,YAAM,EAAE,CADL;AACQC,YAAM,EAAE,CADhB;AAEHL,WAAK,EAAEzH,CAFJ;AAEO0H,WAAK,EAAEtI,CAFd;AAGHY,OAAC,EAAEA,CAHA;AAGGZ,OAAC,EAAEA;AAHN,KAAP;AAKH,GAPD,MAOO;AACH;AACA,WAAO;AACHyI,YAAM,EAAE7H,CAAC,GAAGyH,KADT;AACgBK,YAAM,EAAE1I,CAAC,GAAGsI,KAD5B;AAEHD,WAAK,EAAEA,KAFJ;AAEWC,WAAK,EAAEA,KAFlB;AAGH1H,OAAC,EAAEA,CAHA;AAGGZ,OAAC,EAAEA;AAHN,KAAP;AAKH;AACJ;;AAGD,SAASwI,KAAT,CAAe3F,GAAf,EAAqB;AACjB,SAAO,OAAOA,GAAP,KAAe,QAAf,IAA2B,CAAC8F,KAAK,CAAC9F,GAAD,CAAxC;AACH,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACyCD;AACA;CAEA;;AAEA;;AAEA;AACA,kBADA;AAEA;AACA;;;;;AAIA;;;;;;;;;;;;;;;;AAiBA;AACA,mBADA;AAEA,qBAFA;AAGA;AAHA,KAtBA;AA2BA;AACA,mBADA;AAEA,qBAFA;AAGA;AAHA,KA3BA;;AAgCA;;;;;AAKA;AACA,mBADA;AAEA,qBAFA;AAGA;AAHA,KArCA;AA0CA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KA1CA;AA+CA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KA/CA;AAoDA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KApDA;AAyDA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KAzDA;AA8DA;AACA,kBADA;AAEA;AAFA,KA9DA;AAkEA;AACA,kBADA;AAEA;AAFA,KAlEA;AAsEA;AACA,kBADA;AAEA;AAFA,KAtEA;AA0EA;AACA,kBADA;AAEA;AAFA,KA1EA;AA8EA;AACA;AADA,KA9EA;AAiFA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KAjFA;AAsFA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA,KAtFA;AA2FA;AACA,kBADA;AAEA,qBAFA;AAGA;AAHA;AA3FA,GAFA;AAmGA,sBAnGA;AAoGA;AACA;AACA,aADA;AAEA,yBAFA;AAGA,mBAHA;AAIA,sBAJA;AAKA,uBALA;AAMA,qBANA;AAOA,qBAPA;AAQA,4BARA;AAUA,uBAVA;AAWA,oBAXA;AAYA,uBAZA;AAaA,oBAbA;AAcA,gBAdA;AAeA,gBAfA;AAgBA,gBAhBA;AAiBA,gBAjBA;AAkBA,eAlBA;AAmBA,gBAnBA;AAqBA,yBArBA;AAsBA,2BAtBA;AAwBA,qBAxBA;AAyBA,qBAzBA;AA0BA,qBA1BA;AA2BA,qBA3BA;AA4BA,oBA5BA;AA6BA,oBA7BA;AA8BA,oBA9BA;AA+BA;AA/BA;AAiCA,GAtIA;AAuIA,SAvIA,qBAuIA;AAAA;;AACA,oBADA,CAGA;;AACA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;;AACA;AACA,KAHA;;AAKA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,GA1LA;AA2LA;AACA,oBADA,CAEA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,+BADA,CACA;AACA;AACA,GAzMA;AA0MA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,GA5NA;AA6NA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA;AACA,KAPA;AAQA;AACA;AACA,KAVA;AAWA;AACA;AACA,KAbA;AAcA;AACA;AACA,KAhBA;AAiBA;AACA;AACA;AACA,KApBA;AAqBA;AACA;AACA;AACA;AACA,KAzBA;AA0BA;AACA;AACA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AACA,KAlCA;AAmCA;AACA;AACA;AACA,KAtCA;AAuCA;AACA;AACA,yBAFA,CAGA;AACA,KA3CA;AA4CA;AACA;AACA,yBAFA,CAGA;AACA,KAhDA;AAiDA;AACA;AACA;AACA;AACA,KArDA;AAsDA;AACA;AACA,KAxDA;AAyDA;AACA;AACA,KA3DA;AA4DA;AACA;AACA,KA9DA;AA+DA;AACA;AACA,KAjEA;AAkEA;AACA;AACA;AACA;;AACA;AAAA;AAAA;AACA;AACA;AACA;AAzEA,GA7NA;AAwSA;AACA,YADA,sBACA;AACA;AACA,mDADA;AAEA,6BAFA;AAGA,mCAHA;AAIA,iDAJA;AAKA,8CALA;AAMA,oCANA;AAOA,6CAPA;AAQA;AARA;AAUA,KAZA;AAaA,yBAbA,mCAaA;AACA;AACA,KAfA;AAgBA,oCAhBA,8CAgBA;AACA;AACA,KAlBA;AAmBA,aAnBA,uBAmBA;AACA;AACA,KArBA;AAsBA,aAtBA,uBAsBA;AACA;AACA,KAxBA;AAyBA,wBAzBA,kCAyBA;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA;AA/BA,GAxSA;AAyUA;AACA;AACA;AACA;AACA;AACA,OAHA,MAGA;AACA;AACA;AACA;;AACA;;AAGA;AACA,oCADA,CAEA;;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;;AAEA,gBAzBA,CA0BA;;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AAEA,OARA,MAQA;AAAA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA,KA7CA;AA8CA,wBA9CA,kCA8CA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA,sBACA;AACA;AACA;;AACA;AACA,KA1DA;AA2DA;AACA;AACA,+CAFA,CAGA;;AACA,mCAJA,CAIA;;AAJA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAAA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAOA;AAAA;AAAA;AAAA;AACA;;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,qEARA,CAUA;;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA;AACA,wCAJA,CAKA;;AACA;AACA;AACA;AACA;AAlCA,OATA,CA8CA;;;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KAzIA;AA0IA,cA1IA,sBA0IA,KA1IA,EA0IA;AACA;AACA;AAEA,+CAJA,CAMA;;AACA,oCAPA,CAOA;;AAPA,UAQA,CARA,GAQA,QARA,CAQA,CARA;AAAA,UAQA,CARA,GAQA,QARA,CAQA,CARA,EAUA;;AACA;AAAA;AAAA;AAAA;;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;;AACA;;AACA,mEAHA,CAIA;;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,gEAVA,CAWA;AACA;;AACA;AACA,oCAdA,CAeA;;AACA;AACA;;AACA;AAAA;AACA,yEADA,CAEA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,mEARA,CASA;AACA;AACA;;AACA;AACA;AACA;AAjDA,OAZA,CAgEA;;;AACA;;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KA5NA;AA6NA;AACA,yCADA,CAEA;;AACA;;AACA;AACA;AACA,oEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA,OAVA,MAUA;AACA;AACA,mEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA;;AAGA;AACA,KAzPA;;AA0PA;;;;;;AAMA;AACA,UAjQA,kBAiQA,GAjQA,EAiQA,IAjQA,EAiQA;AACA,yCADA,CAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,qFAXA,CAaA;;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA,KAnRA;AAoRA;AACA,gBArRA,0BAqRA;AACA,0FADA,CAEA;;AACA;AACA,KAzRA;;AA2RA;;;;;;AAMA,UAjSA,kBAiSA,MAjSA,EAiSA,KAjSA,EAiSA;AACA,yCADA,CAGA;AACA;AACA;;AACA;AACA,wFAPA,CASA;;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA,KA9SA;AA+SA;AACA;;AACA;AACA;AACA;AACA,KApTA;AAqTA;AACA;AACA,KAvTA;AAwTA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,yCADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA;AACA;AACA;AACA,WAFA;AAGA;AACA,OAbA,MAaA;AACA;AACA;AADA;AAGA;AACA,KA/UA;AAgVA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,oEAFA,CAIA;AACA;;AAEA;AACA,mCADA;AAEA;AACA;AACA,uBADA;AAEA,kDAFA;AAGA,mDAHA;AAIA;AAJA,WAHA;AASA,2CATA;AAUA;AACA;AACA,oCADA;AAEA;AAFA,aADA;AAKA;AACA,oCADA;AAEA;AAFA;AALA;AAVA;AAsBA;;AACA;AACA;AACA,2BACA,EADA,CACA,kCADA,EACA;AACA;AACA,WAHA;AAIA;AACA,OArCA,MAqCA;AACA;AACA;AADA;AAGA;AACA,KA/XA;AAgYA;AACA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA,OAzBA,CA2BA;AACA;;;AAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AAraA;AAzUA,G;;AC/FkU,CAAgB,gHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGpE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,2CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,yF;;;;;;;ACnBf;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;;AAEb,YAAY,mBAAO,CAAC,MAAS;;AAE7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,4IAA4I,kCAAkC;AAC9K,gCAAgC,0BAA0B;AAC1D;AACA;;AAEA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O;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,mCAAmC,iBAAiB;AACpD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kEAAkE,iBAAiB,YAAY,aAAa,aAAa,kBAAkB,WAAW,YAAY;AAClK;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,2CAA2C,kBAAkB,sBAAsB,wBAAwB;AAC3G;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc,WAAW,UAAU;AAC7K,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB;AAC7H,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,SAAS,QAAQ;AAC/E,8DAA8D,aAAa,cAAc;;AAEzF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtoBA;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;AACb,uBAAuB,mBAAO,CAAC,MAAuB;AACtD,WAAW,mBAAO,CAAC,MAAc;AACjC,gBAAgB,mBAAO,CAAC,MAAc;AACtC,gBAAgB,mBAAO,CAAC,MAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;;ACjCA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAe;AACvC,mBAAmB,mBAAO,CAAC,MAAmB;AAC9C,eAAe,mBAAO,CAAC,MAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChBA;AACA;AACA;;;;;;;;ACFA;AACA,UAAU;AACV;;;;;;;;;ACFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;;ACHA,eAAe,mBAAO,CAAC,MAAc;AACrC,qBAAqB,mBAAO,CAAC,MAAmB;AAChD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;;ACfA;AACA;AACA;AACA;;;;;;;;;ACHA;AAAA;AAAA;AAAkf,CAAgB,whBAAG,EAAC,C;;;;;;;ACAtgB,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;;ACL5B;;AAEb,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAgB;AACtD,8BAA8B,mBAAO,CAAC,MAAc;AACpD,8BAA8B,mBAAO,CAAC,MAAY;AAClD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAiB;;AAEvD;AACA,8BAA8B,mBAAO,CAAC,MAAgC;AACtE,8BAA8B,mBAAO,CAAC,MAAgC;;AAEtE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB;;AAEA;AACA;AACA,UAAU;AACV,cAAc,QAAQ;AACtB;AACA;AACA,cAAc,UAAU;AACxB;AACA,cAAc,SAAS;AACvB;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,qCAAqC,6CAA6C,EAAE;AACpF;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,mFAAmF,qBAAqB;;AAExG;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,SAAS;AACxB,eAAe,kBAAkB;AACjC,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA,8EAA8E;AAC9E;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA,yDAAyD,eAAe;AACxE;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,qBAAqB;AACrB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AChUa;AACb,sBAAsB,mBAAO,CAAC,MAAc;AAC5C,iBAAiB,mBAAO,CAAC,MAAkB;;AAE3C;AACA;AACA;AACA;;;;;;;;ACPA;;AAEA;;AAEA;AACA;AACA,wDAAwD;;AAExD;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,mBAAmB;AAChC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACnCD;AACA,cAAc,mBAAO,CAAC,MAAW;;AAEjC,0CAA0C,SAAS,mBAAO,CAAC,MAAkB,GAAG;;;;;;;;ACHhF;AACA;AACA;;;;;;;;ACFA,iBAAiB,mBAAO,CAAC,MAAW;;;;;;;;ACApC,eAAe,mBAAO,CAAC,MAAW;AAClC;;;;;;;;;;;;ACDA;;AAEA;AACA,MAAM,IAAuC;AAC7C,IAAI,mBAAO,CAAC,MAAyB;AACrC;;AAEA;AACA;AACA,IAAI,qBAAuB;AAC3B;AACA;;AAEA;AACe,sDAAI;;;;;;ACdnB;AAAA;AAAA;AAAwB;AACA;AACT,4GAAG;AACI;;;;;;;;ACHtB;AACA,cAAc,mBAAO,CAAC,MAAW;AACjC,gBAAgB,mBAAO,CAAC,MAAW;;AAEnC;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA","file":"vue-grid-layout.common.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/vue-grid-layout.umd.js b/dist/vue-grid-layout.umd.js index 3dc2bef7..92d47ee7 100644 --- a/dist/vue-grid-layout.umd.js +++ b/dist/vue-grid-layout.umd.js @@ -1302,7 +1302,7 @@ module.exports = __webpack_require__("8e60") ? function (object, key, value) { "use strict"; -// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0156aa68-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/GridLayout.vue?vue&type=template&id=6594d2a5& +// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"495e29ea-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/GridLayout.vue?vue&type=template&id=6594d2a5& var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"item",staticClass:"vue-grid-layout",style:(_vm.mergedStyle)},[_vm._t("default"),_c('grid-item',{directives:[{name:"show",rawName:"v-show",value:(_vm.isDragging),expression:"isDragging"}],staticClass:"vue-grid-placeholder",attrs:{"x":_vm.placeholder.x,"y":_vm.placeholder.y,"w":_vm.placeholder.w,"h":_vm.placeholder.h,"i":_vm.placeholder.i}})],2)} var staticRenderFns = [] @@ -2539,6 +2539,16 @@ module.exports = function (it) { }; +/***/ }), + +/***/ "5014": +/***/ (function(module, exports, __webpack_require__) { + +/* interact.js 1.9.22 | https://raw.github.com/taye/interact.js/master/LICENSE */ +!function(t){if(true)module.exports=t();else {}}((function(){var t={};Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(t){return!(!t||!t.Window)&&t instanceof t.Window};var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.init=o,e.getWindow=function(e){if((0,t.default)(e))return e;return(e.ownerDocument||e).defaultView||r.window},e.window=e.realWindow=void 0;var n=void 0;e.realWindow=n;var r=void 0;function o(t){e.realWindow=n=t;var o=t.document.createTextNode("");o.ownerDocument!==t.document&&"function"==typeof t.wrap&&t.wrap(o)===o&&(t=t.wrap(t)),e.window=r=t}e.window=r,"undefined"!=typeof window&&window&&o(window);var i={};function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var s=function(t){return!!t&&"object"===a(t)},l=function(t){return"function"==typeof t},u={window:function(n){return n===e.window||(0,t.default)(n)},docFrag:function(t){return s(t)&&11===t.nodeType},object:s,func:l,number:function(t){return"number"==typeof t},bool:function(t){return"boolean"==typeof t},string:function(t){return"string"==typeof t},element:function(t){if(!t||"object"!==a(t))return!1;var n=e.getWindow(t)||e.window;return/object|function/.test(a(n.Element))?t instanceof n.Element:1===t.nodeType&&"string"==typeof t.nodeName},plainObject:function(t){return s(t)&&!!t.constructor&&/function Object\b/.test(t.constructor.toString())},array:function(t){return s(t)&&void 0!==t.length&&l(t.splice)}};i.default=u;var c={};function f(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.prepared.axis;"x"===n?(e.coords.cur.page.y=e.coords.start.page.y,e.coords.cur.client.y=e.coords.start.client.y,e.coords.velocity.client.y=0,e.coords.velocity.page.y=0):"y"===n&&(e.coords.cur.page.x=e.coords.start.page.x,e.coords.cur.client.x=e.coords.start.client.x,e.coords.velocity.client.x=0,e.coords.velocity.page.x=0)}}function d(t){var e=t.iEvent,n=t.interaction;if("drag"===n.prepared.name){var r=n.prepared.axis;if("x"===r||"y"===r){var o="x"===r?"y":"x";e.page[o]=n.coords.start.page[o],e.client[o]=n.coords.start.client[o],e.delta[o]=0}}}Object.defineProperty(c,"__esModule",{value:!0}),c.default=void 0;var p={id:"actions/drag",install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.draggable=p.draggable,e.map.drag=p,e.methodDict.drag="draggable",r.actions.drag=p.defaults},listeners:{"interactions:before-action-move":f,"interactions:action-resume":f,"interactions:action-move":d,"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.buttons,o=n.options.drag;if(o&&o.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(r&n.options.drag.mouseButtons)))return t.action={name:"drag",axis:"start"===o.lockAxis?o.startAxis:o.lockAxis},!1}},draggable:function(t){return i.default.object(t)?(this.options.drag.enabled=!1!==t.enabled,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^(xy|x|y|start)$/.test(t.lockAxis)&&(this.options.drag.lockAxis=t.lockAxis),/^(xy|x|y)$/.test(t.startAxis)&&(this.options.drag.startAxis=t.startAxis),this):i.default.bool(t)?(this.options.drag.enabled=t,this):this.options.drag},beforeMove:f,move:d,defaults:{startAxis:"xy",lockAxis:"xy"},getCursor:function(){return"move"}},v=p;c.default=v;var h={};Object.defineProperty(h,"__esModule",{value:!0}),h.default=void 0;var g={init:function(t){var e=t;g.document=e.document,g.DocumentFragment=e.DocumentFragment||y,g.SVGElement=e.SVGElement||y,g.SVGSVGElement=e.SVGSVGElement||y,g.SVGElementInstance=e.SVGElementInstance||y,g.Element=e.Element||y,g.HTMLElement=e.HTMLElement||g.Element,g.Event=e.Event,g.Touch=e.Touch||y,g.PointerEvent=e.PointerEvent||e.MSPointerEvent},document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function y(){}var m=g;h.default=m;var b={};Object.defineProperty(b,"__esModule",{value:!0}),b.default=void 0;var x={init:function(t){var n=h.default.Element,r=e.window.navigator;x.supportsTouch="ontouchstart"in t||i.default.func(t.DocumentTouch)&&h.default.document instanceof t.DocumentTouch,x.supportsPointerEvent=!1!==r.pointerEnabled&&!!h.default.PointerEvent,x.isIOS=/iP(hone|od|ad)/.test(r.platform),x.isIOS7=/iP(hone|od|ad)/.test(r.platform)&&/OS 7[^\d]/.test(r.appVersion),x.isIe9=/MSIE 9/.test(r.userAgent),x.isOperaMobile="Opera"===r.appName&&x.supportsTouch&&/Presto/.test(r.userAgent),x.prefixedMatchesSelector="matches"in n.prototype?"matches":"webkitMatchesSelector"in n.prototype?"webkitMatchesSelector":"mozMatchesSelector"in n.prototype?"mozMatchesSelector":"oMatchesSelector"in n.prototype?"oMatchesSelector":"msMatchesSelector",x.pEventTypes=x.supportsPointerEvent?h.default.PointerEvent===t.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,x.wheelEvent="onmousewheel"in h.default.document?"mousewheel":"wheel"},supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null};var w=x;b.default=w;var _={};function S(t){var e=t.parentNode;if(i.default.docFrag(e)){for(;(e=e.host)&&i.default.docFrag(e););return e}return e}function P(t,n){return e.window!==e.realWindow&&(n=n.replace(/\/deep\//g," ")),t[b.default.prefixedMatchesSelector](n)}Object.defineProperty(_,"__esModule",{value:!0}),_.nodeContains=function(t,e){if(t.contains)return t.contains(e);for(;e;){if(e===t)return!0;e=e.parentNode}return!1},_.closest=function(t,e){for(;i.default.element(t);){if(P(t,e))return t;t=S(t)}return null},_.parentNode=S,_.matchesSelector=P,_.indexOfDeepestElement=function(t){for(var n,r=[],o=0;o=m&&(n=o);else n=o}else n=o}var v,g,y,m;return n},_.matchesUpTo=function(t,e,n){for(;i.default.element(t);){if(P(t,e))return!0;if((t=S(t))===n)return P(t,e)}return!1},_.getActualElement=function(t){return t.correspondingUseElement||t},_.getScrollXY=T,_.getElementClientRect=M,_.getElementRect=function(t){var n=M(t);if(!b.default.isIOS7&&n){var r=T(e.getWindow(t));n.left+=r.x,n.right+=r.x,n.top+=r.y,n.bottom+=r.y}return n},_.getPath=function(t){var e=[];for(;t;)e.push(t),t=S(t);return e},_.trySelector=function(t){if(!i.default.string(t))return!1;return h.default.document.querySelector(t),!0};var O=function(t){return t.parentNode||t.host};function E(t,e){for(var n,r=[],o=t;(n=O(o))&&o!==e&&n!==o.ownerDocument;)r.unshift(o),o=n;return r}function T(t){return{x:(t=t||e.window).scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function M(t){var e=t instanceof h.default.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}var j={};Object.defineProperty(j,"__esModule",{value:!0}),j.default=function(t,e){for(var n in e)t[n]=e[n];return t};var k={};function I(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n1?q(e):e[0];U(r,t.page),N(r,t.client),t.timeStamp=n},W.getTouchPair=V,W.pointerAverage=q,W.touchBBox=function(t){if(!t.length)return null;var e=V(t),n=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY),o=Math.max(e[0].pageX,e[1].pageX),i=Math.max(e[0].pageY,e[1].pageY);return{x:n,y:r,left:n,top:r,right:o,bottom:i,width:o-n,height:i-r}},W.touchDistance=function(t,e){var n=e+"X",r=e+"Y",o=V(t),i=o[0][n]-o[1][n],a=o[0][r]-o[1][r];return(0,R.default)(i,a)},W.touchAngle=function(t,e){var n=e+"X",r=e+"Y",o=V(t),i=o[1][n]-o[0][n],a=o[1][r]-o[0][r];return 180*Math.atan2(a,i)/Math.PI},W.getPointerType=function(t){return i.default.string(t.pointerType)?t.pointerType:i.default.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type)||t instanceof h.default.Touch?"touch":"mouse"},W.getEventTargets=function(t){var e=i.default.func(t.composedPath)?t.composedPath():t.path;return[_.getActualElement(e?e[0]:t.target),_.getActualElement(t.currentTarget)]},W.newCoords=function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},W.coordsToEvent=function(t){return{coords:t,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons},preventDefault:function(){}}},Object.defineProperty(W,"pointerExtend",{enumerable:!0,get:function(){return F.default}});var $={};function G(t,e){for(var n=0;ns.left&&f.xs.top&&f.y=s.left&&h<=s.right&&g>=s.top&&g<=s.bottom}if(v&&i.default.number(u)){var y=Math.max(0,Math.min(s.right,v.right)-Math.max(s.left,v.left))*Math.max(0,Math.min(s.bottom,v.bottom)-Math.max(s.top,v.top))/(v.width*v.height);l=y>=u}t.options.drop.checker&&(l=t.options.drop.checker(e,n,l,t,a,r,o));return l}(this,t,e,n,r,o,a)},n.dynamicDrop=function(e){return i.default.bool(e)?(t.dynamicDrop=e,n):t.dynamicDrop},(0,j.default)(e.phaselessTypes,{dragenter:!0,dragleave:!0,dropactivate:!0,dropdeactivate:!0,dropmove:!0,drop:!0}),e.methodDict.drop="dropzone",t.dynamicDrop=!1,o.actions.drop=vt.defaults},listeners:{"interactions:before-action-start":function(t){var e=t.interaction;"drag"===e.prepared.name&&(e.dropState={cur:{dropzone:null,element:null},prev:{dropzone:null,element:null},rejected:null,events:null,activeDrops:[]})},"interactions:after-action-start":function(t,e){var n=t.interaction,r=(t.event,t.iEvent);if("drag"===n.prepared.name){var o=n.dropState;o.activeDrops=null,o.events=null,o.activeDrops=ut(e,n.element),o.events=ft(n,0,r),o.events.activate&&(lt(o.activeDrops,o.events.activate),e.fire("actions/drop:start",{interaction:n,dragEvent:r}))}},"interactions:action-move":pt,"interactions:after-action-move":function(t,e){var n=t.interaction,r=t.iEvent;"drag"===n.prepared.name&&(dt(n,n.dropState.events),e.fire("actions/drop:move",{interaction:n,dragEvent:r}),n.dropState.events={})},"interactions:action-end":function(t,e){if("drag"===t.interaction.prepared.name){var n=t.interaction,r=t.iEvent;pt(t,e),dt(n,n.dropState.events),e.fire("actions/drop:end",{interaction:n,dragEvent:r})}},"interactions:stop":function(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.dropState;n&&(n.activeDrops=null,n.events=null,n.cur.dropzone=null,n.cur.element=null,n.prev.dropzone=null,n.prev.element=null,n.rejected=!1)}}},getActiveDrops:ut,getDrop:ct,getDropEvents:ft,fireDropEvents:dt,defaults:{enabled:!1,accept:null,overlap:"pointer"}},ht=vt;st.default=ht;var gt={};function yt(t){var e=t.interaction,n=t.iEvent,r=t.phase;if("gesture"===e.prepared.name){var o=e.pointers.map((function(t){return t.pointer})),a="start"===r,s="end"===r,l=e.interactable.options.deltaSource;if(n.touches=[o[0],o[1]],a)n.distance=W.touchDistance(o,l),n.box=W.touchBBox(o),n.scale=1,n.ds=0,n.angle=W.touchAngle(o,l),n.da=0,e.gesture.startDistance=n.distance,e.gesture.startAngle=n.angle;else if(s){var u=e.prevEvent;n.distance=u.distance,n.box=u.box,n.scale=u.scale,n.ds=0,n.angle=u.angle,n.da=0}else n.distance=W.touchDistance(o,l),n.box=W.touchBBox(o),n.scale=n.distance/e.gesture.startDistance,n.angle=W.touchAngle(o,l),n.ds=n.scale-e.gesture.scale,n.da=n.angle-e.gesture.angle;e.gesture.distance=n.distance,e.gesture.angle=n.angle,i.default.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(e.gesture.scale=n.scale)}}Object.defineProperty(gt,"__esModule",{value:!0}),gt.default=void 0;var mt={id:"actions/gesture",before:["actions/drag","actions/resize"],install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.gesturable=function(t){return i.default.object(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):i.default.bool(t)?(this.options.gesture.enabled=t,this):this.options.gesture},e.map.gesture=mt,e.methodDict.gesture="gesturable",r.actions.gesture=mt.defaults},listeners:{"interactions:action-start":yt,"interactions:action-move":yt,"interactions:action-end":yt,"interactions:new":function(t){t.interaction.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}},"auto-start:check":function(t){if(!(t.interaction.pointers.length<2)){var e=t.interactable.options.gesture;if(e&&e.enabled)return t.action={name:"gesture"},!1}}},defaults:{},getCursor:function(){return""}},bt=mt;gt.default=bt;var xt={};function wt(t,e,n,r,o,a,s){if(!e)return!1;if(!0===e){var l=i.default.number(a.width)?a.width:a.right-a.left,u=i.default.number(a.height)?a.height:a.bottom-a.top;if(s=Math.min(s,Math.abs(("left"===t||"right"===t?l:u)/2)),l<0&&("left"===t?t="right":"right"===t&&(t="left")),u<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return n.x<(l>=0?a.left:a.right)+s;if("top"===t)return n.y<(u>=0?a.top:a.bottom)+s;if("right"===t)return n.x>(l>=0?a.right:a.left)-s;if("bottom"===t)return n.y>(u>=0?a.bottom:a.top)-s}return!!i.default.element(r)&&(i.default.element(e)?e===r:_.matchesUpTo(r,e,o))}function _t(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.resizeAxes){var r=e;n.interactable.options.resize.square?("y"===n.resizeAxes?r.delta.x=r.delta.y:r.delta.y=r.delta.x,r.axes="xy"):(r.axes=n.resizeAxes,"x"===n.resizeAxes?r.delta.y=0:"y"===n.resizeAxes&&(r.delta.x=0))}}Object.defineProperty(xt,"__esModule",{value:!0}),xt.default=void 0;var St={id:"actions/resize",before:["actions/drag"],install:function(t){var e=t.actions,n=t.browser,r=t.Interactable,o=t.defaults;St.cursors=function(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}(n),St.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(e){return function(t,e,n){if(i.default.object(e))return t.options.resize.enabled=!1!==e.enabled,t.setPerAction("resize",e),t.setOnEvents("resize",e),i.default.string(e.axis)&&/^x$|^y$|^xy$/.test(e.axis)?t.options.resize.axis=e.axis:null===e.axis&&(t.options.resize.axis=n.defaults.actions.resize.axis),i.default.bool(e.preserveAspectRatio)?t.options.resize.preserveAspectRatio=e.preserveAspectRatio:i.default.bool(e.square)&&(t.options.resize.square=e.square),t;if(i.default.bool(e))return t.options.resize.enabled=e,t;return t.options.resize}(this,e,t)},e.map.resize=St,e.methodDict.resize="resizable",o.actions.resize=St.defaults},listeners:{"interactions:new":function(t){t.interaction.resizeAxes="xy"},"interactions:action-start":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.rect;n._rects={start:(0,j.default)({},o),corrected:(0,j.default)({},o),previous:(0,j.default)({},o),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}}(t),_t(t)},"interactions:action-move":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.interactable.options.resize.invert,i="reposition"===o||"negate"===o,a=n.rect,s=n._rects,l=s.start,u=s.corrected,c=s.delta,f=s.previous;if((0,j.default)(f,u),i){if((0,j.default)(u,a),"reposition"===o){if(u.top>u.bottom){var d=u.top;u.top=u.bottom,u.bottom=d}if(u.left>u.right){var p=u.left;u.left=u.right,u.right=p}}}else u.top=Math.min(a.top,l.bottom),u.bottom=Math.max(a.bottom,l.top),u.left=Math.min(a.left,l.right),u.right=Math.max(a.right,l.left);for(var v in u.width=u.right-u.left,u.height=u.bottom-u.top,u)c[v]=u[v]-f[v];r.edges=n.prepared.edges,r.rect=u,r.deltaRect=c}}(t),_t(t)},"interactions:action-end":function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e;r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}},"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.element,o=t.rect,a=t.buttons;if(o){var s=(0,j.default)({},e.coords.cur.page),l=n.options.resize;if(l&&l.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(a&l.mouseButtons))){if(i.default.object(l.edges)){var u={left:!1,right:!1,top:!1,bottom:!1};for(var c in u)u[c]=wt(c,l.edges[c],s,e._latestPointer.eventTarget,r,o,l.margin||St.defaultMargin);u.left=u.left&&!u.right,u.top=u.top&&!u.bottom,(u.left||u.right||u.top||u.bottom)&&(t.action={name:"resize",edges:u})}else{var f="y"!==l.axis&&s.x>o.right-St.defaultMargin,d="x"!==l.axis&&s.y>o.bottom-St.defaultMargin;(f||d)&&(t.action={name:"resize",axes:(f?"x":"")+(d?"y":"")})}return!t.action&&void 0}}}},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor:function(t){var e=t.edges,n=t.axis,r=t.name,o=St.cursors,i=null;if(n)i=o[r+n];else if(e){for(var a="",s=["top","bottom","left","right"],l=0;l=1){var c={x:zt.x*u,y:zt.y*u};if(c.x||c.y){var f=Rt(a);i.default.window(a)?a.scrollBy(c.x,c.y):a&&(a.scrollLeft+=c.x,a.scrollTop+=c.y);var d=Rt(a),p={x:d.x-f.x,y:d.y-f.y};(p.x||p.y)&&e.fire({type:"autoscroll",target:n,interactable:e,delta:p,interaction:t,container:a})}zt.prevTime=s}zt.isScrolling&&(Mt.default.cancel(zt.i),zt.i=Mt.default.request(zt.scroll))},check:function(t,e){var n=t.options;return n[e].autoScroll&&n[e].autoScroll.enabled},onInteractionMove:function(t){var e=t.interaction,n=t.pointer;if(e.interacting()&&zt.check(e.interactable,e.prepared.name))if(e.simulation)zt.x=zt.y=0;else{var r,o,a,s,l=e.interactable,u=e.element,c=e.prepared.name,f=l.options[c].autoScroll,d=Ct(f.container,l,u);if(i.default.window(d))s=n.clientXd.innerWidth-zt.margin,a=n.clientY>d.innerHeight-zt.margin;else{var p=_.getElementClientRect(d);s=n.clientXp.right-zt.margin,a=n.clientY>p.bottom-zt.margin}zt.x=o?1:s?-1:0,zt.y=a?1:r?-1:0,zt.isScrolling||(zt.margin=f.margin,zt.speed=f.speed,zt.start(e))}}};function Ct(t,n,r){return(i.default.string(t)?(0,k.getStringOptionResult)(t,n,r):t)||(0,e.getWindow)(r)}function Rt(t){return i.default.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}var Ft={id:"auto-scroll",install:function(t){var e=t.defaults,n=t.actions;t.autoScroll=zt,zt.now=function(){return t.now()},n.phaselessTypes.autoscroll=!0,e.perAction.autoScroll=zt.defaults},listeners:{"interactions:new":function(t){t.interaction.autoScroll=null},"interactions:destroy":function(t){t.interaction.autoScroll=null,zt.stop(),zt.interaction&&(zt.interaction=null)},"interactions:stop":zt.stop,"interactions:action-move":function(t){return zt.onInteractionMove(t)}}};At.default=Ft;var Xt={};Object.defineProperty(Xt,"__esModule",{value:!0}),Xt.warnOnce=function(t,n){var r=!1;return function(){return r||(e.window.console.warn(n),r=!0),t.apply(this,arguments)}},Xt.copyAction=function(t,e){return t.name=e.name,t.axis=e.axis,t.edges=e.edges,t};var Yt={};function Wt(t){return i.default.bool(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor}function Lt(t){return i.default.func(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker}Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.default=void 0;var Bt={id:"auto-start/interactableMethods",install:function(t){var e=t.Interactable;e.prototype.getAction=function(e,n,r,o){var i=function(t,e,n,r,o){var i=t.getRect(r),a=e.buttons||{0:1,1:4,3:8,4:16}[e.button],s={action:null,interactable:t,interaction:n,element:r,rect:i,buttons:a};return o.fire("auto-start:check",s),s.action}(this,n,r,o,t);return this.options.actionChecker?this.options.actionChecker(e,n,i,this,o,r):i},e.prototype.ignoreFrom=(0,Xt.warnOnce)((function(t){return this._backCompatOption("ignoreFrom",t)}),"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),e.prototype.allowFrom=(0,Xt.warnOnce)((function(t){return this._backCompatOption("allowFrom",t)}),"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),e.prototype.actionChecker=Lt,e.prototype.styleCursor=Wt}};Yt.default=Bt;var Ut={};function Nt(t,e,n,r,o){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&Gt(e,n,t,o)?t:null}function Vt(t,e,n,r,o,i,a){for(var s=0,l=r.length;s=s)return!1;if(d.interactable===t){if((u+=p===n.name?1:0)>=i)return!1;if(d.element===e&&(c++,p===n.name&&c>=a))return!1}}}return s>0}function Ht(t,e){return i.default.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function Kt(t,e,n){var r=n.autoStart.cursorElement;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function Zt(t,e){var n=t.interactable,r=t.element,o=t.prepared;if("mouse"===t.pointerType&&n&&n.options.styleCursor){var a="";if(o.name){var s=n.options[o.name].cursorChecker;a=i.default.func(s)?s(o,n,r,t._interacting):e.actions.map[o.name].getCursor(o)}Kt(t.element,a||"",e)}else e.autoStart.cursorElement&&Kt(e.autoStart.cursorElement,"",e)}Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.default=void 0;var Jt={id:"auto-start/base",before:["actions"],install:function(t){var e=t.interactStatic,n=t.defaults;t.usePlugin(Yt.default),n.base.actionChecker=null,n.base.styleCursor=!0,(0,j.default)(n.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),e.maxInteractions=function(e){return Ht(e,t)},t.autoStart={maxInteractions:1/0,withinInteractionLimit:Gt,cursorElement:null}},listeners:{"interactions:down":function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;n.interacting()||$t(n,qt(n,r,o,i,e),e)},"interactions:move":function(t,e){!function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;"mouse"!==n.pointerType||n.pointerIsDown||n.interacting()||$t(n,qt(n,r,o,i,e),e)}(t,e),function(t,e){var n=t.interaction;if(n.pointerIsDown&&!n.interacting()&&n.pointerWasMoved&&n.prepared.name){e.fire("autoStart:before-start",t);var r=n.interactable,o=n.prepared.name;o&&r&&(r.options[o].manualStart||!Gt(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),Zt(n,e)))}}(t,e)},"interactions:stop":function(t,e){var n=t.interaction,r=n.interactable;r&&r.options.styleCursor&&Kt(n.element,"",e)}},maxInteractions:Ht,withinInteractionLimit:Gt,validateAction:Nt};Ut.default=Jt;var Qt={};Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.default=void 0;var te={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":function(t,e){var n=t.interaction,r=t.eventTarget,o=t.dx,a=t.dy;if("drag"===n.prepared.name){var s=Math.abs(o),l=Math.abs(a),u=n.interactable.options.drag,c=u.startAxis,f=s>l?"x":s0&&(e.autoStartHoldTimer=setTimeout((function(){e.start(e.prepared,e.interactable,e.element)}),n))},"interactions:move":function(t){var e=t.interaction,n=t.duplicate;e.autoStartHoldTimer&&e.pointerWasMoved&&!n&&(clearTimeout(e.autoStartHoldTimer),e.autoStartHoldTimer=null)},"autoStart:before-start":function(t){var e=t.interaction;ne(e)>0&&(e.prepared.name=null)}},getHoldDuration:ne};ee.default=re;var oe={};Object.defineProperty(oe,"__esModule",{value:!0}),oe.default=void 0;var ie={id:"auto-start",install:function(t){t.usePlugin(Ut.default),t.usePlugin(ee.default),t.usePlugin(Qt.default)}};oe.default=ie;var ae={};Object.defineProperty(ae,"__esModule",{value:!0}),ae.default=void 0;ae.default={};var se={};function le(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):i.default.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault}function ue(t){var e=t.interaction,n=t.event;e.interactable&&e.interactable.checkAndPreventDefault(n)}function ce(t){var n=t.Interactable;n.prototype.preventDefault=le,n.prototype.checkAndPreventDefault=function(n){return function(t,n,r){var o=t.options.preventDefault;if("never"!==o)if("always"!==o){if(n.events.supportsPassive&&/^touch(start|move)$/.test(r.type)){var a=(0,e.getWindow)(r.target).document,s=n.getDocOptions(a);if(!s||!s.events||!1!==s.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(r.type)||i.default.element(r.target)&&(0,_.matchesSelector)(r.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||r.preventDefault()}else r.preventDefault()}(this,t,n)},t.interactions.docEvents.push({type:"dragstart",listener:function(e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n1&&void 0!==arguments[1]?arguments[1]:{},n=e.logger,r=t.Interactable,o=t.defaults;t.logger=n||console,o.base.devTools={ignore:{}},r.prototype.devTools=function(t){return t?((0,j.default)(this.options.devTools,t),this):this.options.devTools}},listeners:{"interactions:action-start":function(t,e){for(var n=t.interaction,r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n150)return null;var e=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;e<0&&(e+=360);var n=112.5<=e&&e<247.5,r=202.5<=e&&e<337.5;return{up:r,down:!r&&22.5<=e&&e<157.5,left:n,right:!n&&(292.5<=e||e<67.5),angle:e,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}}])&&Re(e.prototype,n),r&&Re(e,r),i}($.BaseEvent);ze.InteractEvent=Be,Object.defineProperties(Be.prototype,{pageX:{get:function(){return this.page.x},set:function(t){this.page.x=t}},pageY:{get:function(){return this.page.y},set:function(t){this.page.y=t}},clientX:{get:function(){return this.client.x},set:function(t){this.client.x=t}},clientY:{get:function(){return this.client.y},set:function(t){this.client.y=t}},dx:{get:function(){return this.delta.x},set:function(t){this.delta.x=t}},dy:{get:function(){return this.delta.y},set:function(t){this.delta.y=t}},velocityX:{get:function(){return this.velocity.x},set:function(t){this.velocity.x=t}},velocityY:{get:function(){return this.velocity.y},set:function(t){this.velocity.y=t}}});var Ue={};Object.defineProperty(Ue,"__esModule",{value:!0}),Ue.PointerInfo=void 0;Ue.PointerInfo=function t(e,n,r,o,i){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.id=void 0,this.pointer=void 0,this.event=void 0,this.downTime=void 0,this.downTarget=void 0,this.id=e,this.pointer=n,this.event=r,this.downTime=o,this.downTarget=i};var Ne,Ve,qe={};function $e(t,e){for(var n=0;nthis.pointerMoveTolerance);var a=this.getPointerIndex(t),s={pointer:t,pointerIndex:a,pointerInfo:this.pointers[a],event:e,type:"move",eventTarget:n,dx:r,dy:o,duplicate:i,interaction:this};i||W.setCoordVelocity(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),i||this.simulation||(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&W.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(t){t&&t.event||W.setZeroCoords(this.coords.delta),(t=(0,j.default)({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},t||{})).phase="move",this._doPhase(t)}},{key:"pointerUp",value:function(t,e,n,r){var o=this.getPointerIndex(t);-1===o&&(o=this.updatePointer(t,e,n,!1));var i=/cancel$/i.test(e.type)?"cancel":"up";this._scopeFire("interactions:".concat(i),{pointer:t,pointerIndex:o,pointerInfo:this.pointers[o],event:e,eventTarget:n,type:i,curEventTarget:r,interaction:this}),this.simulation||this.end(e),this.removePointer(t,e)}},{key:"documentBlur",value:function(t){this.end(t),this._scopeFire("interactions:blur",{event:t,type:"blur",interaction:this})}},{key:"end",value:function(t){var e;this._ending=!0,t=t||this._latestPointer.event,this.interacting()&&(e=this._doPhase({event:t,interaction:this,phase:"end"})),this._ending=!1,!0===e&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(t){var e=W.getPointerId(t);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:K.findIndex(this.pointers,(function(t){return t.id===e}))}},{key:"getPointerInfo",value:function(t){return this.pointers[this.getPointerIndex(t)]}},{key:"updatePointer",value:function(t,e,n,r){var o=W.getPointerId(t),i=this.getPointerIndex(t),a=this.pointers[i];return r=!1!==r&&(r||/(down|start)$/i.test(e.type)),a?a.pointer=t:(a=new Ue.PointerInfo(o,t,e,null,null),i=this.pointers.length,this.pointers.push(a)),W.setCoords(this.coords.cur,this.pointers.map((function(t){return t.pointer})),this._now()),W.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),r&&(this.pointerIsDown=!0,a.downTime=this.coords.cur.timeStamp,a.downTarget=n,W.pointerExtend(this.downPointer,t),this.interacting()||(W.copyCoords(this.coords.start,this.coords.cur),W.copyCoords(this.coords.prev,this.coords.cur),this.downEvent=e,this.pointerWasMoved=!1)),this._updateLatestPointer(t,e,n),this._scopeFire("interactions:update-pointer",{pointer:t,event:e,eventTarget:n,down:r,pointerInfo:a,pointerIndex:i,interaction:this}),i}},{key:"removePointer",value:function(t,e){var n=this.getPointerIndex(t);if(-1!==n){var r=this.pointers[n];this._scopeFire("interactions:remove-pointer",{pointer:t,event:e,eventTarget:null,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1),this.pointerIsDown=!1}}},{key:"_updateLatestPointer",value:function(t,e,n){this._latestPointer.pointer=t,this._latestPointer.event=e,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(t,e,n,r){return new ze.InteractEvent(this,t,this.prepared.name,e,this.element,n,r)}},{key:"_fireEvent",value:function(t){this.interactable.fire(t),(!this.prevEvent||t.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=t)}},{key:"_doPhase",value:function(t){var e=t.event,n=t.phase,r=t.preEnd,o=t.type,i=this.rect;if(i&&"move"===n&&(k.addEdges(this.edges,i,this.coords.delta[this.interactable.options.deltaSource]),i.width=i.right-i.left,i.height=i.bottom-i.top),!1===this._scopeFire("interactions:before-action-".concat(n),t))return!1;var a=t.iEvent=this._createPreparedEvent(e,n,r,o);return this._scopeFire("interactions:action-".concat(n),t),"start"===n&&(this.prevEvent=a),this._fireEvent(a),this._scopeFire("interactions:after-action-".concat(n),t),!0}},{key:"_now",value:function(){return Date.now()}}]),t}();qe.Interaction=Ke;var Ze=Ke;qe.default=Ze;var Je={};function Qe(t){t.pointerIsDown&&(rn(t.coords.cur,t.offset.total),t.offset.pending.x=0,t.offset.pending.y=0)}function tn(t){en(t.interaction)}function en(t){if(!function(t){return!(!t.offset.pending.x&&!t.offset.pending.y)}(t))return!1;var e=t.offset.pending;return rn(t.coords.cur,e),rn(t.coords.delta,e),k.addEdges(t.edges,t.rect,e),e.x=0,e.y=0,!0}function nn(t){var e=t.x,n=t.y;this.offset.pending.x+=e,this.offset.pending.y+=n,this.offset.total.x+=e,this.offset.total.y+=n}function rn(t,e){var n=t.page,r=t.client,o=e.x,i=e.y;n.x+=o,n.y+=i,r.x+=o,r.y+=i}Object.defineProperty(Je,"__esModule",{value:!0}),Je.addTotal=Qe,Je.applyPending=en,Je.default=void 0,qe._ProxyMethods.offsetBy="";var on={id:"offset",before:["modifiers","pointer-events","actions","inertia"],install:function(t){t.Interaction.prototype.offsetBy=nn},listeners:{"interactions:new":function(t){t.interaction.offset={total:{x:0,y:0},pending:{x:0,y:0}}},"interactions:update-pointer":function(t){return Qe(t.interaction)},"interactions:before-action-start":tn,"interactions:before-action-move":tn,"interactions:before-action-end":function(t){var e=t.interaction;if(en(e))return e.move({offset:!0}),e.end(),!1},"interactions:stop":function(t){var e=t.interaction;e.offset.total.x=0,e.offset.total.y=0,e.offset.pending.x=0,e.offset.pending.y=0}}};Je.default=on;var an={};function sn(t,e){for(var n=0;nn.minSpeed&&o>n.endSpeed)this.startInertia();else{if(i.result=i.setAll(this.modifierArg),!i.result.changed)return!1;this.startSmoothEnd()}return e.modification.result.rect=null,e.offsetBy(this.targetOffset),e._doPhase({interaction:e,event:t,phase:"inertiastart"}),e.offsetBy({x:-this.targetOffset.x,y:-this.targetOffset.y}),e.modification.result.rect=null,this.active=!0,e.simulation=this,!0}},{key:"startInertia",value:function(){var t=this,e=this.interaction.coords.velocity.client,n=un(this.interaction),r=n.resistance,o=-Math.log(n.endSpeed/this.v0)/r;this.targetOffset={x:(e.x-o)/r,y:(e.y-o)/r},this.te=o,this.lambda_v0=r/this.v0,this.one_ve_v0=1-n.endSpeed/this.v0;var i=this.modification,a=this.modifierArg;a.pageCoords={x:this.startCoords.x+this.targetOffset.x,y:this.startCoords.y+this.targetOffset.y},i.result=i.setAll(a),i.result.changed&&(this.isModified=!0,this.modifiedOffset={x:this.targetOffset.x+i.result.delta.x,y:this.targetOffset.y+i.result.delta.y}),this.onNextFrame((function(){return t.inertiaTick()}))}},{key:"startSmoothEnd",value:function(){var t=this;this.smoothEnd=!0,this.isModified=!0,this.targetOffset={x:this.modification.result.delta.x,y:this.modification.result.delta.y},this.onNextFrame((function(){return t.smoothEndTick()}))}},{key:"onNextFrame",value:function(t){var e=this;this.timeout=Mt.default.request((function(){e.active&&t()}))}},{key:"inertiaTick",value:function(){var t,e,n,r,o,i,a,s=this,l=this.interaction,u=un(l).resistance,c=(l._now()-this.t0)/1e3;if(c=0;n--){var r=e[n],o=r.selector,a=r.context,s=r.listeners;o===this.target&&a===this._context&&e.splice(n,1);for(var l=s.length-1;l>=0;l--)this._scopeEvents.removeDelegate(this.target,this._context,t,s[l][0],s[l][1])}else this._scopeEvents.remove(this.target,"all")}}]),t}();mn.Interactable=wn;var _n={};function Sn(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;a--){var p=f[a];if(p.selector===t&&p.context===e){for(var v=p.listeners,h=v.length-1;h>=0;h--){var g=Tn(v[h],2),y=g[0],m=g[1],b=m.capture,x=m.passive;if(y===o&&b===c.capture&&x===c.passive){v.splice(h,1),v.length||(f.splice(a,1),s(e,r,l),s(e,r,u,!0)),d=!0;break}}if(d)break}}},delegateListener:l,delegateUseCapture:u,delegatedEvents:n,documents:r,targets:e,supportsOptions:!1,supportsPassive:!1};function a(t,n,r,i){var a=kn(i),s=K.find(e,(function(e){return e.eventTarget===t}));s||(s={eventTarget:t,events:{}},e.push(s)),s.events[n]||(s.events[n]=[]),t.addEventListener&&!K.contains(s.events[n],r)&&(t.addEventListener(n,r,o.supportsOptions?a:a.capture),s.events[n].push(r))}function s(t,n,r,i){var a=kn(i),l=K.findIndex(e,(function(e){return e.eventTarget===t})),u=e[l];if(u&&u.events)if("all"!==n){var c=!1,f=u.events[n];if(f){if("all"===r){for(var d=f.length-1;d>=0;d--)s(t,n,f[d],a);return}for(var p=0;p=2)continue;if(!o.interacting()&&e===o.pointerType)return o}return null}};function Cn(t,e){return t.pointers.some((function(t){return t.id===e}))}var Rn=zn;An.default=Rn;var Fn={};function Xn(t){return(Xn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Yn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}(t,e)||function(t,e){if(!t)return;if("string"==typeof t)return Wn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Wn(t,e)}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;r--){var o=e.interactions.list[r];o.interactable===n&&(o.stop(),e.fire("interactions:destroy",{interaction:o}),o.destroy(),e.interactions.list.length>2&&e.interactions.list.splice(r,1))}}},onDocSignal:Kn,doOnInteractions:Gn,methodNames:$n};Fn.default=Zn;var Jn={};function Qn(t){return(Qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function tr(t,e,n){return(tr="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=or(t)););return t}(t,e);if(r){var o=Object.getOwnPropertyDescriptor(r,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function er(t,e){return(er=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function nr(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=or(t);if(e){var o=or(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return rr(this,n)}}function rr(t,e){return!e||"object"!==Qn(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function or(t){return(or=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function ir(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ar(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);nMath.abs(l.y),s.coords,s.rect),(0,j.default)(r,s.coords));return s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function jr(t,e,n){var r=t.startCoords,o=t.edgeSign;e?n.y=r.y+(n.x-r.x)*o:n.x=r.x+(n.y-r.y)*o}function kr(t,e,n,r){var o=t.startRect,i=t.startCoords,a=t.ratio,s=t.edgeSign;if(e){var l=r.width/a;n.y=i.y+(l-o.height)*s}else{var u=r.height*a;n.x=i.x+(u-o.width)*s}}Pr.aspectRatio=Mr;var Ir=(0,ke.makeModifier)(Mr,"aspectRatio");Pr.default=Ir;var Dr={};Object.defineProperty(Dr,"__esModule",{value:!0}),Dr.default=void 0;var Ar=function(){};Ar._defaults={};var zr=Ar;Dr.default=zr;var Cr={};Object.defineProperty(Cr,"__esModule",{value:!0}),Object.defineProperty(Cr,"default",{enumerable:!0,get:function(){return Dr.default}});var Rr={};function Fr(t,e,n){return i.default.func(t)?k.resolveRectLike(t,e.interactable,e.element,[n.x,n.y,e]):k.resolveRectLike(t,e.interactable,e.element)}Object.defineProperty(Rr,"__esModule",{value:!0}),Rr.getRestrictionRect=Fr,Rr.restrict=Rr.default=void 0;var Xr={start:function(t){var e=t.rect,n=t.startOffset,r=t.state,o=t.interaction,i=t.pageCoords,a=r.options,s=a.elementRect,l=(0,j.default)({left:0,top:0,right:0,bottom:0},a.offset||{});if(e&&s){var u=Fr(a.restriction,o,i);if(u){var c=u.right-u.left-e.width,f=u.bottom-u.top-e.height;c<0&&(l.left+=c,l.right+=c),f<0&&(l.top+=f,l.bottom+=f)}l.left+=n.left-e.width*s.left,l.top+=n.top-e.height*s.top,l.right+=n.right-e.width*(1-s.right),l.bottom+=n.bottom-e.height*(1-s.bottom)}r.offset=l},set:function(t){var e=t.coords,n=t.interaction,r=t.state,o=r.options,i=r.offset,a=Fr(o.restriction,n,e);if(a){var s=k.xywhToTlbr(a);e.x=Math.max(Math.min(s.right-i.right,e.x),s.left+i.left),e.y=Math.max(Math.min(s.bottom-i.bottom,e.y),s.top+i.top)}},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};Rr.restrict=Xr;var Yr=(0,ke.makeModifier)(Xr,"restrict");Rr.default=Yr;var Wr={};Object.defineProperty(Wr,"__esModule",{value:!0}),Wr.restrictEdges=Wr.default=void 0;var Lr={top:1/0,left:1/0,bottom:-1/0,right:-1/0},Br={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function Ur(t,e){for(var n=["top","left","bottom","right"],r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n - * Released under the MIT License. - * https://raw.github.com/taye/interact.js/master/LICENSE - */ -(function(f){if(true){module.exports=f()}else { var g; }})(function(){var define,module,exports; -var createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}}; -var _$scope_24 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -/* common-shake removed: exports.createScope = */ void createScope; -/* common-shake removed: exports.initScope = */ void initScope; -exports.Scope = exports.ActionName = void 0; - -var utils = _interopRequireWildcard(_$utils_56); - -var _domObjects = _interopRequireDefault(_$domObjects_50); - -var _defaultOptions = _interopRequireDefault(_$defaultOptions_20); - -var _Eventable = _interopRequireDefault(_$Eventable_14); - -var _Interactable = _interopRequireDefault(_$Interactable_16); - -var _InteractableSet = _interopRequireDefault(_$InteractableSet_17); - -var _InteractEvent = _interopRequireDefault(_$InteractEvent_15); - -var _interactions = _interopRequireDefault(_$interactions_23({})); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } - -function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -var win = utils.win, - browser = utils.browser, - raf = utils.raf, - Signals = utils.Signals, - events = utils.events; -var ActionName; -exports.ActionName = ActionName; - -(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {})); - -function createScope() { - return new Scope(); -} - -var Scope = -/*#__PURE__*/ -function () { - function Scope() { - var _this = this; - - _classCallCheck(this, Scope); - - this.id = "__interact_scope_".concat(Math.floor(Math.random() * 100)); - this.signals = new Signals(); - this.browser = browser; - this.events = events; - this.utils = utils; - this.defaults = utils.clone(_defaultOptions["default"]); - this.Eventable = _Eventable["default"]; - this.actions = { - names: [], - methodDict: {}, - eventTypes: [] - }; - this.InteractEvent = _InteractEvent["default"]; - this.interactables = new _InteractableSet["default"](this); // all documents being listened to - - this.documents = []; - this._plugins = []; - this._pluginMap = {}; - - this.onWindowUnload = function (event) { - return _this.removeDocument(event.target); - }; - - var scope = this; - - this.Interactable = - /*#__PURE__*/ - function (_InteractableBase) { - _inherits(Interactable, _InteractableBase); - - function Interactable() { - _classCallCheck(this, Interactable); - - return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments)); - } - - _createClass(Interactable, [{ - key: "set", - value: function set(options) { - _get(_getPrototypeOf(Interactable.prototype), "set", this).call(this, options); - - scope.interactables.signals.fire('set', { - options: options, - interactable: this - }); - return this; - } - }, { - key: "unset", - value: function unset() { - _get(_getPrototypeOf(Interactable.prototype), "unset", this).call(this); - - for (var i = scope.interactions.list.length - 1; i >= 0; i--) { - var interaction = scope.interactions.list[i]; - - if (interaction.interactable === this) { - interaction.stop(); - scope.interactions.signals.fire('destroy', { - interaction: interaction - }); - interaction.destroy(); - - if (scope.interactions.list.length > 2) { - scope.interactions.list.splice(i, 1); - } - } - } - - scope.interactables.signals.fire('unset', { - interactable: this - }); - } - }, { - key: "_defaults", - get: function get() { - return scope.defaults; - } - }]); - - return Interactable; - }(_Interactable["default"]); - } - - _createClass(Scope, [{ - key: "init", - value: function init(window) { - return initScope(this, window); - } - }, { - key: "pluginIsInstalled", - value: function pluginIsInstalled(plugin) { - return this._pluginMap[plugin.id] || this._plugins.indexOf(plugin) !== -1; - } - }, { - key: "usePlugin", - value: function usePlugin(plugin, options) { - if (this.pluginIsInstalled(plugin)) { - return this; - } - - if (plugin.id) { - this._pluginMap[plugin.id] = plugin; - } - - plugin.install(this, options); - - this._plugins.push(plugin); - - return this; - } - }, { - key: "addDocument", - value: function addDocument(doc, options) { - // do nothing if document is already known - if (this.getDocIndex(doc) !== -1) { - return false; - } - - var window = win.getWindow(doc); - options = options ? utils.extend({}, options) : {}; - this.documents.push({ - doc: doc, - options: options - }); - events.documents.push(doc); // don't add an unload event for the main document - // so that the page may be cached in browser history - - if (doc !== this.document) { - events.add(window, 'unload', this.onWindowUnload); - } - - this.signals.fire('add-document', { - doc: doc, - window: window, - scope: this, - options: options - }); - } - }, { - key: "removeDocument", - value: function removeDocument(doc) { - var index = this.getDocIndex(doc); - var window = win.getWindow(doc); - var options = this.documents[index].options; - events.remove(window, 'unload', this.onWindowUnload); - this.documents.splice(index, 1); - events.documents.splice(index, 1); - this.signals.fire('remove-document', { - doc: doc, - window: window, - scope: this, - options: options - }); - } - }, { - key: "getDocIndex", - value: function getDocIndex(doc) { - for (var i = 0; i < this.documents.length; i++) { - if (this.documents[i].doc === doc) { - return i; - } - } - - return -1; - } - }, { - key: "getDocOptions", - value: function getDocOptions(doc) { - var docIndex = this.getDocIndex(doc); - return docIndex === -1 ? null : this.documents[docIndex].options; - } - }, { - key: "now", - value: function now() { - return (this.window.Date || Date).now(); - } - }]); - - return Scope; -}(); - -exports.Scope = Scope; - -function initScope(scope, window) { - win.init(window); - - _domObjects["default"].init(window); - - browser.init(window); - raf.init(window); - events.init(window); - scope.usePlugin(_interactions["default"]); - scope.document = window.document; - scope.window = window; - return scope; -} - -}); -var _$interactions_23 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _browser = _interopRequireDefault(_$browser_48); - -var _domObjects = _interopRequireDefault(_$domObjects_50); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var _events = _interopRequireDefault(_$events_52); - -var _pointerUtils = _interopRequireDefault(_$pointerUtils_61); - -var _Signals = _interopRequireDefault(_$Signals_46); - -var _Interaction = _interopRequireDefault(_$Interaction_18({})); - -var _interactionFinder = _interopRequireDefault(_$interactionFinder_22); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -var methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur']; - -function install(scope) { - var signals = new _Signals["default"](); - var listeners = {}; - - for (var _i = 0; _i < methodNames.length; _i++) { - var _ref; - - _ref = methodNames[_i]; - var method = _ref; - listeners[method] = doOnInteractions(method, scope); - } - - var pEventTypes = _browser["default"].pEventTypes; - var docEvents; - - if (_domObjects["default"].PointerEvent) { - docEvents = [{ - type: pEventTypes.down, - listener: releasePointersOnRemovedEls - }, { - type: pEventTypes.down, - listener: listeners.pointerDown - }, { - type: pEventTypes.move, - listener: listeners.pointerMove - }, { - type: pEventTypes.up, - listener: listeners.pointerUp - }, { - type: pEventTypes.cancel, - listener: listeners.pointerUp - }]; - } else { - docEvents = [{ - type: 'mousedown', - listener: listeners.pointerDown - }, { - type: 'mousemove', - listener: listeners.pointerMove - }, { - type: 'mouseup', - listener: listeners.pointerUp - }, { - type: 'touchstart', - listener: releasePointersOnRemovedEls - }, { - type: 'touchstart', - listener: listeners.pointerDown - }, { - type: 'touchmove', - listener: listeners.pointerMove - }, { - type: 'touchend', - listener: listeners.pointerUp - }, { - type: 'touchcancel', - listener: listeners.pointerUp - }]; - } - - docEvents.push({ - type: 'blur', - listener: function listener(event) { - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref2; - - _ref2 = scope.interactions.list[_i2]; - var interaction = _ref2; - interaction.documentBlur(event); - } - } - }); - scope.signals.on('add-document', onDocSignal); - scope.signals.on('remove-document', onDocSignal); // for ignoring browser's simulated mouse events - - scope.prevTouchTime = 0; - - scope.Interaction = - /*#__PURE__*/ - function (_InteractionBase) { - _inherits(Interaction, _InteractionBase); - - function Interaction() { - _classCallCheck(this, Interaction); - - return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments)); - } - - _createClass(Interaction, [{ - key: "_now", - value: function _now() { - return scope.now(); - } - }, { - key: "pointerMoveTolerance", - get: function get() { - return scope.interactions.pointerMoveTolerance; - }, - set: function set(value) { - scope.interactions.pointerMoveTolerance = value; - } - }]); - - return Interaction; - }(_Interaction["default"]); - - scope.interactions = { - signals: signals, - // all active and idle interactions - list: [], - "new": function _new(options) { - options.signals = signals; - var interaction = new scope.Interaction(options); - scope.interactions.list.push(interaction); - return interaction; - }, - listeners: listeners, - docEvents: docEvents, - pointerMoveTolerance: 1 - }; - - function releasePointersOnRemovedEls() { - // for all inactive touch interactions with pointers down - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref3; - - _ref3 = scope.interactions.list[_i3]; - var interaction = _ref3; - - if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) { - continue; - } // if a pointer is down on an element that is no longer in the DOM tree - - - var _loop = function _loop() { - _ref4 = interaction.pointers[_i4]; - var pointer = _ref4; - - if (!scope.documents.some(function (_ref5) { - var doc = _ref5.doc; - return (0, _$domUtils_51.nodeContains)(doc, pointer.downTarget); - })) { - // remove the pointer from the interaction - interaction.removePointer(pointer.pointer, pointer.event); - } - }; - - for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) { - var _ref4; - - _loop(); - } - } - } -} - -function doOnInteractions(method, scope) { - return function (event) { - var interactions = scope.interactions.list; - - var pointerType = _pointerUtils["default"].getPointerType(event); - - var _pointerUtils$getEven = _pointerUtils["default"].getEventTargets(event), - _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2), - eventTarget = _pointerUtils$getEven2[0], - curEventTarget = _pointerUtils$getEven2[1]; - - var matches = []; // [ [pointer, interaction], ...] - - if (/^touch/.test(event.type)) { - scope.prevTouchTime = scope.now(); - - for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) { - var _ref6; - - _ref6 = event.changedTouches[_i5]; - var changedTouch = _ref6; - var pointer = changedTouch; - - var pointerId = _pointerUtils["default"].getPointerId(pointer); - - var searchDetails = { - pointer: pointer, - pointerId: pointerId, - pointerType: pointerType, - eventType: event.type, - eventTarget: eventTarget, - curEventTarget: curEventTarget, - scope: scope - }; - var interaction = getInteraction(searchDetails); - matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]); - } - } else { - var invalidPointer = false; - - if (!_browser["default"].supportsPointerEvent && /mouse/.test(event.type)) { - // ignore mouse events while touch interactions are active - for (var i = 0; i < interactions.length && !invalidPointer; i++) { - invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown; - } // try to ignore mouse events that are simulated by the browser - // after a touch event - - - invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated - event.timeStamp === 0; - } - - if (!invalidPointer) { - var _searchDetails = { - pointer: event, - pointerId: _pointerUtils["default"].getPointerId(event), - pointerType: pointerType, - eventType: event.type, - curEventTarget: curEventTarget, - eventTarget: eventTarget, - scope: scope - }; - - var _interaction = getInteraction(_searchDetails); - - matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]); - } - } // eslint-disable-next-line no-shadow - - - for (var _i6 = 0; _i6 < matches.length; _i6++) { - var _matches$_i = _slicedToArray(matches[_i6], 4), - _pointer = _matches$_i[0], - _eventTarget = _matches$_i[1], - _curEventTarget = _matches$_i[2], - _interaction2 = _matches$_i[3]; - - _interaction2[method](_pointer, event, _eventTarget, _curEventTarget); - } - }; -} - -function getInteraction(searchDetails) { - var pointerType = searchDetails.pointerType, - scope = searchDetails.scope; - - var foundInteraction = _interactionFinder["default"].search(searchDetails); - - var signalArg = { - interaction: foundInteraction, - searchDetails: searchDetails - }; - scope.interactions.signals.fire('find', signalArg); - return signalArg.interaction || scope.interactions["new"]({ - pointerType: pointerType - }); -} - -function onDocSignal(_ref7, signalName) { - var doc = _ref7.doc, - scope = _ref7.scope, - options = _ref7.options; - var docEvents = scope.interactions.docEvents; - var eventMethod = signalName.indexOf('add') === 0 ? _events["default"].add : _events["default"].remove; - - if (scope.browser.isIOS && !options.events) { - options.events = { - passive: false - }; - } // delegate event listener - - - for (var eventType in _events["default"].delegatedEvents) { - eventMethod(doc, eventType, _events["default"].delegateListener); - eventMethod(doc, eventType, _events["default"].delegateUseCapture, true); - } - - var eventOptions = options && options.events; - - for (var _i7 = 0; _i7 < docEvents.length; _i7++) { - var _ref8; - - _ref8 = docEvents[_i7]; - var _ref9 = _ref8, - type = _ref9.type, - listener = _ref9.listener; - eventMethod(doc, type, listener, eventOptions); - } -} - -var _default = { - id: 'core/interactions', - install: install, - onDocSignal: onDocSignal, - doOnInteractions: doOnInteractions, - methodNames: methodNames -}; -exports["default"] = _default; - -}); -var _$Interaction_18 = createModuleFactory(function (module, exports) { -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -Object.defineProperty(exports, "PointerInfo", { - enumerable: true, - get: function get() { - return _PointerInfo["default"]; - } -}); -exports["default"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0; - -var utils = _interopRequireWildcard(_$utils_56); - -var _InteractEvent = _interopRequireWildcard(_$InteractEvent_15); - -var _PointerInfo = _interopRequireDefault(_$PointerInfo_19); - -var _scope = _$scope_24({}); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -var _ProxyValues; - -exports._ProxyValues = _ProxyValues; - -(function (_ProxyValues) { - _ProxyValues["interactable"] = ""; - _ProxyValues["element"] = ""; - _ProxyValues["prepared"] = ""; - _ProxyValues["pointerIsDown"] = ""; - _ProxyValues["pointerWasMoved"] = ""; - _ProxyValues["_proxy"] = ""; -})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {})); - -var _ProxyMethods; - -exports._ProxyMethods = _ProxyMethods; - -(function (_ProxyMethods) { - _ProxyMethods["start"] = ""; - _ProxyMethods["move"] = ""; - _ProxyMethods["end"] = ""; - _ProxyMethods["stop"] = ""; - _ProxyMethods["interacting"] = ""; -})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {})); - -var Interaction = -/*#__PURE__*/ -function () { - /** */ - function Interaction(_ref) { - var _this = this; - - var pointerType = _ref.pointerType, - signals = _ref.signals; - - _classCallCheck(this, Interaction); - - // current interactable being interacted with - this.interactable = null; // the target element of the interactable - - this.element = null; // action that's ready to be fired on next move event - - this.prepared = { - name: null, - axis: null, - edges: null - }; // keep track of added pointers - - this.pointers = []; // pointerdown/mousedown/touchstart event - - this.downEvent = null; - this.downPointer = {}; - this._latestPointer = { - pointer: null, - event: null, - eventTarget: null - }; // previous action event - - this.prevEvent = null; - this.pointerIsDown = false; - this.pointerWasMoved = false; - this._interacting = false; - this._ending = false; - this._stopped = true; - this._proxy = null; - this.simulation = null; - /** - * @alias Interaction.prototype.move - */ - - this.doMove = utils.warnOnce(function (signalArg) { - this.move(signalArg); - }, 'The interaction.doMove() method has been renamed to interaction.move()'); - this.coords = { - // Starting InteractEvent pointer coordinates - start: utils.pointer.newCoords(), - // Previous native pointer move event coordinates - prev: utils.pointer.newCoords(), - // current native pointer move event coordinates - cur: utils.pointer.newCoords(), - // Change in coordinates and time of the pointer - delta: utils.pointer.newCoords(), - // pointer velocity - velocity: utils.pointer.newCoords() - }; - this._signals = signals; - this.pointerType = pointerType; - var that = this; - this._proxy = {}; - - var _loop = function _loop(key) { - Object.defineProperty(_this._proxy, key, { - get: function get() { - return that[key]; - } - }); - }; - - for (var key in _ProxyValues) { - _loop(key); - } - - var _loop2 = function _loop2(_key) { - Object.defineProperty(_this._proxy, _key, { - value: function value() { - return that[_key].apply(that, arguments); - } - }); - }; - - for (var _key in _ProxyMethods) { - _loop2(_key); - } - - this._signals.fire('new', { - interaction: this - }); - } - - _createClass(Interaction, [{ - key: "pointerDown", - value: function pointerDown(pointer, event, eventTarget) { - var pointerIndex = this.updatePointer(pointer, event, eventTarget, true); - - this._signals.fire('down', { - pointer: pointer, - event: event, - eventTarget: eventTarget, - pointerIndex: pointerIndex, - interaction: this - }); - } - /** - * ```js - * interact(target) - * .draggable({ - * // disable the default drag start by down->move - * manualStart: true - * }) - * // start dragging after the user holds the pointer down - * .on('hold', function (event) { - * var interaction = event.interaction - * - * if (!interaction.interacting()) { - * interaction.start({ name: 'drag' }, - * event.interactable, - * event.currentTarget) - * } - * }) - * ``` - * - * Start an action with the given Interactable and Element as tartgets. The - * action must be enabled for the target Interactable and an appropriate - * number of pointers must be held down - 1 for drag/resize, 2 for gesture. - * - * Use it with `interactable.able({ manualStart: false })` to always - * [start actions manually](https://github.com/taye/interact.js/issues/114) - * - * @param {object} action The action to be performed - drag, resize, etc. - * @param {Interactable} target The Interactable to target - * @param {Element} element The DOM Element to target - * @return {object} interact - */ - - }, { - key: "start", - value: function start(action, interactable, element) { - if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) { - return false; - } - - utils.copyAction(this.prepared, action); - this.interactable = interactable; - this.element = element; - this.rect = interactable.getRect(element); - this.edges = this.prepared.edges; - this._stopped = false; - this._interacting = this._doPhase({ - interaction: this, - event: this.downEvent, - phase: _InteractEvent.EventPhase.Start - }) && !this._stopped; - return this._interacting; - } - }, { - key: "pointerMove", - value: function pointerMove(pointer, event, eventTarget) { - if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) { - this.updatePointer(pointer, event, eventTarget, false); - utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) { - return p.pointer; - }), this._now()); - } - - var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y; - var dx; - var dy; // register movement greater than pointerMoveTolerance - - if (this.pointerIsDown && !this.pointerWasMoved) { - dx = this.coords.cur.client.x - this.coords.start.client.x; - dy = this.coords.cur.client.y - this.coords.start.client.y; - this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance; - } - - var signalArg = { - pointer: pointer, - pointerIndex: this.getPointerIndex(pointer), - event: event, - eventTarget: eventTarget, - dx: dx, - dy: dy, - duplicate: duplicateMove, - interaction: this - }; - - if (!duplicateMove) { - // set pointer coordinate, time changes and velocity - utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur); - utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta); - } - - this._signals.fire('move', signalArg); - - if (!duplicateMove) { - // if interacting, fire an 'action-move' signal etc - if (this.interacting()) { - this.move(signalArg); - } - - if (this.pointerWasMoved) { - utils.pointer.copyCoords(this.coords.prev, this.coords.cur); - } - } - } - /** - * ```js - * interact(target) - * .draggable(true) - * .on('dragmove', function (event) { - * if (someCondition) { - * // change the snap settings - * event.interactable.draggable({ snap: { targets: [] }}) - * // fire another move event with re-calculated snap - * event.interaction.move() - * } - * }) - * ``` - * - * Force a move of the current action at the same coordinates. Useful if - * snap/restrict has been changed and you want a movement with the new - * settings. - */ - - }, { - key: "move", - value: function move(signalArg) { - signalArg = utils.extend({ - pointer: this._latestPointer.pointer, - event: this._latestPointer.event, - eventTarget: this._latestPointer.eventTarget, - interaction: this - }, signalArg || {}); - signalArg.phase = _InteractEvent.EventPhase.Move; - - this._doPhase(signalArg); - } // End interact move events and stop auto-scroll unless simulation is running - - }, { - key: "pointerUp", - value: function pointerUp(pointer, event, eventTarget, curEventTarget) { - var pointerIndex = this.getPointerIndex(pointer); - - if (pointerIndex === -1) { - pointerIndex = this.updatePointer(pointer, event, eventTarget, false); - } - - this._signals.fire(/cancel$/i.test(event.type) ? 'cancel' : 'up', { - pointer: pointer, - pointerIndex: pointerIndex, - event: event, - eventTarget: eventTarget, - curEventTarget: curEventTarget, - interaction: this - }); - - if (!this.simulation) { - this.end(event); - } - - this.pointerIsDown = false; - this.removePointer(pointer, event); - } - }, { - key: "documentBlur", - value: function documentBlur(event) { - this.end(event); - - this._signals.fire('blur', { - event: event, - interaction: this - }); - } - /** - * ```js - * interact(target) - * .draggable(true) - * .on('move', function (event) { - * if (event.pageX > 1000) { - * // end the current action - * event.interaction.end() - * // stop all further listeners from being called - * event.stopImmediatePropagation() - * } - * }) - * ``` - * - * @param {PointerEvent} [event] - */ - - }, { - key: "end", - value: function end(event) { - this._ending = true; - event = event || this._latestPointer.event; - var endPhaseResult; - - if (this.interacting()) { - endPhaseResult = this._doPhase({ - event: event, - interaction: this, - phase: _InteractEvent.EventPhase.End - }); - } - - this._ending = false; - - if (endPhaseResult === true) { - this.stop(); - } - } - }, { - key: "currentAction", - value: function currentAction() { - return this._interacting ? this.prepared.name : null; - } - }, { - key: "interacting", - value: function interacting() { - return this._interacting; - } - /** */ - - }, { - key: "stop", - value: function stop() { - this._signals.fire('stop', { - interaction: this - }); - - this.interactable = this.element = null; - this._interacting = false; - this._stopped = true; - this.prepared.name = this.prevEvent = null; - } - }, { - key: "getPointerIndex", - value: function getPointerIndex(pointer) { - var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer - - return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) { - return curPointer.id === pointerId; - }); - } - }, { - key: "getPointerInfo", - value: function getPointerInfo(pointer) { - return this.pointers[this.getPointerIndex(pointer)]; - } - }, { - key: "updatePointer", - value: function updatePointer(pointer, event, eventTarget, down) { - var id = utils.pointer.getPointerId(pointer); - var pointerIndex = this.getPointerIndex(pointer); - var pointerInfo = this.pointers[pointerIndex]; - down = down === false ? false : down || /(down|start)$/i.test(event.type); - - if (!pointerInfo) { - pointerInfo = new _PointerInfo["default"](id, pointer, event, null, null); - pointerIndex = this.pointers.length; - this.pointers.push(pointerInfo); - } else { - pointerInfo.pointer = pointer; - } - - if (down) { - this.pointerIsDown = true; - - if (!this.interacting()) { - utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) { - return p.pointer; - }), this._now()); - utils.pointer.copyCoords(this.coords.cur, this.coords.start); - utils.pointer.copyCoords(this.coords.prev, this.coords.start); - utils.pointer.pointerExtend(this.downPointer, pointer); - this.downEvent = event; - pointerInfo.downTime = this.coords.cur.timeStamp; - pointerInfo.downTarget = eventTarget; - this.pointerWasMoved = false; - } - } - - this._updateLatestPointer(pointer, event, eventTarget); - - this._signals.fire('update-pointer', { - pointer: pointer, - event: event, - eventTarget: eventTarget, - down: down, - pointerInfo: pointerInfo, - pointerIndex: pointerIndex, - interaction: this - }); - - return pointerIndex; - } - }, { - key: "removePointer", - value: function removePointer(pointer, event) { - var pointerIndex = this.getPointerIndex(pointer); - - if (pointerIndex === -1) { - return; - } - - var pointerInfo = this.pointers[pointerIndex]; - - this._signals.fire('remove-pointer', { - pointer: pointer, - event: event, - pointerIndex: pointerIndex, - pointerInfo: pointerInfo, - interaction: this - }); - - this.pointers.splice(pointerIndex, 1); - } - }, { - key: "_updateLatestPointer", - value: function _updateLatestPointer(pointer, event, eventTarget) { - this._latestPointer.pointer = pointer; - this._latestPointer.event = event; - this._latestPointer.eventTarget = eventTarget; - } - }, { - key: "destroy", - value: function destroy() { - this._latestPointer.pointer = null; - this._latestPointer.event = null; - this._latestPointer.eventTarget = null; - } - }, { - key: "_createPreparedEvent", - value: function _createPreparedEvent(event, phase, preEnd, type) { - var actionName = this.prepared.name; - return new _InteractEvent["default"](this, event, actionName, phase, this.element, null, preEnd, type); - } - }, { - key: "_fireEvent", - value: function _fireEvent(iEvent) { - this.interactable.fire(iEvent); - - if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) { - this.prevEvent = iEvent; - } - } - }, { - key: "_doPhase", - value: function _doPhase(signalArg) { - var event = signalArg.event, - phase = signalArg.phase, - preEnd = signalArg.preEnd, - type = signalArg.type; - - var beforeResult = this._signals.fire("before-action-".concat(phase), signalArg); - - if (beforeResult === false) { - return false; - } - - var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type); - - var rect = this.rect; - - if (rect) { - // update the rect modifications - var edges = this.edges || this.prepared.edges || { - left: true, - right: true, - top: true, - bottom: true - }; - - if (edges.top) { - rect.top += iEvent.delta.y; - } - - if (edges.bottom) { - rect.bottom += iEvent.delta.y; - } - - if (edges.left) { - rect.left += iEvent.delta.x; - } - - if (edges.right) { - rect.right += iEvent.delta.x; - } - - rect.width = rect.right - rect.left; - rect.height = rect.bottom - rect.top; - } - - this._signals.fire("action-".concat(phase), signalArg); - - this._fireEvent(iEvent); - - this._signals.fire("after-action-".concat(phase), signalArg); - - return true; - } - }, { - key: "_now", - value: function _now() { - return Date.now(); - } - }, { - key: "pointerMoveTolerance", - get: function get() { - return 1; - } - }]); - - return Interaction; -}(); - -exports.Interaction = Interaction; -var _default = Interaction; -exports["default"] = _default; - -}); -var _$arr_47 = {}; -"use strict"; - -Object.defineProperty(_$arr_47, "__esModule", { - value: true -}); -_$arr_47.contains = contains; -_$arr_47.remove = remove; -_$arr_47.merge = merge; -_$arr_47.from = from; -_$arr_47.findIndex = findIndex; -_$arr_47.find = find; - -function contains(array, target) { - return array.indexOf(target) !== -1; -} - -function remove(array, target) { - return array.splice(array.indexOf(target), 1); -} - -function merge(target, source) { - for (var _i = 0; _i < source.length; _i++) { - var _ref; - - _ref = source[_i]; - var item = _ref; - target.push(item); - } - - return target; -} - -function from(source) { - return merge([], source); -} - -function findIndex(array, func) { - for (var i = 0; i < array.length; i++) { - if (func(array[i], i, array)) { - return i; - } - } - - return -1; -} - -function find(array, func) { - return array[findIndex(array, func)]; -} - -var _$domObjects_50 = {}; -"use strict"; - -Object.defineProperty(_$domObjects_50, "__esModule", { - value: true -}); -_$domObjects_50["default"] = void 0; -var domObjects = { - init: init, - document: null, - DocumentFragment: null, - SVGElement: null, - SVGSVGElement: null, - // eslint-disable-next-line no-undef - SVGElementInstance: null, - Element: null, - HTMLElement: null, - Event: null, - Touch: null, - PointerEvent: null -}; - -function blank() {} - -var _default = domObjects; -_$domObjects_50["default"] = _default; - -function init(window) { - var win = window; - domObjects.document = win.document; - domObjects.DocumentFragment = win.DocumentFragment || blank; - domObjects.SVGElement = win.SVGElement || blank; - domObjects.SVGSVGElement = win.SVGSVGElement || blank; - domObjects.SVGElementInstance = win.SVGElementInstance || blank; - domObjects.Element = win.Element || blank; - domObjects.HTMLElement = win.HTMLElement || domObjects.Element; - domObjects.Event = win.Event; - domObjects.Touch = win.Touch || blank; - domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent; -} - -var _$isWindow_58 = {}; -"use strict"; - -Object.defineProperty(_$isWindow_58, "__esModule", { - value: true -}); -_$isWindow_58["default"] = void 0; - -var ___default_58 = function _default(thing) { - return !!(thing && thing.Window) && thing instanceof thing.Window; -}; - -_$isWindow_58["default"] = ___default_58; - -var _$window_66 = {}; -"use strict"; - -Object.defineProperty(_$window_66, "__esModule", { - value: true -}); -_$window_66.init = __init_66; -_$window_66.getWindow = getWindow; -_$window_66["default"] = void 0; - -var _isWindow = _interopRequireDefault(_$isWindow_58); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var win = { - realWindow: undefined, - window: undefined, - getWindow: getWindow, - init: __init_66 -}; - -function __init_66(window) { - // get wrapped window if using Shadow DOM polyfill - win.realWindow = window; // create a TextNode - - var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill - - if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) { - // use wrapped window - window = window.wrap(window); - } - - win.window = window; -} - -if (typeof window === 'undefined') { - win.window = undefined; - win.realWindow = undefined; -} else { - __init_66(window); -} - -function getWindow(node) { - if ((0, _isWindow["default"])(node)) { - return node; - } - - var rootNode = node.ownerDocument || node; - return rootNode.defaultView || win.window; -} - -win.init = __init_66; -var ___default_66 = win; -_$window_66["default"] = ___default_66; - -var _$is_57 = {}; -"use strict"; - -Object.defineProperty(_$is_57, "__esModule", { - value: true -}); -_$is_57.array = _$is_57.plainObject = _$is_57.element = _$is_57.string = _$is_57.bool = _$is_57.number = _$is_57.func = _$is_57.object = _$is_57.docFrag = _$is_57.window = void 0; - -var ___isWindow_57 = ___interopRequireDefault_57(_$isWindow_58); - -var _window2 = ___interopRequireDefault_57(_$window_66); - -function ___interopRequireDefault_57(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -var __window_57 = function window(thing) { - return thing === _window2["default"].window || (0, ___isWindow_57["default"])(thing); -}; - -_$is_57.window = __window_57; - -var docFrag = function docFrag(thing) { - return object(thing) && thing.nodeType === 11; -}; - -_$is_57.docFrag = docFrag; - -var object = function object(thing) { - return !!thing && _typeof(thing) === 'object'; -}; - -_$is_57.object = object; - -var func = function func(thing) { - return typeof thing === 'function'; -}; - -_$is_57.func = func; - -var number = function number(thing) { - return typeof thing === 'number'; -}; - -_$is_57.number = number; - -var bool = function bool(thing) { - return typeof thing === 'boolean'; -}; - -_$is_57.bool = bool; - -var string = function string(thing) { - return typeof thing === 'string'; -}; - -_$is_57.string = string; - -var element = function element(thing) { - if (!thing || _typeof(thing) !== 'object') { - return false; - } - - var _window = _window2["default"].getWindow(thing) || _window2["default"].window; - - return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2 - : thing.nodeType === 1 && typeof thing.nodeName === 'string'; -}; - -_$is_57.element = element; - -var plainObject = function plainObject(thing) { - return object(thing) && !!thing.constructor && /function Object\b/.test(thing.constructor.toString()); -}; - -_$is_57.plainObject = plainObject; - -var array = function array(thing) { - return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice); -}; - -_$is_57.array = array; - -var _$browser_48 = {}; -"use strict"; - -Object.defineProperty(_$browser_48, "__esModule", { - value: true -}); -_$browser_48["default"] = void 0; - -var _domObjects = ___interopRequireDefault_48(_$domObjects_50); - -var is = _interopRequireWildcard(_$is_57); - -var _window = ___interopRequireDefault_48(_$window_66); - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_48(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var browser = { - init: __init_48, - supportsTouch: null, - supportsPointerEvent: null, - isIOS7: null, - isIOS: null, - isIe9: null, - isOperaMobile: null, - prefixedMatchesSelector: null, - pEventTypes: null, - wheelEvent: null -}; - -function __init_48(window) { - var Element = _domObjects["default"].Element; - var navigator = _window["default"].window.navigator; // Does the browser support touch input? - - browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects["default"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents - - browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects["default"].PointerEvent; - browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7 - - browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\d]/.test(navigator.appVersion); - browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently - - browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector - - browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector'; - browser.pEventTypes = browser.supportsPointerEvent ? _domObjects["default"].PointerEvent === window.MSPointerEvent ? { - up: 'MSPointerUp', - down: 'MSPointerDown', - over: 'mouseover', - out: 'mouseout', - move: 'MSPointerMove', - cancel: 'MSPointerCancel' - } : { - up: 'pointerup', - down: 'pointerdown', - over: 'pointerover', - out: 'pointerout', - move: 'pointermove', - cancel: 'pointercancel' - } : null; // because Webkit and Opera still use 'mousewheel' event type - - browser.wheelEvent = 'onmousewheel' in _domObjects["default"].document ? 'mousewheel' : 'wheel'; -} - -var ___default_48 = browser; -_$browser_48["default"] = ___default_48; - -var _$domUtils_51 = {}; -"use strict"; - -Object.defineProperty(_$domUtils_51, "__esModule", { - value: true -}); -_$domUtils_51.nodeContains = nodeContains; -_$domUtils_51.closest = closest; -_$domUtils_51.parentNode = parentNode; -_$domUtils_51.matchesSelector = matchesSelector; -_$domUtils_51.indexOfDeepestElement = indexOfDeepestElement; -_$domUtils_51.matchesUpTo = matchesUpTo; -_$domUtils_51.getActualElement = getActualElement; -_$domUtils_51.getScrollXY = getScrollXY; -_$domUtils_51.getElementClientRect = getElementClientRect; -_$domUtils_51.getElementRect = getElementRect; -_$domUtils_51.getPath = getPath; -_$domUtils_51.trySelector = trySelector; - -var _browser = ___interopRequireDefault_51(_$browser_48); - -var ___domObjects_51 = ___interopRequireDefault_51(_$domObjects_50); - -var __is_51 = ___interopRequireWildcard_51(_$is_57); - -var ___window_51 = ___interopRequireWildcard_51(_$window_66); - -function ___getRequireWildcardCache_51() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function nodeContains(parent, child) { - while (child) { - if (child === parent) { - return true; - } - - child = child.parentNode; - } - - return false; -} - -function closest(element, selector) { - while (__is_51.element(element)) { - if (matchesSelector(element, selector)) { - return element; - } - - element = parentNode(element); - } - - return null; -} - -function parentNode(node) { - var parent = node.parentNode; - - if (__is_51.docFrag(parent)) { - // skip past #shado-root fragments - // tslint:disable-next-line - while ((parent = parent.host) && __is_51.docFrag(parent)) { - continue; - } - - return parent; - } - - return parent; -} - -function matchesSelector(element, selector) { - // remove /deep/ from selectors if shadowDOM polyfill is used - if (___window_51["default"].window !== ___window_51["default"].realWindow) { - selector = selector.replace(/\/deep\//g, ' '); - } - - return element[_browser["default"].prefixedMatchesSelector](selector); -} - -var getParent = function getParent(el) { - return el.parentNode ? el.parentNode : el.host; -}; // Test for the element that's "above" all other qualifiers - - -function indexOfDeepestElement(elements) { - var deepestZoneParents = []; - var deepestZone = elements[0]; - var index = deepestZone ? 0 : -1; - var i; - var n; - - for (i = 1; i < elements.length; i++) { - var dropzone = elements[i]; // an element might belong to multiple selector dropzones - - if (!dropzone || dropzone === deepestZone) { - continue; - } - - if (!deepestZone) { - deepestZone = dropzone; - index = i; - continue; - } // check if the deepest or current are document.documentElement or document.rootElement - // - if the current dropzone is, do nothing and continue - - - if (dropzone.parentNode === dropzone.ownerDocument) { - continue; - } // - if deepest is, update with the current dropzone and continue to next - else if (deepestZone.parentNode === dropzone.ownerDocument) { - deepestZone = dropzone; - index = i; - continue; - } // compare zIndex of siblings - - - if (dropzone.parentNode === deepestZone.parentNode) { - var deepestZIndex = parseInt((0, ___window_51.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0; - var dropzoneZIndex = parseInt((0, ___window_51.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0; - - if (dropzoneZIndex >= deepestZIndex) { - deepestZone = dropzone; - index = i; - } - - continue; - } // populate the ancestry array for the latest deepest dropzone - - - if (!deepestZoneParents.length) { - var _parent = deepestZone; - var parentParent = void 0; - - while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) { - deepestZoneParents.unshift(_parent); - _parent = parentParent; - } - } - - var parent = void 0; // if this element is an svg element and the current deepest is an - // HTMLElement - - if (deepestZone instanceof ___domObjects_51["default"].HTMLElement && dropzone instanceof ___domObjects_51["default"].SVGElement && !(dropzone instanceof ___domObjects_51["default"].SVGSVGElement)) { - if (dropzone === deepestZone.parentNode) { - continue; - } - - parent = dropzone.ownerSVGElement; - } else { - parent = dropzone; - } - - var dropzoneParents = []; - - while (parent.parentNode !== parent.ownerDocument) { - dropzoneParents.unshift(parent); - parent = getParent(parent); - } - - n = 0; // get (position of last common ancestor) + 1 - - while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) { - n++; - } - - var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]]; - var child = parents[0].lastChild; - - while (child) { - if (child === parents[1]) { - deepestZone = dropzone; - index = i; - deepestZoneParents = dropzoneParents; - break; - } else if (child === parents[2]) { - break; - } - - child = child.previousSibling; - } - } - - return index; -} - -function matchesUpTo(element, selector, limit) { - while (__is_51.element(element)) { - if (matchesSelector(element, selector)) { - return true; - } - - element = parentNode(element); - - if (element === limit) { - return matchesSelector(element, selector); - } - } - - return false; -} - -function getActualElement(element) { - return element instanceof ___domObjects_51["default"].SVGElementInstance ? element.correspondingUseElement : element; -} - -function getScrollXY(relevantWindow) { - relevantWindow = relevantWindow || ___window_51["default"].window; - return { - x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft, - y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop - }; -} - -function getElementClientRect(element) { - var clientRect = element instanceof ___domObjects_51["default"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0]; - return clientRect && { - left: clientRect.left, - right: clientRect.right, - top: clientRect.top, - bottom: clientRect.bottom, - width: clientRect.width || clientRect.right - clientRect.left, - height: clientRect.height || clientRect.bottom - clientRect.top - }; -} - -function getElementRect(element) { - var clientRect = getElementClientRect(element); - - if (!_browser["default"].isIOS7 && clientRect) { - var scroll = getScrollXY(___window_51["default"].getWindow(element)); - clientRect.left += scroll.x; - clientRect.right += scroll.x; - clientRect.top += scroll.y; - clientRect.bottom += scroll.y; - } - - return clientRect; -} - -function getPath(node) { - var path = []; - - while (node) { - path.push(node); - node = parentNode(node); - } - - return path; -} - -function trySelector(value) { - if (!__is_51.string(value)) { - return false; - } // an exception will be raised if it is invalid - - - ___domObjects_51["default"].document.querySelector(value); - - return true; -} - -var _$clone_49 = {}; -"use strict"; - -Object.defineProperty(_$clone_49, "__esModule", { - value: true -}); -_$clone_49["default"] = clone; - -var arr = ___interopRequireWildcard_49(_$arr_47); - -var __is_49 = ___interopRequireWildcard_49(_$is_57); - -function ___getRequireWildcardCache_49() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_49 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_49(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_49(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function clone(source) { - var dest = {}; - - for (var prop in source) { - var value = source[prop]; - - if (__is_49.plainObject(value)) { - dest[prop] = clone(value); - } else if (__is_49.array(value)) { - dest[prop] = arr.from(value); - } else { - dest[prop] = value; - } - } - - return dest; -} - -var _$pointerExtend_60 = {}; -"use strict"; - -Object.defineProperty(_$pointerExtend_60, "__esModule", { - value: true -}); -_$pointerExtend_60["default"] = void 0; - -function pointerExtend(dest, source) { - for (var prop in source) { - var prefixedPropREs = pointerExtend.prefixedPropREs; - var deprecated = false; // skip deprecated prefixed properties - - for (var vendor in prefixedPropREs) { - if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) { - deprecated = true; - break; - } - } - - if (!deprecated && typeof source[prop] !== 'function') { - dest[prop] = source[prop]; - } - } - - return dest; -} - -pointerExtend.prefixedPropREs = { - webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/, - moz: /(Pressure)$/ -}; -var ___default_60 = pointerExtend; -_$pointerExtend_60["default"] = ___default_60; - -var _$hypot_55 = {}; -"use strict"; - -Object.defineProperty(_$hypot_55, "__esModule", { - value: true -}); -_$hypot_55["default"] = void 0; - -var ___default_55 = function _default(x, y) { - return Math.sqrt(x * x + y * y); -}; - -_$hypot_55["default"] = ___default_55; - -var _$pointerUtils_61 = {}; -"use strict"; - -Object.defineProperty(_$pointerUtils_61, "__esModule", { - value: true -}); -_$pointerUtils_61["default"] = void 0; - -var ___browser_61 = ___interopRequireDefault_61(_$browser_48); - -var ___domObjects_61 = ___interopRequireDefault_61(_$domObjects_50); - -var domUtils = ___interopRequireWildcard_61(_$domUtils_51); - -var _hypot = ___interopRequireDefault_61(_$hypot_55); - -var __is_61 = ___interopRequireWildcard_61(_$is_57); - -var _pointerExtend = ___interopRequireDefault_61(_$pointerExtend_60); - -function ___getRequireWildcardCache_61() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_61 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_61(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_61(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_61(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var pointerUtils = { - copyCoords: function copyCoords(dest, src) { - dest.page = dest.page || {}; - dest.page.x = src.page.x; - dest.page.y = src.page.y; - dest.client = dest.client || {}; - dest.client.x = src.client.x; - dest.client.y = src.client.y; - dest.timeStamp = src.timeStamp; - }, - setCoordDeltas: function setCoordDeltas(targetObj, prev, cur) { - targetObj.page.x = cur.page.x - prev.page.x; - targetObj.page.y = cur.page.y - prev.page.y; - targetObj.client.x = cur.client.x - prev.client.x; - targetObj.client.y = cur.client.y - prev.client.y; - targetObj.timeStamp = cur.timeStamp - prev.timeStamp; - }, - setCoordVelocity: function setCoordVelocity(targetObj, delta) { - var dt = Math.max(delta.timeStamp / 1000, 0.001); - targetObj.page.x = delta.page.x / dt; - targetObj.page.y = delta.page.y / dt; - targetObj.client.x = delta.client.x / dt; - targetObj.client.y = delta.client.y / dt; - targetObj.timeStamp = dt; - }, - isNativePointer: function isNativePointer(pointer) { - return pointer instanceof ___domObjects_61["default"].Event || pointer instanceof ___domObjects_61["default"].Touch; - }, - // Get specified X/Y coords for mouse or event.touches[0] - getXY: function getXY(type, pointer, xy) { - xy = xy || {}; - type = type || 'page'; - xy.x = pointer[type + 'X']; - xy.y = pointer[type + 'Y']; - return xy; - }, - getPageXY: function getPageXY(pointer, page) { - page = page || { - x: 0, - y: 0 - }; // Opera Mobile handles the viewport and scrolling oddly - - if (___browser_61["default"].isOperaMobile && pointerUtils.isNativePointer(pointer)) { - pointerUtils.getXY('screen', pointer, page); - page.x += window.scrollX; - page.y += window.scrollY; - } else { - pointerUtils.getXY('page', pointer, page); - } - - return page; - }, - getClientXY: function getClientXY(pointer, client) { - client = client || {}; - - if (___browser_61["default"].isOperaMobile && pointerUtils.isNativePointer(pointer)) { - // Opera Mobile handles the viewport and scrolling oddly - pointerUtils.getXY('screen', pointer, client); - } else { - pointerUtils.getXY('client', pointer, client); - } - - return client; - }, - getPointerId: function getPointerId(pointer) { - return __is_61.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier; - }, - setCoords: function setCoords(targetObj, pointers, timeStamp) { - var pointer = pointers.length > 1 ? pointerUtils.pointerAverage(pointers) : pointers[0]; - var tmpXY = {}; - pointerUtils.getPageXY(pointer, tmpXY); - targetObj.page.x = tmpXY.x; - targetObj.page.y = tmpXY.y; - pointerUtils.getClientXY(pointer, tmpXY); - targetObj.client.x = tmpXY.x; - targetObj.client.y = tmpXY.y; - targetObj.timeStamp = timeStamp; - }, - pointerExtend: _pointerExtend["default"], - getTouchPair: function getTouchPair(event) { - var touches = []; // array of touches is supplied - - if (__is_61.array(event)) { - touches[0] = event[0]; - touches[1] = event[1]; - } // an event - else { - if (event.type === 'touchend') { - if (event.touches.length === 1) { - touches[0] = event.touches[0]; - touches[1] = event.changedTouches[0]; - } else if (event.touches.length === 0) { - touches[0] = event.changedTouches[0]; - touches[1] = event.changedTouches[1]; - } - } else { - touches[0] = event.touches[0]; - touches[1] = event.touches[1]; - } - } - - return touches; - }, - pointerAverage: function pointerAverage(pointers) { - var average = { - pageX: 0, - pageY: 0, - clientX: 0, - clientY: 0, - screenX: 0, - screenY: 0 - }; - - for (var _i = 0; _i < pointers.length; _i++) { - var _ref; - - _ref = pointers[_i]; - var pointer = _ref; - - for (var _prop in average) { - average[_prop] += pointer[_prop]; - } - } - - for (var prop in average) { - average[prop] /= pointers.length; - } - - return average; - }, - touchBBox: function touchBBox(event) { - if (!event.length && !(event.touches && event.touches.length > 1)) { - return null; - } - - var touches = pointerUtils.getTouchPair(event); - var minX = Math.min(touches[0].pageX, touches[1].pageX); - var minY = Math.min(touches[0].pageY, touches[1].pageY); - var maxX = Math.max(touches[0].pageX, touches[1].pageX); - var maxY = Math.max(touches[0].pageY, touches[1].pageY); - return { - x: minX, - y: minY, - left: minX, - top: minY, - right: maxX, - bottom: maxY, - width: maxX - minX, - height: maxY - minY - }; - }, - touchDistance: function touchDistance(event, deltaSource) { - var sourceX = deltaSource + 'X'; - var sourceY = deltaSource + 'Y'; - var touches = pointerUtils.getTouchPair(event); - var dx = touches[0][sourceX] - touches[1][sourceX]; - var dy = touches[0][sourceY] - touches[1][sourceY]; - return (0, _hypot["default"])(dx, dy); - }, - touchAngle: function touchAngle(event, deltaSource) { - var sourceX = deltaSource + 'X'; - var sourceY = deltaSource + 'Y'; - var touches = pointerUtils.getTouchPair(event); - var dx = touches[1][sourceX] - touches[0][sourceX]; - var dy = touches[1][sourceY] - touches[0][sourceY]; - var angle = 180 * Math.atan2(dy, dx) / Math.PI; - return angle; - }, - getPointerType: function getPointerType(pointer) { - return __is_61.string(pointer.pointerType) ? pointer.pointerType : __is_61.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the "pointer" must - // be either a MouseEvent, TouchEvent, or Touch object - : /touch/.test(pointer.type) || pointer instanceof ___domObjects_61["default"].Touch ? 'touch' : 'mouse'; - }, - // [ event.target, event.currentTarget ] - getEventTargets: function getEventTargets(event) { - var path = __is_61.func(event.composedPath) ? event.composedPath() : event.path; - return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)]; - }, - newCoords: function newCoords() { - return { - page: { - x: 0, - y: 0 - }, - client: { - x: 0, - y: 0 - }, - timeStamp: 0 - }; - }, - coordsToEvent: function coordsToEvent(coords) { - var event = { - coords: coords, - - get page() { - return this.coords.page; - }, - - get client() { - return this.coords.client; - }, - - get timeStamp() { - return this.coords.timeStamp; - }, - - get pageX() { - return this.coords.page.x; - }, - - get pageY() { - return this.coords.page.y; - }, - - get clientX() { - return this.coords.client.x; - }, - - get clientY() { - return this.coords.client.y; - }, - - get pointerId() { - return this.coords.pointerId; - }, - - get target() { - return this.coords.target; - }, - - get type() { - return this.coords.type; - }, - - get pointerType() { - return this.coords.pointerType; - }, - - get buttons() { - return this.coords.buttons; - } - - }; - return event; - } -}; -var ___default_61 = pointerUtils; -_$pointerUtils_61["default"] = ___default_61; - -var _$events_52 = {}; -"use strict"; - -Object.defineProperty(_$events_52, "__esModule", { - value: true -}); -_$events_52["default"] = _$events_52.FakeEvent = void 0; - -/* removed: var _$arr_47 = require("./arr"); */; - -var __domUtils_52 = ___interopRequireWildcard_52(_$domUtils_51); - -var __is_52 = ___interopRequireWildcard_52(_$is_57); - -var ___pointerExtend_52 = ___interopRequireDefault_52(_$pointerExtend_60); - -var _pointerUtils = ___interopRequireDefault_52(_$pointerUtils_61); - -function ___interopRequireDefault_52(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_52() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_52 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_52(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_52(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -var elements = []; -var targets = []; -var delegatedEvents = {}; -var documents = []; - -function add(element, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var elementIndex = elements.indexOf(element); - var target = targets[elementIndex]; - - if (!target) { - target = { - events: {}, - typeCount: 0 - }; - elementIndex = elements.push(element) - 1; - targets.push(target); - } - - if (!target.events[type]) { - target.events[type] = []; - target.typeCount++; - } - - if (!(0, _$arr_47.contains)(target.events[type], listener)) { - element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture); - target.events[type].push(listener); - } -} - -function __remove_52(element, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var elementIndex = elements.indexOf(element); - var target = targets[elementIndex]; - - if (!target || !target.events) { - return; - } - - if (type === 'all') { - for (type in target.events) { - if (target.events.hasOwnProperty(type)) { - __remove_52(element, type, 'all'); - } - } - - return; - } - - if (target.events[type]) { - var len = target.events[type].length; - - if (listener === 'all') { - for (var i = 0; i < len; i++) { - __remove_52(element, type, target.events[type][i], options); - } - - return; - } else { - for (var _i = 0; _i < len; _i++) { - if (target.events[type][_i] === listener) { - element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture); - target.events[type].splice(_i, 1); - break; - } - } - } - - if (target.events[type] && target.events[type].length === 0) { - target.events[type] = null; - target.typeCount--; - } - } - - if (!target.typeCount) { - targets.splice(elementIndex, 1); - elements.splice(elementIndex, 1); - } -} - -function addDelegate(selector, context, type, listener, optionalArg) { - var options = getOptions(optionalArg); - - if (!delegatedEvents[type]) { - delegatedEvents[type] = { - contexts: [], - listeners: [], - selectors: [] - }; // add delegate listener functions - - for (var _i2 = 0; _i2 < documents.length; _i2++) { - var _ref; - - _ref = documents[_i2]; - var doc = _ref; - add(doc, type, delegateListener); - add(doc, type, delegateUseCapture, true); - } - } - - var delegated = delegatedEvents[type]; - var index; - - for (index = delegated.selectors.length - 1; index >= 0; index--) { - if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { - break; - } - } - - if (index === -1) { - index = delegated.selectors.length; - delegated.selectors.push(selector); - delegated.contexts.push(context); - delegated.listeners.push([]); - } // keep listener and capture and passive flags - - - delegated.listeners[index].push([listener, !!options.capture, options.passive]); -} - -function removeDelegate(selector, context, type, listener, optionalArg) { - var options = getOptions(optionalArg); - var delegated = delegatedEvents[type]; - var matchFound = false; - var index; - - if (!delegated) { - return; - } // count from last index of delegated to 0 - - - for (index = delegated.selectors.length - 1; index >= 0; index--) { - // look for matching selector and context Node - if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { - var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive] - - for (var i = listeners.length - 1; i >= 0; i--) { - var _listeners$i = _slicedToArray(listeners[i], 3), - fn = _listeners$i[0], - capture = _listeners$i[1], - passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match - - - if (fn === listener && capture === !!options.capture && passive === options.passive) { - // remove the listener from the array of listeners - listeners.splice(i, 1); // if all listeners for this interactable have been removed - // remove the interactable from the delegated arrays - - if (!listeners.length) { - delegated.selectors.splice(index, 1); - delegated.contexts.splice(index, 1); - delegated.listeners.splice(index, 1); // remove delegate function from context - - __remove_52(context, type, delegateListener); - __remove_52(context, type, delegateUseCapture, true); // remove the arrays if they are empty - - if (!delegated.selectors.length) { - delegatedEvents[type] = null; - } - } // only remove one listener - - - matchFound = true; - break; - } - } - - if (matchFound) { - break; - } - } - } -} // bound to the interactable context when a DOM event -// listener is added to a selector interactable - - -function delegateListener(event, optionalArg) { - var options = getOptions(optionalArg); - var fakeEvent = new FakeEvent(event); - var delegated = delegatedEvents[event.type]; - - var _pointerUtils$getEven = _pointerUtils["default"].getEventTargets(event), - _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1), - eventTarget = _pointerUtils$getEven2[0]; - - var element = eventTarget; // climb up document tree looking for selector matches - - while (__is_52.element(element)) { - for (var i = 0; i < delegated.selectors.length; i++) { - var selector = delegated.selectors[i]; - var context = delegated.contexts[i]; - - if (__domUtils_52.matchesSelector(element, selector) && __domUtils_52.nodeContains(context, eventTarget) && __domUtils_52.nodeContains(context, element)) { - var listeners = delegated.listeners[i]; - fakeEvent.currentTarget = element; - - for (var _i3 = 0; _i3 < listeners.length; _i3++) { - var _ref2; - - _ref2 = listeners[_i3]; - - var _ref3 = _ref2, - _ref4 = _slicedToArray(_ref3, 3), - fn = _ref4[0], - capture = _ref4[1], - passive = _ref4[2]; - - if (capture === !!options.capture && passive === options.passive) { - fn(fakeEvent); - } - } - } - } - - element = __domUtils_52.parentNode(element); - } -} - -function delegateUseCapture(event) { - return delegateListener.call(this, event, true); -} - -function getOptions(param) { - return __is_52.object(param) ? param : { - capture: param - }; -} - -var FakeEvent = -/*#__PURE__*/ -function () { - function FakeEvent(originalEvent) { - _classCallCheck(this, FakeEvent); - - this.originalEvent = originalEvent; // duplicate the event so that currentTarget can be changed - - (0, ___pointerExtend_52["default"])(this, originalEvent); - } - - _createClass(FakeEvent, [{ - key: "preventOriginalDefault", - value: function preventOriginalDefault() { - this.originalEvent.preventDefault(); - } - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.originalEvent.stopPropagation(); - } - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.originalEvent.stopImmediatePropagation(); - } - }]); - - return FakeEvent; -}(); - -_$events_52.FakeEvent = FakeEvent; -var events = { - add: add, - remove: __remove_52, - addDelegate: addDelegate, - removeDelegate: removeDelegate, - delegateListener: delegateListener, - delegateUseCapture: delegateUseCapture, - delegatedEvents: delegatedEvents, - documents: documents, - supportsOptions: false, - supportsPassive: false, - _elements: elements, - _targets: targets, - init: function init(window) { - window.document.createElement('div').addEventListener('test', null, { - get capture() { - return events.supportsOptions = true; - }, - - get passive() { - return events.supportsPassive = true; - } - - }); - } -}; -var ___default_52 = events; -_$events_52["default"] = ___default_52; - -var _$extend_53 = {}; -"use strict"; - -Object.defineProperty(_$extend_53, "__esModule", { - value: true -}); -_$extend_53["default"] = extend; - -function extend(dest, source) { - for (var prop in source) { - dest[prop] = source[prop]; - } - - return dest; -} - -var _$rect_63 = {}; -"use strict"; - -Object.defineProperty(_$rect_63, "__esModule", { - value: true -}); -_$rect_63.getStringOptionResult = getStringOptionResult; -_$rect_63.resolveRectLike = resolveRectLike; -_$rect_63.rectToXY = rectToXY; -_$rect_63.xywhToTlbr = xywhToTlbr; -_$rect_63.tlbrToXywh = tlbrToXywh; -_$rect_63["default"] = void 0; - -/* removed: var _$domUtils_51 = require("./domUtils"); */; - -var _extend = ___interopRequireDefault_63(_$extend_53); - -var __is_63 = ___interopRequireWildcard_63(_$is_57); - -function ___getRequireWildcardCache_63() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_63 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_63(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_63(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_63(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -function getStringOptionResult(value, target, element) { - if (value === 'parent') { - return (0, _$domUtils_51.parentNode)(element); - } - - if (value === 'self') { - return target.getRect(element); - } - - return (0, _$domUtils_51.closest)(element, value); -} - -function resolveRectLike(value, target, element, functionArgs) { - if (__is_63.string(value)) { - value = getStringOptionResult(value, target, element); - } else if (__is_63.func(value)) { - value = value.apply(void 0, _toConsumableArray(functionArgs)); - } - - if (__is_63.element(value)) { - value = (0, _$domUtils_51.getElementRect)(value); - } - - return value; -} - -function rectToXY(rect) { - return rect && { - x: 'x' in rect ? rect.x : rect.left, - y: 'y' in rect ? rect.y : rect.top - }; -} - -function xywhToTlbr(rect) { - if (rect && !('left' in rect && 'top' in rect)) { - rect = (0, _extend["default"])({}, rect); - rect.left = rect.x || 0; - rect.top = rect.y || 0; - rect.right = rect.right || rect.left + rect.width; - rect.bottom = rect.bottom || rect.top + rect.height; - } - - return rect; -} - -function tlbrToXywh(rect) { - if (rect && !('x' in rect && 'y' in rect)) { - rect = (0, _extend["default"])({}, rect); - rect.x = rect.left || 0; - rect.y = rect.top || 0; - rect.width = rect.width || rect.right - rect.x; - rect.height = rect.height || rect.bottom - rect.y; - } - - return rect; -} - -var ___default_63 = { - getStringOptionResult: getStringOptionResult, - resolveRectLike: resolveRectLike, - rectToXY: rectToXY, - xywhToTlbr: xywhToTlbr, - tlbrToXywh: tlbrToXywh -}; -_$rect_63["default"] = ___default_63; - -var _$getOriginXY_54 = {}; -"use strict"; - -Object.defineProperty(_$getOriginXY_54, "__esModule", { - value: true -}); -_$getOriginXY_54["default"] = ___default_54; - -/* removed: var _$rect_63 = require("./rect"); */; - -function ___default_54(target, element, action) { - var actionOptions = target.options[action]; - var actionOrigin = actionOptions && actionOptions.origin; - var origin = actionOrigin || target.options.origin; - var originRect = (0, _$rect_63.resolveRectLike)(origin, target, element, [target && element]); - return (0, _$rect_63.rectToXY)(originRect) || { - x: 0, - y: 0 - }; -} - -var _$normalizeListeners_59 = {}; -"use strict"; - -Object.defineProperty(_$normalizeListeners_59, "__esModule", { - value: true -}); -_$normalizeListeners_59["default"] = normalize; - -var ___extend_59 = ___interopRequireDefault_59(_$extend_53); - -var __is_59 = ___interopRequireWildcard_59(_$is_57); - -function ___getRequireWildcardCache_59() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_59 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_59(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_59(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_59(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function normalize(type, listeners, result) { - result = result || {}; - - if (__is_59.string(type) && type.search(' ') !== -1) { - type = split(type); - } - - if (__is_59.array(type)) { - return type.reduce(function (acc, t) { - return (0, ___extend_59["default"])(acc, normalize(t, listeners, result)); - }, result); - } // ({ type: fn }) -> ('', { type: fn }) - - - if (__is_59.object(type)) { - listeners = type; - type = ''; - } - - if (__is_59.func(listeners)) { - result[type] = result[type] || []; - result[type].push(listeners); - } else if (__is_59.array(listeners)) { - for (var _i = 0; _i < listeners.length; _i++) { - var _ref; - - _ref = listeners[_i]; - var l = _ref; - normalize(type, l, result); - } - } else if (__is_59.object(listeners)) { - for (var prefix in listeners) { - var combinedTypes = split(prefix).map(function (p) { - return "".concat(type).concat(p); - }); - normalize(combinedTypes, listeners[prefix], result); - } - } - - return result; -} - -function split(type) { - return type.trim().split(/ +/); -} - -var _$raf_62 = {}; -"use strict"; - -Object.defineProperty(_$raf_62, "__esModule", { - value: true -}); -_$raf_62["default"] = void 0; -var lastTime = 0; - -var _request; - -var _cancel; - -function __init_62(window) { - _request = window.requestAnimationFrame; - _cancel = window.cancelAnimationFrame; - - if (!_request) { - var vendors = ['ms', 'moz', 'webkit', 'o']; - - for (var _i = 0; _i < vendors.length; _i++) { - var vendor = vendors[_i]; - _request = window["".concat(vendor, "RequestAnimationFrame")]; - _cancel = window["".concat(vendor, "CancelAnimationFrame")] || window["".concat(vendor, "CancelRequestAnimationFrame")]; - } - } - - if (!_request) { - _request = function request(callback) { - var currTime = Date.now(); - var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal - - var token = setTimeout(function () { - callback(currTime + timeToCall); - }, timeToCall); - lastTime = currTime + timeToCall; - return token; - }; - - _cancel = function cancel(token) { - return clearTimeout(token); - }; - } -} - -var ___default_62 = { - request: function request(callback) { - return _request(callback); - }, - cancel: function cancel(token) { - return _cancel(token); - }, - init: __init_62 -}; -_$raf_62["default"] = ___default_62; - -var _$Signals_46 = {}; -"use strict"; - -Object.defineProperty(_$Signals_46, "__esModule", { - value: true -}); -_$Signals_46["default"] = void 0; - -function ___classCallCheck_46(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_46(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_46(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_46(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_46(Constructor, staticProps); return Constructor; } - -var Signals = -/*#__PURE__*/ -function () { - function Signals() { - ___classCallCheck_46(this, Signals); - - this.listeners = {}; - } - - ___createClass_46(Signals, [{ - key: "on", - value: function on(name, listener) { - if (!this.listeners[name]) { - this.listeners[name] = [listener]; - return; - } - - this.listeners[name].push(listener); - } - }, { - key: "off", - value: function off(name, listener) { - if (!this.listeners[name]) { - return; - } - - var index = this.listeners[name].indexOf(listener); - - if (index !== -1) { - this.listeners[name].splice(index, 1); - } - } - }, { - key: "fire", - value: function fire(name, arg) { - var targetListeners = this.listeners[name]; - - if (!targetListeners) { - return; - } - - for (var _i = 0; _i < targetListeners.length; _i++) { - var _ref; - - _ref = targetListeners[_i]; - var listener = _ref; - - if (listener(arg, name) === false) { - return false; - } - } - } - }]); - - return Signals; -}(); - -var ___default_46 = Signals; -_$Signals_46["default"] = ___default_46; - -var _$utils_56 = {}; -"use strict"; - -Object.defineProperty(_$utils_56, "__esModule", { - value: true -}); -_$utils_56.warnOnce = warnOnce; -_$utils_56._getQBezierValue = _getQBezierValue; -_$utils_56.getQuadraticCurvePoint = getQuadraticCurvePoint; -_$utils_56.easeOutQuad = easeOutQuad; -_$utils_56.copyAction = copyAction; -Object.defineProperty(_$utils_56, "win", { - enumerable: true, - get: function get() { - return ___window_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "browser", { - enumerable: true, - get: function get() { - return ___browser_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "clone", { - enumerable: true, - get: function get() { - return _clone["default"]; - } -}); -Object.defineProperty(_$utils_56, "events", { - enumerable: true, - get: function get() { - return _events["default"]; - } -}); -Object.defineProperty(_$utils_56, "extend", { - enumerable: true, - get: function get() { - return ___extend_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "getOriginXY", { - enumerable: true, - get: function get() { - return _getOriginXY["default"]; - } -}); -Object.defineProperty(_$utils_56, "hypot", { - enumerable: true, - get: function get() { - return ___hypot_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "normalizeListeners", { - enumerable: true, - get: function get() { - return _normalizeListeners["default"]; - } -}); -Object.defineProperty(_$utils_56, "pointer", { - enumerable: true, - get: function get() { - return ___pointerUtils_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "raf", { - enumerable: true, - get: function get() { - return _raf["default"]; - } -}); -Object.defineProperty(_$utils_56, "rect", { - enumerable: true, - get: function get() { - return ___rect_56["default"]; - } -}); -Object.defineProperty(_$utils_56, "Signals", { - enumerable: true, - get: function get() { - return _Signals["default"]; - } -}); -_$utils_56.is = _$utils_56.dom = _$utils_56.arr = void 0; - -var __arr_56 = ___interopRequireWildcard_56(_$arr_47); - -_$utils_56.arr = __arr_56; - -var dom = ___interopRequireWildcard_56(_$domUtils_51); - -_$utils_56.dom = dom; - -var __is_56 = ___interopRequireWildcard_56(_$is_57); - -_$utils_56.is = __is_56; - -var ___window_56 = ___interopRequireDefault_56(_$window_66); - -var ___browser_56 = ___interopRequireDefault_56(_$browser_48); - -var _clone = ___interopRequireDefault_56(_$clone_49); - -var _events = ___interopRequireDefault_56(_$events_52); - -var ___extend_56 = ___interopRequireDefault_56(_$extend_53); - -var _getOriginXY = ___interopRequireDefault_56(_$getOriginXY_54); - -var ___hypot_56 = ___interopRequireDefault_56(_$hypot_55); - -var _normalizeListeners = ___interopRequireDefault_56(_$normalizeListeners_59); - -var ___pointerUtils_56 = ___interopRequireDefault_56(_$pointerUtils_61); - -var _raf = ___interopRequireDefault_56(_$raf_62); - -var ___rect_56 = ___interopRequireDefault_56(_$rect_63); - -var _Signals = ___interopRequireDefault_56(_$Signals_46); - -function ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_56() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_56 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_56(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_56(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function warnOnce(method, message) { - var warned = false; // eslint-disable-next-line no-shadow - - return function () { - if (!warned) { - ___window_56["default"].window.console.warn(message); - - warned = true; - } - - return method.apply(this, arguments); - }; -} // http://stackoverflow.com/a/5634528/2280888 - - -function _getQBezierValue(t, p1, p2, p3) { - var iT = 1 - t; - return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3; -} - -function getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) { - return { - x: _getQBezierValue(position, startX, cpX, endX), - y: _getQBezierValue(position, startY, cpY, endY) - }; -} // http://gizma.com/easing/ - - -function easeOutQuad(t, b, c, d) { - t /= d; - return -c * t * (t - 2) + b; -} - -function copyAction(dest, src) { - dest.name = src.name; - dest.axis = src.axis; - dest.edges = src.edges; - return dest; -} - -var _$defaultOptions_20 = {}; -"use strict"; - -Object.defineProperty(_$defaultOptions_20, "__esModule", { - value: true -}); -_$defaultOptions_20["default"] = _$defaultOptions_20.defaults = void 0; -// tslint:disable no-empty-interface -var defaults = { - base: { - preventDefault: 'auto', - deltaSource: 'page' - }, - perAction: { - enabled: false, - origin: { - x: 0, - y: 0 - } - }, - actions: {} -}; -_$defaultOptions_20.defaults = defaults; -var ___default_20 = defaults; -_$defaultOptions_20["default"] = ___default_20; - -var _$Eventable_14 = {}; -"use strict"; - -Object.defineProperty(_$Eventable_14, "__esModule", { - value: true -}); -_$Eventable_14["default"] = void 0; - -var __arr_14 = ___interopRequireWildcard_14(_$arr_47); - -var ___extend_14 = ___interopRequireDefault_14(_$extend_53); - -var ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_59); - -function ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_14() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; } - -function fireUntilImmediateStopped(event, listeners) { - for (var _i = 0; _i < listeners.length; _i++) { - var _ref; - - _ref = listeners[_i]; - var listener = _ref; - - if (event.immediatePropagationStopped) { - break; - } - - listener(event); - } -} - -var Eventable = -/*#__PURE__*/ -function () { - function Eventable(options) { - ___classCallCheck_14(this, Eventable); - - this.types = {}; - this.propagationStopped = false; - this.immediatePropagationStopped = false; - this.options = (0, ___extend_14["default"])({}, options || {}); - } - - ___createClass_14(Eventable, [{ - key: "fire", - value: function fire(event) { - var listeners; - var global = this.global; // Interactable#on() listeners - // tslint:disable no-conditional-assignment - - if (listeners = this.types[event.type]) { - fireUntilImmediateStopped(event, listeners); - } // interact.on() listeners - - - if (!event.propagationStopped && global && (listeners = global[event.type])) { - fireUntilImmediateStopped(event, listeners); - } - } - }, { - key: "on", - value: function on(type, listener) { - var listeners = (0, ___normalizeListeners_14["default"])(type, listener); - - for (type in listeners) { - this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]); - } - } - }, { - key: "off", - value: function off(type, listener) { - var listeners = (0, ___normalizeListeners_14["default"])(type, listener); - - for (type in listeners) { - var eventList = this.types[type]; - - if (!eventList || !eventList.length) { - continue; - } - - for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { - var _ref2; - - _ref2 = listeners[type][_i2]; - var subListener = _ref2; - var index = eventList.indexOf(subListener); - - if (index !== -1) { - eventList.splice(index, 1); - } - } - } - } - }, { - key: "getRect", - value: function getRect(_element) { - return null; - } - }]); - - return Eventable; -}(); - -var ___default_14 = Eventable; -_$Eventable_14["default"] = ___default_14; - -var _$Interactable_16 = {}; -"use strict"; - -Object.defineProperty(_$Interactable_16, "__esModule", { - value: true -}); -_$Interactable_16["default"] = _$Interactable_16.Interactable = void 0; - -var __arr_16 = ___interopRequireWildcard_16(_$arr_47); - -var ___browser_16 = ___interopRequireDefault_16(_$browser_48); - -var ___clone_16 = ___interopRequireDefault_16(_$clone_49); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___events_16 = ___interopRequireDefault_16(_$events_52); - -var ___extend_16 = ___interopRequireDefault_16(_$extend_53); - -var __is_16 = ___interopRequireWildcard_16(_$is_57); - -var ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_59); - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -var _Eventable = ___interopRequireDefault_16(_$Eventable_14); - -function ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_16() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; } - -/** */ -var Interactable = -/*#__PURE__*/ -function () { - /** */ - function Interactable(target, options, defaultContext) { - ___classCallCheck_16(this, Interactable); - - this.events = new _Eventable["default"](); - this._actions = options.actions; - this.target = target; - this._context = options.context || defaultContext; - this._win = (0, _$window_66.getWindow)((0, _$domUtils_51.trySelector)(target) ? this._context : target); - this._doc = this._win.document; - this.set(options); - } - - ___createClass_16(Interactable, [{ - key: "setOnEvents", - value: function setOnEvents(actionName, phases) { - if (__is_16.func(phases.onstart)) { - this.on("".concat(actionName, "start"), phases.onstart); - } - - if (__is_16.func(phases.onmove)) { - this.on("".concat(actionName, "move"), phases.onmove); - } - - if (__is_16.func(phases.onend)) { - this.on("".concat(actionName, "end"), phases.onend); - } - - if (__is_16.func(phases.oninertiastart)) { - this.on("".concat(actionName, "inertiastart"), phases.oninertiastart); - } - - return this; - } - }, { - key: "updatePerActionListeners", - value: function updatePerActionListeners(actionName, prev, cur) { - if (__is_16.array(prev) || __is_16.object(prev)) { - this.off(actionName, prev); - } - - if (__is_16.array(cur) || __is_16.object(cur)) { - this.on(actionName, cur); - } - } - }, { - key: "setPerAction", - value: function setPerAction(actionName, options) { - var defaults = this._defaults; // for all the default per-action options - - for (var optionName in options) { - var actionOptions = this.options[actionName]; - var optionValue = options[optionName]; - var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones - - if (optionName === 'listeners') { - this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue); - } // if the option value is an array - - - if (isArray) { - actionOptions[optionName] = __arr_16.from(optionValue); - } // if the option value is an object - else if (!isArray && __is_16.plainObject(optionValue)) { - // copy the object - actionOptions[optionName] = (0, ___extend_16["default"])(actionOptions[optionName] || {}, (0, ___clone_16["default"])(optionValue)); // set anabled field to true if it exists in the defaults - - if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) { - actionOptions[optionName].enabled = optionValue.enabled !== false; - } - } // if the option value is a boolean and the default is an object - else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) { - actionOptions[optionName].enabled = optionValue; - } // if it's anything else, do a plain assignment - else { - actionOptions[optionName] = optionValue; - } - } - } - /** - * The default function to get an Interactables bounding rect. Can be - * overridden using {@link Interactable.rectChecker}. - * - * @param {Element} [element] The element to measure. - * @return {object} The object's bounding rectangle. - */ - - }, { - key: "getRect", - value: function getRect(element) { - element = element || (__is_16.element(this.target) ? this.target : null); - - if (__is_16.string(this.target)) { - element = element || this._context.querySelector(this.target); - } - - return (0, _$domUtils_51.getElementRect)(element); - } - /** - * Returns or sets the function used to calculate the interactable's - * element's rectangle - * - * @param {function} [checker] A function which returns this Interactable's - * bounding rectangle. See {@link Interactable.getRect} - * @return {function | object} The checker function or this Interactable - */ - - }, { - key: "rectChecker", - value: function rectChecker(checker) { - if (__is_16.func(checker)) { - this.getRect = checker; - return this; - } - - if (checker === null) { - delete this.getRect; - return this; - } - - return this.getRect; - } - }, { - key: "_backCompatOption", - value: function _backCompatOption(optionName, newValue) { - if ((0, _$domUtils_51.trySelector)(newValue) || __is_16.object(newValue)) { - this.options[optionName] = newValue; - - for (var _i = 0; _i < this._actions.names.length; _i++) { - var _ref; - - _ref = this._actions.names[_i]; - var action = _ref; - this.options[action][optionName] = newValue; - } - - return this; - } - - return this.options[optionName]; - } - /** - * Gets or sets the origin of the Interactable's element. The x and y - * of the origin will be subtracted from action event coordinates. - * - * @param {Element | object | string} [origin] An HTML or SVG Element whose - * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self' - * or any CSS selector - * - * @return {object} The current origin or this Interactable - */ - - }, { - key: "origin", - value: function origin(newValue) { - return this._backCompatOption('origin', newValue); - } - /** - * Returns or sets the mouse coordinate types used to calculate the - * movement of the pointer. - * - * @param {string} [newValue] Use 'client' if you will be scrolling while - * interacting; Use 'page' if you want autoScroll to work - * @return {string | object} The current deltaSource or this Interactable - */ - - }, { - key: "deltaSource", - value: function deltaSource(newValue) { - if (newValue === 'page' || newValue === 'client') { - this.options.deltaSource = newValue; - return this; - } - - return this.options.deltaSource; - } - /** - * Gets the selector context Node of the Interactable. The default is - * `window.document`. - * - * @return {Node} The context Node of this Interactable - */ - - }, { - key: "context", - value: function context() { - return this._context; - } - }, { - key: "inContext", - value: function inContext(element) { - return this._context === element.ownerDocument || (0, _$domUtils_51.nodeContains)(this._context, element); - } - }, { - key: "testIgnoreAllow", - value: function testIgnoreAllow(options, targetNode, eventTarget) { - return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget); - } - }, { - key: "testAllow", - value: function testAllow(allowFrom, targetNode, element) { - if (!allowFrom) { - return true; - } - - if (!__is_16.element(element)) { - return false; - } - - if (__is_16.string(allowFrom)) { - return (0, _$domUtils_51.matchesUpTo)(element, allowFrom, targetNode); - } else if (__is_16.element(allowFrom)) { - return (0, _$domUtils_51.nodeContains)(allowFrom, element); - } - - return false; - } - }, { - key: "testIgnore", - value: function testIgnore(ignoreFrom, targetNode, element) { - if (!ignoreFrom || !__is_16.element(element)) { - return false; - } - - if (__is_16.string(ignoreFrom)) { - return (0, _$domUtils_51.matchesUpTo)(element, ignoreFrom, targetNode); - } else if (__is_16.element(ignoreFrom)) { - return (0, _$domUtils_51.nodeContains)(ignoreFrom, element); - } - - return false; - } - /** - * Calls listeners for the given InteractEvent type bound globally - * and directly to this Interactable - * - * @param {InteractEvent} iEvent The InteractEvent object to be fired on this - * Interactable - * @return {Interactable} this Interactable - */ - - }, { - key: "fire", - value: function fire(iEvent) { - this.events.fire(iEvent); - return this; - } - }, { - key: "_onOff", - value: function _onOff(method, typeArg, listenerArg, options) { - if (__is_16.object(typeArg) && !__is_16.array(typeArg)) { - options = listenerArg; - listenerArg = null; - } - - var addRemove = method === 'on' ? 'add' : 'remove'; - var listeners = (0, ___normalizeListeners_16["default"])(typeArg, listenerArg); - - for (var type in listeners) { - if (type === 'wheel') { - type = ___browser_16["default"].wheelEvent; - } - - for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { - var _ref2; - - _ref2 = listeners[type][_i2]; - var listener = _ref2; - - // if it is an action event type - if (__arr_16.contains(this._actions.eventTypes, type)) { - this.events[method](type, listener); - } // delegated event - else if (__is_16.string(this.target)) { - ___events_16["default"]["".concat(addRemove, "Delegate")](this.target, this._context, type, listener, options); - } // remove listener from this Interactable's element - else { - ___events_16["default"][addRemove](this.target, type, listener, options); - } - } - } - - return this; - } - /** - * Binds a listener for an InteractEvent, pointerEvent or DOM event. - * - * @param {string | array | object} types The types of events to listen - * for - * @param {function | array | object} [listener] The event listener function(s) - * @param {object | boolean} [options] options object or useCapture flag for - * addEventListener - * @return {Interactable} This Interactable - */ - - }, { - key: "on", - value: function on(types, listener, options) { - return this._onOff('on', types, listener, options); - } - /** - * Removes an InteractEvent, pointerEvent or DOM event listener. - * - * @param {string | array | object} types The types of events that were - * listened for - * @param {function | array | object} [listener] The event listener function(s) - * @param {object | boolean} [options] options object or useCapture flag for - * removeEventListener - * @return {Interactable} This Interactable - */ - - }, { - key: "off", - value: function off(types, listener, options) { - return this._onOff('off', types, listener, options); - } - /** - * Reset the options of this Interactable - * - * @param {object} options The new settings to apply - * @return {object} This Interactable - */ - - }, { - key: "set", - value: function set(options) { - var defaults = this._defaults; - - if (!__is_16.object(options)) { - options = {}; - } - - this.options = (0, ___clone_16["default"])(defaults.base); - - for (var actionName in this._actions.methodDict) { - var methodName = this._actions.methodDict[actionName]; - this.options[actionName] = {}; - this.setPerAction(actionName, (0, ___extend_16["default"])((0, ___extend_16["default"])({}, defaults.perAction), defaults.actions[actionName])); - this[methodName](options[actionName]); - } - - for (var setting in options) { - if (__is_16.func(this[setting])) { - this[setting](options[setting]); - } - } - - return this; - } - /** - * Remove this interactable from the list of interactables and remove it's - * action capabilities and event listeners - * - * @return {interact} - */ - - }, { - key: "unset", - value: function unset() { - ___events_16["default"].remove(this.target, 'all'); - - if (__is_16.string(this.target)) { - // remove delegated events - for (var type in ___events_16["default"].delegatedEvents) { - var delegated = ___events_16["default"].delegatedEvents[type]; - - if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) { - delegated.selectors.splice(0, 1); - delegated.contexts.splice(0, 1); - delegated.listeners.splice(0, 1); // remove the arrays if they are empty - - if (!delegated.selectors.length) { - delegated[type] = null; - } - } - - ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateListener); - - ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateUseCapture, true); - } - } else { - ___events_16["default"].remove(this.target, 'all'); - } - } - }, { - key: "_defaults", - get: function get() { - return { - base: {}, - perAction: {}, - actions: {} - }; - } - }]); - - return Interactable; -}(); - -_$Interactable_16.Interactable = Interactable; -var ___default_16 = Interactable; -_$Interactable_16["default"] = ___default_16; - -var _$InteractableSet_17 = {}; -"use strict"; - -Object.defineProperty(_$InteractableSet_17, "__esModule", { - value: true -}); -_$InteractableSet_17["default"] = void 0; - -var __arr_17 = ___interopRequireWildcard_17(_$arr_47); - -var __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_51); - -var ___extend_17 = ___interopRequireDefault_17(_$extend_53); - -var __is_17 = ___interopRequireWildcard_17(_$is_57); - -var ___Signals_17 = ___interopRequireDefault_17(_$Signals_46); - -function ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_17() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; } - -var InteractableSet = -/*#__PURE__*/ -function () { - function InteractableSet(scope) { - var _this = this; - - ___classCallCheck_17(this, InteractableSet); - - this.scope = scope; - this.signals = new ___Signals_17["default"](); // all set interactables - - this.list = []; - this.selectorMap = {}; - this.signals.on('unset', function (_ref) { - var interactable = _ref.interactable; - var target = interactable.target, - context = interactable._context; - var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id]; - var targetIndex = targetMappings.findIndex(function (m) { - return m.context === context; - }); - - if (targetMappings[targetIndex]) { - // Destroying mappingInfo's context and interactable - targetMappings[targetIndex].context = null; - targetMappings[targetIndex].interactable = null; - } - - targetMappings.splice(targetIndex, 1); - }); - } - - ___createClass_17(InteractableSet, [{ - key: "new", - value: function _new(target, options) { - options = (0, ___extend_17["default"])(options || {}, { - actions: this.scope.actions - }); - var interactable = new this.scope.Interactable(target, options, this.scope.document); - var mappingInfo = { - context: interactable._context, - interactable: interactable - }; - this.scope.addDocument(interactable._doc); - this.list.push(interactable); - - if (__is_17.string(target)) { - if (!this.selectorMap[target]) { - this.selectorMap[target] = []; - } - - this.selectorMap[target].push(mappingInfo); - } else { - if (!interactable.target[this.scope.id]) { - Object.defineProperty(target, this.scope.id, { - value: [], - configurable: true - }); - } - - target[this.scope.id].push(mappingInfo); - } - - this.signals.fire('new', { - target: target, - options: options, - interactable: interactable, - win: this.scope._win - }); - return interactable; - } - }, { - key: "get", - value: function get(target, options) { - var context = options && options.context || this.scope.document; - var isSelector = __is_17.string(target); - var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id]; - - if (!targetMappings) { - return null; - } - - var found = __arr_17.find(targetMappings, function (m) { - return m.context === context && (isSelector || m.interactable.inContext(target)); - }); - return found && found.interactable; - } - }, { - key: "forEachMatch", - value: function forEachMatch(node, callback) { - for (var _i = 0; _i < this.list.length; _i++) { - var _ref2; - - _ref2 = this.list[_i]; - var interactable = _ref2; - var ret = void 0; - - if ((__is_17.string(interactable.target) // target is a selector and the element matches - ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element - node === interactable.target) && // the element is in context - interactable.inContext(node)) { - ret = callback(interactable); - } - - if (ret !== undefined) { - return ret; - } - } - } - }]); - - return InteractableSet; -}(); - -_$InteractableSet_17["default"] = InteractableSet; - -var _$BaseEvent_13 = {}; -"use strict"; - -Object.defineProperty(_$BaseEvent_13, "__esModule", { - value: true -}); -_$BaseEvent_13["default"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0; - -function ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; } - -var EventPhase; -_$BaseEvent_13.EventPhase = EventPhase; - -(function (EventPhase) { - EventPhase["Start"] = "start"; - EventPhase["Move"] = "move"; - EventPhase["End"] = "end"; - EventPhase["_NONE"] = ""; -})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {})); - -var BaseEvent = -/*#__PURE__*/ -function () { - function BaseEvent(interaction) { - ___classCallCheck_13(this, BaseEvent); - - this.immediatePropagationStopped = false; - this.propagationStopped = false; - this._interaction = interaction; - } - - ___createClass_13(BaseEvent, [{ - key: "preventDefault", - value: function preventDefault() {} - /** - * Don't call any other listeners (even on the current target) - */ - - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - /** - * Don't call listeners on the remaining targets - */ - - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - }, { - key: "interaction", - get: function get() { - return this._interaction._proxy; - } - }]); - - return BaseEvent; -}(); - -_$BaseEvent_13.BaseEvent = BaseEvent; -var ___default_13 = BaseEvent; -_$BaseEvent_13["default"] = ___default_13; - -var _$InteractEvent_15 = {}; -"use strict"; - -Object.defineProperty(_$InteractEvent_15, "__esModule", { - value: true -}); -_$InteractEvent_15["default"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0; - -var ___extend_15 = ___interopRequireDefault_15(_$extend_53); - -var ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_54); - -var ___hypot_15 = ___interopRequireDefault_15(_$hypot_55); - -var _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13); - -var _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20); - -function ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_15(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_15(obj); } - -function ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; } - -function _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } - -function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } - -function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } - -function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } - -var __EventPhase_15; -_$InteractEvent_15.EventPhase = __EventPhase_15; - -(function (EventPhase) { - EventPhase["Start"] = "start"; - EventPhase["Move"] = "move"; - EventPhase["End"] = "end"; - EventPhase["_NONE"] = ""; -})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {})); - -var InteractEvent = -/*#__PURE__*/ -function (_BaseEvent) { - _inherits(InteractEvent, _BaseEvent); - - /** */ - function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) { - var _this; - - ___classCallCheck_15(this, InteractEvent); - - _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction)); - element = element || interaction.element; - var target = interaction.interactable; - var deltaSource = (target && target.options || _defaultOptions["default"]).deltaSource; - var origin = (0, ___getOriginXY_15["default"])(target, element, actionName); - var starting = phase === 'start'; - var ending = phase === 'end'; - var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent; - var coords = starting ? interaction.coords.start : ending ? { - page: prevEvent.page, - client: prevEvent.client, - timeStamp: interaction.coords.cur.timeStamp - } : interaction.coords.cur; - _this.page = (0, ___extend_15["default"])({}, coords.page); - _this.client = (0, ___extend_15["default"])({}, coords.client); - _this.rect = (0, ___extend_15["default"])({}, interaction.rect); - _this.timeStamp = coords.timeStamp; - - if (!ending) { - _this.page.x -= origin.x; - _this.page.y -= origin.y; - _this.client.x -= origin.x; - _this.client.y -= origin.y; - } - - _this.ctrlKey = event.ctrlKey; - _this.altKey = event.altKey; - _this.shiftKey = event.shiftKey; - _this.metaKey = event.metaKey; - _this.button = event.button; - _this.buttons = event.buttons; - _this.target = element; - _this.currentTarget = element; - _this.relatedTarget = related || null; - _this.preEnd = preEnd; - _this.type = type || actionName + (phase || ''); - _this.interactable = target; - _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0; - _this.x0 = interaction.coords.start.page.x - origin.x; - _this.y0 = interaction.coords.start.page.y - origin.y; - _this.clientX0 = interaction.coords.start.client.x - origin.x; - _this.clientY0 = interaction.coords.start.client.y - origin.y; - - if (starting || ending) { - _this.delta = { - x: 0, - y: 0 - }; - } else { - _this.delta = { - x: _this[deltaSource].x - prevEvent[deltaSource].x, - y: _this[deltaSource].y - prevEvent[deltaSource].y - }; - } - - _this.dt = interaction.coords.delta.timeStamp; - _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second - - _this.velocity = (0, ___extend_15["default"])({}, interaction.coords.velocity[deltaSource]); - _this.speed = (0, ___hypot_15["default"])(_this.velocity.x, _this.velocity.y); - _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null; - return _this; - } - - ___createClass_15(InteractEvent, [{ - key: "getSwipe", - value: function getSwipe() { - var interaction = this._interaction; - - if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) { - return null; - } - - var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI; - var overlap = 22.5; - - if (angle < 0) { - angle += 360; - } - - var left = 135 - overlap <= angle && angle < 225 + overlap; - var up = 225 - overlap <= angle && angle < 315 + overlap; - var right = !left && (315 - overlap <= angle || angle < 45 + overlap); - var down = !up && 45 - overlap <= angle && angle < 135 + overlap; - return { - up: up, - down: down, - left: left, - right: right, - angle: angle, - speed: interaction.prevEvent.speed, - velocity: { - x: interaction.prevEvent.velocityX, - y: interaction.prevEvent.velocityY - } - }; - } - }, { - key: "preventDefault", - value: function preventDefault() {} - /** - * Don't call listeners on the remaining targets - */ - - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - /** - * Don't call any other listeners (even on the current target) - */ - - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - }, { - key: "pageX", - get: function get() { - return this.page.x; - }, - set: function set(value) { - this.page.x = value; - } - }, { - key: "pageY", - get: function get() { - return this.page.y; - }, - set: function set(value) { - this.page.y = value; - } - }, { - key: "clientX", - get: function get() { - return this.client.x; - }, - set: function set(value) { - this.client.x = value; - } - }, { - key: "clientY", - get: function get() { - return this.client.y; - }, - set: function set(value) { - this.client.y = value; - } - }, { - key: "dx", - get: function get() { - return this.delta.x; - }, - set: function set(value) { - this.delta.x = value; - } - }, { - key: "dy", - get: function get() { - return this.delta.y; - }, - set: function set(value) { - this.delta.y = value; - } - }, { - key: "velocityX", - get: function get() { - return this.velocity.x; - }, - set: function set(value) { - this.velocity.x = value; - } - }, { - key: "velocityY", - get: function get() { - return this.velocity.y; - }, - set: function set(value) { - this.velocity.y = value; - } - }]); - - return InteractEvent; -}(_BaseEvent2["default"]); - -_$InteractEvent_15.InteractEvent = InteractEvent; -var ___default_15 = InteractEvent; -_$InteractEvent_15["default"] = ___default_15; - -var _$PointerInfo_19 = {}; -"use strict"; - -Object.defineProperty(_$PointerInfo_19, "__esModule", { - value: true -}); -_$PointerInfo_19["default"] = _$PointerInfo_19.PointerInfo = void 0; - -function ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/* eslint-disable @typescript-eslint/no-parameter-properties */ -var PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) { - ___classCallCheck_19(this, PointerInfo); - - this.id = id; - this.pointer = pointer; - this.event = event; - this.downTime = downTime; - this.downTarget = downTarget; -}; - -_$PointerInfo_19.PointerInfo = PointerInfo; -var ___default_19 = PointerInfo; -_$PointerInfo_19["default"] = ___default_19; - -var _$interactionFinder_22 = {}; -"use strict"; - -Object.defineProperty(_$interactionFinder_22, "__esModule", { - value: true -}); -_$interactionFinder_22["default"] = void 0; - -var __dom_22 = ___interopRequireWildcard_22(_$domUtils_51); - -function ___getRequireWildcardCache_22() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -var finder = { - methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'], - search: function search(details) { - for (var _i = 0; _i < finder.methodOrder.length; _i++) { - var _ref; - - _ref = finder.methodOrder[_i]; - var method = _ref; - var interaction = finder[method](details); - - if (interaction) { - return interaction; - } - } - }, - // try to resume simulation with a new pointer - simulationResume: function simulationResume(_ref2) { - var pointerType = _ref2.pointerType, - eventType = _ref2.eventType, - eventTarget = _ref2.eventTarget, - scope = _ref2.scope; - - if (!/down|start/i.test(eventType)) { - return null; - } - - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref3; - - _ref3 = scope.interactions.list[_i2]; - var interaction = _ref3; - var element = eventTarget; - - if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) { - while (element) { - // if the element is the interaction element - if (element === interaction.element) { - return interaction; - } - - element = __dom_22.parentNode(element); - } - } - } - - return null; - }, - // if it's a mouse or pen interaction - mouseOrPen: function mouseOrPen(_ref4) { - var pointerId = _ref4.pointerId, - pointerType = _ref4.pointerType, - eventType = _ref4.eventType, - scope = _ref4.scope; - - if (pointerType !== 'mouse' && pointerType !== 'pen') { - return null; - } - - var firstNonActive; - - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref5; - - _ref5 = scope.interactions.list[_i3]; - var interaction = _ref5; - - if (interaction.pointerType === pointerType) { - // if it's a down event, skip interactions with running simulations - if (interaction.simulation && !hasPointerId(interaction, pointerId)) { - continue; - } // if the interaction is active, return it immediately - - - if (interaction.interacting()) { - return interaction; - } // otherwise save it and look for another active interaction - else if (!firstNonActive) { - firstNonActive = interaction; - } - } - } // if no active mouse interaction was found use the first inactive mouse - // interaction - - - if (firstNonActive) { - return firstNonActive; - } // find any mouse or pen interaction. - // ignore the interaction if the eventType is a *down, and a simulation - // is active - - - for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { - var _ref6; - - _ref6 = scope.interactions.list[_i4]; - var _interaction = _ref6; - - if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) { - return _interaction; - } - } - - return null; - }, - // get interaction that has this pointer - hasPointer: function hasPointer(_ref7) { - var pointerId = _ref7.pointerId, - scope = _ref7.scope; - - for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) { - var _ref8; - - _ref8 = scope.interactions.list[_i5]; - var interaction = _ref8; - - if (hasPointerId(interaction, pointerId)) { - return interaction; - } - } - - return null; - }, - // get first idle interaction with a matching pointerType - idle: function idle(_ref9) { - var pointerType = _ref9.pointerType, - scope = _ref9.scope; - - for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) { - var _ref10; - - _ref10 = scope.interactions.list[_i6]; - var interaction = _ref10; - - // if there's already a pointer held down - if (interaction.pointers.length === 1) { - var target = interaction.interactable; // don't add this pointer if there is a target interactable and it - // isn't gesturable - - if (target && !(target.options.gesture && target.options.gesture.enabled)) { - continue; - } - } // maximum of 2 pointers per interaction - else if (interaction.pointers.length >= 2) { - continue; - } - - if (!interaction.interacting() && pointerType === interaction.pointerType) { - return interaction; - } - } - - return null; - } -}; - -function hasPointerId(interaction, pointerId) { - return interaction.pointers.some(function (_ref11) { - var id = _ref11.id; - return id === pointerId; - }); -} - -var ___default_22 = finder; -_$interactionFinder_22["default"] = ___default_22; - -var _$drag_1 = {}; -"use strict"; - -Object.defineProperty(_$drag_1, "__esModule", { - value: true -}); -_$drag_1["default"] = void 0; - -var ___scope_1 = _$scope_24({}); - -var __arr_1 = ___interopRequireWildcard_1(_$arr_47); - -var __is_1 = ___interopRequireWildcard_1(_$is_57); - -function ___getRequireWildcardCache_1() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -___scope_1.ActionName.Drag = 'drag'; - -function __install_1(scope) { - var actions = scope.actions, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - interactions.signals.on('before-action-move', beforeMove); - interactions.signals.on('action-resume', beforeMove); // dragmove - - interactions.signals.on('action-move', move); - Interactable.prototype.draggable = drag.draggable; - actions[___scope_1.ActionName.Drag] = drag; - actions.names.push(___scope_1.ActionName.Drag); - __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']); - actions.methodDict.drag = 'draggable'; - defaults.actions.drag = drag.defaults; -} - -function beforeMove(_ref) { - var interaction = _ref.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var axis = interaction.prepared.axis; - - if (axis === 'x') { - interaction.coords.cur.page.y = interaction.coords.start.page.y; - interaction.coords.cur.client.y = interaction.coords.start.client.y; - interaction.coords.velocity.client.y = 0; - interaction.coords.velocity.page.y = 0; - } else if (axis === 'y') { - interaction.coords.cur.page.x = interaction.coords.start.page.x; - interaction.coords.cur.client.x = interaction.coords.start.client.x; - interaction.coords.velocity.client.x = 0; - interaction.coords.velocity.page.x = 0; - } -} - -function move(_ref2) { - var iEvent = _ref2.iEvent, - interaction = _ref2.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var axis = interaction.prepared.axis; - - if (axis === 'x' || axis === 'y') { - var opposite = axis === 'x' ? 'y' : 'x'; - iEvent.page[opposite] = interaction.coords.start.page[opposite]; - iEvent.client[opposite] = interaction.coords.start.client[opposite]; - iEvent.delta[opposite] = 0; - } -} -/** - * ```js - * interact(element).draggable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * // the axis in which the first movement must be - * // for the drag sequence to start - * // 'xy' by default - any direction - * startAxis: 'x' || 'y' || 'xy', - * - * // 'xy' by default - don't restrict to one axis (move in any direction) - * // 'x' or 'y' to restrict movement to either axis - * // 'start' to restrict movement to the axis the drag started in - * lockAxis: 'x' || 'y' || 'xy' || 'start', - * - * // max number of drags that can happen concurrently - * // with elements of this Interactable. Infinity by default - * max: Infinity, - * - * // max number of drags that can target the same element+Interactable - * // 1 by default - * maxPerElement: 2 - * }) - * - * var isDraggable = interact('element').draggable(); // true - * ``` - * - * Get or set whether drag actions can be performed on the target - * - * @alias Interactable.prototype.draggable - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on drag events (object makes the Interactable - * draggable) - * @return {boolean | Interactable} boolean indicating if this can be the - * target of drag events, or this Interctable - */ - - -var draggable = function draggable(options) { - if (__is_1.object(options)) { - this.options.drag.enabled = options.enabled !== false; - this.setPerAction('drag', options); - this.setOnEvents('drag', options); - - if (/^(xy|x|y|start)$/.test(options.lockAxis)) { - this.options.drag.lockAxis = options.lockAxis; - } - - if (/^(xy|x|y)$/.test(options.startAxis)) { - this.options.drag.startAxis = options.startAxis; - } - - return this; - } - - if (__is_1.bool(options)) { - this.options.drag.enabled = options; - return this; - } - - return this.options.drag; -}; - -var drag = { - id: 'actions/drag', - install: __install_1, - draggable: draggable, - beforeMove: beforeMove, - move: move, - defaults: { - startAxis: 'xy', - lockAxis: 'xy' - }, - checker: function checker(_pointer, _event, interactable) { - var dragOptions = interactable.options.drag; - return dragOptions.enabled ? { - name: 'drag', - axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis - } : null; - }, - getCursor: function getCursor() { - return 'move'; - } -}; -var ___default_1 = drag; -_$drag_1["default"] = ___default_1; - -var _$DropEvent_2 = {}; -"use strict"; - -Object.defineProperty(_$DropEvent_2, "__esModule", { - value: true -}); -_$DropEvent_2["default"] = void 0; - -var ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13); - -var __arr_2 = ___interopRequireWildcard_2(_$arr_47); - -function ___getRequireWildcardCache_2() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_2(obj); } - -function ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); } - -function ___nonIterableSpread_2() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -function ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; } - -function ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_2(self); } - -function ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); } - -function ___inherits_2(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); } - -function ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); } - -var DropEvent = -/*#__PURE__*/ -function (_BaseEvent) { - ___inherits_2(DropEvent, _BaseEvent); - - /** - * Class of events fired on dropzones during drags with acceptable targets. - */ - function DropEvent(dropState, dragEvent, type) { - var _this; - - ___classCallCheck_2(this, DropEvent); - - _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction)); - _this.propagationStopped = false; - _this.immediatePropagationStopped = false; - - var _ref = type === 'dragleave' ? dropState.prev : dropState.cur, - element = _ref.element, - dropzone = _ref.dropzone; - - _this.type = type; - _this.target = element; - _this.currentTarget = element; - _this.dropzone = dropzone; - _this.dragEvent = dragEvent; - _this.relatedTarget = dragEvent.target; - _this.draggable = dragEvent.interactable; - _this.timeStamp = dragEvent.timeStamp; - return _this; - } - /** - * If this is a `dropactivate` event, the dropzone element will be - * deactivated. - * - * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the - * dropzone element and more. - */ - - - ___createClass_2(DropEvent, [{ - key: "reject", - value: function reject() { - var _this2 = this; - - var dropState = this._interaction.dropState; - - if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) { - return; - } - - dropState.prev.dropzone = this.dropzone; - dropState.prev.element = this.target; - dropState.rejected = true; - dropState.events.enter = null; - this.stopImmediatePropagation(); - - if (this.type === 'dropactivate') { - var activeDrops = dropState.activeDrops; - var index = __arr_2.findIndex(activeDrops, function (_ref2) { - var dropzone = _ref2.dropzone, - element = _ref2.element; - return dropzone === _this2.dropzone && element === _this2.target; - }); - dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1))); - var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate'); - deactivateEvent.dropzone = this.dropzone; - deactivateEvent.target = this.target; - this.dropzone.fire(deactivateEvent); - } else { - this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave')); - } - } - }, { - key: "preventDefault", - value: function preventDefault() {} - }, { - key: "stopPropagation", - value: function stopPropagation() { - this.propagationStopped = true; - } - }, { - key: "stopImmediatePropagation", - value: function stopImmediatePropagation() { - this.immediatePropagationStopped = this.propagationStopped = true; - } - }]); - - return DropEvent; -}(___BaseEvent2_2["default"]); - -var ___default_2 = DropEvent; -_$DropEvent_2["default"] = ___default_2; - -var _$drop_3 = {}; -"use strict"; - -Object.defineProperty(_$drop_3, "__esModule", { - value: true -}); -_$drop_3["default"] = void 0; - -var __utils_3 = ___interopRequireWildcard_3(_$utils_56); - -var _drag = ___interopRequireDefault_3(_$drag_1); - -var _DropEvent = ___interopRequireDefault_3(_$DropEvent_2); - -function ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_3() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_3(scope) { - var actions = scope.actions, - interact = scope.interact, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(_drag["default"]); - interactions.signals.on('before-action-start', function (_ref) { - var interaction = _ref.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - interaction.dropState = { - cur: { - dropzone: null, - element: null - }, - prev: { - dropzone: null, - element: null - }, - rejected: null, - events: null, - activeDrops: null - }; - }); - interactions.signals.on('after-action-start', function (_ref2) { - var interaction = _ref2.interaction, - event = _ref2.event, - dragEvent = _ref2.iEvent; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var dropState = interaction.dropState; // reset active dropzones - - dropState.activeDrops = null; - dropState.events = null; - dropState.activeDrops = getActiveDrops(scope, interaction.element); - dropState.events = getDropEvents(interaction, event, dragEvent); - - if (dropState.events.activate) { - fireActivationEvents(dropState.activeDrops, dropState.events.activate); - } - }); // FIXME proper signal types - - interactions.signals.on('action-move', function (arg) { - return onEventCreated(arg, scope); - }); - interactions.signals.on('action-end', function (arg) { - return onEventCreated(arg, scope); - }); - interactions.signals.on('after-action-move', function (_ref3) { - var interaction = _ref3.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - fireDropEvents(interaction, interaction.dropState.events); - interaction.dropState.events = {}; - }); - interactions.signals.on('after-action-end', function (_ref4) { - var interaction = _ref4.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - fireDropEvents(interaction, interaction.dropState.events); - }); - interactions.signals.on('stop', function (_ref5) { - var interaction = _ref5.interaction; - - if (interaction.prepared.name !== 'drag') { - return; - } - - var dropState = interaction.dropState; - - if (dropState) { - dropState.activeDrops = null; - dropState.events = null; - dropState.cur.dropzone = null; - dropState.cur.element = null; - dropState.prev.dropzone = null; - dropState.prev.element = null; - dropState.rejected = false; - } - }); - /** - * - * ```js - * interact('.drop').dropzone({ - * accept: '.can-drop' || document.getElementById('single-drop'), - * overlap: 'pointer' || 'center' || zeroToOne - * } - * ``` - * - * Returns or sets whether draggables can be dropped onto this target to - * trigger drop events - * - * Dropzones can receive the following events: - * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends - * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone - * - `dragmove` when a draggable that has entered the dropzone is moved - * - `drop` when a draggable is dropped into this dropzone - * - * Use the `accept` option to allow only elements that match the given CSS - * selector or element. The value can be: - * - * - **an Element** - only that element can be dropped into this dropzone. - * - **a string**, - the element being dragged must match it as a CSS selector. - * - **`null`** - accept options is cleared - it accepts any element. - * - * Use the `overlap` option to set how drops are checked for. The allowed - * values are: - * - * - `'pointer'`, the pointer must be over the dropzone (default) - * - `'center'`, the draggable element's center must be over the dropzone - * - a number from 0-1 which is the `(intersection area) / (draggable area)`. - * e.g. `0.5` for drop to happen when half of the area of the draggable is - * over the dropzone - * - * Use the `checker` option to specify a function to check if a dragged element - * is over this Interactable. - * - * @param {boolean | object | null} [options] The new options to be set. - * @return {boolean | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.dropzone = function (options) { - return dropzoneMethod(this, options); - }; - /** - * ```js - * interact(target) - * .dropChecker(function(dragEvent, // related dragmove or dragend event - * event, // TouchEvent/PointerEvent/MouseEvent - * dropped, // bool result of the default checker - * dropzone, // dropzone Interactable - * dropElement, // dropzone elemnt - * draggable, // draggable Interactable - * draggableElement) {// draggable element - * - * return dropped && event.target.hasAttribute('allow-drop') - * } - * ``` - */ - - - Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) { - return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect); - }; - /** - * Returns or sets whether the dimensions of dropzone elements are calculated - * on every dragmove or only on dragstart for the default dropChecker - * - * @param {boolean} [newValue] True to check on each move. False to check only - * before start - * @return {boolean | interact} The current setting or interact - */ - - - interact.dynamicDrop = function (newValue) { - if (__utils_3.is.bool(newValue)) { - // if (dragging && scope.dynamicDrop !== newValue && !newValue) { - // calcRects(dropzones) - // } - scope.dynamicDrop = newValue; - return interact; - } - - return scope.dynamicDrop; - }; - - __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']); - actions.methodDict.drop = 'dropzone'; - scope.dynamicDrop = false; - defaults.actions.drop = drop.defaults; -} - -function collectDrops(_ref6, draggableElement) { - var interactables = _ref6.interactables; - var drops = []; // collect all dropzones and their elements which qualify for a drop - - for (var _i = 0; _i < interactables.list.length; _i++) { - var _ref7; - - _ref7 = interactables.list[_i]; - var dropzone = _ref7; - - if (!dropzone.options.drop.enabled) { - continue; - } - - var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting - - if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({ - dropzone: dropzone, - draggableElement: draggableElement - })) { - continue; - } // query for new elements if necessary - - - var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target]; - - for (var _i2 = 0; _i2 < dropElements.length; _i2++) { - var _ref8; - - _ref8 = dropElements[_i2]; - var dropzoneElement = _ref8; - - if (dropzoneElement !== draggableElement) { - drops.push({ - dropzone: dropzone, - element: dropzoneElement - }); - } - } - } - - return drops; -} - -function fireActivationEvents(activeDrops, event) { - // loop through all active dropzones and trigger event - for (var _i3 = 0; _i3 < activeDrops.length; _i3++) { - var _ref9; - - _ref9 = activeDrops[_i3]; - var _ref10 = _ref9, - dropzone = _ref10.dropzone, - element = _ref10.element; - event.dropzone = dropzone; // set current element as event target - - event.target = element; - dropzone.fire(event); - event.propagationStopped = event.immediatePropagationStopped = false; - } -} // return a new array of possible drops. getActiveDrops should always be -// called when a drag has just started or a drag event happens while -// dynamicDrop is true - - -function getActiveDrops(scope, dragElement) { - // get dropzones and their elements that could receive the draggable - var activeDrops = collectDrops(scope, dragElement); - - for (var _i4 = 0; _i4 < activeDrops.length; _i4++) { - var _ref11; - - _ref11 = activeDrops[_i4]; - var activeDrop = _ref11; - activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element); - } - - return activeDrops; -} - -function getDrop(_ref12, dragEvent, pointerEvent) { - var dropState = _ref12.dropState, - draggable = _ref12.interactable, - dragElement = _ref12.element; - var validDrops = []; // collect all dropzones and their elements which qualify for a drop - - for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) { - var _ref13; - - _ref13 = dropState.activeDrops[_i5]; - var _ref14 = _ref13, - dropzone = _ref14.dropzone, - dropzoneElement = _ref14.element, - rect = _ref14.rect; - validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null); - } // get the most appropriate dropzone based on DOM depth and order - - - var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops); - return dropState.activeDrops[dropIndex] || null; -} - -function getDropEvents(interaction, _pointerEvent, dragEvent) { - var dropState = interaction.dropState; - var dropEvents = { - enter: null, - leave: null, - activate: null, - deactivate: null, - move: null, - drop: null - }; - - if (dragEvent.type === 'dragstart') { - dropEvents.activate = new _DropEvent["default"](dropState, dragEvent, 'dropactivate'); - dropEvents.activate.target = null; - dropEvents.activate.dropzone = null; - } - - if (dragEvent.type === 'dragend') { - dropEvents.deactivate = new _DropEvent["default"](dropState, dragEvent, 'dropdeactivate'); - dropEvents.deactivate.target = null; - dropEvents.deactivate.dropzone = null; - } - - if (dropState.rejected) { - return dropEvents; - } - - if (dropState.cur.element !== dropState.prev.element) { - // if there was a previous dropzone, create a dragleave event - if (dropState.prev.dropzone) { - dropEvents.leave = new _DropEvent["default"](dropState, dragEvent, 'dragleave'); - dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element; - dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone; - } // if dropzone is not null, create a dragenter event - - - if (dropState.cur.dropzone) { - dropEvents.enter = new _DropEvent["default"](dropState, dragEvent, 'dragenter'); - dragEvent.dragEnter = dropState.cur.element; - dragEvent.dropzone = dropState.cur.dropzone; - } - } - - if (dragEvent.type === 'dragend' && dropState.cur.dropzone) { - dropEvents.drop = new _DropEvent["default"](dropState, dragEvent, 'drop'); - dragEvent.dropzone = dropState.cur.dropzone; - dragEvent.relatedTarget = dropState.cur.element; - } - - if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) { - dropEvents.move = new _DropEvent["default"](dropState, dragEvent, 'dropmove'); - dropEvents.move.dragmove = dragEvent; - dragEvent.dropzone = dropState.cur.dropzone; - } - - return dropEvents; -} - -function fireDropEvents(interaction, events) { - var dropState = interaction.dropState; - var activeDrops = dropState.activeDrops, - cur = dropState.cur, - prev = dropState.prev; - - if (events.leave) { - prev.dropzone.fire(events.leave); - } - - if (events.move) { - cur.dropzone.fire(events.move); - } - - if (events.enter) { - cur.dropzone.fire(events.enter); - } - - if (events.drop) { - cur.dropzone.fire(events.drop); - } - - if (events.deactivate) { - fireActivationEvents(activeDrops, events.deactivate); - } - - dropState.prev.dropzone = cur.dropzone; - dropState.prev.element = cur.element; -} - -function onEventCreated(_ref15, scope) { - var interaction = _ref15.interaction, - iEvent = _ref15.iEvent, - event = _ref15.event; - - if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') { - return; - } - - var dropState = interaction.dropState; - - if (scope.dynamicDrop) { - dropState.activeDrops = getActiveDrops(scope, interaction.element); - } - - var dragEvent = iEvent; - var dropResult = getDrop(interaction, dragEvent, event); // update rejected status - - dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element; - dropState.cur.dropzone = dropResult && dropResult.dropzone; - dropState.cur.element = dropResult && dropResult.element; - dropState.events = getDropEvents(interaction, event, dragEvent); -} - -function dropzoneMethod(interactable, options) { - if (__utils_3.is.object(options)) { - interactable.options.drop.enabled = options.enabled !== false; - - if (options.listeners) { - var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop' - - var corrected = Object.keys(normalized).reduce(function (acc, type) { - var correctedType = /^(enter|leave)/.test(type) ? "drag".concat(type) : /^(activate|deactivate|move)/.test(type) ? "drop".concat(type) : type; - acc[correctedType] = normalized[type]; - return acc; - }, {}); - interactable.off(interactable.options.drop.listeners); - interactable.on(corrected); - interactable.options.drop.listeners = corrected; - } - - if (__utils_3.is.func(options.ondrop)) { - interactable.on('drop', options.ondrop); - } - - if (__utils_3.is.func(options.ondropactivate)) { - interactable.on('dropactivate', options.ondropactivate); - } - - if (__utils_3.is.func(options.ondropdeactivate)) { - interactable.on('dropdeactivate', options.ondropdeactivate); - } - - if (__utils_3.is.func(options.ondragenter)) { - interactable.on('dragenter', options.ondragenter); - } - - if (__utils_3.is.func(options.ondragleave)) { - interactable.on('dragleave', options.ondragleave); - } - - if (__utils_3.is.func(options.ondropmove)) { - interactable.on('dropmove', options.ondropmove); - } - - if (/^(pointer|center)$/.test(options.overlap)) { - interactable.options.drop.overlap = options.overlap; - } else if (__utils_3.is.number(options.overlap)) { - interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0); - } - - if ('accept' in options) { - interactable.options.drop.accept = options.accept; - } - - if ('checker' in options) { - interactable.options.drop.checker = options.checker; - } - - return interactable; - } - - if (__utils_3.is.bool(options)) { - interactable.options.drop.enabled = options; - return interactable; - } - - return interactable.options.drop; -} - -function dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) { - var dropped = false; // if the dropzone has no rect (eg. display: none) - // call the custom dropChecker or just return false - - if (!(rect = rect || interactable.getRect(dropElement))) { - return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false; - } - - var dropOverlap = interactable.options.drop.overlap; - - if (dropOverlap === 'pointer') { - var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag'); - var page = __utils_3.pointer.getPageXY(dragEvent); - page.x += origin.x; - page.y += origin.y; - var horizontal = page.x > rect.left && page.x < rect.right; - var vertical = page.y > rect.top && page.y < rect.bottom; - dropped = horizontal && vertical; - } - - var dragRect = draggable.getRect(draggableElement); - - if (dragRect && dropOverlap === 'center') { - var cx = dragRect.left + dragRect.width / 2; - var cy = dragRect.top + dragRect.height / 2; - dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom; - } - - if (dragRect && __utils_3.is.number(dropOverlap)) { - var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top)); - var overlapRatio = overlapArea / (dragRect.width * dragRect.height); - dropped = overlapRatio >= dropOverlap; - } - - if (interactable.options.drop.checker) { - dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement); - } - - return dropped; -} - -var drop = { - id: 'actions/drop', - install: __install_3, - getActiveDrops: getActiveDrops, - getDrop: getDrop, - getDropEvents: getDropEvents, - fireDropEvents: fireDropEvents, - defaults: { - enabled: false, - accept: null, - overlap: 'pointer' - } -}; -var ___default_3 = drop; -_$drop_3["default"] = ___default_3; - -var _$gesture_4 = {}; -"use strict"; - -Object.defineProperty(_$gesture_4, "__esModule", { - value: true -}); -_$gesture_4["default"] = void 0; - -var ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15); - -var ___scope_4 = _$scope_24({}); - -var __utils_4 = ___interopRequireWildcard_4(_$utils_56); - -function ___getRequireWildcardCache_4() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -___scope_4.ActionName.Gesture = 'gesture'; - -function __install_4(scope) { - var actions = scope.actions, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; - /** - * ```js - * interact(element).gesturable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * // limit multiple gestures. - * // See the explanation in {@link Interactable.draggable} example - * max: Infinity, - * maxPerElement: 1, - * }) - * - * var isGestureable = interact(element).gesturable() - * ``` - * - * Gets or sets whether multitouch gestures can be performed on the target - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on gesture events (makes the Interactable gesturable) - * @return {boolean | Interactable} A boolean indicating if this can be the - * target of gesture events, or this Interactable - */ - - Interactable.prototype.gesturable = function (options) { - if (__utils_4.is.object(options)) { - this.options.gesture.enabled = options.enabled !== false; - this.setPerAction('gesture', options); - this.setOnEvents('gesture', options); - return this; - } - - if (__utils_4.is.bool(options)) { - this.options.gesture.enabled = options; - return this; - } - - return this.options.gesture; - }; - - interactions.signals.on('action-start', updateGestureProps); - interactions.signals.on('action-move', updateGestureProps); - interactions.signals.on('action-end', updateGestureProps); - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.gesture = { - angle: 0, - distance: 0, - scale: 1, - startAngle: 0, - startDistance: 0 - }; - }); - actions[___scope_4.ActionName.Gesture] = gesture; - actions.names.push(___scope_4.ActionName.Gesture); - __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']); - actions.methodDict.gesture = 'gesturable'; - defaults.actions.gesture = gesture.defaults; -} - -var gesture = { - id: 'actions/gesture', - install: __install_4, - defaults: {}, - checker: function checker(_pointer, _event, _interactable, _element, interaction) { - if (interaction.pointers.length >= 2) { - return { - name: 'gesture' - }; - } - - return null; - }, - getCursor: function getCursor() { - return ''; - } -}; - -function updateGestureProps(_ref2) { - var interaction = _ref2.interaction, - iEvent = _ref2.iEvent, - event = _ref2.event, - phase = _ref2.phase; - - if (interaction.prepared.name !== 'gesture') { - return; - } - - var pointers = interaction.pointers.map(function (p) { - return p.pointer; - }); - var starting = phase === 'start'; - var ending = phase === 'end'; - var deltaSource = interaction.interactable.options.deltaSource; - iEvent.touches = [pointers[0], pointers[1]]; - - if (starting) { - iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); - iEvent.box = __utils_4.pointer.touchBBox(pointers); - iEvent.scale = 1; - iEvent.ds = 0; - iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); - iEvent.da = 0; - interaction.gesture.startDistance = iEvent.distance; - interaction.gesture.startAngle = iEvent.angle; - } else if (ending || event instanceof ___InteractEvent_4["default"]) { - var prevEvent = interaction.prevEvent; - iEvent.distance = prevEvent.distance; - iEvent.box = prevEvent.box; - iEvent.scale = prevEvent.scale; - iEvent.ds = 0; - iEvent.angle = prevEvent.angle; - iEvent.da = 0; - } else { - iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); - iEvent.box = __utils_4.pointer.touchBBox(pointers); - iEvent.scale = iEvent.distance / interaction.gesture.startDistance; - iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); - iEvent.ds = iEvent.scale - interaction.gesture.scale; - iEvent.da = iEvent.angle - interaction.gesture.angle; - } - - interaction.gesture.distance = iEvent.distance; - interaction.gesture.angle = iEvent.angle; - - if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) { - interaction.gesture.scale = iEvent.scale; - } -} - -var ___default_4 = gesture; -_$gesture_4["default"] = ___default_4; - -var _$resize_6 = {}; -"use strict"; - -Object.defineProperty(_$resize_6, "__esModule", { - value: true -}); -_$resize_6["default"] = void 0; - -var ___scope_6 = _$scope_24({}); - -var __arr_6 = ___interopRequireWildcard_6(_$arr_47); - -var __dom_6 = ___interopRequireWildcard_6(_$domUtils_51); - -var ___extend_6 = ___interopRequireDefault_6(_$extend_53); - -var __is_6 = ___interopRequireWildcard_6(_$is_57); - -function ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_6() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -___scope_6.ActionName.Resize = 'resize'; - -function __install_6(scope) { - var actions = scope.actions, - browser = scope.browser, - Interactable = scope.Interactable, - interactions = scope.interactions, - defaults = scope.defaults; // Less Precision with touch input - - interactions.signals.on('new', function (interaction) { - interaction.resizeAxes = 'xy'; - }); - interactions.signals.on('action-start', start); - interactions.signals.on('action-move', __move_6); - interactions.signals.on('action-end', end); - interactions.signals.on('action-start', updateEventAxes); - interactions.signals.on('action-move', updateEventAxes); - resize.cursors = initCursors(browser); - resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10; - /** - * ```js - * interact(element).resizable({ - * onstart: function (event) {}, - * onmove : function (event) {}, - * onend : function (event) {}, - * - * edges: { - * top : true, // Use pointer coords to check for resize. - * left : false, // Disable resizing from left edge. - * bottom: '.resize-s',// Resize if pointer target matches selector - * right : handleEl // Resize if pointer target is the given Element - * }, - * - * // Width and height can be adjusted independently. When `true`, width and - * // height are adjusted at a 1:1 ratio. - * square: false, - * - * // Width and height can be adjusted independently. When `true`, width and - * // height maintain the aspect ratio they had when resizing started. - * preserveAspectRatio: false, - * - * // a value of 'none' will limit the resize rect to a minimum of 0x0 - * // 'negate' will allow the rect to have negative width/height - * // 'reposition' will keep the width/height positive by swapping - * // the top and bottom edges and/or swapping the left and right edges - * invert: 'none' || 'negate' || 'reposition' - * - * // limit multiple resizes. - * // See the explanation in the {@link Interactable.draggable} example - * max: Infinity, - * maxPerElement: 1, - * }) - * - * var isResizeable = interact(element).resizable() - * ``` - * - * Gets or sets whether resize actions can be performed on the target - * - * @param {boolean | object} [options] true/false or An object with event - * listeners to be fired on resize events (object makes the Interactable - * resizable) - * @return {boolean | Interactable} A boolean indicating if this can be the - * target of resize elements, or this Interactable - */ - - Interactable.prototype.resizable = function (options) { - return resizable(this, options, scope); - }; - - actions[___scope_6.ActionName.Resize] = resize; - actions.names.push(___scope_6.ActionName.Resize); - __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']); - actions.methodDict.resize = 'resizable'; - defaults.actions.resize = resize.defaults; -} - -var resize = { - id: 'actions/resize', - install: __install_6, - defaults: { - square: false, - preserveAspectRatio: false, - axis: 'xy', - // use default margin - margin: NaN, - // object with props left, right, top, bottom which are - // true/false values to resize when the pointer is over that edge, - // CSS selectors to match the handles for each direction - // or the Elements for each handle - edges: null, - // a value of 'none' will limit the resize rect to a minimum of 0x0 - // 'negate' will alow the rect to have negative width/height - // 'reposition' will keep the width/height positive by swapping - // the top and bottom edges and/or swapping the left and right edges - invert: 'none' - }, - checker: function checker(_pointer, _event, interactable, element, interaction, rect) { - if (!rect) { - return null; - } - - var page = (0, ___extend_6["default"])({}, interaction.coords.cur.page); - var options = interactable.options; - - if (options.resize.enabled) { - var resizeOptions = options.resize; - var resizeEdges = { - left: false, - right: false, - top: false, - bottom: false - }; // if using resize.edges - - if (__is_6.object(resizeOptions.edges)) { - for (var edge in resizeEdges) { - resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin); - } - - resizeEdges.left = resizeEdges.left && !resizeEdges.right; - resizeEdges.top = resizeEdges.top && !resizeEdges.bottom; - - if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) { - return { - name: 'resize', - edges: resizeEdges - }; - } - } else { - var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin; - var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin; - - if (right || bottom) { - return { - name: 'resize', - axes: (right ? 'x' : '') + (bottom ? 'y' : '') - }; - } - } - } - - return null; - }, - cursors: null, - getCursor: function getCursor(_ref) { - var edges = _ref.edges, - axis = _ref.axis, - name = _ref.name; - var cursors = resize.cursors; - var result = null; - - if (axis) { - result = cursors[name + axis]; - } else if (edges) { - var cursorKey = ''; - var _arr = ['top', 'bottom', 'left', 'right']; - - for (var _i = 0; _i < _arr.length; _i++) { - var edge = _arr[_i]; - - if (edges[edge]) { - cursorKey += edge; - } - } - - result = cursors[cursorKey]; - } - - return result; - }, - defaultMargin: null -}; - -function resizable(interactable, options, scope) { - if (__is_6.object(options)) { - interactable.options.resize.enabled = options.enabled !== false; - interactable.setPerAction('resize', options); - interactable.setOnEvents('resize', options); - - if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) { - interactable.options.resize.axis = options.axis; - } else if (options.axis === null) { - interactable.options.resize.axis = scope.defaults.actions.resize.axis; - } - - if (__is_6.bool(options.preserveAspectRatio)) { - interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio; - } else if (__is_6.bool(options.square)) { - interactable.options.resize.square = options.square; - } - - return interactable; - } - - if (__is_6.bool(options)) { - interactable.options.resize.enabled = options; - return interactable; - } - - return interactable.options.resize; -} - -function checkResizeEdge(name, value, page, element, interactableElement, rect, margin) { - // false, '', undefined, null - if (!value) { - return false; - } // true value, use pointer coords and element rect - - - if (value === true) { - // if dimensions are negative, "switch" edges - var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left; - var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension - - margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2); - - if (width < 0) { - if (name === 'left') { - name = 'right'; - } else if (name === 'right') { - name = 'left'; - } - } - - if (height < 0) { - if (name === 'top') { - name = 'bottom'; - } else if (name === 'bottom') { - name = 'top'; - } - } - - if (name === 'left') { - return page.x < (width >= 0 ? rect.left : rect.right) + margin; - } - - if (name === 'top') { - return page.y < (height >= 0 ? rect.top : rect.bottom) + margin; - } - - if (name === 'right') { - return page.x > (width >= 0 ? rect.right : rect.left) - margin; - } - - if (name === 'bottom') { - return page.y > (height >= 0 ? rect.bottom : rect.top) - margin; - } - } // the remaining checks require an element - - - if (!__is_6.element(element)) { - return false; - } - - return __is_6.element(value) // the value is an element to use as a resize handle - ? value === element // otherwise check if element matches value as selector - : __dom_6.matchesUpTo(element, value, interactableElement); -} - -function initCursors(browser) { - return browser.isIe9 ? { - x: 'e-resize', - y: 's-resize', - xy: 'se-resize', - top: 'n-resize', - left: 'w-resize', - bottom: 's-resize', - right: 'e-resize', - topleft: 'se-resize', - bottomright: 'se-resize', - topright: 'ne-resize', - bottomleft: 'ne-resize' - } : { - x: 'ew-resize', - y: 'ns-resize', - xy: 'nwse-resize', - top: 'ns-resize', - left: 'ew-resize', - bottom: 'ns-resize', - right: 'ew-resize', - topleft: 'nwse-resize', - bottomright: 'nwse-resize', - topright: 'nesw-resize', - bottomleft: 'nesw-resize' - }; -} - -function start(_ref2) { - var iEvent = _ref2.iEvent, - interaction = _ref2.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - var startRect = (0, ___extend_6["default"])({}, interaction.rect); - var resizeOptions = interaction.interactable.options.resize; - /* - * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge - * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make - * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend - * on the active edges and the edge being interacted with. - */ - - if (resizeOptions.square || resizeOptions.preserveAspectRatio) { - var linkedEdges = (0, ___extend_6["default"])({}, interaction.prepared.edges); - linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom; - linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right; - linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top; - linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left; - interaction.prepared._linkedEdges = linkedEdges; - } else { - interaction.prepared._linkedEdges = null; - } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize - - - if (resizeOptions.preserveAspectRatio) { - interaction.resizeStartAspectRatio = startRect.width / startRect.height; - } - - interaction.resizeRects = { - start: startRect, - current: { - left: startRect.left, - right: startRect.right, - top: startRect.top, - bottom: startRect.bottom - }, - inverted: (0, ___extend_6["default"])({}, startRect), - previous: (0, ___extend_6["default"])({}, startRect), - delta: { - left: 0, - right: 0, - width: 0, - top: 0, - bottom: 0, - height: 0 - } - }; - iEvent.edges = interaction.prepared.edges; - iEvent.rect = interaction.resizeRects.inverted; - iEvent.deltaRect = interaction.resizeRects.delta; -} - -function __move_6(_ref3) { - var iEvent = _ref3.iEvent, - interaction = _ref3.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - var resizeOptions = interaction.interactable.options.resize; - var invert = resizeOptions.invert; - var invertible = invert === 'reposition' || invert === 'negate'; - var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow - - var start = interaction.resizeRects.start; - var current = interaction.resizeRects.current; - var inverted = interaction.resizeRects.inverted; - var deltaRect = interaction.resizeRects.delta; - var previous = (0, ___extend_6["default"])(interaction.resizeRects.previous, inverted); - var originalEdges = edges; - var eventDelta = (0, ___extend_6["default"])({}, iEvent.delta); - - if (resizeOptions.preserveAspectRatio || resizeOptions.square) { - // `resize.preserveAspectRatio` takes precedence over `resize.square` - var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1; - edges = interaction.prepared._linkedEdges; - - if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) { - eventDelta.y = -eventDelta.x / startAspectRatio; - } else if (originalEdges.left || originalEdges.right) { - eventDelta.y = eventDelta.x / startAspectRatio; - } else if (originalEdges.top || originalEdges.bottom) { - eventDelta.x = eventDelta.y * startAspectRatio; - } - } // update the 'current' rect without modifications - - - if (edges.top) { - current.top += eventDelta.y; - } - - if (edges.bottom) { - current.bottom += eventDelta.y; - } - - if (edges.left) { - current.left += eventDelta.x; - } - - if (edges.right) { - current.right += eventDelta.x; - } - - if (invertible) { - // if invertible, copy the current rect - (0, ___extend_6["default"])(inverted, current); - - if (invert === 'reposition') { - // swap edge values if necessary to keep width/height positive - var swap; - - if (inverted.top > inverted.bottom) { - swap = inverted.top; - inverted.top = inverted.bottom; - inverted.bottom = swap; - } - - if (inverted.left > inverted.right) { - swap = inverted.left; - inverted.left = inverted.right; - inverted.right = swap; - } - } - } else { - // if not invertible, restrict to minimum of 0x0 rect - inverted.top = Math.min(current.top, start.bottom); - inverted.bottom = Math.max(current.bottom, start.top); - inverted.left = Math.min(current.left, start.right); - inverted.right = Math.max(current.right, start.left); - } - - inverted.width = inverted.right - inverted.left; - inverted.height = inverted.bottom - inverted.top; - - for (var edge in inverted) { - deltaRect[edge] = inverted[edge] - previous[edge]; - } - - iEvent.edges = interaction.prepared.edges; - iEvent.rect = inverted; - iEvent.deltaRect = deltaRect; -} - -function end(_ref4) { - var iEvent = _ref4.iEvent, - interaction = _ref4.interaction; - - if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { - return; - } - - iEvent.edges = interaction.prepared.edges; - iEvent.rect = interaction.resizeRects.inverted; - iEvent.deltaRect = interaction.resizeRects.delta; -} - -function updateEventAxes(_ref5) { - var iEvent = _ref5.iEvent, - interaction = _ref5.interaction, - action = _ref5.action; - - if (action !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) { - return; - } - - var options = interaction.interactable.options; - - if (options.resize.square) { - if (interaction.resizeAxes === 'y') { - iEvent.delta.x = iEvent.delta.y; - } else { - iEvent.delta.y = iEvent.delta.x; - } - - iEvent.axes = 'xy'; - } else { - iEvent.axes = interaction.resizeAxes; - - if (interaction.resizeAxes === 'x') { - iEvent.delta.y = 0; - } else if (interaction.resizeAxes === 'y') { - iEvent.delta.x = 0; - } - } -} - -var ___default_6 = resize; -_$resize_6["default"] = ___default_6; - -var _$actions_5 = {}; -"use strict"; - -Object.defineProperty(_$actions_5, "__esModule", { - value: true -}); -_$actions_5.install = __install_5; -Object.defineProperty(_$actions_5, "drag", { - enumerable: true, - get: function get() { - return ___drag_5["default"]; - } -}); -Object.defineProperty(_$actions_5, "drop", { - enumerable: true, - get: function get() { - return _drop["default"]; - } -}); -Object.defineProperty(_$actions_5, "gesture", { - enumerable: true, - get: function get() { - return _gesture["default"]; - } -}); -Object.defineProperty(_$actions_5, "resize", { - enumerable: true, - get: function get() { - return _resize["default"]; - } -}); -_$actions_5.id = void 0; - -var ___drag_5 = ___interopRequireDefault_5(_$drag_1); - -var _drop = ___interopRequireDefault_5(_$drop_3); - -var _gesture = ___interopRequireDefault_5(_$gesture_4); - -var _resize = ___interopRequireDefault_5(_$resize_6); - -function ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_5(scope) { - scope.usePlugin(_gesture["default"]); - scope.usePlugin(_resize["default"]); - scope.usePlugin(___drag_5["default"]); - scope.usePlugin(_drop["default"]); -} - -var id = 'actions'; -_$actions_5.id = id; - -var _$autoScroll_7 = {}; -"use strict"; - -Object.defineProperty(_$autoScroll_7, "__esModule", { - value: true -}); -_$autoScroll_7.getContainer = getContainer; -_$autoScroll_7.getScroll = getScroll; -_$autoScroll_7.getScrollSize = getScrollSize; -_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta; -_$autoScroll_7["default"] = void 0; - -var __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_51); - -var __is_7 = ___interopRequireWildcard_7(_$is_57); - -var ___raf_7 = ___interopRequireDefault_7(_$raf_62); - -/* removed: var _$rect_63 = require("@interactjs/utils/rect"); */; - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -function ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_7() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_7(scope) { - var interactions = scope.interactions, - defaults = scope.defaults, - actions = scope.actions; - scope.autoScroll = autoScroll; - - autoScroll.now = function () { - return scope.now(); - }; - - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.autoScroll = null; - }); - interactions.signals.on('destroy', function (_ref2) { - var interaction = _ref2.interaction; - interaction.autoScroll = null; - autoScroll.stop(); - - if (autoScroll.interaction) { - autoScroll.interaction = null; - } - }); - interactions.signals.on('stop', autoScroll.stop); - interactions.signals.on('action-move', function (arg) { - return autoScroll.onInteractionMove(arg); - }); - actions.eventTypes.push('autoscroll'); - defaults.perAction.autoScroll = autoScroll.defaults; -} - -var autoScroll = { - defaults: { - enabled: false, - margin: 60, - // the item that is scrolled (Window or HTMLElement) - container: null, - // the scroll speed in pixels per second - speed: 300 - }, - now: Date.now, - interaction: null, - i: null, - x: 0, - y: 0, - isScrolling: false, - prevTime: 0, - margin: 0, - speed: 0, - start: function start(interaction) { - autoScroll.isScrolling = true; - - ___raf_7["default"].cancel(autoScroll.i); - - interaction.autoScroll = autoScroll; - autoScroll.interaction = interaction; - autoScroll.prevTime = autoScroll.now(); - autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); - }, - stop: function stop() { - autoScroll.isScrolling = false; - - if (autoScroll.interaction) { - autoScroll.interaction.autoScroll = null; - } - - ___raf_7["default"].cancel(autoScroll.i); - }, - // scroll the window by the values in scroll.x/y - scroll: function scroll() { - var interaction = autoScroll.interaction; - var interactable = interaction.interactable, - element = interaction.element; - var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll; - var container = getContainer(options.container, interactable, element); - var now = autoScroll.now(); // change in time in seconds - - var dt = (now - autoScroll.prevTime) / 1000; // displacement - - var s = options.speed * dt; - - if (s >= 1) { - var scrollBy = { - x: autoScroll.x * s, - y: autoScroll.y * s - }; - - if (scrollBy.x || scrollBy.y) { - var prevScroll = getScroll(container); - - if (__is_7.window(container)) { - container.scrollBy(scrollBy.x, scrollBy.y); - } else if (container) { - container.scrollLeft += scrollBy.x; - container.scrollTop += scrollBy.y; - } - - var curScroll = getScroll(container); - var delta = { - x: curScroll.x - prevScroll.x, - y: curScroll.y - prevScroll.y - }; - - if (delta.x || delta.y) { - interactable.fire({ - type: 'autoscroll', - target: element, - interactable: interactable, - delta: delta, - interaction: interaction, - container: container - }); - } - } - - autoScroll.prevTime = now; - } - - if (autoScroll.isScrolling) { - ___raf_7["default"].cancel(autoScroll.i); - - autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); - } - }, - check: function check(interactable, actionName) { - var options = interactable.options; - return options[actionName].autoScroll && options[actionName].autoScroll.enabled; - }, - onInteractionMove: function onInteractionMove(_ref3) { - var interaction = _ref3.interaction, - pointer = _ref3.pointer; - - if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) { - return; - } - - if (interaction.simulation) { - autoScroll.x = autoScroll.y = 0; - return; - } - - var top; - var right; - var bottom; - var left; - var interactable = interaction.interactable, - element = interaction.element; - var options = interactable.options[interaction.prepared.name].autoScroll; - var container = getContainer(options.container, interactable, element); - - if (__is_7.window(container)) { - left = pointer.clientX < autoScroll.margin; - top = pointer.clientY < autoScroll.margin; - right = pointer.clientX > container.innerWidth - autoScroll.margin; - bottom = pointer.clientY > container.innerHeight - autoScroll.margin; - } else { - var rect = __domUtils_7.getElementClientRect(container); - left = pointer.clientX < rect.left + autoScroll.margin; - top = pointer.clientY < rect.top + autoScroll.margin; - right = pointer.clientX > rect.right - autoScroll.margin; - bottom = pointer.clientY > rect.bottom - autoScroll.margin; - } - - autoScroll.x = right ? 1 : left ? -1 : 0; - autoScroll.y = bottom ? 1 : top ? -1 : 0; - - if (!autoScroll.isScrolling) { - // set the autoScroll properties to those of the target - autoScroll.margin = options.margin; - autoScroll.speed = options.speed; - autoScroll.start(interaction); - } - } -}; - -function getContainer(value, interactable, element) { - return (__is_7.string(value) ? (0, _$rect_63.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_66.getWindow)(element); -} - -function getScroll(container) { - if (__is_7.window(container)) { - container = window.document.body; - } - - return { - x: container.scrollLeft, - y: container.scrollTop - }; -} - -function getScrollSize(container) { - if (__is_7.window(container)) { - container = window.document.body; - } - - return { - x: container.scrollWidth, - y: container.scrollHeight - }; -} - -function getScrollSizeDelta(_ref4, func) { - var interaction = _ref4.interaction, - element = _ref4.element; - var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll; - - if (!scrollOptions || !scrollOptions.enabled) { - func(); - return { - x: 0, - y: 0 - }; - } - - var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element); - var prevSize = getScroll(scrollContainer); - func(); - var curSize = getScroll(scrollContainer); - return { - x: curSize.x - prevSize.x, - y: curSize.y - prevSize.y - }; -} - -var ___default_7 = { - id: 'auto-scroll', - install: __install_7 -}; -_$autoScroll_7["default"] = ___default_7; - -var _$InteractableMethods_8 = {}; -"use strict"; - -Object.defineProperty(_$InteractableMethods_8, "__esModule", { - value: true -}); -_$InteractableMethods_8["default"] = void 0; - -/* removed: var _$utils_56 = require("@interactjs/utils"); */; - -var __is_8 = ___interopRequireWildcard_8(_$is_57); - -function ___getRequireWildcardCache_8() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_8(scope) { - var Interactable = scope.Interactable, - actions = scope.actions; - Interactable.prototype.getAction = getAction; - /** - * ```js - * interact(element, { ignoreFrom: document.getElementById('no-action') }) - * // or - * interact(element).ignoreFrom('input, textarea, a') - * ``` - * @deprecated - * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any - * of it's parents match the given CSS selector or Element, no - * drag/resize/gesture is started. - * - * Don't use this method. Instead set the `ignoreFrom` option for each action - * or for `pointerEvents` - * - * @example - * interact(targett) - * .draggable({ - * ignoreFrom: 'input, textarea, a[href]'', - * }) - * .pointerEvents({ - * ignoreFrom: '[no-pointer]', - * }) - * - * @param {string | Element | null} [newValue] a CSS selector string, an - * Element or `null` to not ignore any elements - * @return {string | Element | object} The current ignoreFrom value or this - * Interactable - */ - - Interactable.prototype.ignoreFrom = (0, _$utils_56.warnOnce)(function (newValue) { - return this._backCompatOption('ignoreFrom', newValue); - }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).'); - /** - * @deprecated - * - * A drag/resize/gesture is started only If the target of the `mousedown`, - * `pointerdown` or `touchstart` event or any of it's parents match the given - * CSS selector or Element. - * - * Don't use this method. Instead set the `allowFrom` option for each action - * or for `pointerEvents` - * - * @example - * interact(targett) - * .resizable({ - * allowFrom: '.resize-handle', - * .pointerEvents({ - * allowFrom: '.handle',, - * }) - * - * @param {string | Element | null} [newValue] a CSS selector string, an - * Element or `null` to allow from any element - * @return {string | Element | object} The current allowFrom value or this - * Interactable - */ - - Interactable.prototype.allowFrom = (0, _$utils_56.warnOnce)(function (newValue) { - return this._backCompatOption('allowFrom', newValue); - }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).'); - /** - * ```js - * interact('.resize-drag') - * .resizable(true) - * .draggable(true) - * .actionChecker(function (pointer, event, action, interactable, element, interaction) { - * - * if (interact.matchesSelector(event.target, '.drag-handle')) { - * // force drag with handle target - * action.name = drag - * } - * else { - * // resize from the top and right edges - * action.name = 'resize' - * action.edges = { top: true, right: true } - * } - * - * return action - * }) - * ``` - * - * Returns or sets the function used to check action to be performed on - * pointerDown - * - * @param {function | null} [checker] A function which takes a pointer event, - * defaultAction string, interactable, element and interaction as parameters - * and returns an object with name property 'drag' 'resize' or 'gesture' and - * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right - * props. - * @return {Function | Interactable} The checker function or this Interactable - */ - - Interactable.prototype.actionChecker = actionChecker; - /** - * Returns or sets whether the the cursor should be changed depending on the - * action that would be performed if the mouse were pressed and dragged. - * - * @param {boolean} [newValue] - * @return {boolean | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.styleCursor = styleCursor; - - Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) { - return defaultActionChecker(this, pointer, event, interaction, element, actions); - }; -} - -function getAction(pointer, event, interaction, element) { - var action = this.defaultActionChecker(pointer, event, interaction, element); - - if (this.options.actionChecker) { - return this.options.actionChecker(pointer, event, action, this, element, interaction); - } - - return action; -} - -function defaultActionChecker(interactable, pointer, event, interaction, element, actions) { - var rect = interactable.getRect(element); - var buttons = event.buttons || { - 0: 1, - 1: 4, - 3: 8, - 4: 16 - }[event.button]; - var action = null; - - for (var _i = 0; _i < actions.names.length; _i++) { - var _ref; - - _ref = actions.names[_i]; - var actionName = _ref; - - // check mouseButton setting if the pointer is down - if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) { - continue; - } - - action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect); - - if (action) { - return action; - } - } -} - -function styleCursor(newValue) { - if (__is_8.bool(newValue)) { - this.options.styleCursor = newValue; - return this; - } - - if (newValue === null) { - delete this.options.styleCursor; - return this; - } - - return this.options.styleCursor; -} - -function actionChecker(checker) { - if (__is_8.func(checker)) { - this.options.actionChecker = checker; - return this; - } - - if (checker === null) { - delete this.options.actionChecker; - return this; - } - - return this.options.actionChecker; -} - -var ___default_8 = { - id: 'auto-start/interactableMethods', - install: __install_8 -}; -_$InteractableMethods_8["default"] = ___default_8; - -var _$base_9 = {}; -"use strict"; - -Object.defineProperty(_$base_9, "__esModule", { - value: true -}); -_$base_9["default"] = void 0; - -var __utils_9 = ___interopRequireWildcard_9(_$utils_56); - -var _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8); - -function ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_9() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_9(scope) { - var interact = scope.interact, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(_InteractableMethods["default"]); // set cursor style on mousedown - - interactions.signals.on('down', function (_ref) { - var interaction = _ref.interaction, - pointer = _ref.pointer, - event = _ref.event, - eventTarget = _ref.eventTarget; - - if (interaction.interacting()) { - return; - } - - var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); - prepare(interaction, actionInfo, scope); - }); // set cursor style on mousemove - - interactions.signals.on('move', function (_ref2) { - var interaction = _ref2.interaction, - pointer = _ref2.pointer, - event = _ref2.event, - eventTarget = _ref2.eventTarget; - - if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) { - return; - } - - var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); - prepare(interaction, actionInfo, scope); - }); - interactions.signals.on('move', function (arg) { - var interaction = arg.interaction; - - if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) { - return; - } - - scope.autoStart.signals.fire('before-start', arg); - var interactable = interaction.interactable; - - if (interaction.prepared.name && interactable) { - // check manualStart and interaction limit - if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) { - interaction.stop(); - } else { - interaction.start(interaction.prepared, interactable, interaction.element); - setInteractionCursor(interaction, scope); - } - } - }); - interactions.signals.on('stop', function (_ref3) { - var interaction = _ref3.interaction; - var interactable = interaction.interactable; - - if (interactable && interactable.options.styleCursor) { - setCursor(interaction.element, '', scope); - } - }); - defaults.base.actionChecker = null; - defaults.base.styleCursor = true; - __utils_9.extend(defaults.perAction, { - manualStart: false, - max: Infinity, - maxPerElement: 1, - allowFrom: null, - ignoreFrom: null, - // only allow left button by default - // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value - mouseButtons: 1 - }); - /** - * Returns or sets the maximum number of concurrent interactions allowed. By - * default only 1 interaction is allowed at a time (for backwards - * compatibility). To allow multiple interactions on the same Interactables and - * elements, you need to enable it in the draggable, resizable and gesturable - * `'max'` and `'maxPerElement'` options. - * - * @alias module:interact.maxInteractions - * - * @param {number} [newValue] Any number. newValue <= 0 means no interactions. - */ - - interact.maxInteractions = function (newValue) { - return maxInteractions(newValue, scope); - }; - - scope.autoStart = { - // Allow this many interactions to happen simultaneously - maxInteractions: Infinity, - withinInteractionLimit: withinInteractionLimit, - cursorElement: null, - signals: new __utils_9.Signals() - }; -} // Check if the current interactable supports the action. -// If so, return the validated action. Otherwise, return null - - -function validateAction(action, interactable, element, eventTarget, scope) { - if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) { - return action; - } - - return null; -} - -function validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) { - for (var i = 0, len = matches.length; i < len; i++) { - var match = matches[i]; - var matchElement = matchElements[i]; - var matchAction = match.getAction(pointer, event, interaction, matchElement); - - if (!matchAction) { - continue; - } - - var action = validateAction(matchAction, match, matchElement, eventTarget, scope); - - if (action) { - return { - action: action, - interactable: match, - element: matchElement - }; - } - } - - return { - action: null, - interactable: null, - element: null - }; -} - -function getActionInfo(interaction, pointer, event, eventTarget, scope) { - var matches = []; - var matchElements = []; - var element = eventTarget; - - function pushMatches(interactable) { - matches.push(interactable); - matchElements.push(element); - } - - while (__utils_9.is.element(element)) { - matches = []; - matchElements = []; - scope.interactables.forEachMatch(element, pushMatches); - var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope); - - if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) { - return actionInfo; - } - - element = __utils_9.dom.parentNode(element); - } - - return { - action: null, - interactable: null, - element: null - }; -} - -function prepare(interaction, _ref4, scope) { - var action = _ref4.action, - interactable = _ref4.interactable, - element = _ref4.element; - action = action || { - name: null - }; // clear previous target element cursor - - if (interaction.interactable && interaction.interactable.options.styleCursor) { - setCursor(interaction.element, '', scope); - } - - interaction.interactable = interactable; - interaction.element = element; - __utils_9.copyAction(interaction.prepared, action); - interaction.rect = interactable && action.name ? interactable.getRect(element) : null; - setInteractionCursor(interaction, scope); - scope.autoStart.signals.fire('prepared', { - interaction: interaction - }); -} - -function withinInteractionLimit(interactable, element, action, scope) { - var options = interactable.options; - var maxActions = options[action.name].max; - var maxPerElement = options[action.name].maxPerElement; - var autoStartMax = scope.autoStart.maxInteractions; - var activeInteractions = 0; - var interactableCount = 0; - var elementCount = 0; // no actions if any of these values == 0 - - if (!(maxActions && maxPerElement && autoStartMax)) { - return false; - } - - for (var _i = 0; _i < scope.interactions.list.length; _i++) { - var _ref5; - - _ref5 = scope.interactions.list[_i]; - var interaction = _ref5; - var otherAction = interaction.prepared.name; - - if (!interaction.interacting()) { - continue; - } - - activeInteractions++; - - if (activeInteractions >= autoStartMax) { - return false; - } - - if (interaction.interactable !== interactable) { - continue; - } - - interactableCount += otherAction === action.name ? 1 : 0; - - if (interactableCount >= maxActions) { - return false; - } - - if (interaction.element === element) { - elementCount++; - - if (otherAction === action.name && elementCount >= maxPerElement) { - return false; - } - } - } - - return autoStartMax > 0; -} - -function maxInteractions(newValue, scope) { - if (__utils_9.is.number(newValue)) { - scope.autoStart.maxInteractions = newValue; - return this; - } - - return scope.autoStart.maxInteractions; -} - -function setCursor(element, cursor, scope) { - if (scope.autoStart.cursorElement) { - scope.autoStart.cursorElement.style.cursor = ''; - } - - element.ownerDocument.documentElement.style.cursor = cursor; - element.style.cursor = cursor; - scope.autoStart.cursorElement = cursor ? element : null; -} - -function setInteractionCursor(interaction, scope) { - var interactable = interaction.interactable, - element = interaction.element, - prepared = interaction.prepared; - - if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) { - return; - } - - var cursor = ''; - - if (prepared.name) { - var cursorChecker = interactable.options[prepared.name].cursorChecker; - - if (__utils_9.is.func(cursorChecker)) { - cursor = cursorChecker(prepared, interactable, element, interaction._interacting); - } else { - cursor = scope.actions[prepared.name].getCursor(prepared); - } - } - - setCursor(interaction.element, cursor || '', scope); -} - -var ___default_9 = { - id: 'auto-start/base', - install: __install_9, - maxInteractions: maxInteractions, - withinInteractionLimit: withinInteractionLimit, - validateAction: validateAction -}; -_$base_9["default"] = ___default_9; - -var _$dragAxis_10 = {}; -"use strict"; - -Object.defineProperty(_$dragAxis_10, "__esModule", { - value: true -}); -_$dragAxis_10["default"] = void 0; - -var ___scope_10 = _$scope_24({}); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var __is_10 = ___interopRequireWildcard_10(_$is_57); - -var _base = ___interopRequireDefault_10(_$base_9); - -function ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_10() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __install_10(scope) { - scope.autoStart.signals.on('before-start', function (_ref) { - var interaction = _ref.interaction, - eventTarget = _ref.eventTarget, - dx = _ref.dx, - dy = _ref.dy; - - if (interaction.prepared.name !== 'drag') { - return; - } // check if a drag is in the correct axis - - - var absX = Math.abs(dx); - var absY = Math.abs(dy); - var targetOptions = interaction.interactable.options.drag; - var startAxis = targetOptions.startAxis; - var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy'; - interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy' - : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable - - if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) { - // cancel the prepared action - interaction.prepared.name = null; // then try to get a drag from another ineractable - - var element = eventTarget; - - var getDraggable = function getDraggable(interactable) { - if (interactable === interaction.interactable) { - return; - } - - var options = interaction.interactable.options.drag; - - if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) { - var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element); - - if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base["default"].validateAction(action, interactable, element, eventTarget, scope)) { - return interactable; - } - } - }; // check all interactables - - - while (__is_10.element(element)) { - var interactable = scope.interactables.forEachMatch(element, getDraggable); - - if (interactable) { - interaction.prepared.name = ___scope_10.ActionName.Drag; - interaction.interactable = interactable; - interaction.element = element; - break; - } - - element = (0, _$domUtils_51.parentNode)(element); - } - } - }); - - function checkStartAxis(startAxis, interactable) { - if (!interactable) { - return false; - } - - var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis; - return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis; - } -} - -var ___default_10 = { - id: 'auto-start/dragAxis', - install: __install_10 -}; -_$dragAxis_10["default"] = ___default_10; - -var _$hold_11 = {}; -"use strict"; - -Object.defineProperty(_$hold_11, "__esModule", { - value: true -}); -_$hold_11["default"] = void 0; - -var ___base_11 = ___interopRequireDefault_11(_$base_9); - -function ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_11(scope) { - var autoStart = scope.autoStart, - interactions = scope.interactions, - defaults = scope.defaults; - scope.usePlugin(___base_11["default"]); - defaults.perAction.hold = 0; - defaults.perAction.delay = 0; - interactions.signals.on('new', function (interaction) { - interaction.autoStartHoldTimer = null; - }); - autoStart.signals.on('prepared', function (_ref) { - var interaction = _ref.interaction; - var hold = getHoldDuration(interaction); - - if (hold > 0) { - interaction.autoStartHoldTimer = setTimeout(function () { - interaction.start(interaction.prepared, interaction.interactable, interaction.element); - }, hold); - } - }); - interactions.signals.on('move', function (_ref2) { - var interaction = _ref2.interaction, - duplicate = _ref2.duplicate; - - if (interaction.pointerWasMoved && !duplicate) { - clearTimeout(interaction.autoStartHoldTimer); - } - }); // prevent regular down->move autoStart - - autoStart.signals.on('before-start', function (_ref3) { - var interaction = _ref3.interaction; - var hold = getHoldDuration(interaction); - - if (hold > 0) { - interaction.prepared.name = null; - } - }); -} - -function getHoldDuration(interaction) { - var actionName = interaction.prepared && interaction.prepared.name; - - if (!actionName) { - return null; - } - - var options = interaction.interactable.options; - return options[actionName].hold || options[actionName].delay; -} - -var ___default_11 = { - id: 'auto-start/hold', - install: __install_11, - getHoldDuration: getHoldDuration -}; -_$hold_11["default"] = ___default_11; - -var _$autoStart_12 = {}; -"use strict"; - -Object.defineProperty(_$autoStart_12, "__esModule", { - value: true -}); -_$autoStart_12.install = __install_12; -Object.defineProperty(_$autoStart_12, "autoStart", { - enumerable: true, - get: function get() { - return ___base_12["default"]; - } -}); -Object.defineProperty(_$autoStart_12, "dragAxis", { - enumerable: true, - get: function get() { - return _dragAxis["default"]; - } -}); -Object.defineProperty(_$autoStart_12, "hold", { - enumerable: true, - get: function get() { - return _hold["default"]; - } -}); -_$autoStart_12.id = void 0; - -var ___base_12 = ___interopRequireDefault_12(_$base_9); - -var _dragAxis = ___interopRequireDefault_12(_$dragAxis_10); - -var _hold = ___interopRequireDefault_12(_$hold_11); - -function ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_12(scope) { - scope.usePlugin(___base_12["default"]); - scope.usePlugin(_hold["default"]); - scope.usePlugin(_dragAxis["default"]); -} - -var __id_12 = 'auto-start'; -_$autoStart_12.id = __id_12; - -var _$interactablePreventDefault_21 = {}; -"use strict"; - -Object.defineProperty(_$interactablePreventDefault_21, "__esModule", { - value: true -}); -_$interactablePreventDefault_21.install = __install_21; -_$interactablePreventDefault_21["default"] = void 0; - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___events_21 = ___interopRequireDefault_21(_$events_52); - -var __is_21 = ___interopRequireWildcard_21(_$is_57); - -/* removed: var _$window_66 = require("@interactjs/utils/window"); */; - -function ___getRequireWildcardCache_21() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function preventDefault(newValue) { - if (/^(always|never|auto)$/.test(newValue)) { - this.options.preventDefault = newValue; - return this; - } - - if (__is_21.bool(newValue)) { - this.options.preventDefault = newValue ? 'always' : 'never'; - return this; - } - - return this.options.preventDefault; -} - -function checkAndPreventDefault(interactable, scope, event) { - var setting = interactable.options.preventDefault; - - if (setting === 'never') { - return; - } - - if (setting === 'always') { - event.preventDefault(); - return; - } // setting === 'auto' - // if the browser supports passive event listeners and isn't running on iOS, - // don't preventDefault of touch{start,move} events. CSS touch-action and - // user-select should be used instead of calling event.preventDefault(). - - - if (___events_21["default"].supportsPassive && /^touch(start|move)$/.test(event.type)) { - var doc = (0, _$window_66.getWindow)(event.target).document; - var docOptions = scope.getDocOptions(doc); - - if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) { - return; - } - } // don't preventDefault of pointerdown events - - - if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) { - return; - } // don't preventDefault on editable elements - - - if (__is_21.element(event.target) && (0, _$domUtils_51.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) { - return; - } - - event.preventDefault(); -} - -function onInteractionEvent(_ref) { - var interaction = _ref.interaction, - event = _ref.event; - - if (interaction.interactable) { - interaction.interactable.checkAndPreventDefault(event); - } -} - -function __install_21(scope) { - /** @lends Interactable */ - var Interactable = scope.Interactable; - /** - * Returns or sets whether to prevent the browser's default behaviour in - * response to pointer events. Can be set to: - * - `'always'` to always prevent - * - `'never'` to never prevent - * - `'auto'` to let interact.js try to determine what would be best - * - * @param {string} [newValue] `'always'`, `'never'` or `'auto'` - * @return {string | Interactable} The current setting or this Interactable - */ - - Interactable.prototype.preventDefault = preventDefault; - - Interactable.prototype.checkAndPreventDefault = function (event) { - return checkAndPreventDefault(this, scope, event); - }; - - var _arr = ['down', 'move', 'up', 'cancel']; - - for (var _i = 0; _i < _arr.length; _i++) { - var eventSignal = _arr[_i]; - scope.interactions.signals.on(eventSignal, onInteractionEvent); - } // prevent native HTML5 drag on interact.js target elements - - - scope.interactions.docEvents.push({ - type: 'dragstart', - listener: function listener(event) { - for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { - var _ref2; - - _ref2 = scope.interactions.list[_i2]; - var interaction = _ref2; - - if (interaction.element && (interaction.element === event.target || (0, _$domUtils_51.nodeContains)(interaction.element, event.target))) { - interaction.interactable.checkAndPreventDefault(event); - return; - } - } - } - }); -} - -var ___default_21 = { - id: 'core/interactablePreventDefault', - install: __install_21 -}; -_$interactablePreventDefault_21["default"] = ___default_21; - -var _$devTools_25 = {}; -"use strict"; - -Object.defineProperty(_$devTools_25, "__esModule", { - value: true -}); -_$devTools_25["default"] = void 0; - -var ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_50); - -/* removed: var _$domUtils_51 = require("@interactjs/utils/domUtils"); */; - -var ___extend_25 = ___interopRequireDefault_25(_$extend_53); - -var __is_25 = ___interopRequireWildcard_25(_$is_57); - -var ___window_25 = ___interopRequireDefault_25(_$window_66); - -function ___getRequireWildcardCache_25() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); } - -function ___nonIterableSpread_25() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -var CheckName; - -(function (CheckName) { - CheckName["touchAction"] = ""; - CheckName["boxSizing"] = ""; - CheckName["noListeners"] = ""; -})(CheckName || (CheckName = {})); - -var prefix = '[interact.js] '; -var links = { - touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action', - boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing' -}; -var isProduction = "production" === 'production'; // eslint-disable-next-line no-restricted-syntax - -function __install_25(scope) { - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - logger = _ref.logger; - - var interactions = scope.interactions, - Interactable = scope.Interactable, - defaults = scope.defaults; - logger = logger || console; - interactions.signals.on('action-start', function (_ref2) { - var interaction = _ref2.interaction; - - for (var _i = 0; _i < checks.length; _i++) { - var _ref3; - - _ref3 = checks[_i]; - var check = _ref3; - var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name]; - - if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) { - var _logger; - - (_logger = logger).warn.apply(_logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction)))); - } - } - }); - defaults.base.devTools = { - ignore: {} - }; - - Interactable.prototype.devTools = function (options) { - if (options) { - (0, ___extend_25["default"])(this.options.devTools, options); - return this; - } - - return this.options.devTools; - }; -} - -var checks = [{ - name: 'touchAction', - perform: function perform(_ref4) { - var element = _ref4.element; - return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/); - }, - getInfo: function getInfo(_ref5) { - var element = _ref5.element; - return [element, links.touchAction]; - }, - text: 'Consider adding CSS "touch-action: none" to this element\n' -}, { - name: 'boxSizing', - perform: function perform(interaction) { - var element = interaction.element; - return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25["default"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/); - }, - text: 'Consider adding CSS "box-sizing: border-box" to this resizable element', - getInfo: function getInfo(_ref6) { - var element = _ref6.element; - return [element, links.boxSizing]; - } -}, { - name: 'noListeners', - perform: function perform(interaction) { - var actionName = interaction.prepared.name; - var moveListeners = interaction.interactable.events.types["".concat(actionName, "move")] || []; - return !moveListeners.length; - }, - getInfo: function getInfo(interaction) { - return [interaction.prepared.name, interaction.interactable]; - }, - text: 'There are no listeners set for this action' -}]; - -function hasStyle(element, prop, styleRe) { - return styleRe.test(element.style[prop] || ___window_25["default"].window.getComputedStyle(element)[prop]); -} - -function parentHasStyle(element, prop, styleRe) { - var parent = element; - - while (__is_25.element(parent)) { - if (hasStyle(parent, prop, styleRe)) { - return true; - } - - parent = (0, _$domUtils_51.parentNode)(parent); - } - - return false; -} - -var __id_25 = 'dev-tools'; -var defaultExport = isProduction ? { - id: __id_25, - install: function install() {} -} : { - id: __id_25, - install: __install_25, - checks: checks, - CheckName: CheckName, - links: links, - prefix: prefix -}; -var ___default_25 = defaultExport; -_$devTools_25["default"] = ___default_25; - -var _$base_30 = {}; -"use strict"; - -Object.defineProperty(_$base_30, "__esModule", { - value: true -}); -_$base_30.startAll = startAll; -_$base_30.setAll = setAll; -_$base_30.prepareStates = prepareStates; -_$base_30.setCoords = setCoords; -_$base_30.restoreCoords = restoreCoords; -_$base_30.makeModifier = makeModifier; -_$base_30["default"] = void 0; - -var ___extend_30 = ___interopRequireDefault_30(_$extend_53); - -function ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); } - -function ___nonIterableRest_30() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; } - -function __install_30(scope) { - var interactions = scope.interactions; - scope.defaults.perAction.modifiers = []; - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.modifiers = { - startOffset: { - left: 0, - right: 0, - top: 0, - bottom: 0 - }, - offsets: {}, - states: null, - result: null, - endPrevented: false, - startDelta: null - }; - }); - interactions.signals.on('before-action-start', function (arg) { - __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page); - }); - interactions.signals.on('action-resume', function (arg) { - stop(arg); - __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords); - __beforeMove_30(arg); - }); - interactions.signals.on('after-action-move', restoreCoords); - interactions.signals.on('before-action-move', __beforeMove_30); - interactions.signals.on('before-action-start', setCoords); - interactions.signals.on('after-action-start', restoreCoords); - interactions.signals.on('before-action-end', beforeEnd); - interactions.signals.on('stop', stop); -} - -function __start_30(_ref2, pageCoords, prevCoords) { - var interaction = _ref2.interaction, - phase = _ref2.phase; - var interactable = interaction.interactable, - element = interaction.element; - var modifierList = getModifierList(interaction); - var states = prepareStates(modifierList); - var rect = (0, ___extend_30["default"])({}, interaction.rect); - - if (!('width' in rect)) { - rect.width = rect.right - rect.left; - } - - if (!('height' in rect)) { - rect.height = rect.bottom - rect.top; - } - - var startOffset = getRectOffset(rect, pageCoords); - interaction.modifiers.startOffset = startOffset; - interaction.modifiers.startDelta = { - x: 0, - y: 0 - }; - var arg = { - interaction: interaction, - interactable: interactable, - element: element, - pageCoords: pageCoords, - phase: phase, - rect: rect, - startOffset: startOffset, - states: states, - preEnd: false, - requireEndOnly: false, - prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page) - }; - interaction.modifiers.states = states; - interaction.modifiers.result = null; - startAll(arg); - var result = interaction.modifiers.result = setAll(arg); - return result; -} - -function startAll(arg) { - var states = arg.states; - - for (var _i = 0; _i < states.length; _i++) { - var _ref3; - - _ref3 = states[_i]; - var state = _ref3; - - if (state.methods.start) { - arg.state = state; - state.methods.start(arg); - } - } -} - -function setAll(arg) { - var prevCoords = arg.prevCoords, - phase = arg.phase, - preEnd = arg.preEnd, - requireEndOnly = arg.requireEndOnly, - rect = arg.rect, - states = arg.states; - arg.coords = (0, ___extend_30["default"])({}, arg.pageCoords); - arg.rect = (0, ___extend_30["default"])({}, rect); - var result = { - delta: { - x: 0, - y: 0 - }, - rectDelta: { - left: 0, - right: 0, - top: 0, - bottom: 0 - }, - coords: arg.coords, - changed: true - }; - - for (var _i2 = 0; _i2 < states.length; _i2++) { - var _ref4; - - _ref4 = states[_i2]; - var state = _ref4; - var options = state.options; - - if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) { - continue; - } - - arg.state = state; - state.methods.set(arg); - } - - result.delta.x = arg.coords.x - arg.pageCoords.x; - result.delta.y = arg.coords.y - arg.pageCoords.y; - var rectChanged = false; - - if (rect) { - result.rectDelta.left = arg.rect.left - rect.left; - result.rectDelta.right = arg.rect.right - rect.right; - result.rectDelta.top = arg.rect.top - rect.top; - result.rectDelta.bottom = arg.rect.bottom - rect.bottom; - rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0; - } - - result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged; - return result; -} - -function __beforeMove_30(arg) { - var interaction = arg.interaction, - phase = arg.phase, - preEnd = arg.preEnd, - skipModifiers = arg.skipModifiers; - var interactable = interaction.interactable, - element = interaction.element; - var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states; - var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page); - var modifierResult = setAll({ - interaction: interaction, - interactable: interactable, - element: element, - preEnd: preEnd, - phase: phase, - pageCoords: arg.modifiedCoords || interaction.coords.cur.page, - prevCoords: prevCoords, - rect: interaction.rect, - states: states, - requireEndOnly: false - }); - interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same - // cordinates as before - - if (!modifierResult.changed && interaction.interacting()) { - return false; - } - - if (arg.modifiedCoords) { - var page = interaction.coords.cur.page; - var adjustment = { - x: arg.modifiedCoords.x - page.x, - y: arg.modifiedCoords.y - page.y - }; - modifierResult.coords.x += adjustment.x; - modifierResult.coords.y += adjustment.y; - modifierResult.delta.x += adjustment.x; - modifierResult.delta.y += adjustment.y; - } - - setCoords(arg); -} - -function beforeEnd(arg) { - var interaction = arg.interaction, - event = arg.event, - noPreEnd = arg.noPreEnd; - var states = interaction.modifiers.states; - - if (noPreEnd || !states || !states.length) { - return; - } - - var didPreEnd = false; - - for (var _i3 = 0; _i3 < states.length; _i3++) { - var _ref5; - - _ref5 = states[_i3]; - var state = _ref5; - arg.state = state; - var options = state.options, - methods = state.methods; - var endResult = methods.beforeEnd && methods.beforeEnd(arg); - - if (endResult === false) { - interaction.modifiers.endPrevented = true; - return false; - } // if the endOnly option is true for any modifier - - - if (!didPreEnd && shouldDo(options, true, true)) { - // fire a move event at the modified coordinates - interaction.move({ - event: event, - preEnd: true - }); - didPreEnd = true; - } - } -} - -function stop(arg) { - var interaction = arg.interaction; - var states = interaction.modifiers.states; - - if (!states || !states.length) { - return; - } - - var modifierArg = (0, ___extend_30["default"])({ - states: states, - interactable: interaction.interactable, - element: interaction.element, - rect: null - }, arg); - - for (var _i4 = 0; _i4 < states.length; _i4++) { - var _ref6; - - _ref6 = states[_i4]; - var state = _ref6; - modifierArg.state = state; - - if (state.methods.stop) { - state.methods.stop(modifierArg); - } - } - - arg.interaction.modifiers.states = null; - arg.interaction.modifiers.endPrevented = false; -} - -function getModifierList(interaction) { - var actionOptions = interaction.interactable.options[interaction.prepared.name]; - var actionModifiers = actionOptions.modifiers; - - if (actionModifiers && actionModifiers.length) { - return actionModifiers.filter(function (modifier) { - return !modifier.options || modifier.options.enabled !== false; - }); - } - - return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) { - var options = actionOptions[type]; - return options && options.enabled && { - options: options, - methods: options._methods - }; - }).filter(function (m) { - return !!m; - }); -} - -function prepareStates(modifierList) { - var states = []; - - for (var index = 0; index < modifierList.length; index++) { - var _modifierList$index = modifierList[index], - options = _modifierList$index.options, - methods = _modifierList$index.methods, - name = _modifierList$index.name; - - if (options && options.enabled === false) { - continue; - } - - states.push({ - options: options, - methods: methods, - index: index, - name: name - }); - } - - return states; -} - -function setCoords(arg) { - var interaction = arg.interaction, - phase = arg.phase; - var curCoords = interaction.coords.cur; - var startCoords = interaction.coords.start; - var _interaction$modifier = interaction.modifiers, - result = _interaction$modifier.result, - startDelta = _interaction$modifier.startDelta; - var curDelta = result.delta; - - if (phase === 'start') { - (0, ___extend_30["default"])(interaction.modifiers.startDelta, result.delta); - } - - var _arr = [[startCoords, startDelta], [curCoords, curDelta]]; - - for (var _i5 = 0; _i5 < _arr.length; _i5++) { - var _arr$_i = ___slicedToArray_30(_arr[_i5], 2), - coordsSet = _arr$_i[0], - delta = _arr$_i[1]; - - coordsSet.page.x += delta.x; - coordsSet.page.y += delta.y; - coordsSet.client.x += delta.x; - coordsSet.client.y += delta.y; - } - - var rectDelta = interaction.modifiers.result.rectDelta; - var rect = arg.rect || interaction.rect; - rect.left += rectDelta.left; - rect.right += rectDelta.right; - rect.top += rectDelta.top; - rect.bottom += rectDelta.bottom; - rect.width = rect.right - rect.left; - rect.height = rect.bottom - rect.top; -} - -function restoreCoords(_ref7) { - var _ref7$interaction = _ref7.interaction, - coords = _ref7$interaction.coords, - rect = _ref7$interaction.rect, - modifiers = _ref7$interaction.modifiers; - - if (!modifiers.result) { - return; - } - - var startDelta = modifiers.startDelta; - var _modifiers$result = modifiers.result, - curDelta = _modifiers$result.delta, - rectDelta = _modifiers$result.rectDelta; - var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]]; - - for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) { - var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2), - coordsSet = _coordsAndDeltas$_i[0], - delta = _coordsAndDeltas$_i[1]; - - coordsSet.page.x -= delta.x; - coordsSet.page.y -= delta.y; - coordsSet.client.x -= delta.x; - coordsSet.client.y -= delta.y; - } - - rect.left -= rectDelta.left; - rect.right -= rectDelta.right; - rect.top -= rectDelta.top; - rect.bottom -= rectDelta.bottom; -} - -function shouldDo(options, preEnd, requireEndOnly, phase) { - return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly; -} - -function getRectOffset(rect, coords) { - return rect ? { - left: coords.x - rect.left, - top: coords.y - rect.top, - right: rect.right - coords.x, - bottom: rect.bottom - coords.y - } : { - left: 0, - top: 0, - right: 0, - bottom: 0 - }; -} - -function makeModifier(module, name) { - var defaults = module.defaults; - var methods = { - start: module.start, - set: module.set, - beforeEnd: module.beforeEnd, - stop: module.stop - }; - - var modifier = function modifier(_options) { - var options = _options || {}; - options.enabled = options.enabled !== false; // add missing defaults to options - - for (var prop in defaults) { - if (!(prop in options)) { - options[prop] = defaults[prop]; - } - } - - var m = { - options: options, - methods: methods, - name: name - }; - return m; - }; - - if (name && typeof name === 'string') { - // for backwrads compatibility - modifier._defaults = defaults; - modifier._methods = methods; - } - - return modifier; -} - -var ___default_30 = { - id: 'modifiers/base', - install: __install_30, - startAll: startAll, - setAll: setAll, - prepareStates: prepareStates, - start: __start_30, - beforeMove: __beforeMove_30, - beforeEnd: beforeEnd, - stop: stop, - shouldDo: shouldDo, - getModifierList: getModifierList, - getRectOffset: getRectOffset, - makeModifier: makeModifier -}; -_$base_30["default"] = ___default_30; - -var _$inertia_26 = {}; -"use strict"; - -Object.defineProperty(_$inertia_26, "__esModule", { - value: true -}); -_$inertia_26["default"] = void 0; - -/* removed: var _$InteractEvent_15 = require("@interactjs/core/InteractEvent"); */; - -var ___base_26 = ___interopRequireWildcard_26(_$base_30); - -var __utils_26 = ___interopRequireWildcard_26(_$utils_56); - -var ___raf_26 = ___interopRequireDefault_26(_$raf_62); - -function ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_26() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -_$InteractEvent_15.EventPhase.Resume = 'resume'; -_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart'; - -function __install_26(scope) { - var interactions = scope.interactions, - defaults = scope.defaults; - interactions.signals.on('new', function (_ref) { - var interaction = _ref.interaction; - interaction.inertia = { - active: false, - smoothEnd: false, - allowResume: false, - upCoords: {}, - timeout: null - }; - }); - interactions.signals.on('before-action-end', function (arg) { - return release(arg, scope); - }); - interactions.signals.on('down', function (arg) { - return resume(arg, scope); - }); - interactions.signals.on('stop', __stop_26); - defaults.perAction.inertia = { - enabled: false, - resistance: 10, - minSpeed: 100, - endSpeed: 10, - allowResume: true, - smoothEndDuration: 300 - }; - scope.usePlugin(___base_26["default"]); -} - -function resume(_ref2, scope) { - var interaction = _ref2.interaction, - event = _ref2.event, - pointer = _ref2.pointer, - eventTarget = _ref2.eventTarget; - var state = interaction.inertia; // Check if the down event hits the current inertia target - - if (state.active) { - var element = eventTarget; // climb up the DOM tree from the event target - - while (__utils_26.is.element(element)) { - // if interaction element is the current inertia target element - if (element === interaction.element) { - // stop inertia - ___raf_26["default"].cancel(state.timeout); - - state.active = false; - interaction.simulation = null; // update pointers to the down event's coordinates - - interaction.updatePointer(pointer, event, eventTarget, true); - __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) { - return p.pointer; - }), interaction._now()); // fire appropriate signals - - var signalArg = { - interaction: interaction, - phase: _$InteractEvent_15.EventPhase.Resume - }; - scope.interactions.signals.fire('action-resume', signalArg); // fire a reume event - - var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element); - - interaction._fireEvent(resumeEvent); - - __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); - break; - } - - element = __utils_26.dom.parentNode(element); - } - } -} - -function release(_ref3, scope) { - var interaction = _ref3.interaction, - event = _ref3.event, - noPreEnd = _ref3.noPreEnd; - var state = interaction.inertia; - - if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) { - return null; - } - - var options = __getOptions_26(interaction); - - var now = interaction._now(); - - var velocityClient = interaction.coords.velocity.client; - var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y); - var smoothEnd = false; - var modifierResult; // check if inertia should be started - - var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent; - var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed; - var modifierArg = { - interaction: interaction, - pageCoords: interaction.coords.cur.page, - states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) { - return __utils_26.extend({}, modifierStatus); - }), - preEnd: true, - prevCoords: null, - requireEndOnly: null, - phase: _$InteractEvent_15.EventPhase.InertiaStart - }; // smoothEnd - - if (inertiaPossible && !inertia) { - modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page; - modifierArg.requireEndOnly = false; - modifierResult = ___base_26["default"].setAll(modifierArg); - - if (modifierResult.changed) { - smoothEnd = true; - } - } - - if (!(inertia || smoothEnd)) { - return null; - } - - __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur); - (0, ___base_26.setCoords)(modifierArg); - interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name - interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element); - (0, ___base_26.restoreCoords)(modifierArg); - state.t0 = now; - state.active = true; - state.allowResume = options.allowResume; - interaction.simulation = state; - interaction.interactable.fire(state.startEvent); - - if (inertia) { - state.vx0 = interaction.coords.velocity.client.x; - state.vy0 = interaction.coords.velocity.client.y; - state.v0 = pointerSpeed; - calcInertia(interaction, state); - __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page); - modifierArg.pageCoords.x += state.xe; - modifierArg.pageCoords.y += state.ye; - modifierArg.prevCoords = null; - modifierArg.requireEndOnly = true; - modifierResult = ___base_26["default"].setAll(modifierArg); - state.modifiedXe += modifierResult.delta.x; - state.modifiedYe += modifierResult.delta.y; - state.timeout = ___raf_26["default"].request(function () { - return inertiaTick(interaction); - }); - } else { - state.smoothEnd = true; - state.xe = modifierResult.delta.x; - state.ye = modifierResult.delta.y; - state.sx = state.sy = 0; - state.timeout = ___raf_26["default"].request(function () { - return smothEndTick(interaction); - }); - } - - return false; -} - -function __stop_26(_ref4) { - var interaction = _ref4.interaction; - var state = interaction.inertia; - - if (state.active) { - ___raf_26["default"].cancel(state.timeout); - - state.active = false; - interaction.simulation = null; - } -} - -function calcInertia(interaction, state) { - var options = __getOptions_26(interaction); - var lambda = options.resistance; - var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda; - state.x0 = interaction.prevEvent.page.x; - state.y0 = interaction.prevEvent.page.y; - state.t0 = state.startEvent.timeStamp / 1000; - state.sx = state.sy = 0; - state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda; - state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda; - state.te = inertiaDur; - state.lambda_v0 = lambda / state.v0; - state.one_ve_v0 = 1 - options.endSpeed / state.v0; -} - -function inertiaTick(interaction) { - updateInertiaCoords(interaction); - __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur); - __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta); - var state = interaction.inertia; - var options = __getOptions_26(interaction); - var lambda = options.resistance; - var t = interaction._now() / 1000 - state.t0; - - if (t < state.te) { - var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0; - - if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) { - state.sx = state.xe * progress; - state.sy = state.ye * progress; - } else { - var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress); - state.sx = quadPoint.x; - state.sy = quadPoint.y; - } - - interaction.move(); - state.timeout = ___raf_26["default"].request(function () { - return inertiaTick(interaction); - }); - } else { - state.sx = state.modifiedXe; - state.sy = state.modifiedYe; - interaction.move(); - interaction.end(state.startEvent); - state.active = false; - interaction.simulation = null; - } - - __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); -} - -function smothEndTick(interaction) { - updateInertiaCoords(interaction); - var state = interaction.inertia; - var t = interaction._now() - state.t0; - - var _getOptions = __getOptions_26(interaction), - duration = _getOptions.smoothEndDuration; - - if (t < duration) { - state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration); - state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration); - interaction.move(); - state.timeout = ___raf_26["default"].request(function () { - return smothEndTick(interaction); - }); - } else { - state.sx = state.xe; - state.sy = state.ye; - interaction.move(); - interaction.end(state.startEvent); - state.smoothEnd = state.active = false; - interaction.simulation = null; - } -} - -function updateInertiaCoords(interaction) { - var state = interaction.inertia; // return if inertia isn't running - - if (!state.active) { - return; - } - - var pageUp = state.upCoords.page; - var clientUp = state.upCoords.client; - __utils_26.pointer.setCoords(interaction.coords.cur, [{ - pageX: pageUp.x + state.sx, - pageY: pageUp.y + state.sy, - clientX: clientUp.x + state.sx, - clientY: clientUp.y + state.sy - }], interaction._now()); -} - -function __getOptions_26(_ref5) { - var interactable = _ref5.interactable, - prepared = _ref5.prepared; - return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia; -} - -var ___default_26 = { - id: 'inertia', - install: __install_26, - calcInertia: calcInertia, - inertiaTick: inertiaTick, - smothEndTick: smothEndTick, - updateInertiaCoords: updateInertiaCoords -}; -_$inertia_26["default"] = ___default_26; - -var _$pointer_33 = {}; -"use strict"; - -Object.defineProperty(_$pointer_33, "__esModule", { - value: true -}); -_$pointer_33["default"] = void 0; - -var ___extend_33 = ___interopRequireDefault_33(_$extend_53); - -var __is_33 = ___interopRequireWildcard_33(_$is_57); - -var ___rect_33 = ___interopRequireDefault_33(_$rect_63); - -function ___getRequireWildcardCache_33() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __start_33(_ref) { - var rect = _ref.rect, - startOffset = _ref.startOffset, - state = _ref.state, - interaction = _ref.interaction, - pageCoords = _ref.pageCoords; - var options = state.options; - var elementRect = options.elementRect; - var offset = (0, ___extend_33["default"])({ - left: 0, - top: 0, - right: 0, - bottom: 0 - }, options.offset || {}); - - if (rect && elementRect) { - var restriction = getRestrictionRect(options.restriction, interaction, pageCoords); - - if (restriction) { - var widthDiff = restriction.right - restriction.left - rect.width; - var heightDiff = restriction.bottom - restriction.top - rect.height; - - if (widthDiff < 0) { - offset.left += widthDiff; - offset.right += widthDiff; - } - - if (heightDiff < 0) { - offset.top += heightDiff; - offset.bottom += heightDiff; - } - } - - offset.left += startOffset.left - rect.width * elementRect.left; - offset.top += startOffset.top - rect.height * elementRect.top; - offset.right += startOffset.right - rect.width * (1 - elementRect.right); - offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom); - } - - state.offset = offset; -} - -function set(_ref2) { - var coords = _ref2.coords, - interaction = _ref2.interaction, - state = _ref2.state; - var options = state.options, - offset = state.offset; - var restriction = getRestrictionRect(options.restriction, interaction, coords); - - if (!restriction) { - return; - } - - var rect = ___rect_33["default"].xywhToTlbr(restriction); - - coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left); - coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top); -} - -function getRestrictionRect(value, interaction, coords) { - if (__is_33.func(value)) { - return ___rect_33["default"].resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]); - } else { - return ___rect_33["default"].resolveRectLike(value, interaction.interactable, interaction.element); - } -} - -var __defaults_33 = { - restriction: null, - elementRect: null, - offset: null, - endOnly: false, - enabled: false -}; -var restrict = { - start: __start_33, - set: set, - getRestrictionRect: getRestrictionRect, - defaults: __defaults_33 -}; -var ___default_33 = restrict; -_$pointer_33["default"] = ___default_33; - -var _$edges_32 = {}; -"use strict"; - -Object.defineProperty(_$edges_32, "__esModule", { - value: true -}); -_$edges_32["default"] = void 0; - -var ___extend_32 = ___interopRequireDefault_32(_$extend_53); - -var ___rect_32 = ___interopRequireDefault_32(_$rect_63); - -var _pointer = ___interopRequireDefault_32(_$pointer_33); - -function ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -// This module adds the options.resize.restrictEdges setting which sets min and -// max for the top, left, bottom and right edges of the target being resized. -// -// interact(target).resize({ -// edges: { top: true, left: true }, -// restrictEdges: { -// inner: { top: 200, left: 200, right: 400, bottom: 400 }, -// outer: { top: 0, left: 0, right: 600, bottom: 600 }, -// }, -// }) -var __getRestrictionRect_32 = _pointer["default"].getRestrictionRect; -var noInner = { - top: +Infinity, - left: +Infinity, - bottom: -Infinity, - right: -Infinity -}; -var noOuter = { - top: -Infinity, - left: -Infinity, - bottom: +Infinity, - right: +Infinity -}; - -function __start_32(_ref) { - var interaction = _ref.interaction, - state = _ref.state; - var options = state.options; - var startOffset = interaction.modifiers.startOffset; - var offset; - - if (options) { - var offsetRect = __getRestrictionRect_32(options.offset, interaction, interaction.coords.start.page); - offset = ___rect_32["default"].rectToXY(offsetRect); - } - - offset = offset || { - x: 0, - y: 0 - }; - state.offset = { - top: offset.y + startOffset.top, - left: offset.x + startOffset.left, - bottom: offset.y - startOffset.bottom, - right: offset.x - startOffset.right - }; -} - -function __set_32(_ref2) { - var coords = _ref2.coords, - interaction = _ref2.interaction, - state = _ref2.state; - var offset = state.offset, - options = state.options; - var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; - - if (!edges) { - return; - } - - var page = (0, ___extend_32["default"])({}, coords); - var inner = __getRestrictionRect_32(options.inner, interaction, page) || {}; - var outer = __getRestrictionRect_32(options.outer, interaction, page) || {}; - fixRect(inner, noInner); - fixRect(outer, noOuter); - - if (edges.top) { - coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top); - } else if (edges.bottom) { - coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom); - } - - if (edges.left) { - coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left); - } else if (edges.right) { - coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right); - } -} - -function fixRect(rect, defaults) { - var _arr = ['top', 'left', 'bottom', 'right']; - - for (var _i = 0; _i < _arr.length; _i++) { - var edge = _arr[_i]; - - if (!(edge in rect)) { - rect[edge] = defaults[edge]; - } - } - - return rect; -} - -var __defaults_32 = { - inner: null, - outer: null, - offset: null, - endOnly: false, - enabled: false -}; -var restrictEdges = { - noInner: noInner, - noOuter: noOuter, - getRestrictionRect: __getRestrictionRect_32, - start: __start_32, - set: __set_32, - defaults: __defaults_32 -}; -var ___default_32 = restrictEdges; -_$edges_32["default"] = ___default_32; - -var _$rect_34 = {}; -"use strict"; - -Object.defineProperty(_$rect_34, "__esModule", { - value: true -}); -_$rect_34["default"] = void 0; - -var ___extend_34 = ___interopRequireDefault_34(_$extend_53); - -var ___pointer_34 = ___interopRequireDefault_34(_$pointer_33); - -function ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var __defaults_34 = (0, ___extend_34["default"])({ - get elementRect() { - return { - top: 0, - left: 0, - bottom: 1, - right: 1 - }; - }, - - set elementRect(_) {} - -}, ___pointer_34["default"].defaults); -var restrictRect = { - start: ___pointer_34["default"].start, - set: ___pointer_34["default"].set, - defaults: __defaults_34 -}; -var ___default_34 = restrictRect; -_$rect_34["default"] = ___default_34; - -var _$size_35 = {}; -"use strict"; - -Object.defineProperty(_$size_35, "__esModule", { - value: true -}); -_$size_35["default"] = void 0; - -var ___extend_35 = ___interopRequireDefault_35(_$extend_53); - -var ___rect_35 = ___interopRequireDefault_35(_$rect_63); - -var _edges = ___interopRequireDefault_35(_$edges_32); - -function ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var noMin = { - width: -Infinity, - height: -Infinity -}; -var noMax = { - width: +Infinity, - height: +Infinity -}; - -function __start_35(arg) { - return _edges["default"].start(arg); -} - -function __set_35(arg) { - var interaction = arg.interaction, - state = arg.state; - var options = state.options; - var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; - - if (!edges) { - return; - } - - var rect = ___rect_35["default"].xywhToTlbr(interaction.resizeRects.inverted); - - var minSize = ___rect_35["default"].tlbrToXywh(_edges["default"].getRestrictionRect(options.min, interaction, arg.coords)) || noMin; - var maxSize = ___rect_35["default"].tlbrToXywh(_edges["default"].getRestrictionRect(options.max, interaction, arg.coords)) || noMax; - state.options = { - endOnly: options.endOnly, - inner: (0, ___extend_35["default"])({}, _edges["default"].noInner), - outer: (0, ___extend_35["default"])({}, _edges["default"].noOuter) - }; - - if (edges.top) { - state.options.inner.top = rect.bottom - minSize.height; - state.options.outer.top = rect.bottom - maxSize.height; - } else if (edges.bottom) { - state.options.inner.bottom = rect.top + minSize.height; - state.options.outer.bottom = rect.top + maxSize.height; - } - - if (edges.left) { - state.options.inner.left = rect.right - minSize.width; - state.options.outer.left = rect.right - maxSize.width; - } else if (edges.right) { - state.options.inner.right = rect.left + minSize.width; - state.options.outer.right = rect.left + maxSize.width; - } - - _edges["default"].set(arg); - - state.options = options; -} - -var __defaults_35 = { - min: null, - max: null, - endOnly: false, - enabled: false -}; -var restrictSize = { - start: __start_35, - set: __set_35, - defaults: __defaults_35 -}; -var ___default_35 = restrictSize; -_$size_35["default"] = ___default_35; - -var _$pointer_37 = {}; -"use strict"; - -Object.defineProperty(_$pointer_37, "__esModule", { - value: true -}); -_$pointer_37["default"] = void 0; - -var __utils_37 = ___interopRequireWildcard_37(_$utils_56); - -function ___getRequireWildcardCache_37() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __start_37(arg) { - var interaction = arg.interaction, - interactable = arg.interactable, - element = arg.element, - rect = arg.rect, - state = arg.state, - startOffset = arg.startOffset; - var options = state.options; - var offsets = []; - var origin = options.offsetWithOrigin ? getOrigin(arg) : { - x: 0, - y: 0 - }; - var snapOffset; - - if (options.offset === 'startCoords') { - snapOffset = { - x: interaction.coords.start.page.x, - y: interaction.coords.start.page.y - }; - } else { - var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]); - snapOffset = __utils_37.rect.rectToXY(offsetRect) || { - x: 0, - y: 0 - }; - snapOffset.x += origin.x; - snapOffset.y += origin.y; - } - - var relativePoints = options.relativePoints || []; - - if (rect && options.relativePoints && options.relativePoints.length) { - for (var index = 0; index < relativePoints.length; index++) { - var relativePoint = relativePoints[index]; - offsets.push({ - index: index, - relativePoint: relativePoint, - x: startOffset.left - rect.width * relativePoint.x + snapOffset.x, - y: startOffset.top - rect.height * relativePoint.y + snapOffset.y - }); - } - } else { - offsets.push(__utils_37.extend({ - index: 0, - relativePoint: null - }, snapOffset)); - } - - state.offsets = offsets; -} - -function __set_37(arg) { - var interaction = arg.interaction, - coords = arg.coords, - state = arg.state; - var options = state.options, - offsets = state.offsets; - var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name); - var page = __utils_37.extend({}, coords); - var targets = []; - var target; - - if (!options.offsetWithOrigin) { - page.x -= origin.x; - page.y -= origin.y; - } - - state.realX = page.x; - state.realY = page.y; - - for (var _i = 0; _i < offsets.length; _i++) { - var _ref; - - _ref = offsets[_i]; - var offset = _ref; - var relativeX = page.x - offset.x; - var relativeY = page.y - offset.y; - - for (var index = 0, _len = options.targets.length; index < _len; index++) { - var snapTarget = options.targets[index]; - - if (__utils_37.is.func(snapTarget)) { - target = snapTarget(relativeX, relativeY, interaction, offset, index); - } else { - target = snapTarget; - } - - if (!target) { - continue; - } - - targets.push({ - x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x, - y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y, - range: __utils_37.is.number(target.range) ? target.range : options.range - }); - } - } - - var closest = { - target: null, - inRange: false, - distance: 0, - range: 0, - dx: 0, - dy: 0 - }; - - for (var i = 0, len = targets.length; i < len; i++) { - target = targets[i]; - var range = target.range; - var dx = target.x - page.x; - var dy = target.y - page.y; - var distance = __utils_37.hypot(dx, dy); - var inRange = distance <= range; // Infinite targets count as being out of range - // compared to non infinite ones that are in range - - if (range === Infinity && closest.inRange && closest.range !== Infinity) { - inRange = false; - } - - if (!closest.target || (inRange // is the closest target in range? - ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target - ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't - : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest - distance < closest.distance : // The other is not in range and the pointer is closer to this target - !closest.inRange && distance < closest.distance)) { - closest.target = target; - closest.distance = distance; - closest.range = range; - closest.inRange = inRange; - closest.dx = dx; - closest.dy = dy; - state.range = range; - } - } - - if (closest.inRange) { - coords.x = closest.target.x; - coords.y = closest.target.y; - } - - state.closest = closest; -} - -function getOrigin(arg) { - var element = arg.interaction.element; - var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element])); - var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name); - return origin; -} - -var __defaults_37 = { - range: Infinity, - targets: null, - offset: null, - offsetWithOrigin: true, - origin: null, - relativePoints: null, - endOnly: false, - enabled: false -}; -var snap = { - start: __start_37, - set: __set_37, - defaults: __defaults_37 -}; -var ___default_37 = snap; -_$pointer_37["default"] = ___default_37; - -var _$size_38 = {}; -"use strict"; - -Object.defineProperty(_$size_38, "__esModule", { - value: true -}); -_$size_38["default"] = void 0; - -var ___extend_38 = ___interopRequireDefault_38(_$extend_53); - -var __is_38 = ___interopRequireWildcard_38(_$is_57); - -var ___pointer_38 = ___interopRequireDefault_38(_$pointer_37); - -function ___getRequireWildcardCache_38() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); } - -function ___nonIterableRest_38() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; } - -function __start_38(arg) { - var interaction = arg.interaction, - state = arg.state; - var options = state.options; - var edges = interaction.prepared.edges; - - if (!edges) { - return null; - } - - arg.state = { - options: { - targets: null, - relativePoints: [{ - x: edges.left ? 0 : 1, - y: edges.top ? 0 : 1 - }], - offset: options.offset || 'self', - origin: { - x: 0, - y: 0 - }, - range: options.range - } - }; - state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']]; - - ___pointer_38["default"].start(arg); - - state.offsets = arg.state.offsets; - arg.state = state; -} - -function __set_38(arg) { - var interaction = arg.interaction, - state = arg.state, - coords = arg.coords; - var options = state.options, - offsets = state.offsets; - var relative = { - x: coords.x - offsets[0].x, - y: coords.y - offsets[0].y - }; - state.options = (0, ___extend_38["default"])({}, options); - state.options.targets = []; - - for (var _i = 0; _i < (options.targets || []).length; _i++) { - var _ref; - - _ref = (options.targets || [])[_i]; - var snapTarget = _ref; - var target = void 0; - - if (__is_38.func(snapTarget)) { - target = snapTarget(relative.x, relative.y, interaction); - } else { - target = snapTarget; - } - - if (!target) { - continue; - } - - for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) { - var _ref2; - - _ref2 = state.targetFields[_i2]; - - var _ref3 = _ref2, - _ref4 = ___slicedToArray_38(_ref3, 2), - xField = _ref4[0], - yField = _ref4[1]; - - if (xField in target || yField in target) { - target.x = target[xField]; - target.y = target[yField]; - break; - } - } - - state.options.targets.push(target); - } - - ___pointer_38["default"].set(arg); - - state.options = options; -} - -var __defaults_38 = { - range: Infinity, - targets: null, - offset: null, - endOnly: false, - enabled: false -}; -var snapSize = { - start: __start_38, - set: __set_38, - defaults: __defaults_38 -}; -var ___default_38 = snapSize; -_$size_38["default"] = ___default_38; - -var _$edges_36 = {}; -"use strict"; - -Object.defineProperty(_$edges_36, "__esModule", { - value: true -}); -_$edges_36["default"] = void 0; - -var ___clone_36 = ___interopRequireDefault_36(_$clone_49); - -var ___extend_36 = ___interopRequireDefault_36(_$extend_53); - -var _size = ___interopRequireDefault_36(_$size_38); - -function ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -/** - * @module modifiers/snapEdges - * - * @description - * This module allows snapping of the edges of targets during resize - * interactions. - * - * @example - * interact(target).resizable({ - * snapEdges: { - * targets: [interact.snappers.grid({ x: 100, y: 50 })], - * }, - * }) - * - * interact(target).resizable({ - * snapEdges: { - * targets: [ - * interact.snappers.grid({ - * top: 50, - * left: 50, - * bottom: 100, - * right: 100, - * }), - * ], - * }, - * }) - */ -function __start_36(arg) { - var edges = arg.interaction.prepared.edges; - - if (!edges) { - return null; - } - - arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']]; - return _size["default"].start(arg); -} - -function __set_36(arg) { - return _size["default"].set(arg); -} - -var snapEdges = { - start: __start_36, - set: __set_36, - defaults: (0, ___extend_36["default"])((0, ___clone_36["default"])(_size["default"].defaults), { - offset: { - x: 0, - y: 0 - } - }) -}; -var ___default_36 = snapEdges; -_$edges_36["default"] = ___default_36; - -var _$modifiers_31 = {}; -"use strict"; - -Object.defineProperty(_$modifiers_31, "__esModule", { - value: true -}); -_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0; - -var ___base_31 = ___interopRequireDefault_31(_$base_30); - -var ___edges_31 = ___interopRequireDefault_31(_$edges_32); - -var ___pointer_31 = ___interopRequireDefault_31(_$pointer_33); - -var ___rect_31 = ___interopRequireDefault_31(_$rect_34); - -var ___size_31 = ___interopRequireDefault_31(_$size_35); - -var _edges2 = ___interopRequireDefault_31(_$edges_36); - -var _pointer2 = ___interopRequireDefault_31(_$pointer_37); - -var _size2 = ___interopRequireDefault_31(_$size_38); - -function ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var __makeModifier_31 = ___base_31["default"].makeModifier; -var __snap_31 = __makeModifier_31(_pointer2["default"], 'snap'); -_$modifiers_31.snap = __snap_31; -var __snapSize_31 = __makeModifier_31(_size2["default"], 'snapSize'); -_$modifiers_31.snapSize = __snapSize_31; -var __snapEdges_31 = __makeModifier_31(_edges2["default"], 'snapEdges'); -_$modifiers_31.snapEdges = __snapEdges_31; -var __restrict_31 = __makeModifier_31(___pointer_31["default"], 'restrict'); -_$modifiers_31.restrict = __restrict_31; -var __restrictRect_31 = __makeModifier_31(___rect_31["default"], 'restrictRect'); -_$modifiers_31.restrictRect = __restrictRect_31; -var __restrictEdges_31 = __makeModifier_31(___edges_31["default"], 'restrictEdges'); -_$modifiers_31.restrictEdges = __restrictEdges_31; -var __restrictSize_31 = __makeModifier_31(___size_31["default"], 'restrictSize'); -_$modifiers_31.restrictSize = __restrictSize_31; - -var _$PointerEvent_39 = {}; -"use strict"; - -Object.defineProperty(_$PointerEvent_39, "__esModule", { - value: true -}); -_$PointerEvent_39["default"] = void 0; - -var ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13); - -var ___pointerUtils_39 = ___interopRequireDefault_39(_$pointerUtils_61); - -function ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___typeof_39(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_39(obj); } - -function ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; } - -function ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_39(self); } - -function ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); } - -function ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } - -function ___inherits_39(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); } - -function ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); } - -/** */ -var PointerEvent = -/*#__PURE__*/ -function (_BaseEvent) { - ___inherits_39(PointerEvent, _BaseEvent); - - /** */ - function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) { - var _this; - - ___classCallCheck_39(this, PointerEvent); - - _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction)); - - ___pointerUtils_39["default"].pointerExtend(___assertThisInitialized_39(_this), event); - - if (event !== pointer) { - ___pointerUtils_39["default"].pointerExtend(___assertThisInitialized_39(_this), pointer); - } - - _this.timeStamp = timeStamp; - _this.originalEvent = event; - _this.type = type; - _this.pointerId = ___pointerUtils_39["default"].getPointerId(pointer); - _this.pointerType = ___pointerUtils_39["default"].getPointerType(pointer); - _this.target = eventTarget; - _this.currentTarget = null; - - if (type === 'tap') { - var pointerIndex = interaction.getPointerIndex(pointer); - _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime; - var interval = _this.timeStamp - interaction.tapTime; - _this["double"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500); - } else if (type === 'doubletap') { - _this.dt = pointer.timeStamp - interaction.tapTime; - } - - return _this; - } - - ___createClass_39(PointerEvent, [{ - key: "_subtractOrigin", - value: function _subtractOrigin(_ref) { - var originX = _ref.x, - originY = _ref.y; - this.pageX -= originX; - this.pageY -= originY; - this.clientX -= originX; - this.clientY -= originY; - return this; - } - }, { - key: "_addOrigin", - value: function _addOrigin(_ref2) { - var originX = _ref2.x, - originY = _ref2.y; - this.pageX += originX; - this.pageY += originY; - this.clientX += originX; - this.clientY += originY; - return this; - } - /** - * Prevent the default behaviour of the original Event - */ - - }, { - key: "preventDefault", - value: function preventDefault() { - this.originalEvent.preventDefault(); - } - }]); - - return PointerEvent; -}(___BaseEvent2_39["default"]); - -_$PointerEvent_39["default"] = PointerEvent; - -var _$base_40 = {}; -"use strict"; - -Object.defineProperty(_$base_40, "__esModule", { - value: true -}); -_$base_40["default"] = void 0; - -var __utils_40 = ___interopRequireWildcard_40(_$utils_56); - -var _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39); - -function ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_40() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -var signals = new __utils_40.Signals(); -var simpleSignals = ['down', 'up', 'cancel']; -var simpleEvents = ['down', 'up', 'cancel']; -var __defaults_40 = { - holdDuration: 600, - ignoreFrom: null, - allowFrom: null, - origin: { - x: 0, - y: 0 - } -}; -var pointerEvents = { - id: 'pointer-events/base', - install: __install_40, - signals: signals, - PointerEvent: _PointerEvent["default"], - fire: fire, - collectEventTargets: collectEventTargets, - createSignalListener: createSignalListener, - defaults: __defaults_40, - types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold'] -}; - -function fire(arg, scope) { - var interaction = arg.interaction, - pointer = arg.pointer, - event = arg.event, - eventTarget = arg.eventTarget, - _arg$type = arg.type, - type = _arg$type === void 0 ? arg.pointerEvent.type : _arg$type, - _arg$targets = arg.targets, - targets = _arg$targets === void 0 ? collectEventTargets(arg) : _arg$targets; - var _arg$pointerEvent = arg.pointerEvent, - pointerEvent = _arg$pointerEvent === void 0 ? new _PointerEvent["default"](type, pointer, event, eventTarget, interaction, scope.now()) : _arg$pointerEvent; - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - targets: targets, - type: type, - pointerEvent: pointerEvent - }; - - for (var i = 0; i < targets.length; i++) { - var target = targets[i]; - - for (var prop in target.props || {}) { - pointerEvent[prop] = target.props[prop]; - } - - var origin = __utils_40.getOriginXY(target.eventable, target.node); - - pointerEvent._subtractOrigin(origin); - - pointerEvent.eventable = target.eventable; - pointerEvent.currentTarget = target.node; - target.eventable.fire(pointerEvent); - - pointerEvent._addOrigin(origin); - - if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) { - break; - } - } - - signals.fire('fired', signalArg); - - if (type === 'tap') { - // if pointerEvent should make a double tap, create and fire a doubletap - // PointerEvent and use that as the prevTap - var prevTap = pointerEvent["double"] ? fire({ - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'doubletap' - }, scope) : pointerEvent; - interaction.prevTap = prevTap; - interaction.tapTime = prevTap.timeStamp; - } - - return pointerEvent; -} - -function collectEventTargets(_ref) { - var interaction = _ref.interaction, - pointer = _ref.pointer, - event = _ref.event, - eventTarget = _ref.eventTarget, - type = _ref.type; - var pointerIndex = interaction.getPointerIndex(pointer); - var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted - - if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target - !(pointerInfo && pointerInfo.downTarget === eventTarget))) { - return []; - } - - var path = __utils_40.dom.getPath(eventTarget); - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: type, - path: path, - targets: [], - node: null - }; - - for (var _i = 0; _i < path.length; _i++) { - var _ref2; - - _ref2 = path[_i]; - var node = _ref2; - signalArg.node = node; - signals.fire('collect-targets', signalArg); - } - - if (type === 'hold') { - signalArg.targets = signalArg.targets.filter(function (target) { - return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration; - }); - } - - return signalArg.targets; -} - -function __install_40(scope) { - var interactions = scope.interactions; - scope.pointerEvents = pointerEvents; - scope.defaults.actions.pointerEvents = pointerEvents.defaults; - interactions.signals.on('new', function (_ref3) { - var interaction = _ref3.interaction; - interaction.prevTap = null; // the most recent tap event on this interaction - - interaction.tapTime = 0; // time of the most recent tap event - }); - interactions.signals.on('update-pointer', function (_ref4) { - var down = _ref4.down, - pointerInfo = _ref4.pointerInfo; - - if (!down && pointerInfo.hold) { - return; - } - - pointerInfo.hold = { - duration: Infinity, - timeout: null - }; - }); - interactions.signals.on('move', function (_ref5) { - var interaction = _ref5.interaction, - pointer = _ref5.pointer, - event = _ref5.event, - eventTarget = _ref5.eventTarget, - duplicateMove = _ref5.duplicateMove; - var pointerIndex = interaction.getPointerIndex(pointer); - - if (!duplicateMove && (!interaction.pointerIsDown || interaction.pointerWasMoved)) { - if (interaction.pointerIsDown) { - clearTimeout(interaction.pointers[pointerIndex].hold.timeout); - } - - fire({ - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'move' - }, scope); - } - }); - interactions.signals.on('down', function (_ref6) { - var interaction = _ref6.interaction, - pointer = _ref6.pointer, - event = _ref6.event, - eventTarget = _ref6.eventTarget, - pointerIndex = _ref6.pointerIndex; - var timer = interaction.pointers[pointerIndex].hold; - var path = __utils_40.dom.getPath(eventTarget); - var signalArg = { - interaction: interaction, - pointer: pointer, - event: event, - eventTarget: eventTarget, - type: 'hold', - targets: [], - path: path, - node: null - }; - - for (var _i2 = 0; _i2 < path.length; _i2++) { - var _ref7; - - _ref7 = path[_i2]; - var node = _ref7; - signalArg.node = node; - signals.fire('collect-targets', signalArg); - } - - if (!signalArg.targets.length) { - return; - } - - var minDuration = Infinity; - - for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) { - var _ref8; - - _ref8 = signalArg.targets[_i3]; - var target = _ref8; - var holdDuration = target.eventable.options.holdDuration; - - if (holdDuration < minDuration) { - minDuration = holdDuration; - } - } - - timer.duration = minDuration; - timer.timeout = setTimeout(function () { - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: 'hold' - }, scope); - }, minDuration); - }); - var _arr = ['up', 'cancel']; - - for (var _i4 = 0; _i4 < _arr.length; _i4++) { - var signalName = _arr[_i4]; - interactions.signals.on(signalName, function (_ref10) { - var interaction = _ref10.interaction, - pointerIndex = _ref10.pointerIndex; - - if (interaction.pointers[pointerIndex].hold) { - clearTimeout(interaction.pointers[pointerIndex].hold.timeout); - } - }); - } - - for (var i = 0; i < simpleSignals.length; i++) { - interactions.signals.on(simpleSignals[i], createSignalListener(simpleEvents[i], scope)); - } - - interactions.signals.on('up', function (_ref9) { - var interaction = _ref9.interaction, - pointer = _ref9.pointer, - event = _ref9.event, - eventTarget = _ref9.eventTarget; - - if (!interaction.pointerWasMoved) { - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: 'tap' - }, scope); - } - }); -} - -function createSignalListener(type, scope) { - return function (_ref11) { - var interaction = _ref11.interaction, - pointer = _ref11.pointer, - event = _ref11.event, - eventTarget = _ref11.eventTarget; - fire({ - interaction: interaction, - eventTarget: eventTarget, - pointer: pointer, - event: event, - type: type - }, scope); - }; -} - -var ___default_40 = pointerEvents; -_$base_40["default"] = ___default_40; - -var _$holdRepeat_41 = {}; -"use strict"; - -Object.defineProperty(_$holdRepeat_41, "__esModule", { - value: true -}); -_$holdRepeat_41["default"] = void 0; - -var ___base_41 = ___interopRequireDefault_41(_$base_40); - -function ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_41(scope) { - var pointerEvents = scope.pointerEvents, - interactions = scope.interactions; - scope.usePlugin(___base_41["default"]); - pointerEvents.signals.on('new', onNew); - pointerEvents.signals.on('fired', function (arg) { - return onFired(arg, scope); - }); - var _arr = ['move', 'up', 'cancel', 'endall']; - - for (var _i = 0; _i < _arr.length; _i++) { - var signal = _arr[_i]; - interactions.signals.on(signal, endHoldRepeat); - } // don't repeat by default - - - pointerEvents.defaults.holdRepeatInterval = 0; - pointerEvents.types.push('holdrepeat'); -} - -function onNew(_ref) { - var pointerEvent = _ref.pointerEvent; - - if (pointerEvent.type !== 'hold') { - return; - } - - pointerEvent.count = (pointerEvent.count || 0) + 1; -} - -function onFired(_ref2, scope) { - var interaction = _ref2.interaction, - pointerEvent = _ref2.pointerEvent, - eventTarget = _ref2.eventTarget, - targets = _ref2.targets; - - if (pointerEvent.type !== 'hold' || !targets.length) { - return; - } // get the repeat interval from the first eventable - - - var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less - - if (interval <= 0) { - return; - } // set a timeout to fire the holdrepeat event - - - interaction.holdIntervalHandle = setTimeout(function () { - scope.pointerEvents.fire({ - interaction: interaction, - eventTarget: eventTarget, - type: 'hold', - pointer: pointerEvent, - event: pointerEvent - }, scope); - }, interval); -} - -function endHoldRepeat(_ref3) { - var interaction = _ref3.interaction; - - // set the interaction's holdStopTime property - // to stop further holdRepeat events - if (interaction.holdIntervalHandle) { - clearInterval(interaction.holdIntervalHandle); - interaction.holdIntervalHandle = null; - } -} - -var ___default_41 = { - id: 'pointer-events/holdRepeat', - install: __install_41 -}; -_$holdRepeat_41["default"] = ___default_41; - -var _$interactableTargets_43 = {}; -"use strict"; - -Object.defineProperty(_$interactableTargets_43, "__esModule", { - value: true -}); -_$interactableTargets_43["default"] = void 0; - -/* removed: var _$arr_47 = require("@interactjs/utils/arr"); */; - -var ___extend_43 = ___interopRequireDefault_43(_$extend_53); - -function ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_43(scope) { - var pointerEvents = scope.pointerEvents, - actions = scope.actions, - Interactable = scope.Interactable, - interactables = scope.interactables; - pointerEvents.signals.on('collect-targets', function (_ref) { - var targets = _ref.targets, - node = _ref.node, - type = _ref.type, - eventTarget = _ref.eventTarget; - scope.interactables.forEachMatch(node, function (interactable) { - var eventable = interactable.events; - var options = eventable.options; - - if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) { - targets.push({ - node: node, - eventable: eventable, - props: { - interactable: interactable - } - }); - } - }); - }); - interactables.signals.on('new', function (_ref2) { - var interactable = _ref2.interactable; - - interactable.events.getRect = function (element) { - return interactable.getRect(element); - }; - }); - interactables.signals.on('set', function (_ref3) { - var interactable = _ref3.interactable, - options = _ref3.options; - (0, ___extend_43["default"])(interactable.events.options, pointerEvents.defaults); - (0, ___extend_43["default"])(interactable.events.options, options.pointerEvents || {}); - }); - (0, _$arr_47.merge)(actions.eventTypes, pointerEvents.types); - Interactable.prototype.pointerEvents = pointerEventsMethod; - var __backCompatOption = Interactable.prototype._backCompatOption; - - Interactable.prototype._backCompatOption = function (optionName, newValue) { - var ret = __backCompatOption.call(this, optionName, newValue); - - if (ret === this) { - this.events.options[optionName] = newValue; - } - - return ret; - }; -} - -function pointerEventsMethod(options) { - (0, ___extend_43["default"])(this.events.options, options); - return this; -} - -var ___default_43 = { - id: 'pointer-events/interactableTargets', - install: __install_43 -}; -_$interactableTargets_43["default"] = ___default_43; - -var _$pointerEvents_42 = {}; -"use strict"; - -Object.defineProperty(_$pointerEvents_42, "__esModule", { - value: true -}); -_$pointerEvents_42.install = __install_42; -Object.defineProperty(_$pointerEvents_42, "pointerEvents", { - enumerable: true, - get: function get() { - return ___base_42["default"]; - } -}); -Object.defineProperty(_$pointerEvents_42, "holdRepeat", { - enumerable: true, - get: function get() { - return _holdRepeat["default"]; - } -}); -Object.defineProperty(_$pointerEvents_42, "interactableTargets", { - enumerable: true, - get: function get() { - return _interactableTargets["default"]; - } -}); -_$pointerEvents_42.id = void 0; - -var ___base_42 = ___interopRequireDefault_42(_$base_40); - -var _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41); - -var _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43); - -function ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function __install_42(scope) { - scope.usePlugin(___base_42["default"]); - scope.usePlugin(_holdRepeat["default"]); - scope.usePlugin(_interactableTargets["default"]); -} - -var __id_42 = 'pointer-events'; -_$pointerEvents_42.id = __id_42; - -var _$reflow_44 = {}; -"use strict"; - -Object.defineProperty(_$reflow_44, "__esModule", { - value: true -}); -_$reflow_44.install = __install_44; -_$reflow_44["default"] = void 0; - -/* removed: var _$InteractEvent_15 = require("@interactjs/core/InteractEvent"); */; - -/* removed: var _$utils_56 = require("@interactjs/utils"); */; - -_$InteractEvent_15.EventPhase.Reflow = 'reflow'; - -function __install_44(scope) { - var actions = scope.actions, - interactions = scope.interactions, - Interactable = scope.Interactable; // add action reflow event types - - for (var _i = 0; _i < actions.names.length; _i++) { - var _ref; - - _ref = actions.names[_i]; - var actionName = _ref; - actions.eventTypes.push("".concat(actionName, "reflow")); - } // remove completed reflow interactions - - - interactions.signals.on('stop', function (_ref2) { - var interaction = _ref2.interaction; - - if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) { - if (interaction._reflowResolve) { - interaction._reflowResolve(); - } - - _$utils_56.arr.remove(scope.interactions.list, interaction); - } - }); - /** - * ```js - * const interactable = interact(target) - * const drag = { name: drag, axis: 'x' } - * const resize = { name: resize, edges: { left: true, bottom: true } - * - * interactable.reflow(drag) - * interactable.reflow(resize) - * ``` - * - * Start an action sequence to re-apply modifiers, check drops, etc. - * - * @param { Object } action The action to begin - * @param { string } action.name The name of the action - * @returns { Promise } - */ - - Interactable.prototype.reflow = function (action) { - return reflow(this, action, scope); - }; -} - -function reflow(interactable, action, scope) { - var elements = _$utils_56.is.string(interactable.target) ? _$utils_56.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name - - var Promise = _$utils_56.win.window.Promise; - var promises = Promise ? [] : null; - - var _loop = function _loop() { - _ref3 = elements[_i2]; - var element = _ref3; - var rect = interactable.getRect(element); - - if (!rect) { - return "break"; - } - - var runningInteraction = _$utils_56.arr.find(scope.interactions.list, function (interaction) { - return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name; - }); - - var reflowPromise = void 0; - - if (runningInteraction) { - runningInteraction.move(); - - if (promises) { - reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) { - runningInteraction._reflowResolve = resolve; - }); - } - } else { - var xywh = _$utils_56.rect.tlbrToXywh(rect); - - var coords = { - page: { - x: xywh.x, - y: xywh.y - }, - client: { - x: xywh.x, - y: xywh.y - }, - timeStamp: scope.now() - }; - - var event = _$utils_56.pointer.coordsToEvent(coords); - - reflowPromise = startReflow(scope, interactable, element, action, event); - } - - if (promises) { - promises.push(reflowPromise); - } - }; - - for (var _i2 = 0; _i2 < elements.length; _i2++) { - var _ref3; - - var _ret = _loop(); - - if (_ret === "break") break; - } - - return promises && Promise.all(promises).then(function () { - return interactable; - }); -} - -function startReflow(scope, interactable, element, action, event) { - var interaction = scope.interactions["new"]({ - pointerType: 'reflow' - }); - var signalArg = { - interaction: interaction, - event: event, - pointer: event, - eventTarget: element, - phase: _$InteractEvent_15.EventPhase.Reflow - }; - interaction.interactable = interactable; - interaction.element = element; - interaction.prepared = (0, _$utils_56.extend)({}, action); - interaction.prevEvent = event; - interaction.updatePointer(event, event, element, true); - - interaction._doPhase(signalArg); - - var reflowPromise = _$utils_56.win.window.Promise ? new _$utils_56.win.window.Promise(function (resolve) { - interaction._reflowResolve = resolve; - }) : null; - interaction._reflowPromise = reflowPromise; - interaction.start(action, interactable, element); - - if (interaction._interacting) { - interaction.move(signalArg); - interaction.end(event); - } else { - interaction.stop(); - } - - interaction.removePointer(event, event); - interaction.pointerIsDown = false; - return reflowPromise; -} - -var ___default_44 = { - id: 'reflow', - install: __install_44 -}; -_$reflow_44["default"] = ___default_44; - -var _$interact_28 = {}; -"use strict"; - -Object.defineProperty(_$interact_28, "__esModule", { - value: true -}); -_$interact_28["default"] = _$interact_28.scope = _$interact_28.interact = void 0; - -var ___scope_28 = _$scope_24({}); - -var __utils_28 = ___interopRequireWildcard_28(_$utils_56); - -var ___browser_28 = ___interopRequireDefault_28(_$browser_48); - -var ___events_28 = ___interopRequireDefault_28(_$events_52); - -function ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_28() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -/** @module interact */ -var globalEvents = {}; -var scope = new ___scope_28.Scope(); -/** - * ```js - * interact('#draggable').draggable(true) - * - * var rectables = interact('rect') - * rectables - * .gesturable(true) - * .on('gesturemove', function (event) { - * // ... - * }) - * ``` - * - * The methods of this variable can be used to set elements as interactables - * and also to change various default settings. - * - * Calling it as a function and passing an element or a valid CSS selector - * string returns an Interactable object which has various methods to configure - * it. - * - * @global - * - * @param {Element | string} target The HTML or SVG Element to interact with - * or CSS selector - * @return {Interactable} - */ - -_$interact_28.scope = scope; - -var interact = function interact(target, options) { - var interactable = scope.interactables.get(target, options); - - if (!interactable) { - interactable = scope.interactables["new"](target, options); - interactable.events.global = globalEvents; - } - - return interactable; -}; -/** - * Use a plugin - * - * @alias module:interact.use - * - * @param {Object} plugin - * @param {function} plugin.install - * @return {interact} - */ - - -_$interact_28.interact = interact; -interact.use = use; - -function use(plugin, options) { - scope.usePlugin(plugin, options); - return interact; -} -/** - * Check if an element or selector has been set with the {@link interact} - * function - * - * @alias module:interact.isSet - * - * @param {Element} element The Element being searched for - * @return {boolean} Indicates if the element or CSS selector was previously - * passed to interact - */ - - -interact.isSet = isSet; - -function isSet(target, options) { - return !!scope.interactables.get(target, options && options.context); -} -/** - * Add a global listener for an InteractEvent or adds a DOM event to `document` - * - * @alias module:interact.on - * - * @param {string | array | object} type The types of events to listen for - * @param {function} listener The function event (s) - * @param {object | boolean} [options] object or useCapture flag for - * addEventListener - * @return {object} interact - */ - - -interact.on = on; - -function on(type, listener, options) { - if (__utils_28.is.string(type) && type.search(' ') !== -1) { - type = type.trim().split(/ +/); - } - - if (__utils_28.is.array(type)) { - for (var _i = 0; _i < type.length; _i++) { - var _ref; - - _ref = type[_i]; - var eventType = _ref; - interact.on(eventType, listener, options); - } - - return interact; - } - - if (__utils_28.is.object(type)) { - for (var prop in type) { - interact.on(prop, type[prop], listener); - } - - return interact; - } // if it is an InteractEvent type, add listener to globalEvents - - - if (__utils_28.arr.contains(scope.actions.eventTypes, type)) { - // if this type of event was never bound - if (!globalEvents[type]) { - globalEvents[type] = [listener]; - } else { - globalEvents[type].push(listener); - } - } // If non InteractEvent type, addEventListener to document - else { - ___events_28["default"].add(scope.document, type, listener, { - options: options - }); - } - - return interact; -} -/** - * Removes a global InteractEvent listener or DOM event from `document` - * - * @alias module:interact.off - * - * @param {string | array | object} type The types of events that were listened - * for - * @param {function} listener The listener function to be removed - * @param {object | boolean} options [options] object or useCapture flag for - * removeEventListener - * @return {object} interact - */ - - -interact.off = off; - -function off(type, listener, options) { - if (__utils_28.is.string(type) && type.search(' ') !== -1) { - type = type.trim().split(/ +/); - } - - if (__utils_28.is.array(type)) { - for (var _i2 = 0; _i2 < type.length; _i2++) { - var _ref2; - - _ref2 = type[_i2]; - var eventType = _ref2; - interact.off(eventType, listener, options); - } - - return interact; - } - - if (__utils_28.is.object(type)) { - for (var prop in type) { - interact.off(prop, type[prop], listener); - } - - return interact; - } - - if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) { - ___events_28["default"].remove(scope.document, type, listener, options); - } else { - var index; - - if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) { - globalEvents[type].splice(index, 1); - } - } - - return interact; -} -/** - * Returns an object which exposes internal data - * @alias module:interact.debug - * - * @return {object} An object with properties that outline the current state - * and expose internal functions and variables - */ - - -interact.debug = debug; - -function debug() { - return scope; -} // expose the functions used to calculate multi-touch properties - - -interact.getPointerAverage = __utils_28.pointer.pointerAverage; -interact.getTouchBBox = __utils_28.pointer.touchBBox; -interact.getTouchDistance = __utils_28.pointer.touchDistance; -interact.getTouchAngle = __utils_28.pointer.touchAngle; -interact.getElementRect = __utils_28.dom.getElementRect; -interact.getElementClientRect = __utils_28.dom.getElementClientRect; -interact.matchesSelector = __utils_28.dom.matchesSelector; -interact.closest = __utils_28.dom.closest; -/** - * @alias module:interact.supportsTouch - * - * @return {boolean} Whether or not the browser supports touch input - */ - -interact.supportsTouch = supportsTouch; - -function supportsTouch() { - return ___browser_28["default"].supportsTouch; -} -/** - * @alias module:interact.supportsPointerEvent - * - * @return {boolean} Whether or not the browser supports PointerEvents - */ - - -interact.supportsPointerEvent = supportsPointerEvent; - -function supportsPointerEvent() { - return ___browser_28["default"].supportsPointerEvent; -} -/** - * Cancels all interactions (end events are not fired) - * - * @alias module:interact.stop - * - * @return {object} interact - */ - - -interact.stop = __stop_28; - -function __stop_28() { - for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { - var _ref3; - - _ref3 = scope.interactions.list[_i3]; - var interaction = _ref3; - interaction.stop(); - } - - return interact; -} -/** - * Returns or sets the distance the pointer must be moved before an action - * sequence occurs. This also affects tolerance for tap events. - * - * @alias module:interact.pointerMoveTolerance - * - * @param {number} [newValue] The movement from the start position must be greater than this value - * @return {interact | number} - */ - - -interact.pointerMoveTolerance = pointerMoveTolerance; - -function pointerMoveTolerance(newValue) { - if (__utils_28.is.number(newValue)) { - scope.interactions.pointerMoveTolerance = newValue; - return interact; - } - - return scope.interactions.pointerMoveTolerance; -} - -scope.interactables.signals.on('unset', function (_ref4) { - var interactable = _ref4.interactable; - scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset - - for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { - var _ref5; - - _ref5 = scope.interactions.list[_i4]; - var interaction = _ref5; - - if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) { - interaction.stop(); - } - } -}); - -interact.addDocument = function (doc, options) { - return scope.addDocument(doc, options); -}; - -interact.removeDocument = function (doc) { - return scope.removeDocument(doc); -}; - -scope.interact = interact; -var ___default_28 = interact; -_$interact_28["default"] = ___default_28; - -var _$interact_27 = {}; -"use strict"; - -Object.defineProperty(_$interact_27, "__esModule", { - value: true -}); -_$interact_27.init = __init_27; -Object.defineProperty(_$interact_27, "autoScroll", { - enumerable: true, - get: function get() { - return _autoScroll["default"]; - } -}); -Object.defineProperty(_$interact_27, "interactablePreventDefault", { - enumerable: true, - get: function get() { - return _interactablePreventDefault["default"]; - } -}); -Object.defineProperty(_$interact_27, "inertia", { - enumerable: true, - get: function get() { - return _inertia["default"]; - } -}); -Object.defineProperty(_$interact_27, "modifiers", { - enumerable: true, - get: function get() { - return ___base_27["default"]; - } -}); -Object.defineProperty(_$interact_27, "reflow", { - enumerable: true, - get: function get() { - return _reflow["default"]; - } -}); -Object.defineProperty(_$interact_27, "interact", { - enumerable: true, - get: function get() { - return _interact["default"]; - } -}); -_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27["default"] = void 0; - -var actions = ___interopRequireWildcard_27(_$actions_5); - -_$interact_27.actions = actions; - -var _autoScroll = ___interopRequireDefault_27(_$autoScroll_7); - -var autoStart = ___interopRequireWildcard_27(_$autoStart_12); - -var _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21); - -var _devTools = ___interopRequireDefault_27(_$devTools_25); - -var _inertia = ___interopRequireDefault_27(_$inertia_26); - -var modifiers = ___interopRequireWildcard_27(_$modifiers_31); - -var ___base_27 = ___interopRequireDefault_27(_$base_30); - -var __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42); - -_$interact_27.pointerEvents = __pointerEvents_27; - -var _reflow = ___interopRequireDefault_27(_$reflow_44); - -var _interact = ___interopRequireWildcard_27(_$interact_28); - -function ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_27() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function __init_27(window) { - _interact.scope.init(window); - - _interact["default"].use(_interactablePreventDefault["default"]); // pointerEvents - - - _interact["default"].use(__pointerEvents_27); // inertia - - - _interact["default"].use(_inertia["default"]); // autoStart, hold - - - _interact["default"].use(autoStart); // drag and drop, resize, gesture - - - _interact["default"].use(actions); // snap, resize, etc. - - - _interact["default"].use(___base_27["default"]); // for backwrads compatibility - - - for (var type in modifiers) { - var _modifiers$type = modifiers[type], - _defaults = _modifiers$type._defaults, - _methods = _modifiers$type._methods; - _defaults._methods = _methods; - _interact.scope.defaults.perAction[type] = _defaults; - } // autoScroll - - - _interact["default"].use(_autoScroll["default"]); // reflow - - - _interact["default"].use(_reflow["default"]); // eslint-disable-next-line no-undef - - - if (false) {} - - return _interact["default"]; -} // eslint-disable-next-line no-undef - - -_interact["default"].version = "1.6.3"; -var ___default_27 = _interact["default"]; -_$interact_27["default"] = ___default_27; - -var _$types_45 = {}; -/// -"use strict"; - -var _$grid_64 = {}; -"use strict"; - -Object.defineProperty(_$grid_64, "__esModule", { - value: true -}); -_$grid_64["default"] = void 0; - -function ___slicedToArray_64(arr, i) { return ___arrayWithHoles_64(arr) || ___iterableToArrayLimit_64(arr, i) || ___nonIterableRest_64(); } - -function ___nonIterableRest_64() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function ___iterableToArrayLimit_64(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function ___arrayWithHoles_64(arr) { if (Array.isArray(arr)) return arr; } - -function createGrid(grid) { - var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) { - var _ref2 = ___slicedToArray_64(_ref, 2), - xField = _ref2[0], - yField = _ref2[1]; - - return xField in grid || yField in grid; - }); - return function (x, y) { - var range = grid.range, - _grid$limits = grid.limits, - limits = _grid$limits === void 0 ? { - left: -Infinity, - right: Infinity, - top: -Infinity, - bottom: Infinity - } : _grid$limits, - _grid$offset = grid.offset, - offset = _grid$offset === void 0 ? { - x: 0, - y: 0 - } : _grid$offset; - var result = { - range: range - }; - - for (var _i2 = 0; _i2 < coordFields.length; _i2++) { - var _ref3; - - _ref3 = coordFields[_i2]; - - var _ref4 = _ref3, - _ref5 = ___slicedToArray_64(_ref4, 2), - xField = _ref5[0], - yField = _ref5[1]; - - var gridx = Math.round((x - offset.x) / grid[xField]); - var gridy = Math.round((y - offset.y) / grid[yField]); - result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x)); - result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y)); - } - - return result; - }; -} - -var ___default_64 = createGrid; -_$grid_64["default"] = ___default_64; - -var _$snappers_65 = {}; -"use strict"; - -Object.defineProperty(_$snappers_65, "__esModule", { - value: true -}); -Object.defineProperty(_$snappers_65, "grid", { - enumerable: true, - get: function get() { - return _grid["default"]; - } -}); - -var _grid = ___interopRequireDefault_65(_$grid_64); - -function ___interopRequireDefault_65(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var _$index_29 = { exports: {} }; -"use strict"; - -Object.defineProperty(_$index_29.exports, "__esModule", { - value: true -}); -_$index_29.exports.init = __init_29; -_$index_29.exports["default"] = void 0; - -var ___interact_29 = ___interopRequireWildcard_29(_$interact_27); - -var __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31); - -_$types_45; - -var ___extend_29 = ___interopRequireDefault_29(_$extend_53); - -var snappers = ___interopRequireWildcard_29(_$snappers_65); - -function ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function ___getRequireWildcardCache_29() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; } - -function ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - -function ___typeof_29(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_29(obj); } - -if ((typeof window === "undefined" ? "undefined" : ___typeof_29(window)) === 'object' && !!window) { - __init_29(window); -} - -function __init_29(win) { - (0, ___interact_29.init)(win); - return ___interact_29["default"].use({ - id: 'interactjs', - install: function install() { - ___interact_29["default"].modifiers = (0, ___extend_29["default"])({}, __modifiers_29); - ___interact_29["default"].snappers = snappers; - ___interact_29["default"].createSnapGrid = ___interact_29["default"].snappers.grid; - } - }); -} - -var ___default_29 = ___interact_29["default"]; -_$index_29.exports["default"] = ___default_29; -___interact_29["default"]["default"] = ___interact_29["default"] // tslint:disable-line no-string-literal -; -___interact_29["default"].init = __init_29; // tslint:disable-line no-string-literal - -if (( false ? undefined : ___typeof_29(_$index_29)) === 'object' && !!_$index_29) { - _$index_29.exports = ___interact_29["default"]; -} - -_$index_29 = _$index_29.exports -return _$index_29; - -}); - - -//# sourceMappingURL=interact.js.map - - /***/ }), /***/ "fca0": diff --git a/dist/vue-grid-layout.umd.js.map b/dist/vue-grid-layout.umd.js.map index 75cce730..8970d85f 100644 --- a/dist/vue-grid-layout.umd.js.map +++ b/dist/vue-grid-layout.umd.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://VueGridLayout/webpack/universalModuleDefinition","webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?f4e6","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?a307","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["currentDir","hasDocument","document","hasWindow","window","getDocumentDir","direction","dir","getElementsByTagName","getAttribute","setDocumentDir","html","setAttribute","addWindowEventListener","event","callback","addEventListener","removeWindowEventListener","removeEventListener","VueGridLayout","GridLayout","GridItem","install","Vue","installed","Object","keys","forEach","name","component","plugin","GlobalVue","global","use","getBreakpointFromWidth","breakpoints","width","sorted","sortBreakpoints","matching","i","len","length","breakpointName","getColsFromBreakpoint","breakpoint","cols","Error","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","slice","indexOf","b","compact","correctBounds","generateResponsiveLayout","sort","a","bottom","max","bottomY","y","h","newLayout","Array","cloneLayoutItem","layoutItem","JSON","parse","stringify","collides","l1","l2","x","w","compareWith","getStatics","sortLayoutItemsByRowCol","out","l","static","compactItem","push","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","id","getAllCollisions","filter","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","Math","undefined","perc","num","setTransform","top","left","height","translate","transform","WebkitTransform","MozTransform","msTransform","OTransform","position","setTransformRtl","right","setTopLeft","setTopRight","concat","validateLayout","contextName","subProps","isArray","item","j","autoBindHandlers","el","fns","key","bind","createMarkup","obj","result","val","hyphenate","addPx","IS_UNITLESS","animationIterationCount","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridColumn","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","stopOpacity","strokeDashoffset","strokeOpacity","strokeWidth","value","hyphenateRE","str","replace","toLowerCase","findItemInArray","array","property","findAndRemove","index","splice","getControlPosition","e","offsetXYFromParentOf","evt","offsetParent","target","body","offsetParentRect","getBoundingClientRect","clientX","scrollLeft","clientY","scrollTop","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","isNaN"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;AClFa;AACb,cAAc,mBAAO,CAAC,MAAY;AAClC,cAAc,mBAAO,CAAC,MAAW;AACjC,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,gBAAgB,mBAAO,CAAC,MAAc;AACtC,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD,qBAAqB,mBAAO,CAAC,MAAe;AAC5C,eAAe,mBAAO,CAAC,MAAQ;AAC/B,8CAA8C;AAC9C;AACA;AACA;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;AACA;AACA;AACA;AACA,yCAAyC,oCAAoC;AAC7E,6CAA6C,oCAAoC;AACjF,KAAK,4BAA4B,oCAAoC;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA,kCAAkC,2BAA2B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;ACpEA,gBAAgB,mBAAO,CAAC,MAAe;AACvC,cAAc,mBAAO,CAAC,MAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AChBa;AACb,SAAS,mBAAO,CAAC,MAAc;;AAE/B;AACA;AACA;AACA;AACA;;;;;;;;ACPA,uBAAuB;AACvB;AACA;AACA;;;;;;;;;ACHa;AACb;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACZA;AACA,YAAY,mBAAO,CAAC,MAAyB;AAC7C,kBAAkB,mBAAO,CAAC,MAAkB;;AAE5C;AACA;AACA;;;;;;;;ACNA;;AAEA;AACA,cAAc,mBAAO,CAAC,MAAka;AACxb,4CAA4C,QAAS;AACrD;AACA;AACA,UAAU,mBAAO,CAAC,MAA6D;AAC/E,6CAA6C,qCAAqC,E;;;;;;;ACRlF,UAAU,mBAAO,CAAC,MAAe;AACjC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,gBAAgB,mBAAO,CAAC,MAAe;AACvC,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C,UAAU,mBAAO,CAAC,MAAQ;AAC1B,qBAAqB,mBAAO,CAAC,MAAmB;AAChD;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;;;;;;;;ACfA,SAAS,mBAAO,CAAC,MAAc;AAC/B,eAAe,mBAAO,CAAC,MAAc;AACrC,cAAc,mBAAO,CAAC,MAAgB;;AAEtC,iBAAiB,mBAAO,CAAC,MAAgB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACZA;AACA;AACA;AACA;;AAEa;;AAEb,sBAAsB,mBAAO,CAAC,MAAqB;;AAEnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,+CAA+C,oBAAoB,QAAQ,SAAS,aAAa,cAAc,cAAc,YAAY,WAAW,YAAY,gBAAgB,sBAAsB;;AAEtM;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtNa;;AAEb;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;;;;;ACtCA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA,IAAIA;AAAkC;AAAA,EAAI,MAA1C,C,CACA;;AAEA,SAASC,WAAT,GAAsB;AAClB,SAAQ,OAAOC,QAAP,KAAoB,WAA5B;AACH;;AAED,SAASC,SAAT,GAAoB;AAChB,SAAQ,OAAOC,MAAP,KAAkB,WAA1B;AACH;;AAEM,SAASC,cAAT,GAAyB;AAC5B,MAAG,CAACJ,WAAW,EAAf,EAAkB;AACd,WAAOD,UAAP;AACH;;AACD,MAAMM,SAAS,GAAI,OAAOJ,QAAQ,CAACK,GAAhB,KAAwB,WAAzB,GACdL,QAAQ,CAACK,GADK,GAEdL,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,EAAyCC,YAAzC,CAAsD,KAAtD,CAFJ;AAGA,SAAOH,SAAP;AACH;AAEM,SAASI,cAAT,CAAwBH;AAAxB;AAAA,EAAoD;AAC3D;AACI,MAAG,CAACN,WAAJ,EAAgB;AACZD,cAAU,GAAGO,GAAb;AACA;AACH;;AAED,MAAMI,IAAI,GAAGT,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,CAAb;AACAG,MAAI,CAACC,YAAL,CAAkB,KAAlB,EAAyBL,GAAzB;AACH;AAEM,SAASM,sBAAT,CAAgCC;AAAhC;AAAA,EAA8CC;AAA9C;AAAA,EAAoE;AACvE,MAAG,CAACZ,SAAJ,EAAc;AAEVY,YAAQ;AACR;AACH;;AACDX,QAAM,CAACY,gBAAP,CAAwBF,KAAxB,EAA+BC,QAA/B;AACH;AAEM,SAASE,yBAAT,CAAmCH;AAAnC;AAAA,EAAiDC;AAAjD;AAAA,EAAuE;AAC1E,MAAG,CAACZ,SAAJ,EAAc;AACV;AACH;;AACDC,QAAM,CAACc,mBAAP,CAA2BJ,KAA3B,EAAkCC,QAAlC;AACH,C;;;;;;;AC9CD,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;;ACNa;AACb,mBAAO,CAAC,MAAmB;AAC3B,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,YAAY,mBAAO,CAAC,MAAU;AAC9B,cAAc,mBAAO,CAAC,MAAY;AAClC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,iBAAiB,mBAAO,CAAC,MAAgB;;AAEzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,yBAAyB,4CAA4C;AACrE;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,2BAA2B,mBAAmB,aAAa;AAC3D;AACA;AACA;AACA;AACA,6CAA6C,WAAW;AACxD;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAkB;AAClB;AACA,gBAAgB;AAChB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;;;;;;;;AC/FA,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD,IAAI;AACJ;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oDAAoD,cAAc;;AAElE;AACA;;;;;;;;AC3EA;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA,2BAA2B,kBAAkB,EAAE;;AAE/C;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBA;;;;;;;;;ACAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;AC5FA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACNA,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAuB;AAC/C;AACA;;AAEA,mBAAO,CAAC,MAAS;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;AC9BD;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,UAAU,mBAAO,CAAC,MAAe;AACjC,kBAAkB,mBAAO,CAAC,MAAkB;AAC5C,eAAe,mBAAO,CAAC,MAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,MAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,MAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA,GApHA;AAqHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GA5HA;AA6HA;AACA;AACA,GA/HA;AAgIA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA,sCAHA,CAKA;;AACA;AAEA;AAEA;AAEA;AACA;AACA;AACA,8BADA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA,WAFA;AAGA,SATA;AAUA,OAvBA;AAwBA,KA7BA;AA8BA,GAhKA;AAiKA;AACA;AACA;AACA;AAAA;;AACA;AACA;;AACA;AACA;;;;;;;;;;;;;;;;;;AAoBA;AACA;AACA,WAFA;AAGA;;AACA;AACA,OA7BA;AA8BA,KAjCA;AAkCA;AACA;AACA,KApCA;AAqCA;AACA;AACA,KAvCA;AAwCA;AACA;AACA,KA1CA;AA2CA;AACA;AACA,KA7CA;AA8CA;AACA;AACA,KAhDA;AAiDA,cAjDA,wBAiDA;AACA;AACA;AACA;AACA;;AACA;AACA,KAvDA;AAwDA;AACA;AACA,KA1DA;AA2DA,UA3DA,oBA2DA;AACA;AACA;AA7DA,GAjKA;AAgOA;AACA,gBADA,0BACA;AACA;AACA;AACA;AAEA;;AACA;AACA;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;AACA;AACA,iBAFA;AAGA,eAJA;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AAEA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AADA;AAGA,KAnCA;AAoCA;AACA;AACA;AACA;;AACA;AACA,KAzCA;AA0CA;AACA,iCADA,CAEA;AACA;;AACA;AACA;AACA,KAhDA;AAiDA;AACA;AACA,sEAFA,CAGA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AACA,OAXA,MAWA;AACA;AACA;AACA,SAFA;AAGA,OAvBA,CAyBA;;;AACA;AACA,0EA3BA,CA4BA;;AACA;AACA;AACA;AACA,KAjFA;AAkFA;AACA,sEADA,CAEA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;;AACA;AACA;AAAA;AAAA;AAAA,mBACA;AAAA;AAAA,SADA;AAGA,8CAJA,CAMA;;AACA;AACA;AACA;AAAA,cACA,iBADA;AAEA;AACA;AACA;AACA,WAHA;AAKA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AAEA,OAZA,MAYA;AACA;AACA;AACA,SAFA;AAGA;;AAEA;AAEA;AACA;AACA;AAEA;AACA,KA9IA;AAgJA;AACA,wBAjJA,kCAiJA;AACA;AACA,oEAFA,CAIA;;AACA,6EACA,sFANA,CAQA;;AACA,kDACA,mBADA,EAEA,YAFA,EAGA,gBAHA,EAIA,aAJA,EAKA,mBALA,EAMA,OANA,EAOA,oBAPA,EATA,CAmBA;;AACA;;AAEA;AACA;AACA,OAxBA,CA0BA;;;AACA;AAEA;AACA;AACA,KAhLA;AAkLA;AACA,0BAnLA,oCAmLA;AACA;AACA;AACA,KAtLA;AAwLA;AACA,kBAzLA,0BAyLA,MAzLA,EAyLA,cAzLA,EAyLA;AAEA;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAHA,CASA;;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAVA,CAgBA;;AACA;AACA;AA3MA;AAhOA,G;;AC7BoU,CAAgB,oHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGtE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,6CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,2F;;;;;;;ACnBf;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;ACZa;AACb,aAAa,mBAAO,CAAC,MAAkB;AACvC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,MAAS,qBAAqB,mBAAO,CAAC,MAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;;ACZA,mBAAO,CAAC,MAA0C;AAClD,cAAc,mBAAO,CAAC,MAAqB;AAC3C;AACA;AACA;;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,YAAY,mBAAO,CAAC,MAAgB;;AAEpC,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACPA,cAAc,mBAAO,CAAC,MAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,MAAgB,cAAc,iBAAiB,mBAAO,CAAC,MAAc,KAAK;;;;;;;;;ACFtG;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;;AAElD;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACvCD;AACA;AACA;AACA;AACe;AACf;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAwB;AAC3D,KAAK;AACL;AACA;AACA;AACA;AACA;;;AC1BA;AAAA;AACA;AACA;AACA;AACA;;AAEyC;;AAEzC;;AAEA;AACA;AACA;AACA;AACA,UAAU,iBAAiB;AAC3B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEe;AACf;;AAEA;;AAEA,eAAe,YAAY;AAC3B;;AAEA;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY;AAC3B;AACA,KAAK;AACL;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA,uBAAuB,2BAA2B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC7Na;;AAEb;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,+CAA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CAAC,GAAC,CAAX,EAAcA,CAAC,GAAG8I,KAAK,CAAC5I,MAAxB,EAAgCF,CAAC,EAAjC;AACI,QAAI8I,KAAK,CAAC9I,CAAD,CAAL,CAAS+I,QAAT,KAAsBP,KAA1B,EACI,OAAO,IAAP;AAFR;;AAIA,SAAO,KAAP;AACH;AAEM,SAASQ,aAAT,CAAuBF,KAAvB,EAA8BC,QAA9B,EAAwCP,KAAxC,EAA+C;AAClDM,OAAK,CAAC3J,OAAN,CAAc,UAAUoH,MAAV,EAAkB0C,KAAlB,EAAyB;AACnC,QAAI1C,MAAM,CAACwC,QAAD,CAAN,KAAqBP,KAAzB,EAAgC;AAC5B;AACAM,WAAK,CAACI,MAAN,CAAaD,KAAb,EAAoB,CAApB;AACH;AACJ,GALD;AAMH,C;;;;;;;;AC9kBY;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,gBAAgB,mBAAO,CAAC,MAAe;AACvC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACrHD,cAAc,mBAAO,CAAC,MAAW;AACjC,cAAc,mBAAO,CAAC,MAAY;AAClC,YAAY,mBAAO,CAAC,MAAU;AAC9B,aAAa,mBAAO,CAAC,MAAc;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;AC7Ba;;AAEb;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,iBAAiB;AACjB,mCAAmC,sBAAsB;AACzD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;;AC1CA,iBAAiB,mBAAO,CAAC,MAAsB;AAC/C,cAAc,mBAAO,CAAC,MAAgB;AACtC,eAAe,mBAAO,CAAC,MAAa;AACpC,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,gBAAgB,mBAAO,CAAC,MAAc;AACtC,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oDAAoD,wBAAwB;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzDA,2BAA2B,mBAAO,CAAC,MAA+C;AAClF;;;AAGA;AACA,cAAc,QAAS,oBAAoB,kBAAkB,mCAAmC,2BAA2B;;AAE3H;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACPa;AACb,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,mBAAO,CAAC,MAAW;AACnB;AACA;AACA;AACA,CAAC;AACD;AACA,CA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BAbA;AAcA,gBAdA;AAeA,gBAfA;AAgBA,gBAhBA;AAiBA,gBAjBA;AAkBA,eAlBA;AAmBA,gBAnBA;AAqBA,yBArBA;AAsBA,2BAtBA;AAwBA,qBAxBA;AAyBA,qBAzBA;AA0BA,qBA1BA;AA2BA,qBA3BA;AA4BA,oBA5BA;AA6BA,oBA7BA;AA8BA,oBA9BA;AA+BA;AA/BA;AAiCA,GAtIA;AAuIA,SAvIA,qBAuIA;AAAA;;AACA,oBADA,CAGA;;AACA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;;AACA;AACA,KAHA;;AAKA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,GA1LA;AA2LA;AACA,oBADA,CAEA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,+BADA,CACA;AACA;AACA,GAzMA;AA0MA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,GA5NA;AA6NA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA;AACA,KAPA;AAQA;AACA;AACA,KAVA;AAWA;AACA;AACA,KAbA;AAcA;AACA;AACA,KAhBA;AAiBA;AACA;AACA;AACA,KApBA;AAqBA;AACA;AACA;AACA;AACA,KAzBA;AA0BA;AACA;AACA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AACA,KAlCA;AAmCA;AACA;AACA;AACA,KAtCA;AAuCA;AACA;AACA,yBAFA,CAGA;AACA,KA3CA;AA4CA;AACA;AACA,yBAFA,CAGA;AACA,KAhDA;AAiDA;AACA;AACA;AACA;AACA,KArDA;AAsDA;AACA;AACA,KAxDA;AAyDA;AACA;AACA,KA3DA;AA4DA;AACA;AACA,KA9DA;AA+DA;AACA;AACA,KAjEA;AAkEA;AACA;AACA;AACA;;AACA;AAAA;AAAA;AACA;AACA;AACA;AAzEA,GA7NA;AAwSA;AACA,YADA,sBACA;AACA;AACA,mDADA;AAEA,6BAFA;AAGA,mCAHA;AAIA,iDAJA;AAKA,8CALA;AAMA,oCANA;AAOA,6CAPA;AAQA;AARA;AAUA,KAZA;AAaA,yBAbA,mCAaA;AACA;AACA,KAfA;AAgBA,oCAhBA,8CAgBA;AACA;AACA,KAlBA;AAmBA,aAnBA,uBAmBA;AACA;AACA,KArBA;AAsBA,aAtBA,uBAsBA;AACA;AACA,KAxBA;AAyBA,wBAzBA,kCAyBA;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA;AA/BA,GAxSA;AAyUA;AACA;AACA;AACA;AACA;AACA,OAHA,MAGA;AACA;AACA;AACA;;AACA;;AAGA;AACA,oCADA,CAEA;;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;;AAEA,gBAzBA,CA0BA;;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AAEA,OARA,MAQA;AAAA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA,KA7CA;AA8CA,wBA9CA,kCA8CA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA,sBACA;AACA;AACA;;AACA;AACA,KA1DA;AA2DA;AACA;AACA,+CAFA,CAGA;;AACA,mCAJA,CAIA;;AAJA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAAA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAOA;AAAA;AAAA;AAAA;AACA;;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,qEARA,CAUA;;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA;AACA,wCAJA,CAKA;;AACA;AACA;AACA;AACA;AAlCA,OATA,CA8CA;;;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KAzIA;AA0IA,cA1IA,sBA0IA,KA1IA,EA0IA;AACA;AACA;AAEA,+CAJA,CAMA;;AACA,oCAPA,CAOA;;AAPA,UAQA,CARA,GAQA,QARA,CAQA,CARA;AAAA,UAQA,CARA,GAQA,QARA,CAQA,CARA,EAUA;;AACA;AAAA;AAAA;AAAA;;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;;AACA;;AACA,mEAHA,CAIA;;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,gEAVA,CAWA;AACA;;AACA;AACA,oCAdA,CAeA;;AACA;AACA;;AACA;AAAA;AACA,yEADA,CAEA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,mEARA,CASA;AACA;AACA;;AACA;AACA;AACA;AAjDA,OAZA,CAgEA;;;AACA;;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KA5NA;AA6NA;AACA,yCADA,CAEA;;AACA;;AACA;AACA;AACA,oEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA,OAVA,MAUA;AACA;AACA,mEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA;;AAGA;AACA,KAzPA;;AA0PA;;;;;;AAMA;AACA,UAjQA,kBAiQA,GAjQA,EAiQA,IAjQA,EAiQA;AACA,yCADA,CAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,qFAXA,CAaA;;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA,KAnRA;AAoRA;AACA,gBArRA,0BAqRA;AACA,0FADA,CAEA;;AACA;AACA,KAzRA;;AA2RA;;;;;;AAMA,UAjSA,kBAiSA,MAjSA,EAiSA,KAjSA,EAiSA;AACA,yCADA,CAGA;AACA;AACA;;AACA;AACA,wFAPA,CASA;;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA,KA9SA;AA+SA;AACA;;AACA;AACA;AACA;AACA,KApTA;AAqTA;AACA;AACA,KAvTA;AAwTA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,yCADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA;AACA;AACA;AACA,WAFA;AAGA;AACA,OAbA,MAaA;AACA;AACA;AADA;AAGA;AACA,KA/UA;AAgVA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,oEAFA,CAIA;AACA;;AAEA;AACA,mCADA;AAEA;AACA;AACA,uBADA;AAEA,kDAFA;AAGA,mDAHA;AAIA;AAJA,WAHA;AASA,2CATA;AAUA;AACA;AACA,oCADA;AAEA;AAFA,aADA;AAKA;AACA,oCADA;AAEA;AAFA;AALA;AAVA;AAsBA;;AACA;AACA;AACA,2BACA,EADA,CACA,kCADA,EACA;AACA;AACA,WAHA;AAIA;AACA,OArCA,MAqCA;AACA;AACA;AADA;AAGA;AACA,KA/XA;AAgYA;AACA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA,OAzBA,CA2BA;AACA;;;AAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AAraA;AAzUA,G;;AC/FkU,CAAgB,gHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGpE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,2CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,yF;;;;;;;ACnBf;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;;AAEb,YAAY,mBAAO,CAAC,MAAS;;AAE7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,4IAA4I,kCAAkC;AAC9K,gCAAgC,0BAA0B;AAC1D;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,oCAAoC,mBAAmB;AACvD;;AAEA,0BAA0B,gBAAgB;AAC1C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACzIA;AACA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC,eAAe,mBAAO,CAAC,MAAc;AACrC,sBAAsB,mBAAO,CAAC,MAAsB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,YAAY,eAAe;AAChC;AACA,KAAK;AACL;AACA;;;;;;;;;ACtBa;AACb,aAAa,mBAAO,CAAC,MAAW;AAChC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,wBAAwB,mBAAO,CAAC,MAAwB;AACxD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C,YAAY,mBAAO,CAAC,MAAU;AAC9B,WAAW,mBAAO,CAAC,MAAgB;AACnC,WAAW,mBAAO,CAAC,MAAgB;AACnC,SAAS,mBAAO,CAAC,MAAc;AAC/B,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,qBAAqB,mBAAO,CAAC,MAAkB;AAC/C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD,KAAK;AACL;AACA,oCAAoC,cAAc,OAAO;AACzD,qCAAqC,cAAc,OAAO;AAC1D;AACA;AACA,oEAAoE,OAAO;AAC3E;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,0BAA0B,EAAE;AACtE;AACA;AACA,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C;AACA;AACA;AACA;AACA;AACA,2BAA2B,iBAAiB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,MAAa;AACvB;;;;;;;;ACpEA,kBAAkB,mBAAO,CAAC,MAAgB,MAAM,mBAAO,CAAC,MAAU;AAClE,+BAA+B,mBAAO,CAAC,MAAe,gBAAgB,mBAAmB,UAAU,EAAE,EAAE;AACvG,CAAC;;;;;;;;ACFD;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;AACA;AACA,4CAA4C;;AAE5C;;;;;;;;;ACnBA;AACA;AACA;AACA;;AAEa;;AAEb,cAAc,mBAAO,CAAC,MAAqB;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kDAAkD,0BAA0B,4BAA4B,oBAAoB,WAAW,YAAY;;AAEnJ;AACA,sDAAsD,wBAAwB,0BAA0B,kBAAkB,kBAAkB,yBAAyB,2BAA2B,oBAAoB,WAAW,YAAY;;AAE3O;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,wEAAwE,eAAe,EAAE;AACzF,8DAA8D,kCAAkC,0BAA0B,yDAAyD,iDAAiD,EAAE;AACtO,2EAA2E,KAAK,YAAY,EAAE,MAAM,YAAY,EAAE,OAAO,YAAY,EAAE,EAAE;AACzI,2EAA2E,KAAK,YAAY,EAAE,MAAM,YAAY,EAAE,OAAO,YAAY,EAAE,EAAE;AACzI;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,mCAAmC,iBAAiB;AACpD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kEAAkE,iBAAiB,YAAY,aAAa,aAAa,kBAAkB,WAAW,YAAY;AAClK;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,2CAA2C,kBAAkB,sBAAsB,wBAAwB;AAC3G;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc,WAAW,UAAU;AAC7K,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB;AAC7H,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,SAAS,QAAQ;AAC/E,8DAA8D,aAAa,cAAc;;AAEzF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtoBA;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;AACb,uBAAuB,mBAAO,CAAC,MAAuB;AACtD,WAAW,mBAAO,CAAC,MAAc;AACjC,gBAAgB,mBAAO,CAAC,MAAc;AACtC,gBAAgB,mBAAO,CAAC,MAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;;ACjCA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAe;AACvC,mBAAmB,mBAAO,CAAC,MAAmB;AAC9C,eAAe,mBAAO,CAAC,MAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChBA;AACA;AACA;;;;;;;;ACFA;AACA,UAAU;AACV;;;;;;;;;ACFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;;ACHA,eAAe,mBAAO,CAAC,MAAc;AACrC,qBAAqB,mBAAO,CAAC,MAAmB;AAChD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;;ACfA;AACA;AACA;AACA;;;;;;;;;ACHA;AAAA;AAAA;AAAkf,CAAgB,whBAAG,EAAC,C;;;;;;;ACAtgB,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;;ACL5B;;AAEb,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAgB;AACtD,8BAA8B,mBAAO,CAAC,MAAc;AACpD,8BAA8B,mBAAO,CAAC,MAAY;AAClD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAiB;;AAEvD;AACA,8BAA8B,mBAAO,CAAC,MAAgC;AACtE,8BAA8B,mBAAO,CAAC,MAAgC;;AAEtE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB;;AAEA;AACA;AACA,UAAU;AACV,cAAc,QAAQ;AACtB;AACA;AACA,cAAc,UAAU;AACxB;AACA,cAAc,SAAS;AACvB;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,qCAAqC,6CAA6C,EAAE;AACpF;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,mFAAmF,qBAAqB;;AAExG;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,SAAS;AACxB,eAAe,kBAAkB;AACjC,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA,8EAA8E;AAC9E;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA,yDAAyD,eAAe;AACxE;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,qBAAqB;AACrB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AChUa;AACb,sBAAsB,mBAAO,CAAC,MAAc;AAC5C,iBAAiB,mBAAO,CAAC,MAAkB;;AAE3C;AACA;AACA;AACA;;;;;;;;ACPA;;AAEA;;AAEA;AACA;AACA,wDAAwD;;AAExD;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,mBAAmB;AAChC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACnCD;AACA,cAAc,mBAAO,CAAC,MAAW;;AAEjC,0CAA0C,SAAS,mBAAO,CAAC,MAAkB,GAAG;;;;;;;;ACHhF;AACA;AACA;;;;;;;;ACFA,iBAAiB,mBAAO,CAAC,MAAW;;;;;;;;ACApC,eAAe,mBAAO,CAAC,MAAW;AAClC;;;;;;;;;;;;ACDA;;AAEA;AACA,MAAM,IAAuC;AAC7C,IAAI,mBAAO,CAAC,MAAyB;AACrC;;AAEA;AACA;AACA,IAAI,qBAAuB;AAC3B;AACA;;AAEA;AACe,sDAAI;;;;;;ACdnB;AAAA;AAAA;AAAwB;AACA;AACT,4GAAG;AACI;;;;;;;;ACHtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,GAAG,IAAsD,EAAE,mBAAmB,KAAK,UAAiO,CAAC,aAAa;AAC/U,0DAA0D,MAAM,mBAAmB,eAAe,UAAU,UAAU;AACtH;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,+DAA+D;;AAE/D,sCAAsC,uCAAuC,kBAAkB;;AAE/F,qCAAqC,gDAAgD,2BAA2B,iEAAiE,cAAc,GAAG,cAAc;;AAEhN,uCAAuC,6BAA6B,YAAY,EAAE,wCAAwC,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEtpB,uBAAuB,2EAA2E,kCAAkC,mBAAmB,GAAG,EAAE,OAAO,kCAAkC,8HAA8H,GAAG,EAAE,qBAAqB;;AAE7V,iDAAiD,0EAA0E,aAAa,EAAE,qCAAqC;;AAE/K,uCAAuC,uBAAuB,uFAAuF,EAAE,aAAa;;AAEpK,2CAA2C,qDAAqD,oBAAoB,EAAE,OAAO,mDAAmD,6CAA6C,mBAAmB,4DAA4D,gBAAgB,gCAAgC,EAAE,mBAAmB,GAAG,EAAE,mDAAmD;;AAEza,2CAA2C,kEAAkE,kCAAkC,4BAA4B,EAAE,eAAe;;AAE5L,6BAA6B,gGAAgG,gDAAgD,GAAG,2BAA2B;;AAE3M,0CAA0C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,uDAAuD;;AAE/X,gCAAgC,4EAA4E,iBAAiB,UAAU,GAAG,8BAA8B;;AAExK,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE3T,6DAA6D,sEAAsE,8DAA8D,oBAAoB;;AAErN;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,yBAAyB,qDAAqD;;AAE9E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA,+DAA+D;;AAE/D;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA,0DAA0D,QAAQ;AAClE;;AAEA;AACA;AACA;AACA;AACA,eAAe;AACf;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,yCAAyC;AACzC;AACA;AACA;AACA,OAAO;AACP,iCAAiC;AACjC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,sEAAsE;;AAEtE;;AAEA;;AAEA;;AAEA,6DAA6D;;AAE7D;;AAEA,sCAAsC,uCAAuC,kBAAkB;;AAE/F,uBAAuB,2EAA2E,kCAAkC,mBAAmB,GAAG,EAAE,OAAO,kCAAkC,8HAA8H,GAAG,EAAE,qBAAqB;;AAE7V,iCAAiC,oFAAoF;;AAErH,6BAA6B,6EAA6E;;AAE1G,wCAAwC,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE1gB,+BAA+B,oCAAoC;;AAEnE,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE3T,6DAA6D,sEAAsE,8DAA8D,oBAAoB;;AAErN,iDAAiD,0EAA0E,aAAa,EAAE,qCAAqC;;AAE/K,uCAAuC,uBAAuB,uFAAuF,EAAE,aAAa;;AAEpK,6BAA6B,gGAAgG,gDAAgD,GAAG,2BAA2B;;AAE3M,0CAA0C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,uDAAuD;;AAE/X,gCAAgC,4EAA4E,iBAAiB,UAAU,GAAG,8BAA8B;;AAExK;;AAEA;AACA;AACA;;AAEA,kBAAkB,yBAAyB;AAC3C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,uBAAuB,sCAAsC;AAC7D;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,mDAAmD;;AAEnD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;;AAGP;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA,uBAAuB,mCAAmC;AAC1D;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,qBAAqB;;AAErB;AACA;;AAEA,uBAAuB,mCAAmC;AAC1D;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA,uBAAuB,4CAA4C;AACnE;AACA,SAAS;AACT;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;;AAGL,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,wBAAwB;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0BAA0B;;AAE1B,sCAAsC,uCAAuC,kBAAkB;;AAE/F,qCAAqC,gDAAgD,2BAA2B,iEAAiE,cAAc,GAAG,cAAc;;AAEhN,uCAAuC,6BAA6B,YAAY,EAAE,wCAAwC,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEtpB,iDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE3T,6DAA6D,sEAAsE,8DAA8D,oBAAoB;;AAErN;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,2DAA2D;;AAE5D;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,8DAA8D;;AAE/D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,6BAA6B;;AAE7B,wBAAwB;;AAExB;AACA;AACA;AACA;AACA,MAAM;;AAEN,uBAAuB;;AAEvB;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,gCAAgC,eAAe;AAC/C;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,qBAAqB;AACpE;AACA;AACA,eAAe,OAAO;AACtB,eAAe,aAAa;AAC5B,eAAe,QAAQ;AACvB,gBAAgB,OAAO;AACvB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,QAAQ,eAAe;AAClE;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,iBAAiB;AACxB;;AAEA;AACA,KAAK;;AAEL,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,eAAe,aAAa;AAC5B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,0DAA0D;;AAE1D;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA,CAAC;AACD;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kBAAkB,oBAAoB;AACtC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;;AAEA;;AAEA,sCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0BAA0B;;AAE1B,8CAA8C;;AAE9C;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,uBAAuB,2EAA2E,kCAAkC,mBAAmB,GAAG,EAAE,OAAO,kCAAkC,8HAA8H,GAAG,EAAE,qBAAqB;;AAE7V;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,qCAAqC,gDAAgD,2BAA2B,iEAAiE,cAAc,GAAG,cAAc;;AAEhN,uCAAuC,6BAA6B,YAAY,EAAE,wCAAwC,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEtpB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sDAAsD;;AAEtD,uJAAuJ;;AAEvJ;AACA,4DAA4D;;AAE5D;AACA,qDAAqD;;AAErD,uHAAuH;;AAEvH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,QAAQ;;AAEX;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAa,qBAAqB;AAClC,+BAA+B;;AAE/B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;;;AAGP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;;AAGL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB;AACxB;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;;AAEV;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA,2BAA2B;;AAE3B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,qBAAqB;;AAErB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,sBAAsB;AAC1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,4CAA4C;;AAE5C;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,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AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8CAA8C;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG,MAAM,WAAW,WAAW,WAAW;;;AAG1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,uBAAuB;AAC3C;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,+DAA+D;;AAE/D;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA,sBAAsB,6BAA6B;AACnD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBA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;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB,gCAAgC;AAChC,gBAAgB,kBAAkB;AAClC;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,wBAAwB,iCAAiC;AACzD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,0BAA0B;AACzC,yCAAyC,aAAa;AACtD;AACA;AACA,gBAAgB,OAAO;AACvB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB,mBAAmB;AACnB,gBAAgB,gBAAgB;AAChC;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAK;AACrB;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,cAAc;AAC7B;AACA,gBAAgB,aAAa;AAC7B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,yBAAyB,8BAA8B;AACvD;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,wBAAwB;AACvC;AACA,eAAe,0BAA0B;AACzC,eAAe,iBAAiB;AAChC;AACA,gBAAgB,aAAa;AAC7B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wBAAwB;AACvC;AACA,eAAe,0BAA0B;AACzC,eAAe,iBAAiB;AAChC;AACA,gBAAgB,aAAa;AAC7B;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB,gBAAgB,OAAO;AACvB;;AAEA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,kGAAkG;AAClG;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;;AAEA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6CAA6C;;AAE7C;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,gBAAgB;AAChB,qBAAqB;AACrB;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kDAAkD;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;AACA;AACA,GAAG;AACH;AACA;AACA,sBAAsB,uBAAuB;AAC7C;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,4DAA4D;;AAE7D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,4BAA4B,2EAA2E,uCAAuC,mBAAmB,GAAG,EAAE,OAAO,uCAAuC,8HAA8H,GAAG,EAAE,0BAA0B;;AAEjX,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO,iDAAiD,+EAA+E,aAAa,EAAE,qCAAqC;;AAEpL,6BAA6B,gGAAgG,gDAAgD,GAAG,2BAA2B;;AAE3M,uCAAuC,uBAAuB,uFAAuF,EAAE,aAAa;;AAEpK,0CAA0C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,uDAAuD;;AAE/X,gCAAgC,4EAA4E,iBAAiB,UAAU,GAAG,8BAA8B;;AAExK;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,0EAA0E;;AAE3E;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,gDAAgD;AAChD,kDAAkD;AAClD,gDAAgD;AAChD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA,gDAAgD;;AAEhD,oDAAoD;AACpD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA,oBAAoB,gCAAgC;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;;;AAGT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;AACA,KAAK;AACL;AACA;;;AAGA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,qBAAqB,sCAAsC;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA,8CAA8C;AAC9C;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8BAA8B;;AAE9B;;AAEA;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAiB;AAC5B;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB,0CAA0C,uCAAuC,kBAAkB;;AAEnG,2BAA2B,2EAA2E,sCAAsC,mBAAmB,GAAG,EAAE,OAAO,sCAAsC,8HAA8H,GAAG,EAAE,yBAAyB;;AAE7W,sCAAsC,6FAA6F;;AAEnI,mCAAmC,wEAAwE;;AAE3G,qCAAqC,+HAA+H;;AAEpK,sCAAsC,0BAA0B,8CAA8C,gBAAgB,OAAO,kBAAkB,EAAE,aAAa,EAAE;;AAExK,qDAAqD,0CAA0C,0DAA0D,EAAE;;AAE3J,+CAA+C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAE/T,iEAAiE,0EAA0E,kEAAkE,oBAAoB;;AAEjO,qDAAqD,8EAA8E,aAAa,EAAE,yCAAyC;;AAE3L,2CAA2C,uBAAuB,uFAAuF,EAAE,aAAa;;AAExK,iCAAiC,oGAAoG,gDAAgD,GAAG,+BAA+B;;AAEvN,8CAA8C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,2DAA2D;;AAEvY,oCAAoC,gFAAgF,iBAAiB,UAAU,GAAG,kCAAkC;;AAEpL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,0CAA0C;;AAE1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,wBAAwB;AACrC,cAAc,uBAAuB;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB;;AAEjB,kBAAkB,gCAAgC;AAClD;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,8CAA8C;;AAE9C;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;;;AAGL;;AAEA,qBAAqB,2BAA2B;AAChD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,mBAAmB,0BAA0B;AAC7C;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;;;AAGA;AACA;AACA;;AAEA,mBAAmB,0BAA0B;AAC7C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB;;AAEtB,mBAAmB,oCAAoC;AACvD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,0DAA0D;;AAE1D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,uEAAuE;;AAEvE;AACA;AACA;AACA;AACA,OAAO,IAAI;AACX;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,sBAAsB;AACtB;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,8BAA8B;;AAE9B;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB,0CAA0C,uCAAuC,kBAAkB;;AAEnG;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC;AACA;AACA,oCAAoC,6BAA6B;AACjE;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA,cAAc,uBAAuB;AACrC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,8BAA8B;;AAE9B;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;;AAEhC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,6BAA6B;AACnE;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA,cAAc,uBAAuB;AACrC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,6CAA6C;AAC7C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;;AAER;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA,sBAAsB,kBAAkB;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA,mFAAmF;;AAEnF;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yCAAyC;;AAEzC;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,8DAA8D;;AAE9D,kEAAkE;;AAElE,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;;AAE/B,gDAAgD;;AAEhD;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,0DAA0D;;AAE1D;;AAEA,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mDAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,aAAa,wBAAwB;AACrC;AACA,cAAc,0BAA0B;AACxC;AACA;;AAEA;AACA;AACA,GAAG,6EAA6E,qBAAqB;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,aAAa,wBAAwB;AACrC;AACA,cAAc,0BAA0B;AACxC;AACA;;AAEA;AACA;AACA,GAAG,4EAA4E,oBAAoB;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,aAAa,gBAAgB;AAC7B;AACA;AACA;AACA;AACA,cAAc,wBAAwB;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,cAAc,uBAAuB;AACrC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,kBAAkB,2BAA2B;AAC7C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,0CAA0C,uCAAuC,kBAAkB;;AAEnG,yCAAyC,gDAAgD,2BAA2B,qEAAqE,cAAc,GAAG,cAAc;;AAExN,2CAA2C,6BAA6B,YAAY,EAAE,4CAA4C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAE9pB;AACA;AACA;AACA;AACA,mDAAmD;;AAEnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,uCAAuC,SAAS;AAChD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;;AAEvB;AACA;AACA;;AAEA,kBAAkB,qCAAqC;AACvD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+BAA+B;;AAE/B,sEAAsE;;AAEtE;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;AACA,uCAAuC;;AAEvC;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ;;;AAGR;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG,EAAE;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA,sEAAsE;;AAEtE;;AAEA;;AAEA,kEAAkE;;AAElE,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,mCAAmC,WAAW;AAC9C;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB,cAAc,sBAAsB;AACpC;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,kBAAkB,kBAAkB;AACpC;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA,uBAAuB,sCAAsC;AAC7D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,sEAAsE;;AAEtE;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG,uCAAuC,gGAAgG;;AAEvI,oCAAoC,wEAAwE;;AAE5G,sCAAsC,+HAA+H;;AAErK,uCAAuC,0BAA0B,8CAA8C,gBAAgB,OAAO,kBAAkB,EAAE,aAAa,EAAE;;AAEzK;;AAEA;AACA;AACA;AACA;AACA,CAAC,8BAA8B;;AAE/B;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA,mFAAmF;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,oBAAoB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,sCAAsC,mGAAmG;;AAEzI,kCAAkC,6EAA6E;;AAE/G,6CAA6C,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE/gB,oCAAoC,oCAAoC;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;;AAE5C;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,oBAAoB;AACtC;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C,4CAA4C;AAC5C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,gDAAgD;AAChD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH,mBAAmB,qBAAqB;AACxC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;AAEA;AACA;;AAEA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,mBAAmB;AACtC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,8BAA8B;AACjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gDAAgD;;AAEhD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+EAA+E;;AAE/E;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kCAAkC;;AAElC;AACA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA,sCAAsC;;AAEtC;AACA;AACA;AACA,SAAS,uBAAuB;;AAEhC;AACA;AACA;AACA;AACA,oEAAoE;;AAEpE;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,qBAAqB;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,sBAAsB;;AAEzB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA,aAAa,wBAAwB;AACrC;AACA,eAAe,+CAA+C;AAC9D,eAAe,+CAA+C;AAC9D,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4CAA4C;AAC5C;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,kBAAkB;AACpC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C,0CAA0C;AAC1C;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,uBAAuB,+BAA+B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB,qBAAqB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA,sDAAsD,cAAc;AACpE;;AAEA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,2CAA2C,uCAAuC,kBAAkB;;AAEpG,sCAAsC,mGAAmG;;AAEzI,kCAAkC,6EAA6E;;AAE/G,6CAA6C,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE/gB,oCAAoC,oCAAoC;;AAExE;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;;AAEA,kBAAkB,qCAAqC;AACvD;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,iCAAiC;AACtD;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,gBAAgB;AACzD,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,MAAM;AACN,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,4BAA4B,2EAA2E,uCAAuC,mBAAmB,GAAG,EAAE,OAAO,uCAAuC,8HAA8H,GAAG,EAAE,0BAA0B;;AAEjX,sDAAsD,0CAA0C,0DAA0D,EAAE;;AAE5J,gDAAgD,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,2DAA2D,EAAE;;AAEhU,kEAAkE,2EAA2E,mEAAmE,oBAAoB;;AAEpO,sDAAsD,+EAA+E,aAAa,EAAE,0CAA0C;;AAE9L,kCAAkC,qGAAqG,gDAAgD,GAAG,gCAAgC;;AAE1N,4CAA4C,uBAAuB,uFAAuF,EAAE,aAAa;;AAEzK,+CAA+C,+DAA+D,2EAA2E,EAAE,yEAAyE,eAAe,sDAAsD,EAAE,EAAE,4DAA4D;;AAEzY,qCAAqC,iFAAiF,iBAAiB,UAAU,GAAG,mCAAmC;;AAEvL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,oBAAoB;AACrC;;AAEA,uCAAuC;AACvC;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB,kBAAkB;AACpC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;;AAE/B,4BAA4B;AAC5B,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,mBAAmB;AACxC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,qBAAqB,gCAAgC;AACrD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL,GAAG;AACH;;AAEA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA,iBAAiB,0BAA0B;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,kBAAkB,kBAAkB;AACpC;AACA;AACA,GAAG;;;AAGH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;;AAGH,iEAAiE;;AAEjE;AACA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,4DAA4D;;AAE5D;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,yFAAyF;AACzF,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA,+EAA+E;;AAE/E,0DAA0D;;AAE1D;;AAEA;AACA;AACA;AACA,wCAAwC;;AAExC,kBAAkB,2BAA2B;AAC7C;;AAEA;AACA;AACA;AACA,GAAG;;;AAGH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,mBAAmB;AACnB,qBAAqB,uBAAuB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,aAAa,SAAS;AACtB,eAAe;AACf;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sKAAsK;;AAEtK;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,mBAAmB,uBAAuB;AAC1C;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,+BAA+B;;AAE/B;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAiB;AAC5B;AACA,YAAY;AACZ;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,SAAS;AACpB,YAAY;AACZ;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY,QAAQ;AACpB;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC,WAAW,SAAS;AACpB,WAAW,iBAAiB;AAC5B;AACA,YAAY,OAAO;AACnB;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,kBAAkB;AACtC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;;AAGH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA,WAAW,SAAS;AACpB,WAAW,iBAAiB;AAC5B;AACA,YAAY,OAAO;AACnB;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB,mBAAmB;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;;;AAGA;;AAEA;AACA;AACA,CAAC;;;AAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;;;AAGA;;AAEA;AACA,mBAAmB,sCAAsC;AACzD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qFAAqF;;AAErF,mBAAmB,sCAAsC;AACzD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB;AACA;;AAEA,mEAAmE;;;AAGnE,+CAA+C;;;AAG/C,gDAAgD;;;AAGhD,sCAAsC;;;AAGtC,oCAAoC;;;AAGpC,kDAAkD;;;AAGlD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;;AAGH,mDAAmD;;;AAGnD,+CAA+C;;;AAG/C,MAAM,KAA6B,EAAE,EAElC;;AAEH;AACA,CAAC;;;AAGD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;;AAEA,sCAAsC,mGAAmG;;AAEzI,kCAAkC,6EAA6E;;AAE/G,6CAA6C,yGAAyG,QAAQ,EAAE,eAAe,eAAe,gBAAgB,oBAAoB,MAAM,0CAA0C,+BAA+B,aAAa,qBAAqB,mCAAmC,EAAE,EAAE,cAAc,WAAW,UAAU,EAAE,UAAU,MAAM,iDAAiD,EAAE,UAAU,kBAAkB,EAAE,EAAE,aAAa;;AAE/gB,oCAAoC,oCAAoC;;AAExE;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,qBAAqB,0BAA0B;AAC/C;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,kBAAkB,YAAY;AAC9B;;AAEA;AACA;AACA,CAAC;AACD;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,2CAA2C,uCAAuC,kBAAkB;;AAEpG,0CAA0C,gDAAgD,2BAA2B,sEAAsE,cAAc,GAAG,cAAc;;AAE1N,4CAA4C,6BAA6B,YAAY,EAAE,6CAA6C,+BAA+B,uBAAuB,EAAE,iBAAiB,mBAAmB,sFAAsF,uBAAuB,sDAAsD,qFAAqF,sCAAsC,0CAA0C,EAAE,OAAO,wBAAwB,EAAE,EAAE,EAAE,EAAE,yBAAyB,aAAa,wBAAwB,EAAE,eAAe;;AAEhqB,4BAA4B,2EAA2E,uCAAuC,mBAAmB,GAAG,EAAE,OAAO,uCAAuC,8HAA8H,GAAG,EAAE,0BAA0B;;AAEjX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,2EAA2E;AAC3E;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,2CAA2C;;AAE3C,KAAK,MAAwB,GAAG,SAAW;AAC3C;AACA;;AAEA;AACA;;AAEA,CAAC;;;AAGD;;;;;;;;ACryTA;AACA,cAAc,mBAAO,CAAC,MAAW;AACjC,gBAAgB,mBAAO,CAAC,MAAW;;AAEnC;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA","file":"vue-grid-layout.umd.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"VueGridLayout\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"VueGridLayout\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","/**\n * interact.js 1.6.3\n *\n * Copyright (c) 2012-2019 Taye Adeyemi \n * Released under the MIT License.\n * https://raw.github.com/taye/interact.js/master/LICENSE\n */\n(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.interact = f()}})(function(){var define,module,exports;\nvar createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}};\nvar _$scope_24 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/* common-shake removed: exports.createScope = */ void createScope;\n/* common-shake removed: exports.initScope = */ void initScope;\nexports.Scope = exports.ActionName = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\nvar _defaultOptions = _interopRequireDefault(_$defaultOptions_20);\n\nvar _Eventable = _interopRequireDefault(_$Eventable_14);\n\nvar _Interactable = _interopRequireDefault(_$Interactable_16);\n\nvar _InteractableSet = _interopRequireDefault(_$InteractableSet_17);\n\nvar _InteractEvent = _interopRequireDefault(_$InteractEvent_15);\n\nvar _interactions = _interopRequireDefault(_$interactions_23({}));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar win = utils.win,\n browser = utils.browser,\n raf = utils.raf,\n Signals = utils.Signals,\n events = utils.events;\nvar ActionName;\nexports.ActionName = ActionName;\n\n(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {}));\n\nfunction createScope() {\n return new Scope();\n}\n\nvar Scope =\n/*#__PURE__*/\nfunction () {\n function Scope() {\n var _this = this;\n\n _classCallCheck(this, Scope);\n\n this.id = \"__interact_scope_\".concat(Math.floor(Math.random() * 100));\n this.signals = new Signals();\n this.browser = browser;\n this.events = events;\n this.utils = utils;\n this.defaults = utils.clone(_defaultOptions[\"default\"]);\n this.Eventable = _Eventable[\"default\"];\n this.actions = {\n names: [],\n methodDict: {},\n eventTypes: []\n };\n this.InteractEvent = _InteractEvent[\"default\"];\n this.interactables = new _InteractableSet[\"default\"](this); // all documents being listened to\n\n this.documents = [];\n this._plugins = [];\n this._pluginMap = {};\n\n this.onWindowUnload = function (event) {\n return _this.removeDocument(event.target);\n };\n\n var scope = this;\n\n this.Interactable =\n /*#__PURE__*/\n function (_InteractableBase) {\n _inherits(Interactable, _InteractableBase);\n\n function Interactable() {\n _classCallCheck(this, Interactable);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments));\n }\n\n _createClass(Interactable, [{\n key: \"set\",\n value: function set(options) {\n _get(_getPrototypeOf(Interactable.prototype), \"set\", this).call(this, options);\n\n scope.interactables.signals.fire('set', {\n options: options,\n interactable: this\n });\n return this;\n }\n }, {\n key: \"unset\",\n value: function unset() {\n _get(_getPrototypeOf(Interactable.prototype), \"unset\", this).call(this);\n\n for (var i = scope.interactions.list.length - 1; i >= 0; i--) {\n var interaction = scope.interactions.list[i];\n\n if (interaction.interactable === this) {\n interaction.stop();\n scope.interactions.signals.fire('destroy', {\n interaction: interaction\n });\n interaction.destroy();\n\n if (scope.interactions.list.length > 2) {\n scope.interactions.list.splice(i, 1);\n }\n }\n }\n\n scope.interactables.signals.fire('unset', {\n interactable: this\n });\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return scope.defaults;\n }\n }]);\n\n return Interactable;\n }(_Interactable[\"default\"]);\n }\n\n _createClass(Scope, [{\n key: \"init\",\n value: function init(window) {\n return initScope(this, window);\n }\n }, {\n key: \"pluginIsInstalled\",\n value: function pluginIsInstalled(plugin) {\n return this._pluginMap[plugin.id] || this._plugins.indexOf(plugin) !== -1;\n }\n }, {\n key: \"usePlugin\",\n value: function usePlugin(plugin, options) {\n if (this.pluginIsInstalled(plugin)) {\n return this;\n }\n\n if (plugin.id) {\n this._pluginMap[plugin.id] = plugin;\n }\n\n plugin.install(this, options);\n\n this._plugins.push(plugin);\n\n return this;\n }\n }, {\n key: \"addDocument\",\n value: function addDocument(doc, options) {\n // do nothing if document is already known\n if (this.getDocIndex(doc) !== -1) {\n return false;\n }\n\n var window = win.getWindow(doc);\n options = options ? utils.extend({}, options) : {};\n this.documents.push({\n doc: doc,\n options: options\n });\n events.documents.push(doc); // don't add an unload event for the main document\n // so that the page may be cached in browser history\n\n if (doc !== this.document) {\n events.add(window, 'unload', this.onWindowUnload);\n }\n\n this.signals.fire('add-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"removeDocument\",\n value: function removeDocument(doc) {\n var index = this.getDocIndex(doc);\n var window = win.getWindow(doc);\n var options = this.documents[index].options;\n events.remove(window, 'unload', this.onWindowUnload);\n this.documents.splice(index, 1);\n events.documents.splice(index, 1);\n this.signals.fire('remove-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"getDocIndex\",\n value: function getDocIndex(doc) {\n for (var i = 0; i < this.documents.length; i++) {\n if (this.documents[i].doc === doc) {\n return i;\n }\n }\n\n return -1;\n }\n }, {\n key: \"getDocOptions\",\n value: function getDocOptions(doc) {\n var docIndex = this.getDocIndex(doc);\n return docIndex === -1 ? null : this.documents[docIndex].options;\n }\n }, {\n key: \"now\",\n value: function now() {\n return (this.window.Date || Date).now();\n }\n }]);\n\n return Scope;\n}();\n\nexports.Scope = Scope;\n\nfunction initScope(scope, window) {\n win.init(window);\n\n _domObjects[\"default\"].init(window);\n\n browser.init(window);\n raf.init(window);\n events.init(window);\n scope.usePlugin(_interactions[\"default\"]);\n scope.document = window.document;\n scope.window = window;\n return scope;\n}\n\n});\nvar _$interactions_23 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _browser = _interopRequireDefault(_$browser_48);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar _events = _interopRequireDefault(_$events_52);\n\nvar _pointerUtils = _interopRequireDefault(_$pointerUtils_61);\n\nvar _Signals = _interopRequireDefault(_$Signals_46);\n\nvar _Interaction = _interopRequireDefault(_$Interaction_18({}));\n\nvar _interactionFinder = _interopRequireDefault(_$interactionFinder_22);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur'];\n\nfunction install(scope) {\n var signals = new _Signals[\"default\"]();\n var listeners = {};\n\n for (var _i = 0; _i < methodNames.length; _i++) {\n var _ref;\n\n _ref = methodNames[_i];\n var method = _ref;\n listeners[method] = doOnInteractions(method, scope);\n }\n\n var pEventTypes = _browser[\"default\"].pEventTypes;\n var docEvents;\n\n if (_domObjects[\"default\"].PointerEvent) {\n docEvents = [{\n type: pEventTypes.down,\n listener: releasePointersOnRemovedEls\n }, {\n type: pEventTypes.down,\n listener: listeners.pointerDown\n }, {\n type: pEventTypes.move,\n listener: listeners.pointerMove\n }, {\n type: pEventTypes.up,\n listener: listeners.pointerUp\n }, {\n type: pEventTypes.cancel,\n listener: listeners.pointerUp\n }];\n } else {\n docEvents = [{\n type: 'mousedown',\n listener: listeners.pointerDown\n }, {\n type: 'mousemove',\n listener: listeners.pointerMove\n }, {\n type: 'mouseup',\n listener: listeners.pointerUp\n }, {\n type: 'touchstart',\n listener: releasePointersOnRemovedEls\n }, {\n type: 'touchstart',\n listener: listeners.pointerDown\n }, {\n type: 'touchmove',\n listener: listeners.pointerMove\n }, {\n type: 'touchend',\n listener: listeners.pointerUp\n }, {\n type: 'touchcancel',\n listener: listeners.pointerUp\n }];\n }\n\n docEvents.push({\n type: 'blur',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n interaction.documentBlur(event);\n }\n }\n });\n scope.signals.on('add-document', onDocSignal);\n scope.signals.on('remove-document', onDocSignal); // for ignoring browser's simulated mouse events\n\n scope.prevTouchTime = 0;\n\n scope.Interaction =\n /*#__PURE__*/\n function (_InteractionBase) {\n _inherits(Interaction, _InteractionBase);\n\n function Interaction() {\n _classCallCheck(this, Interaction);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments));\n }\n\n _createClass(Interaction, [{\n key: \"_now\",\n value: function _now() {\n return scope.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return scope.interactions.pointerMoveTolerance;\n },\n set: function set(value) {\n scope.interactions.pointerMoveTolerance = value;\n }\n }]);\n\n return Interaction;\n }(_Interaction[\"default\"]);\n\n scope.interactions = {\n signals: signals,\n // all active and idle interactions\n list: [],\n \"new\": function _new(options) {\n options.signals = signals;\n var interaction = new scope.Interaction(options);\n scope.interactions.list.push(interaction);\n return interaction;\n },\n listeners: listeners,\n docEvents: docEvents,\n pointerMoveTolerance: 1\n };\n\n function releasePointersOnRemovedEls() {\n // for all inactive touch interactions with pointers down\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n\n if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) {\n continue;\n } // if a pointer is down on an element that is no longer in the DOM tree\n\n\n var _loop = function _loop() {\n _ref4 = interaction.pointers[_i4];\n var pointer = _ref4;\n\n if (!scope.documents.some(function (_ref5) {\n var doc = _ref5.doc;\n return (0, _$domUtils_51.nodeContains)(doc, pointer.downTarget);\n })) {\n // remove the pointer from the interaction\n interaction.removePointer(pointer.pointer, pointer.event);\n }\n };\n\n for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) {\n var _ref4;\n\n _loop();\n }\n }\n }\n}\n\nfunction doOnInteractions(method, scope) {\n return function (event) {\n var interactions = scope.interactions.list;\n\n var pointerType = _pointerUtils[\"default\"].getPointerType(event);\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2),\n eventTarget = _pointerUtils$getEven2[0],\n curEventTarget = _pointerUtils$getEven2[1];\n\n var matches = []; // [ [pointer, interaction], ...]\n\n if (/^touch/.test(event.type)) {\n scope.prevTouchTime = scope.now();\n\n for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) {\n var _ref6;\n\n _ref6 = event.changedTouches[_i5];\n var changedTouch = _ref6;\n var pointer = changedTouch;\n\n var pointerId = _pointerUtils[\"default\"].getPointerId(pointer);\n\n var searchDetails = {\n pointer: pointer,\n pointerId: pointerId,\n pointerType: pointerType,\n eventType: event.type,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n scope: scope\n };\n var interaction = getInteraction(searchDetails);\n matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]);\n }\n } else {\n var invalidPointer = false;\n\n if (!_browser[\"default\"].supportsPointerEvent && /mouse/.test(event.type)) {\n // ignore mouse events while touch interactions are active\n for (var i = 0; i < interactions.length && !invalidPointer; i++) {\n invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown;\n } // try to ignore mouse events that are simulated by the browser\n // after a touch event\n\n\n invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated\n event.timeStamp === 0;\n }\n\n if (!invalidPointer) {\n var _searchDetails = {\n pointer: event,\n pointerId: _pointerUtils[\"default\"].getPointerId(event),\n pointerType: pointerType,\n eventType: event.type,\n curEventTarget: curEventTarget,\n eventTarget: eventTarget,\n scope: scope\n };\n\n var _interaction = getInteraction(_searchDetails);\n\n matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]);\n }\n } // eslint-disable-next-line no-shadow\n\n\n for (var _i6 = 0; _i6 < matches.length; _i6++) {\n var _matches$_i = _slicedToArray(matches[_i6], 4),\n _pointer = _matches$_i[0],\n _eventTarget = _matches$_i[1],\n _curEventTarget = _matches$_i[2],\n _interaction2 = _matches$_i[3];\n\n _interaction2[method](_pointer, event, _eventTarget, _curEventTarget);\n }\n };\n}\n\nfunction getInteraction(searchDetails) {\n var pointerType = searchDetails.pointerType,\n scope = searchDetails.scope;\n\n var foundInteraction = _interactionFinder[\"default\"].search(searchDetails);\n\n var signalArg = {\n interaction: foundInteraction,\n searchDetails: searchDetails\n };\n scope.interactions.signals.fire('find', signalArg);\n return signalArg.interaction || scope.interactions[\"new\"]({\n pointerType: pointerType\n });\n}\n\nfunction onDocSignal(_ref7, signalName) {\n var doc = _ref7.doc,\n scope = _ref7.scope,\n options = _ref7.options;\n var docEvents = scope.interactions.docEvents;\n var eventMethod = signalName.indexOf('add') === 0 ? _events[\"default\"].add : _events[\"default\"].remove;\n\n if (scope.browser.isIOS && !options.events) {\n options.events = {\n passive: false\n };\n } // delegate event listener\n\n\n for (var eventType in _events[\"default\"].delegatedEvents) {\n eventMethod(doc, eventType, _events[\"default\"].delegateListener);\n eventMethod(doc, eventType, _events[\"default\"].delegateUseCapture, true);\n }\n\n var eventOptions = options && options.events;\n\n for (var _i7 = 0; _i7 < docEvents.length; _i7++) {\n var _ref8;\n\n _ref8 = docEvents[_i7];\n var _ref9 = _ref8,\n type = _ref9.type,\n listener = _ref9.listener;\n eventMethod(doc, type, listener, eventOptions);\n }\n}\n\nvar _default = {\n id: 'core/interactions',\n install: install,\n onDocSignal: onDocSignal,\n doOnInteractions: doOnInteractions,\n methodNames: methodNames\n};\nexports[\"default\"] = _default;\n\n});\nvar _$Interaction_18 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"PointerInfo\", {\n enumerable: true,\n get: function get() {\n return _PointerInfo[\"default\"];\n }\n});\nexports[\"default\"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _InteractEvent = _interopRequireWildcard(_$InteractEvent_15);\n\nvar _PointerInfo = _interopRequireDefault(_$PointerInfo_19);\n\nvar _scope = _$scope_24({});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar _ProxyValues;\n\nexports._ProxyValues = _ProxyValues;\n\n(function (_ProxyValues) {\n _ProxyValues[\"interactable\"] = \"\";\n _ProxyValues[\"element\"] = \"\";\n _ProxyValues[\"prepared\"] = \"\";\n _ProxyValues[\"pointerIsDown\"] = \"\";\n _ProxyValues[\"pointerWasMoved\"] = \"\";\n _ProxyValues[\"_proxy\"] = \"\";\n})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {}));\n\nvar _ProxyMethods;\n\nexports._ProxyMethods = _ProxyMethods;\n\n(function (_ProxyMethods) {\n _ProxyMethods[\"start\"] = \"\";\n _ProxyMethods[\"move\"] = \"\";\n _ProxyMethods[\"end\"] = \"\";\n _ProxyMethods[\"stop\"] = \"\";\n _ProxyMethods[\"interacting\"] = \"\";\n})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {}));\n\nvar Interaction =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interaction(_ref) {\n var _this = this;\n\n var pointerType = _ref.pointerType,\n signals = _ref.signals;\n\n _classCallCheck(this, Interaction);\n\n // current interactable being interacted with\n this.interactable = null; // the target element of the interactable\n\n this.element = null; // action that's ready to be fired on next move event\n\n this.prepared = {\n name: null,\n axis: null,\n edges: null\n }; // keep track of added pointers\n\n this.pointers = []; // pointerdown/mousedown/touchstart event\n\n this.downEvent = null;\n this.downPointer = {};\n this._latestPointer = {\n pointer: null,\n event: null,\n eventTarget: null\n }; // previous action event\n\n this.prevEvent = null;\n this.pointerIsDown = false;\n this.pointerWasMoved = false;\n this._interacting = false;\n this._ending = false;\n this._stopped = true;\n this._proxy = null;\n this.simulation = null;\n /**\n * @alias Interaction.prototype.move\n */\n\n this.doMove = utils.warnOnce(function (signalArg) {\n this.move(signalArg);\n }, 'The interaction.doMove() method has been renamed to interaction.move()');\n this.coords = {\n // Starting InteractEvent pointer coordinates\n start: utils.pointer.newCoords(),\n // Previous native pointer move event coordinates\n prev: utils.pointer.newCoords(),\n // current native pointer move event coordinates\n cur: utils.pointer.newCoords(),\n // Change in coordinates and time of the pointer\n delta: utils.pointer.newCoords(),\n // pointer velocity\n velocity: utils.pointer.newCoords()\n };\n this._signals = signals;\n this.pointerType = pointerType;\n var that = this;\n this._proxy = {};\n\n var _loop = function _loop(key) {\n Object.defineProperty(_this._proxy, key, {\n get: function get() {\n return that[key];\n }\n });\n };\n\n for (var key in _ProxyValues) {\n _loop(key);\n }\n\n var _loop2 = function _loop2(_key) {\n Object.defineProperty(_this._proxy, _key, {\n value: function value() {\n return that[_key].apply(that, arguments);\n }\n });\n };\n\n for (var _key in _ProxyMethods) {\n _loop2(_key);\n }\n\n this._signals.fire('new', {\n interaction: this\n });\n }\n\n _createClass(Interaction, [{\n key: \"pointerDown\",\n value: function pointerDown(pointer, event, eventTarget) {\n var pointerIndex = this.updatePointer(pointer, event, eventTarget, true);\n\n this._signals.fire('down', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n pointerIndex: pointerIndex,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable({\n * // disable the default drag start by down->move\n * manualStart: true\n * })\n * // start dragging after the user holds the pointer down\n * .on('hold', function (event) {\n * var interaction = event.interaction\n *\n * if (!interaction.interacting()) {\n * interaction.start({ name: 'drag' },\n * event.interactable,\n * event.currentTarget)\n * }\n * })\n * ```\n *\n * Start an action with the given Interactable and Element as tartgets. The\n * action must be enabled for the target Interactable and an appropriate\n * number of pointers must be held down - 1 for drag/resize, 2 for gesture.\n *\n * Use it with `interactable.able({ manualStart: false })` to always\n * [start actions manually](https://github.com/taye/interact.js/issues/114)\n *\n * @param {object} action The action to be performed - drag, resize, etc.\n * @param {Interactable} target The Interactable to target\n * @param {Element} element The DOM Element to target\n * @return {object} interact\n */\n\n }, {\n key: \"start\",\n value: function start(action, interactable, element) {\n if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) {\n return false;\n }\n\n utils.copyAction(this.prepared, action);\n this.interactable = interactable;\n this.element = element;\n this.rect = interactable.getRect(element);\n this.edges = this.prepared.edges;\n this._stopped = false;\n this._interacting = this._doPhase({\n interaction: this,\n event: this.downEvent,\n phase: _InteractEvent.EventPhase.Start\n }) && !this._stopped;\n return this._interacting;\n }\n }, {\n key: \"pointerMove\",\n value: function pointerMove(pointer, event, eventTarget) {\n if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) {\n this.updatePointer(pointer, event, eventTarget, false);\n utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n }\n\n var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y;\n var dx;\n var dy; // register movement greater than pointerMoveTolerance\n\n if (this.pointerIsDown && !this.pointerWasMoved) {\n dx = this.coords.cur.client.x - this.coords.start.client.x;\n dy = this.coords.cur.client.y - this.coords.start.client.y;\n this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance;\n }\n\n var signalArg = {\n pointer: pointer,\n pointerIndex: this.getPointerIndex(pointer),\n event: event,\n eventTarget: eventTarget,\n dx: dx,\n dy: dy,\n duplicate: duplicateMove,\n interaction: this\n };\n\n if (!duplicateMove) {\n // set pointer coordinate, time changes and velocity\n utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur);\n utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta);\n }\n\n this._signals.fire('move', signalArg);\n\n if (!duplicateMove) {\n // if interacting, fire an 'action-move' signal etc\n if (this.interacting()) {\n this.move(signalArg);\n }\n\n if (this.pointerWasMoved) {\n utils.pointer.copyCoords(this.coords.prev, this.coords.cur);\n }\n }\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('dragmove', function (event) {\n * if (someCondition) {\n * // change the snap settings\n * event.interactable.draggable({ snap: { targets: [] }})\n * // fire another move event with re-calculated snap\n * event.interaction.move()\n * }\n * })\n * ```\n *\n * Force a move of the current action at the same coordinates. Useful if\n * snap/restrict has been changed and you want a movement with the new\n * settings.\n */\n\n }, {\n key: \"move\",\n value: function move(signalArg) {\n signalArg = utils.extend({\n pointer: this._latestPointer.pointer,\n event: this._latestPointer.event,\n eventTarget: this._latestPointer.eventTarget,\n interaction: this\n }, signalArg || {});\n signalArg.phase = _InteractEvent.EventPhase.Move;\n\n this._doPhase(signalArg);\n } // End interact move events and stop auto-scroll unless simulation is running\n\n }, {\n key: \"pointerUp\",\n value: function pointerUp(pointer, event, eventTarget, curEventTarget) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n pointerIndex = this.updatePointer(pointer, event, eventTarget, false);\n }\n\n this._signals.fire(/cancel$/i.test(event.type) ? 'cancel' : 'up', {\n pointer: pointer,\n pointerIndex: pointerIndex,\n event: event,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n interaction: this\n });\n\n if (!this.simulation) {\n this.end(event);\n }\n\n this.pointerIsDown = false;\n this.removePointer(pointer, event);\n }\n }, {\n key: \"documentBlur\",\n value: function documentBlur(event) {\n this.end(event);\n\n this._signals.fire('blur', {\n event: event,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('move', function (event) {\n * if (event.pageX > 1000) {\n * // end the current action\n * event.interaction.end()\n * // stop all further listeners from being called\n * event.stopImmediatePropagation()\n * }\n * })\n * ```\n *\n * @param {PointerEvent} [event]\n */\n\n }, {\n key: \"end\",\n value: function end(event) {\n this._ending = true;\n event = event || this._latestPointer.event;\n var endPhaseResult;\n\n if (this.interacting()) {\n endPhaseResult = this._doPhase({\n event: event,\n interaction: this,\n phase: _InteractEvent.EventPhase.End\n });\n }\n\n this._ending = false;\n\n if (endPhaseResult === true) {\n this.stop();\n }\n }\n }, {\n key: \"currentAction\",\n value: function currentAction() {\n return this._interacting ? this.prepared.name : null;\n }\n }, {\n key: \"interacting\",\n value: function interacting() {\n return this._interacting;\n }\n /** */\n\n }, {\n key: \"stop\",\n value: function stop() {\n this._signals.fire('stop', {\n interaction: this\n });\n\n this.interactable = this.element = null;\n this._interacting = false;\n this._stopped = true;\n this.prepared.name = this.prevEvent = null;\n }\n }, {\n key: \"getPointerIndex\",\n value: function getPointerIndex(pointer) {\n var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer\n\n return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) {\n return curPointer.id === pointerId;\n });\n }\n }, {\n key: \"getPointerInfo\",\n value: function getPointerInfo(pointer) {\n return this.pointers[this.getPointerIndex(pointer)];\n }\n }, {\n key: \"updatePointer\",\n value: function updatePointer(pointer, event, eventTarget, down) {\n var id = utils.pointer.getPointerId(pointer);\n var pointerIndex = this.getPointerIndex(pointer);\n var pointerInfo = this.pointers[pointerIndex];\n down = down === false ? false : down || /(down|start)$/i.test(event.type);\n\n if (!pointerInfo) {\n pointerInfo = new _PointerInfo[\"default\"](id, pointer, event, null, null);\n pointerIndex = this.pointers.length;\n this.pointers.push(pointerInfo);\n } else {\n pointerInfo.pointer = pointer;\n }\n\n if (down) {\n this.pointerIsDown = true;\n\n if (!this.interacting()) {\n utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n utils.pointer.copyCoords(this.coords.cur, this.coords.start);\n utils.pointer.copyCoords(this.coords.prev, this.coords.start);\n utils.pointer.pointerExtend(this.downPointer, pointer);\n this.downEvent = event;\n pointerInfo.downTime = this.coords.cur.timeStamp;\n pointerInfo.downTarget = eventTarget;\n this.pointerWasMoved = false;\n }\n }\n\n this._updateLatestPointer(pointer, event, eventTarget);\n\n this._signals.fire('update-pointer', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n down: down,\n pointerInfo: pointerInfo,\n pointerIndex: pointerIndex,\n interaction: this\n });\n\n return pointerIndex;\n }\n }, {\n key: \"removePointer\",\n value: function removePointer(pointer, event) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n return;\n }\n\n var pointerInfo = this.pointers[pointerIndex];\n\n this._signals.fire('remove-pointer', {\n pointer: pointer,\n event: event,\n pointerIndex: pointerIndex,\n pointerInfo: pointerInfo,\n interaction: this\n });\n\n this.pointers.splice(pointerIndex, 1);\n }\n }, {\n key: \"_updateLatestPointer\",\n value: function _updateLatestPointer(pointer, event, eventTarget) {\n this._latestPointer.pointer = pointer;\n this._latestPointer.event = event;\n this._latestPointer.eventTarget = eventTarget;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this._latestPointer.pointer = null;\n this._latestPointer.event = null;\n this._latestPointer.eventTarget = null;\n }\n }, {\n key: \"_createPreparedEvent\",\n value: function _createPreparedEvent(event, phase, preEnd, type) {\n var actionName = this.prepared.name;\n return new _InteractEvent[\"default\"](this, event, actionName, phase, this.element, null, preEnd, type);\n }\n }, {\n key: \"_fireEvent\",\n value: function _fireEvent(iEvent) {\n this.interactable.fire(iEvent);\n\n if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) {\n this.prevEvent = iEvent;\n }\n }\n }, {\n key: \"_doPhase\",\n value: function _doPhase(signalArg) {\n var event = signalArg.event,\n phase = signalArg.phase,\n preEnd = signalArg.preEnd,\n type = signalArg.type;\n\n var beforeResult = this._signals.fire(\"before-action-\".concat(phase), signalArg);\n\n if (beforeResult === false) {\n return false;\n }\n\n var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type);\n\n var rect = this.rect;\n\n if (rect) {\n // update the rect modifications\n var edges = this.edges || this.prepared.edges || {\n left: true,\n right: true,\n top: true,\n bottom: true\n };\n\n if (edges.top) {\n rect.top += iEvent.delta.y;\n }\n\n if (edges.bottom) {\n rect.bottom += iEvent.delta.y;\n }\n\n if (edges.left) {\n rect.left += iEvent.delta.x;\n }\n\n if (edges.right) {\n rect.right += iEvent.delta.x;\n }\n\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n }\n\n this._signals.fire(\"action-\".concat(phase), signalArg);\n\n this._fireEvent(iEvent);\n\n this._signals.fire(\"after-action-\".concat(phase), signalArg);\n\n return true;\n }\n }, {\n key: \"_now\",\n value: function _now() {\n return Date.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return 1;\n }\n }]);\n\n return Interaction;\n}();\n\nexports.Interaction = Interaction;\nvar _default = Interaction;\nexports[\"default\"] = _default;\n\n});\nvar _$arr_47 = {};\n\"use strict\";\n\nObject.defineProperty(_$arr_47, \"__esModule\", {\n value: true\n});\n_$arr_47.contains = contains;\n_$arr_47.remove = remove;\n_$arr_47.merge = merge;\n_$arr_47.from = from;\n_$arr_47.findIndex = findIndex;\n_$arr_47.find = find;\n\nfunction contains(array, target) {\n return array.indexOf(target) !== -1;\n}\n\nfunction remove(array, target) {\n return array.splice(array.indexOf(target), 1);\n}\n\nfunction merge(target, source) {\n for (var _i = 0; _i < source.length; _i++) {\n var _ref;\n\n _ref = source[_i];\n var item = _ref;\n target.push(item);\n }\n\n return target;\n}\n\nfunction from(source) {\n return merge([], source);\n}\n\nfunction findIndex(array, func) {\n for (var i = 0; i < array.length; i++) {\n if (func(array[i], i, array)) {\n return i;\n }\n }\n\n return -1;\n}\n\nfunction find(array, func) {\n return array[findIndex(array, func)];\n}\n\nvar _$domObjects_50 = {};\n\"use strict\";\n\nObject.defineProperty(_$domObjects_50, \"__esModule\", {\n value: true\n});\n_$domObjects_50[\"default\"] = void 0;\nvar domObjects = {\n init: init,\n document: null,\n DocumentFragment: null,\n SVGElement: null,\n SVGSVGElement: null,\n // eslint-disable-next-line no-undef\n SVGElementInstance: null,\n Element: null,\n HTMLElement: null,\n Event: null,\n Touch: null,\n PointerEvent: null\n};\n\nfunction blank() {}\n\nvar _default = domObjects;\n_$domObjects_50[\"default\"] = _default;\n\nfunction init(window) {\n var win = window;\n domObjects.document = win.document;\n domObjects.DocumentFragment = win.DocumentFragment || blank;\n domObjects.SVGElement = win.SVGElement || blank;\n domObjects.SVGSVGElement = win.SVGSVGElement || blank;\n domObjects.SVGElementInstance = win.SVGElementInstance || blank;\n domObjects.Element = win.Element || blank;\n domObjects.HTMLElement = win.HTMLElement || domObjects.Element;\n domObjects.Event = win.Event;\n domObjects.Touch = win.Touch || blank;\n domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent;\n}\n\nvar _$isWindow_58 = {};\n\"use strict\";\n\nObject.defineProperty(_$isWindow_58, \"__esModule\", {\n value: true\n});\n_$isWindow_58[\"default\"] = void 0;\n\nvar ___default_58 = function _default(thing) {\n return !!(thing && thing.Window) && thing instanceof thing.Window;\n};\n\n_$isWindow_58[\"default\"] = ___default_58;\n\nvar _$window_66 = {};\n\"use strict\";\n\nObject.defineProperty(_$window_66, \"__esModule\", {\n value: true\n});\n_$window_66.init = __init_66;\n_$window_66.getWindow = getWindow;\n_$window_66[\"default\"] = void 0;\n\nvar _isWindow = _interopRequireDefault(_$isWindow_58);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar win = {\n realWindow: undefined,\n window: undefined,\n getWindow: getWindow,\n init: __init_66\n};\n\nfunction __init_66(window) {\n // get wrapped window if using Shadow DOM polyfill\n win.realWindow = window; // create a TextNode\n\n var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill\n\n if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) {\n // use wrapped window\n window = window.wrap(window);\n }\n\n win.window = window;\n}\n\nif (typeof window === 'undefined') {\n win.window = undefined;\n win.realWindow = undefined;\n} else {\n __init_66(window);\n}\n\nfunction getWindow(node) {\n if ((0, _isWindow[\"default\"])(node)) {\n return node;\n }\n\n var rootNode = node.ownerDocument || node;\n return rootNode.defaultView || win.window;\n}\n\nwin.init = __init_66;\nvar ___default_66 = win;\n_$window_66[\"default\"] = ___default_66;\n\nvar _$is_57 = {};\n\"use strict\";\n\nObject.defineProperty(_$is_57, \"__esModule\", {\n value: true\n});\n_$is_57.array = _$is_57.plainObject = _$is_57.element = _$is_57.string = _$is_57.bool = _$is_57.number = _$is_57.func = _$is_57.object = _$is_57.docFrag = _$is_57.window = void 0;\n\nvar ___isWindow_57 = ___interopRequireDefault_57(_$isWindow_58);\n\nvar _window2 = ___interopRequireDefault_57(_$window_66);\n\nfunction ___interopRequireDefault_57(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar __window_57 = function window(thing) {\n return thing === _window2[\"default\"].window || (0, ___isWindow_57[\"default\"])(thing);\n};\n\n_$is_57.window = __window_57;\n\nvar docFrag = function docFrag(thing) {\n return object(thing) && thing.nodeType === 11;\n};\n\n_$is_57.docFrag = docFrag;\n\nvar object = function object(thing) {\n return !!thing && _typeof(thing) === 'object';\n};\n\n_$is_57.object = object;\n\nvar func = function func(thing) {\n return typeof thing === 'function';\n};\n\n_$is_57.func = func;\n\nvar number = function number(thing) {\n return typeof thing === 'number';\n};\n\n_$is_57.number = number;\n\nvar bool = function bool(thing) {\n return typeof thing === 'boolean';\n};\n\n_$is_57.bool = bool;\n\nvar string = function string(thing) {\n return typeof thing === 'string';\n};\n\n_$is_57.string = string;\n\nvar element = function element(thing) {\n if (!thing || _typeof(thing) !== 'object') {\n return false;\n }\n\n var _window = _window2[\"default\"].getWindow(thing) || _window2[\"default\"].window;\n\n return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2\n : thing.nodeType === 1 && typeof thing.nodeName === 'string';\n};\n\n_$is_57.element = element;\n\nvar plainObject = function plainObject(thing) {\n return object(thing) && !!thing.constructor && /function Object\\b/.test(thing.constructor.toString());\n};\n\n_$is_57.plainObject = plainObject;\n\nvar array = function array(thing) {\n return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice);\n};\n\n_$is_57.array = array;\n\nvar _$browser_48 = {};\n\"use strict\";\n\nObject.defineProperty(_$browser_48, \"__esModule\", {\n value: true\n});\n_$browser_48[\"default\"] = void 0;\n\nvar _domObjects = ___interopRequireDefault_48(_$domObjects_50);\n\nvar is = _interopRequireWildcard(_$is_57);\n\nvar _window = ___interopRequireDefault_48(_$window_66);\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_48(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar browser = {\n init: __init_48,\n supportsTouch: null,\n supportsPointerEvent: null,\n isIOS7: null,\n isIOS: null,\n isIe9: null,\n isOperaMobile: null,\n prefixedMatchesSelector: null,\n pEventTypes: null,\n wheelEvent: null\n};\n\nfunction __init_48(window) {\n var Element = _domObjects[\"default\"].Element;\n var navigator = _window[\"default\"].window.navigator; // Does the browser support touch input?\n\n browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects[\"default\"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents\n\n browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects[\"default\"].PointerEvent;\n browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7\n\n browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\\d]/.test(navigator.appVersion);\n browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently\n\n browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector\n\n browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector';\n browser.pEventTypes = browser.supportsPointerEvent ? _domObjects[\"default\"].PointerEvent === window.MSPointerEvent ? {\n up: 'MSPointerUp',\n down: 'MSPointerDown',\n over: 'mouseover',\n out: 'mouseout',\n move: 'MSPointerMove',\n cancel: 'MSPointerCancel'\n } : {\n up: 'pointerup',\n down: 'pointerdown',\n over: 'pointerover',\n out: 'pointerout',\n move: 'pointermove',\n cancel: 'pointercancel'\n } : null; // because Webkit and Opera still use 'mousewheel' event type\n\n browser.wheelEvent = 'onmousewheel' in _domObjects[\"default\"].document ? 'mousewheel' : 'wheel';\n}\n\nvar ___default_48 = browser;\n_$browser_48[\"default\"] = ___default_48;\n\nvar _$domUtils_51 = {};\n\"use strict\";\n\nObject.defineProperty(_$domUtils_51, \"__esModule\", {\n value: true\n});\n_$domUtils_51.nodeContains = nodeContains;\n_$domUtils_51.closest = closest;\n_$domUtils_51.parentNode = parentNode;\n_$domUtils_51.matchesSelector = matchesSelector;\n_$domUtils_51.indexOfDeepestElement = indexOfDeepestElement;\n_$domUtils_51.matchesUpTo = matchesUpTo;\n_$domUtils_51.getActualElement = getActualElement;\n_$domUtils_51.getScrollXY = getScrollXY;\n_$domUtils_51.getElementClientRect = getElementClientRect;\n_$domUtils_51.getElementRect = getElementRect;\n_$domUtils_51.getPath = getPath;\n_$domUtils_51.trySelector = trySelector;\n\nvar _browser = ___interopRequireDefault_51(_$browser_48);\n\nvar ___domObjects_51 = ___interopRequireDefault_51(_$domObjects_50);\n\nvar __is_51 = ___interopRequireWildcard_51(_$is_57);\n\nvar ___window_51 = ___interopRequireWildcard_51(_$window_66);\n\nfunction ___getRequireWildcardCache_51() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction nodeContains(parent, child) {\n while (child) {\n if (child === parent) {\n return true;\n }\n\n child = child.parentNode;\n }\n\n return false;\n}\n\nfunction closest(element, selector) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return element;\n }\n\n element = parentNode(element);\n }\n\n return null;\n}\n\nfunction parentNode(node) {\n var parent = node.parentNode;\n\n if (__is_51.docFrag(parent)) {\n // skip past #shado-root fragments\n // tslint:disable-next-line\n while ((parent = parent.host) && __is_51.docFrag(parent)) {\n continue;\n }\n\n return parent;\n }\n\n return parent;\n}\n\nfunction matchesSelector(element, selector) {\n // remove /deep/ from selectors if shadowDOM polyfill is used\n if (___window_51[\"default\"].window !== ___window_51[\"default\"].realWindow) {\n selector = selector.replace(/\\/deep\\//g, ' ');\n }\n\n return element[_browser[\"default\"].prefixedMatchesSelector](selector);\n}\n\nvar getParent = function getParent(el) {\n return el.parentNode ? el.parentNode : el.host;\n}; // Test for the element that's \"above\" all other qualifiers\n\n\nfunction indexOfDeepestElement(elements) {\n var deepestZoneParents = [];\n var deepestZone = elements[0];\n var index = deepestZone ? 0 : -1;\n var i;\n var n;\n\n for (i = 1; i < elements.length; i++) {\n var dropzone = elements[i]; // an element might belong to multiple selector dropzones\n\n if (!dropzone || dropzone === deepestZone) {\n continue;\n }\n\n if (!deepestZone) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // check if the deepest or current are document.documentElement or document.rootElement\n // - if the current dropzone is, do nothing and continue\n\n\n if (dropzone.parentNode === dropzone.ownerDocument) {\n continue;\n } // - if deepest is, update with the current dropzone and continue to next\n else if (deepestZone.parentNode === dropzone.ownerDocument) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // compare zIndex of siblings\n\n\n if (dropzone.parentNode === deepestZone.parentNode) {\n var deepestZIndex = parseInt((0, ___window_51.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0;\n var dropzoneZIndex = parseInt((0, ___window_51.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0;\n\n if (dropzoneZIndex >= deepestZIndex) {\n deepestZone = dropzone;\n index = i;\n }\n\n continue;\n } // populate the ancestry array for the latest deepest dropzone\n\n\n if (!deepestZoneParents.length) {\n var _parent = deepestZone;\n var parentParent = void 0;\n\n while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) {\n deepestZoneParents.unshift(_parent);\n _parent = parentParent;\n }\n }\n\n var parent = void 0; // if this element is an svg element and the current deepest is an\n // HTMLElement\n\n if (deepestZone instanceof ___domObjects_51[\"default\"].HTMLElement && dropzone instanceof ___domObjects_51[\"default\"].SVGElement && !(dropzone instanceof ___domObjects_51[\"default\"].SVGSVGElement)) {\n if (dropzone === deepestZone.parentNode) {\n continue;\n }\n\n parent = dropzone.ownerSVGElement;\n } else {\n parent = dropzone;\n }\n\n var dropzoneParents = [];\n\n while (parent.parentNode !== parent.ownerDocument) {\n dropzoneParents.unshift(parent);\n parent = getParent(parent);\n }\n\n n = 0; // get (position of last common ancestor) + 1\n\n while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) {\n n++;\n }\n\n var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]];\n var child = parents[0].lastChild;\n\n while (child) {\n if (child === parents[1]) {\n deepestZone = dropzone;\n index = i;\n deepestZoneParents = dropzoneParents;\n break;\n } else if (child === parents[2]) {\n break;\n }\n\n child = child.previousSibling;\n }\n }\n\n return index;\n}\n\nfunction matchesUpTo(element, selector, limit) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return true;\n }\n\n element = parentNode(element);\n\n if (element === limit) {\n return matchesSelector(element, selector);\n }\n }\n\n return false;\n}\n\nfunction getActualElement(element) {\n return element instanceof ___domObjects_51[\"default\"].SVGElementInstance ? element.correspondingUseElement : element;\n}\n\nfunction getScrollXY(relevantWindow) {\n relevantWindow = relevantWindow || ___window_51[\"default\"].window;\n return {\n x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft,\n y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop\n };\n}\n\nfunction getElementClientRect(element) {\n var clientRect = element instanceof ___domObjects_51[\"default\"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0];\n return clientRect && {\n left: clientRect.left,\n right: clientRect.right,\n top: clientRect.top,\n bottom: clientRect.bottom,\n width: clientRect.width || clientRect.right - clientRect.left,\n height: clientRect.height || clientRect.bottom - clientRect.top\n };\n}\n\nfunction getElementRect(element) {\n var clientRect = getElementClientRect(element);\n\n if (!_browser[\"default\"].isIOS7 && clientRect) {\n var scroll = getScrollXY(___window_51[\"default\"].getWindow(element));\n clientRect.left += scroll.x;\n clientRect.right += scroll.x;\n clientRect.top += scroll.y;\n clientRect.bottom += scroll.y;\n }\n\n return clientRect;\n}\n\nfunction getPath(node) {\n var path = [];\n\n while (node) {\n path.push(node);\n node = parentNode(node);\n }\n\n return path;\n}\n\nfunction trySelector(value) {\n if (!__is_51.string(value)) {\n return false;\n } // an exception will be raised if it is invalid\n\n\n ___domObjects_51[\"default\"].document.querySelector(value);\n\n return true;\n}\n\nvar _$clone_49 = {};\n\"use strict\";\n\nObject.defineProperty(_$clone_49, \"__esModule\", {\n value: true\n});\n_$clone_49[\"default\"] = clone;\n\nvar arr = ___interopRequireWildcard_49(_$arr_47);\n\nvar __is_49 = ___interopRequireWildcard_49(_$is_57);\n\nfunction ___getRequireWildcardCache_49() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_49 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_49(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_49(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction clone(source) {\n var dest = {};\n\n for (var prop in source) {\n var value = source[prop];\n\n if (__is_49.plainObject(value)) {\n dest[prop] = clone(value);\n } else if (__is_49.array(value)) {\n dest[prop] = arr.from(value);\n } else {\n dest[prop] = value;\n }\n }\n\n return dest;\n}\n\nvar _$pointerExtend_60 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerExtend_60, \"__esModule\", {\n value: true\n});\n_$pointerExtend_60[\"default\"] = void 0;\n\nfunction pointerExtend(dest, source) {\n for (var prop in source) {\n var prefixedPropREs = pointerExtend.prefixedPropREs;\n var deprecated = false; // skip deprecated prefixed properties\n\n for (var vendor in prefixedPropREs) {\n if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) {\n deprecated = true;\n break;\n }\n }\n\n if (!deprecated && typeof source[prop] !== 'function') {\n dest[prop] = source[prop];\n }\n }\n\n return dest;\n}\n\npointerExtend.prefixedPropREs = {\n webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,\n moz: /(Pressure)$/\n};\nvar ___default_60 = pointerExtend;\n_$pointerExtend_60[\"default\"] = ___default_60;\n\nvar _$hypot_55 = {};\n\"use strict\";\n\nObject.defineProperty(_$hypot_55, \"__esModule\", {\n value: true\n});\n_$hypot_55[\"default\"] = void 0;\n\nvar ___default_55 = function _default(x, y) {\n return Math.sqrt(x * x + y * y);\n};\n\n_$hypot_55[\"default\"] = ___default_55;\n\nvar _$pointerUtils_61 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerUtils_61, \"__esModule\", {\n value: true\n});\n_$pointerUtils_61[\"default\"] = void 0;\n\nvar ___browser_61 = ___interopRequireDefault_61(_$browser_48);\n\nvar ___domObjects_61 = ___interopRequireDefault_61(_$domObjects_50);\n\nvar domUtils = ___interopRequireWildcard_61(_$domUtils_51);\n\nvar _hypot = ___interopRequireDefault_61(_$hypot_55);\n\nvar __is_61 = ___interopRequireWildcard_61(_$is_57);\n\nvar _pointerExtend = ___interopRequireDefault_61(_$pointerExtend_60);\n\nfunction ___getRequireWildcardCache_61() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_61 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_61(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_61(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_61(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar pointerUtils = {\n copyCoords: function copyCoords(dest, src) {\n dest.page = dest.page || {};\n dest.page.x = src.page.x;\n dest.page.y = src.page.y;\n dest.client = dest.client || {};\n dest.client.x = src.client.x;\n dest.client.y = src.client.y;\n dest.timeStamp = src.timeStamp;\n },\n setCoordDeltas: function setCoordDeltas(targetObj, prev, cur) {\n targetObj.page.x = cur.page.x - prev.page.x;\n targetObj.page.y = cur.page.y - prev.page.y;\n targetObj.client.x = cur.client.x - prev.client.x;\n targetObj.client.y = cur.client.y - prev.client.y;\n targetObj.timeStamp = cur.timeStamp - prev.timeStamp;\n },\n setCoordVelocity: function setCoordVelocity(targetObj, delta) {\n var dt = Math.max(delta.timeStamp / 1000, 0.001);\n targetObj.page.x = delta.page.x / dt;\n targetObj.page.y = delta.page.y / dt;\n targetObj.client.x = delta.client.x / dt;\n targetObj.client.y = delta.client.y / dt;\n targetObj.timeStamp = dt;\n },\n isNativePointer: function isNativePointer(pointer) {\n return pointer instanceof ___domObjects_61[\"default\"].Event || pointer instanceof ___domObjects_61[\"default\"].Touch;\n },\n // Get specified X/Y coords for mouse or event.touches[0]\n getXY: function getXY(type, pointer, xy) {\n xy = xy || {};\n type = type || 'page';\n xy.x = pointer[type + 'X'];\n xy.y = pointer[type + 'Y'];\n return xy;\n },\n getPageXY: function getPageXY(pointer, page) {\n page = page || {\n x: 0,\n y: 0\n }; // Opera Mobile handles the viewport and scrolling oddly\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n pointerUtils.getXY('screen', pointer, page);\n page.x += window.scrollX;\n page.y += window.scrollY;\n } else {\n pointerUtils.getXY('page', pointer, page);\n }\n\n return page;\n },\n getClientXY: function getClientXY(pointer, client) {\n client = client || {};\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n // Opera Mobile handles the viewport and scrolling oddly\n pointerUtils.getXY('screen', pointer, client);\n } else {\n pointerUtils.getXY('client', pointer, client);\n }\n\n return client;\n },\n getPointerId: function getPointerId(pointer) {\n return __is_61.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier;\n },\n setCoords: function setCoords(targetObj, pointers, timeStamp) {\n var pointer = pointers.length > 1 ? pointerUtils.pointerAverage(pointers) : pointers[0];\n var tmpXY = {};\n pointerUtils.getPageXY(pointer, tmpXY);\n targetObj.page.x = tmpXY.x;\n targetObj.page.y = tmpXY.y;\n pointerUtils.getClientXY(pointer, tmpXY);\n targetObj.client.x = tmpXY.x;\n targetObj.client.y = tmpXY.y;\n targetObj.timeStamp = timeStamp;\n },\n pointerExtend: _pointerExtend[\"default\"],\n getTouchPair: function getTouchPair(event) {\n var touches = []; // array of touches is supplied\n\n if (__is_61.array(event)) {\n touches[0] = event[0];\n touches[1] = event[1];\n } // an event\n else {\n if (event.type === 'touchend') {\n if (event.touches.length === 1) {\n touches[0] = event.touches[0];\n touches[1] = event.changedTouches[0];\n } else if (event.touches.length === 0) {\n touches[0] = event.changedTouches[0];\n touches[1] = event.changedTouches[1];\n }\n } else {\n touches[0] = event.touches[0];\n touches[1] = event.touches[1];\n }\n }\n\n return touches;\n },\n pointerAverage: function pointerAverage(pointers) {\n var average = {\n pageX: 0,\n pageY: 0,\n clientX: 0,\n clientY: 0,\n screenX: 0,\n screenY: 0\n };\n\n for (var _i = 0; _i < pointers.length; _i++) {\n var _ref;\n\n _ref = pointers[_i];\n var pointer = _ref;\n\n for (var _prop in average) {\n average[_prop] += pointer[_prop];\n }\n }\n\n for (var prop in average) {\n average[prop] /= pointers.length;\n }\n\n return average;\n },\n touchBBox: function touchBBox(event) {\n if (!event.length && !(event.touches && event.touches.length > 1)) {\n return null;\n }\n\n var touches = pointerUtils.getTouchPair(event);\n var minX = Math.min(touches[0].pageX, touches[1].pageX);\n var minY = Math.min(touches[0].pageY, touches[1].pageY);\n var maxX = Math.max(touches[0].pageX, touches[1].pageX);\n var maxY = Math.max(touches[0].pageY, touches[1].pageY);\n return {\n x: minX,\n y: minY,\n left: minX,\n top: minY,\n right: maxX,\n bottom: maxY,\n width: maxX - minX,\n height: maxY - minY\n };\n },\n touchDistance: function touchDistance(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[0][sourceX] - touches[1][sourceX];\n var dy = touches[0][sourceY] - touches[1][sourceY];\n return (0, _hypot[\"default\"])(dx, dy);\n },\n touchAngle: function touchAngle(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[1][sourceX] - touches[0][sourceX];\n var dy = touches[1][sourceY] - touches[0][sourceY];\n var angle = 180 * Math.atan2(dy, dx) / Math.PI;\n return angle;\n },\n getPointerType: function getPointerType(pointer) {\n return __is_61.string(pointer.pointerType) ? pointer.pointerType : __is_61.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the \"pointer\" must\n // be either a MouseEvent, TouchEvent, or Touch object\n : /touch/.test(pointer.type) || pointer instanceof ___domObjects_61[\"default\"].Touch ? 'touch' : 'mouse';\n },\n // [ event.target, event.currentTarget ]\n getEventTargets: function getEventTargets(event) {\n var path = __is_61.func(event.composedPath) ? event.composedPath() : event.path;\n return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)];\n },\n newCoords: function newCoords() {\n return {\n page: {\n x: 0,\n y: 0\n },\n client: {\n x: 0,\n y: 0\n },\n timeStamp: 0\n };\n },\n coordsToEvent: function coordsToEvent(coords) {\n var event = {\n coords: coords,\n\n get page() {\n return this.coords.page;\n },\n\n get client() {\n return this.coords.client;\n },\n\n get timeStamp() {\n return this.coords.timeStamp;\n },\n\n get pageX() {\n return this.coords.page.x;\n },\n\n get pageY() {\n return this.coords.page.y;\n },\n\n get clientX() {\n return this.coords.client.x;\n },\n\n get clientY() {\n return this.coords.client.y;\n },\n\n get pointerId() {\n return this.coords.pointerId;\n },\n\n get target() {\n return this.coords.target;\n },\n\n get type() {\n return this.coords.type;\n },\n\n get pointerType() {\n return this.coords.pointerType;\n },\n\n get buttons() {\n return this.coords.buttons;\n }\n\n };\n return event;\n }\n};\nvar ___default_61 = pointerUtils;\n_$pointerUtils_61[\"default\"] = ___default_61;\n\nvar _$events_52 = {};\n\"use strict\";\n\nObject.defineProperty(_$events_52, \"__esModule\", {\n value: true\n});\n_$events_52[\"default\"] = _$events_52.FakeEvent = void 0;\n\n/* removed: var _$arr_47 = require(\"./arr\"); */;\n\nvar __domUtils_52 = ___interopRequireWildcard_52(_$domUtils_51);\n\nvar __is_52 = ___interopRequireWildcard_52(_$is_57);\n\nvar ___pointerExtend_52 = ___interopRequireDefault_52(_$pointerExtend_60);\n\nvar _pointerUtils = ___interopRequireDefault_52(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_52(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_52() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_52 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_52(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_52(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar elements = [];\nvar targets = [];\nvar delegatedEvents = {};\nvar documents = [];\n\nfunction add(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target) {\n target = {\n events: {},\n typeCount: 0\n };\n elementIndex = elements.push(element) - 1;\n targets.push(target);\n }\n\n if (!target.events[type]) {\n target.events[type] = [];\n target.typeCount++;\n }\n\n if (!(0, _$arr_47.contains)(target.events[type], listener)) {\n element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].push(listener);\n }\n}\n\nfunction __remove_52(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target || !target.events) {\n return;\n }\n\n if (type === 'all') {\n for (type in target.events) {\n if (target.events.hasOwnProperty(type)) {\n __remove_52(element, type, 'all');\n }\n }\n\n return;\n }\n\n if (target.events[type]) {\n var len = target.events[type].length;\n\n if (listener === 'all') {\n for (var i = 0; i < len; i++) {\n __remove_52(element, type, target.events[type][i], options);\n }\n\n return;\n } else {\n for (var _i = 0; _i < len; _i++) {\n if (target.events[type][_i] === listener) {\n element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].splice(_i, 1);\n break;\n }\n }\n }\n\n if (target.events[type] && target.events[type].length === 0) {\n target.events[type] = null;\n target.typeCount--;\n }\n }\n\n if (!target.typeCount) {\n targets.splice(elementIndex, 1);\n elements.splice(elementIndex, 1);\n }\n}\n\nfunction addDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n\n if (!delegatedEvents[type]) {\n delegatedEvents[type] = {\n contexts: [],\n listeners: [],\n selectors: []\n }; // add delegate listener functions\n\n for (var _i2 = 0; _i2 < documents.length; _i2++) {\n var _ref;\n\n _ref = documents[_i2];\n var doc = _ref;\n add(doc, type, delegateListener);\n add(doc, type, delegateUseCapture, true);\n }\n }\n\n var delegated = delegatedEvents[type];\n var index;\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n break;\n }\n }\n\n if (index === -1) {\n index = delegated.selectors.length;\n delegated.selectors.push(selector);\n delegated.contexts.push(context);\n delegated.listeners.push([]);\n } // keep listener and capture and passive flags\n\n\n delegated.listeners[index].push([listener, !!options.capture, options.passive]);\n}\n\nfunction removeDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var delegated = delegatedEvents[type];\n var matchFound = false;\n var index;\n\n if (!delegated) {\n return;\n } // count from last index of delegated to 0\n\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n // look for matching selector and context Node\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive]\n\n for (var i = listeners.length - 1; i >= 0; i--) {\n var _listeners$i = _slicedToArray(listeners[i], 3),\n fn = _listeners$i[0],\n capture = _listeners$i[1],\n passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match\n\n\n if (fn === listener && capture === !!options.capture && passive === options.passive) {\n // remove the listener from the array of listeners\n listeners.splice(i, 1); // if all listeners for this interactable have been removed\n // remove the interactable from the delegated arrays\n\n if (!listeners.length) {\n delegated.selectors.splice(index, 1);\n delegated.contexts.splice(index, 1);\n delegated.listeners.splice(index, 1); // remove delegate function from context\n\n __remove_52(context, type, delegateListener);\n __remove_52(context, type, delegateUseCapture, true); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegatedEvents[type] = null;\n }\n } // only remove one listener\n\n\n matchFound = true;\n break;\n }\n }\n\n if (matchFound) {\n break;\n }\n }\n }\n} // bound to the interactable context when a DOM event\n// listener is added to a selector interactable\n\n\nfunction delegateListener(event, optionalArg) {\n var options = getOptions(optionalArg);\n var fakeEvent = new FakeEvent(event);\n var delegated = delegatedEvents[event.type];\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1),\n eventTarget = _pointerUtils$getEven2[0];\n\n var element = eventTarget; // climb up document tree looking for selector matches\n\n while (__is_52.element(element)) {\n for (var i = 0; i < delegated.selectors.length; i++) {\n var selector = delegated.selectors[i];\n var context = delegated.contexts[i];\n\n if (__domUtils_52.matchesSelector(element, selector) && __domUtils_52.nodeContains(context, eventTarget) && __domUtils_52.nodeContains(context, element)) {\n var listeners = delegated.listeners[i];\n fakeEvent.currentTarget = element;\n\n for (var _i3 = 0; _i3 < listeners.length; _i3++) {\n var _ref2;\n\n _ref2 = listeners[_i3];\n\n var _ref3 = _ref2,\n _ref4 = _slicedToArray(_ref3, 3),\n fn = _ref4[0],\n capture = _ref4[1],\n passive = _ref4[2];\n\n if (capture === !!options.capture && passive === options.passive) {\n fn(fakeEvent);\n }\n }\n }\n }\n\n element = __domUtils_52.parentNode(element);\n }\n}\n\nfunction delegateUseCapture(event) {\n return delegateListener.call(this, event, true);\n}\n\nfunction getOptions(param) {\n return __is_52.object(param) ? param : {\n capture: param\n };\n}\n\nvar FakeEvent =\n/*#__PURE__*/\nfunction () {\n function FakeEvent(originalEvent) {\n _classCallCheck(this, FakeEvent);\n\n this.originalEvent = originalEvent; // duplicate the event so that currentTarget can be changed\n\n (0, ___pointerExtend_52[\"default\"])(this, originalEvent);\n }\n\n _createClass(FakeEvent, [{\n key: \"preventOriginalDefault\",\n value: function preventOriginalDefault() {\n this.originalEvent.preventDefault();\n }\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.originalEvent.stopPropagation();\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.originalEvent.stopImmediatePropagation();\n }\n }]);\n\n return FakeEvent;\n}();\n\n_$events_52.FakeEvent = FakeEvent;\nvar events = {\n add: add,\n remove: __remove_52,\n addDelegate: addDelegate,\n removeDelegate: removeDelegate,\n delegateListener: delegateListener,\n delegateUseCapture: delegateUseCapture,\n delegatedEvents: delegatedEvents,\n documents: documents,\n supportsOptions: false,\n supportsPassive: false,\n _elements: elements,\n _targets: targets,\n init: function init(window) {\n window.document.createElement('div').addEventListener('test', null, {\n get capture() {\n return events.supportsOptions = true;\n },\n\n get passive() {\n return events.supportsPassive = true;\n }\n\n });\n }\n};\nvar ___default_52 = events;\n_$events_52[\"default\"] = ___default_52;\n\nvar _$extend_53 = {};\n\"use strict\";\n\nObject.defineProperty(_$extend_53, \"__esModule\", {\n value: true\n});\n_$extend_53[\"default\"] = extend;\n\nfunction extend(dest, source) {\n for (var prop in source) {\n dest[prop] = source[prop];\n }\n\n return dest;\n}\n\nvar _$rect_63 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_63, \"__esModule\", {\n value: true\n});\n_$rect_63.getStringOptionResult = getStringOptionResult;\n_$rect_63.resolveRectLike = resolveRectLike;\n_$rect_63.rectToXY = rectToXY;\n_$rect_63.xywhToTlbr = xywhToTlbr;\n_$rect_63.tlbrToXywh = tlbrToXywh;\n_$rect_63[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"./domUtils\"); */;\n\nvar _extend = ___interopRequireDefault_63(_$extend_53);\n\nvar __is_63 = ___interopRequireWildcard_63(_$is_57);\n\nfunction ___getRequireWildcardCache_63() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_63 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_63(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_63(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_63(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction getStringOptionResult(value, target, element) {\n if (value === 'parent') {\n return (0, _$domUtils_51.parentNode)(element);\n }\n\n if (value === 'self') {\n return target.getRect(element);\n }\n\n return (0, _$domUtils_51.closest)(element, value);\n}\n\nfunction resolveRectLike(value, target, element, functionArgs) {\n if (__is_63.string(value)) {\n value = getStringOptionResult(value, target, element);\n } else if (__is_63.func(value)) {\n value = value.apply(void 0, _toConsumableArray(functionArgs));\n }\n\n if (__is_63.element(value)) {\n value = (0, _$domUtils_51.getElementRect)(value);\n }\n\n return value;\n}\n\nfunction rectToXY(rect) {\n return rect && {\n x: 'x' in rect ? rect.x : rect.left,\n y: 'y' in rect ? rect.y : rect.top\n };\n}\n\nfunction xywhToTlbr(rect) {\n if (rect && !('left' in rect && 'top' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.left = rect.x || 0;\n rect.top = rect.y || 0;\n rect.right = rect.right || rect.left + rect.width;\n rect.bottom = rect.bottom || rect.top + rect.height;\n }\n\n return rect;\n}\n\nfunction tlbrToXywh(rect) {\n if (rect && !('x' in rect && 'y' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.x = rect.left || 0;\n rect.y = rect.top || 0;\n rect.width = rect.width || rect.right - rect.x;\n rect.height = rect.height || rect.bottom - rect.y;\n }\n\n return rect;\n}\n\nvar ___default_63 = {\n getStringOptionResult: getStringOptionResult,\n resolveRectLike: resolveRectLike,\n rectToXY: rectToXY,\n xywhToTlbr: xywhToTlbr,\n tlbrToXywh: tlbrToXywh\n};\n_$rect_63[\"default\"] = ___default_63;\n\nvar _$getOriginXY_54 = {};\n\"use strict\";\n\nObject.defineProperty(_$getOriginXY_54, \"__esModule\", {\n value: true\n});\n_$getOriginXY_54[\"default\"] = ___default_54;\n\n/* removed: var _$rect_63 = require(\"./rect\"); */;\n\nfunction ___default_54(target, element, action) {\n var actionOptions = target.options[action];\n var actionOrigin = actionOptions && actionOptions.origin;\n var origin = actionOrigin || target.options.origin;\n var originRect = (0, _$rect_63.resolveRectLike)(origin, target, element, [target && element]);\n return (0, _$rect_63.rectToXY)(originRect) || {\n x: 0,\n y: 0\n };\n}\n\nvar _$normalizeListeners_59 = {};\n\"use strict\";\n\nObject.defineProperty(_$normalizeListeners_59, \"__esModule\", {\n value: true\n});\n_$normalizeListeners_59[\"default\"] = normalize;\n\nvar ___extend_59 = ___interopRequireDefault_59(_$extend_53);\n\nvar __is_59 = ___interopRequireWildcard_59(_$is_57);\n\nfunction ___getRequireWildcardCache_59() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_59 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_59(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_59(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_59(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction normalize(type, listeners, result) {\n result = result || {};\n\n if (__is_59.string(type) && type.search(' ') !== -1) {\n type = split(type);\n }\n\n if (__is_59.array(type)) {\n return type.reduce(function (acc, t) {\n return (0, ___extend_59[\"default\"])(acc, normalize(t, listeners, result));\n }, result);\n } // ({ type: fn }) -> ('', { type: fn })\n\n\n if (__is_59.object(type)) {\n listeners = type;\n type = '';\n }\n\n if (__is_59.func(listeners)) {\n result[type] = result[type] || [];\n result[type].push(listeners);\n } else if (__is_59.array(listeners)) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var l = _ref;\n normalize(type, l, result);\n }\n } else if (__is_59.object(listeners)) {\n for (var prefix in listeners) {\n var combinedTypes = split(prefix).map(function (p) {\n return \"\".concat(type).concat(p);\n });\n normalize(combinedTypes, listeners[prefix], result);\n }\n }\n\n return result;\n}\n\nfunction split(type) {\n return type.trim().split(/ +/);\n}\n\nvar _$raf_62 = {};\n\"use strict\";\n\nObject.defineProperty(_$raf_62, \"__esModule\", {\n value: true\n});\n_$raf_62[\"default\"] = void 0;\nvar lastTime = 0;\n\nvar _request;\n\nvar _cancel;\n\nfunction __init_62(window) {\n _request = window.requestAnimationFrame;\n _cancel = window.cancelAnimationFrame;\n\n if (!_request) {\n var vendors = ['ms', 'moz', 'webkit', 'o'];\n\n for (var _i = 0; _i < vendors.length; _i++) {\n var vendor = vendors[_i];\n _request = window[\"\".concat(vendor, \"RequestAnimationFrame\")];\n _cancel = window[\"\".concat(vendor, \"CancelAnimationFrame\")] || window[\"\".concat(vendor, \"CancelRequestAnimationFrame\")];\n }\n }\n\n if (!_request) {\n _request = function request(callback) {\n var currTime = Date.now();\n var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal\n\n var token = setTimeout(function () {\n callback(currTime + timeToCall);\n }, timeToCall);\n lastTime = currTime + timeToCall;\n return token;\n };\n\n _cancel = function cancel(token) {\n return clearTimeout(token);\n };\n }\n}\n\nvar ___default_62 = {\n request: function request(callback) {\n return _request(callback);\n },\n cancel: function cancel(token) {\n return _cancel(token);\n },\n init: __init_62\n};\n_$raf_62[\"default\"] = ___default_62;\n\nvar _$Signals_46 = {};\n\"use strict\";\n\nObject.defineProperty(_$Signals_46, \"__esModule\", {\n value: true\n});\n_$Signals_46[\"default\"] = void 0;\n\nfunction ___classCallCheck_46(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_46(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_46(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_46(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_46(Constructor, staticProps); return Constructor; }\n\nvar Signals =\n/*#__PURE__*/\nfunction () {\n function Signals() {\n ___classCallCheck_46(this, Signals);\n\n this.listeners = {};\n }\n\n ___createClass_46(Signals, [{\n key: \"on\",\n value: function on(name, listener) {\n if (!this.listeners[name]) {\n this.listeners[name] = [listener];\n return;\n }\n\n this.listeners[name].push(listener);\n }\n }, {\n key: \"off\",\n value: function off(name, listener) {\n if (!this.listeners[name]) {\n return;\n }\n\n var index = this.listeners[name].indexOf(listener);\n\n if (index !== -1) {\n this.listeners[name].splice(index, 1);\n }\n }\n }, {\n key: \"fire\",\n value: function fire(name, arg) {\n var targetListeners = this.listeners[name];\n\n if (!targetListeners) {\n return;\n }\n\n for (var _i = 0; _i < targetListeners.length; _i++) {\n var _ref;\n\n _ref = targetListeners[_i];\n var listener = _ref;\n\n if (listener(arg, name) === false) {\n return false;\n }\n }\n }\n }]);\n\n return Signals;\n}();\n\nvar ___default_46 = Signals;\n_$Signals_46[\"default\"] = ___default_46;\n\nvar _$utils_56 = {};\n\"use strict\";\n\nObject.defineProperty(_$utils_56, \"__esModule\", {\n value: true\n});\n_$utils_56.warnOnce = warnOnce;\n_$utils_56._getQBezierValue = _getQBezierValue;\n_$utils_56.getQuadraticCurvePoint = getQuadraticCurvePoint;\n_$utils_56.easeOutQuad = easeOutQuad;\n_$utils_56.copyAction = copyAction;\nObject.defineProperty(_$utils_56, \"win\", {\n enumerable: true,\n get: function get() {\n return ___window_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"browser\", {\n enumerable: true,\n get: function get() {\n return ___browser_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"clone\", {\n enumerable: true,\n get: function get() {\n return _clone[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"events\", {\n enumerable: true,\n get: function get() {\n return _events[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"extend\", {\n enumerable: true,\n get: function get() {\n return ___extend_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"getOriginXY\", {\n enumerable: true,\n get: function get() {\n return _getOriginXY[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"hypot\", {\n enumerable: true,\n get: function get() {\n return ___hypot_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"normalizeListeners\", {\n enumerable: true,\n get: function get() {\n return _normalizeListeners[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"pointer\", {\n enumerable: true,\n get: function get() {\n return ___pointerUtils_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"raf\", {\n enumerable: true,\n get: function get() {\n return _raf[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"rect\", {\n enumerable: true,\n get: function get() {\n return ___rect_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"Signals\", {\n enumerable: true,\n get: function get() {\n return _Signals[\"default\"];\n }\n});\n_$utils_56.is = _$utils_56.dom = _$utils_56.arr = void 0;\n\nvar __arr_56 = ___interopRequireWildcard_56(_$arr_47);\n\n_$utils_56.arr = __arr_56;\n\nvar dom = ___interopRequireWildcard_56(_$domUtils_51);\n\n_$utils_56.dom = dom;\n\nvar __is_56 = ___interopRequireWildcard_56(_$is_57);\n\n_$utils_56.is = __is_56;\n\nvar ___window_56 = ___interopRequireDefault_56(_$window_66);\n\nvar ___browser_56 = ___interopRequireDefault_56(_$browser_48);\n\nvar _clone = ___interopRequireDefault_56(_$clone_49);\n\nvar _events = ___interopRequireDefault_56(_$events_52);\n\nvar ___extend_56 = ___interopRequireDefault_56(_$extend_53);\n\nvar _getOriginXY = ___interopRequireDefault_56(_$getOriginXY_54);\n\nvar ___hypot_56 = ___interopRequireDefault_56(_$hypot_55);\n\nvar _normalizeListeners = ___interopRequireDefault_56(_$normalizeListeners_59);\n\nvar ___pointerUtils_56 = ___interopRequireDefault_56(_$pointerUtils_61);\n\nvar _raf = ___interopRequireDefault_56(_$raf_62);\n\nvar ___rect_56 = ___interopRequireDefault_56(_$rect_63);\n\nvar _Signals = ___interopRequireDefault_56(_$Signals_46);\n\nfunction ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_56() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_56 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_56(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_56(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction warnOnce(method, message) {\n var warned = false; // eslint-disable-next-line no-shadow\n\n return function () {\n if (!warned) {\n ___window_56[\"default\"].window.console.warn(message);\n\n warned = true;\n }\n\n return method.apply(this, arguments);\n };\n} // http://stackoverflow.com/a/5634528/2280888\n\n\nfunction _getQBezierValue(t, p1, p2, p3) {\n var iT = 1 - t;\n return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3;\n}\n\nfunction getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) {\n return {\n x: _getQBezierValue(position, startX, cpX, endX),\n y: _getQBezierValue(position, startY, cpY, endY)\n };\n} // http://gizma.com/easing/\n\n\nfunction easeOutQuad(t, b, c, d) {\n t /= d;\n return -c * t * (t - 2) + b;\n}\n\nfunction copyAction(dest, src) {\n dest.name = src.name;\n dest.axis = src.axis;\n dest.edges = src.edges;\n return dest;\n}\n\nvar _$defaultOptions_20 = {};\n\"use strict\";\n\nObject.defineProperty(_$defaultOptions_20, \"__esModule\", {\n value: true\n});\n_$defaultOptions_20[\"default\"] = _$defaultOptions_20.defaults = void 0;\n// tslint:disable no-empty-interface\nvar defaults = {\n base: {\n preventDefault: 'auto',\n deltaSource: 'page'\n },\n perAction: {\n enabled: false,\n origin: {\n x: 0,\n y: 0\n }\n },\n actions: {}\n};\n_$defaultOptions_20.defaults = defaults;\nvar ___default_20 = defaults;\n_$defaultOptions_20[\"default\"] = ___default_20;\n\nvar _$Eventable_14 = {};\n\"use strict\";\n\nObject.defineProperty(_$Eventable_14, \"__esModule\", {\n value: true\n});\n_$Eventable_14[\"default\"] = void 0;\n\nvar __arr_14 = ___interopRequireWildcard_14(_$arr_47);\n\nvar ___extend_14 = ___interopRequireDefault_14(_$extend_53);\n\nvar ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_59);\n\nfunction ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_14() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; }\n\nfunction fireUntilImmediateStopped(event, listeners) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var listener = _ref;\n\n if (event.immediatePropagationStopped) {\n break;\n }\n\n listener(event);\n }\n}\n\nvar Eventable =\n/*#__PURE__*/\nfunction () {\n function Eventable(options) {\n ___classCallCheck_14(this, Eventable);\n\n this.types = {};\n this.propagationStopped = false;\n this.immediatePropagationStopped = false;\n this.options = (0, ___extend_14[\"default\"])({}, options || {});\n }\n\n ___createClass_14(Eventable, [{\n key: \"fire\",\n value: function fire(event) {\n var listeners;\n var global = this.global; // Interactable#on() listeners\n // tslint:disable no-conditional-assignment\n\n if (listeners = this.types[event.type]) {\n fireUntilImmediateStopped(event, listeners);\n } // interact.on() listeners\n\n\n if (!event.propagationStopped && global && (listeners = global[event.type])) {\n fireUntilImmediateStopped(event, listeners);\n }\n }\n }, {\n key: \"on\",\n value: function on(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]);\n }\n }\n }, {\n key: \"off\",\n value: function off(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n var eventList = this.types[type];\n\n if (!eventList || !eventList.length) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var subListener = _ref2;\n var index = eventList.indexOf(subListener);\n\n if (index !== -1) {\n eventList.splice(index, 1);\n }\n }\n }\n }\n }, {\n key: \"getRect\",\n value: function getRect(_element) {\n return null;\n }\n }]);\n\n return Eventable;\n}();\n\nvar ___default_14 = Eventable;\n_$Eventable_14[\"default\"] = ___default_14;\n\nvar _$Interactable_16 = {};\n\"use strict\";\n\nObject.defineProperty(_$Interactable_16, \"__esModule\", {\n value: true\n});\n_$Interactable_16[\"default\"] = _$Interactable_16.Interactable = void 0;\n\nvar __arr_16 = ___interopRequireWildcard_16(_$arr_47);\n\nvar ___browser_16 = ___interopRequireDefault_16(_$browser_48);\n\nvar ___clone_16 = ___interopRequireDefault_16(_$clone_49);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_16 = ___interopRequireDefault_16(_$events_52);\n\nvar ___extend_16 = ___interopRequireDefault_16(_$extend_53);\n\nvar __is_16 = ___interopRequireWildcard_16(_$is_57);\n\nvar ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_59);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nvar _Eventable = ___interopRequireDefault_16(_$Eventable_14);\n\nfunction ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_16() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; }\n\n/** */\nvar Interactable =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interactable(target, options, defaultContext) {\n ___classCallCheck_16(this, Interactable);\n\n this.events = new _Eventable[\"default\"]();\n this._actions = options.actions;\n this.target = target;\n this._context = options.context || defaultContext;\n this._win = (0, _$window_66.getWindow)((0, _$domUtils_51.trySelector)(target) ? this._context : target);\n this._doc = this._win.document;\n this.set(options);\n }\n\n ___createClass_16(Interactable, [{\n key: \"setOnEvents\",\n value: function setOnEvents(actionName, phases) {\n if (__is_16.func(phases.onstart)) {\n this.on(\"\".concat(actionName, \"start\"), phases.onstart);\n }\n\n if (__is_16.func(phases.onmove)) {\n this.on(\"\".concat(actionName, \"move\"), phases.onmove);\n }\n\n if (__is_16.func(phases.onend)) {\n this.on(\"\".concat(actionName, \"end\"), phases.onend);\n }\n\n if (__is_16.func(phases.oninertiastart)) {\n this.on(\"\".concat(actionName, \"inertiastart\"), phases.oninertiastart);\n }\n\n return this;\n }\n }, {\n key: \"updatePerActionListeners\",\n value: function updatePerActionListeners(actionName, prev, cur) {\n if (__is_16.array(prev) || __is_16.object(prev)) {\n this.off(actionName, prev);\n }\n\n if (__is_16.array(cur) || __is_16.object(cur)) {\n this.on(actionName, cur);\n }\n }\n }, {\n key: \"setPerAction\",\n value: function setPerAction(actionName, options) {\n var defaults = this._defaults; // for all the default per-action options\n\n for (var optionName in options) {\n var actionOptions = this.options[actionName];\n var optionValue = options[optionName];\n var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones\n\n if (optionName === 'listeners') {\n this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue);\n } // if the option value is an array\n\n\n if (isArray) {\n actionOptions[optionName] = __arr_16.from(optionValue);\n } // if the option value is an object\n else if (!isArray && __is_16.plainObject(optionValue)) {\n // copy the object\n actionOptions[optionName] = (0, ___extend_16[\"default\"])(actionOptions[optionName] || {}, (0, ___clone_16[\"default\"])(optionValue)); // set anabled field to true if it exists in the defaults\n\n if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) {\n actionOptions[optionName].enabled = optionValue.enabled !== false;\n }\n } // if the option value is a boolean and the default is an object\n else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) {\n actionOptions[optionName].enabled = optionValue;\n } // if it's anything else, do a plain assignment\n else {\n actionOptions[optionName] = optionValue;\n }\n }\n }\n /**\n * The default function to get an Interactables bounding rect. Can be\n * overridden using {@link Interactable.rectChecker}.\n *\n * @param {Element} [element] The element to measure.\n * @return {object} The object's bounding rectangle.\n */\n\n }, {\n key: \"getRect\",\n value: function getRect(element) {\n element = element || (__is_16.element(this.target) ? this.target : null);\n\n if (__is_16.string(this.target)) {\n element = element || this._context.querySelector(this.target);\n }\n\n return (0, _$domUtils_51.getElementRect)(element);\n }\n /**\n * Returns or sets the function used to calculate the interactable's\n * element's rectangle\n *\n * @param {function} [checker] A function which returns this Interactable's\n * bounding rectangle. See {@link Interactable.getRect}\n * @return {function | object} The checker function or this Interactable\n */\n\n }, {\n key: \"rectChecker\",\n value: function rectChecker(checker) {\n if (__is_16.func(checker)) {\n this.getRect = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.getRect;\n return this;\n }\n\n return this.getRect;\n }\n }, {\n key: \"_backCompatOption\",\n value: function _backCompatOption(optionName, newValue) {\n if ((0, _$domUtils_51.trySelector)(newValue) || __is_16.object(newValue)) {\n this.options[optionName] = newValue;\n\n for (var _i = 0; _i < this._actions.names.length; _i++) {\n var _ref;\n\n _ref = this._actions.names[_i];\n var action = _ref;\n this.options[action][optionName] = newValue;\n }\n\n return this;\n }\n\n return this.options[optionName];\n }\n /**\n * Gets or sets the origin of the Interactable's element. The x and y\n * of the origin will be subtracted from action event coordinates.\n *\n * @param {Element | object | string} [origin] An HTML or SVG Element whose\n * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\n * or any CSS selector\n *\n * @return {object} The current origin or this Interactable\n */\n\n }, {\n key: \"origin\",\n value: function origin(newValue) {\n return this._backCompatOption('origin', newValue);\n }\n /**\n * Returns or sets the mouse coordinate types used to calculate the\n * movement of the pointer.\n *\n * @param {string} [newValue] Use 'client' if you will be scrolling while\n * interacting; Use 'page' if you want autoScroll to work\n * @return {string | object} The current deltaSource or this Interactable\n */\n\n }, {\n key: \"deltaSource\",\n value: function deltaSource(newValue) {\n if (newValue === 'page' || newValue === 'client') {\n this.options.deltaSource = newValue;\n return this;\n }\n\n return this.options.deltaSource;\n }\n /**\n * Gets the selector context Node of the Interactable. The default is\n * `window.document`.\n *\n * @return {Node} The context Node of this Interactable\n */\n\n }, {\n key: \"context\",\n value: function context() {\n return this._context;\n }\n }, {\n key: \"inContext\",\n value: function inContext(element) {\n return this._context === element.ownerDocument || (0, _$domUtils_51.nodeContains)(this._context, element);\n }\n }, {\n key: \"testIgnoreAllow\",\n value: function testIgnoreAllow(options, targetNode, eventTarget) {\n return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget);\n }\n }, {\n key: \"testAllow\",\n value: function testAllow(allowFrom, targetNode, element) {\n if (!allowFrom) {\n return true;\n }\n\n if (!__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(allowFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, allowFrom, targetNode);\n } else if (__is_16.element(allowFrom)) {\n return (0, _$domUtils_51.nodeContains)(allowFrom, element);\n }\n\n return false;\n }\n }, {\n key: \"testIgnore\",\n value: function testIgnore(ignoreFrom, targetNode, element) {\n if (!ignoreFrom || !__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(ignoreFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, ignoreFrom, targetNode);\n } else if (__is_16.element(ignoreFrom)) {\n return (0, _$domUtils_51.nodeContains)(ignoreFrom, element);\n }\n\n return false;\n }\n /**\n * Calls listeners for the given InteractEvent type bound globally\n * and directly to this Interactable\n *\n * @param {InteractEvent} iEvent The InteractEvent object to be fired on this\n * Interactable\n * @return {Interactable} this Interactable\n */\n\n }, {\n key: \"fire\",\n value: function fire(iEvent) {\n this.events.fire(iEvent);\n return this;\n }\n }, {\n key: \"_onOff\",\n value: function _onOff(method, typeArg, listenerArg, options) {\n if (__is_16.object(typeArg) && !__is_16.array(typeArg)) {\n options = listenerArg;\n listenerArg = null;\n }\n\n var addRemove = method === 'on' ? 'add' : 'remove';\n var listeners = (0, ___normalizeListeners_16[\"default\"])(typeArg, listenerArg);\n\n for (var type in listeners) {\n if (type === 'wheel') {\n type = ___browser_16[\"default\"].wheelEvent;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var listener = _ref2;\n\n // if it is an action event type\n if (__arr_16.contains(this._actions.eventTypes, type)) {\n this.events[method](type, listener);\n } // delegated event\n else if (__is_16.string(this.target)) {\n ___events_16[\"default\"][\"\".concat(addRemove, \"Delegate\")](this.target, this._context, type, listener, options);\n } // remove listener from this Interactable's element\n else {\n ___events_16[\"default\"][addRemove](this.target, type, listener, options);\n }\n }\n }\n\n return this;\n }\n /**\n * Binds a listener for an InteractEvent, pointerEvent or DOM event.\n *\n * @param {string | array | object} types The types of events to listen\n * for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * addEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"on\",\n value: function on(types, listener, options) {\n return this._onOff('on', types, listener, options);\n }\n /**\n * Removes an InteractEvent, pointerEvent or DOM event listener.\n *\n * @param {string | array | object} types The types of events that were\n * listened for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * removeEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"off\",\n value: function off(types, listener, options) {\n return this._onOff('off', types, listener, options);\n }\n /**\n * Reset the options of this Interactable\n *\n * @param {object} options The new settings to apply\n * @return {object} This Interactable\n */\n\n }, {\n key: \"set\",\n value: function set(options) {\n var defaults = this._defaults;\n\n if (!__is_16.object(options)) {\n options = {};\n }\n\n this.options = (0, ___clone_16[\"default\"])(defaults.base);\n\n for (var actionName in this._actions.methodDict) {\n var methodName = this._actions.methodDict[actionName];\n this.options[actionName] = {};\n this.setPerAction(actionName, (0, ___extend_16[\"default\"])((0, ___extend_16[\"default\"])({}, defaults.perAction), defaults.actions[actionName]));\n this[methodName](options[actionName]);\n }\n\n for (var setting in options) {\n if (__is_16.func(this[setting])) {\n this[setting](options[setting]);\n }\n }\n\n return this;\n }\n /**\n * Remove this interactable from the list of interactables and remove it's\n * action capabilities and event listeners\n *\n * @return {interact}\n */\n\n }, {\n key: \"unset\",\n value: function unset() {\n ___events_16[\"default\"].remove(this.target, 'all');\n\n if (__is_16.string(this.target)) {\n // remove delegated events\n for (var type in ___events_16[\"default\"].delegatedEvents) {\n var delegated = ___events_16[\"default\"].delegatedEvents[type];\n\n if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) {\n delegated.selectors.splice(0, 1);\n delegated.contexts.splice(0, 1);\n delegated.listeners.splice(0, 1); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegated[type] = null;\n }\n }\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateListener);\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateUseCapture, true);\n }\n } else {\n ___events_16[\"default\"].remove(this.target, 'all');\n }\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return {\n base: {},\n perAction: {},\n actions: {}\n };\n }\n }]);\n\n return Interactable;\n}();\n\n_$Interactable_16.Interactable = Interactable;\nvar ___default_16 = Interactable;\n_$Interactable_16[\"default\"] = ___default_16;\n\nvar _$InteractableSet_17 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableSet_17, \"__esModule\", {\n value: true\n});\n_$InteractableSet_17[\"default\"] = void 0;\n\nvar __arr_17 = ___interopRequireWildcard_17(_$arr_47);\n\nvar __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_51);\n\nvar ___extend_17 = ___interopRequireDefault_17(_$extend_53);\n\nvar __is_17 = ___interopRequireWildcard_17(_$is_57);\n\nvar ___Signals_17 = ___interopRequireDefault_17(_$Signals_46);\n\nfunction ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_17() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; }\n\nvar InteractableSet =\n/*#__PURE__*/\nfunction () {\n function InteractableSet(scope) {\n var _this = this;\n\n ___classCallCheck_17(this, InteractableSet);\n\n this.scope = scope;\n this.signals = new ___Signals_17[\"default\"](); // all set interactables\n\n this.list = [];\n this.selectorMap = {};\n this.signals.on('unset', function (_ref) {\n var interactable = _ref.interactable;\n var target = interactable.target,\n context = interactable._context;\n var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id];\n var targetIndex = targetMappings.findIndex(function (m) {\n return m.context === context;\n });\n\n if (targetMappings[targetIndex]) {\n // Destroying mappingInfo's context and interactable\n targetMappings[targetIndex].context = null;\n targetMappings[targetIndex].interactable = null;\n }\n\n targetMappings.splice(targetIndex, 1);\n });\n }\n\n ___createClass_17(InteractableSet, [{\n key: \"new\",\n value: function _new(target, options) {\n options = (0, ___extend_17[\"default\"])(options || {}, {\n actions: this.scope.actions\n });\n var interactable = new this.scope.Interactable(target, options, this.scope.document);\n var mappingInfo = {\n context: interactable._context,\n interactable: interactable\n };\n this.scope.addDocument(interactable._doc);\n this.list.push(interactable);\n\n if (__is_17.string(target)) {\n if (!this.selectorMap[target]) {\n this.selectorMap[target] = [];\n }\n\n this.selectorMap[target].push(mappingInfo);\n } else {\n if (!interactable.target[this.scope.id]) {\n Object.defineProperty(target, this.scope.id, {\n value: [],\n configurable: true\n });\n }\n\n target[this.scope.id].push(mappingInfo);\n }\n\n this.signals.fire('new', {\n target: target,\n options: options,\n interactable: interactable,\n win: this.scope._win\n });\n return interactable;\n }\n }, {\n key: \"get\",\n value: function get(target, options) {\n var context = options && options.context || this.scope.document;\n var isSelector = __is_17.string(target);\n var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id];\n\n if (!targetMappings) {\n return null;\n }\n\n var found = __arr_17.find(targetMappings, function (m) {\n return m.context === context && (isSelector || m.interactable.inContext(target));\n });\n return found && found.interactable;\n }\n }, {\n key: \"forEachMatch\",\n value: function forEachMatch(node, callback) {\n for (var _i = 0; _i < this.list.length; _i++) {\n var _ref2;\n\n _ref2 = this.list[_i];\n var interactable = _ref2;\n var ret = void 0;\n\n if ((__is_17.string(interactable.target) // target is a selector and the element matches\n ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element\n node === interactable.target) && // the element is in context\n interactable.inContext(node)) {\n ret = callback(interactable);\n }\n\n if (ret !== undefined) {\n return ret;\n }\n }\n }\n }]);\n\n return InteractableSet;\n}();\n\n_$InteractableSet_17[\"default\"] = InteractableSet;\n\nvar _$BaseEvent_13 = {};\n\"use strict\";\n\nObject.defineProperty(_$BaseEvent_13, \"__esModule\", {\n value: true\n});\n_$BaseEvent_13[\"default\"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0;\n\nfunction ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; }\n\nvar EventPhase;\n_$BaseEvent_13.EventPhase = EventPhase;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {}));\n\nvar BaseEvent =\n/*#__PURE__*/\nfunction () {\n function BaseEvent(interaction) {\n ___classCallCheck_13(this, BaseEvent);\n\n this.immediatePropagationStopped = false;\n this.propagationStopped = false;\n this._interaction = interaction;\n }\n\n ___createClass_13(BaseEvent, [{\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }, {\n key: \"interaction\",\n get: function get() {\n return this._interaction._proxy;\n }\n }]);\n\n return BaseEvent;\n}();\n\n_$BaseEvent_13.BaseEvent = BaseEvent;\nvar ___default_13 = BaseEvent;\n_$BaseEvent_13[\"default\"] = ___default_13;\n\nvar _$InteractEvent_15 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractEvent_15, \"__esModule\", {\n value: true\n});\n_$InteractEvent_15[\"default\"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0;\n\nvar ___extend_15 = ___interopRequireDefault_15(_$extend_53);\n\nvar ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_54);\n\nvar ___hypot_15 = ___interopRequireDefault_15(_$hypot_55);\n\nvar _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13);\n\nvar _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20);\n\nfunction ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_15(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_15(obj); }\n\nfunction ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar __EventPhase_15;\n_$InteractEvent_15.EventPhase = __EventPhase_15;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {}));\n\nvar InteractEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n _inherits(InteractEvent, _BaseEvent);\n\n /** */\n function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) {\n var _this;\n\n ___classCallCheck_15(this, InteractEvent);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction));\n element = element || interaction.element;\n var target = interaction.interactable;\n var deltaSource = (target && target.options || _defaultOptions[\"default\"]).deltaSource;\n var origin = (0, ___getOriginXY_15[\"default\"])(target, element, actionName);\n var starting = phase === 'start';\n var ending = phase === 'end';\n var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent;\n var coords = starting ? interaction.coords.start : ending ? {\n page: prevEvent.page,\n client: prevEvent.client,\n timeStamp: interaction.coords.cur.timeStamp\n } : interaction.coords.cur;\n _this.page = (0, ___extend_15[\"default\"])({}, coords.page);\n _this.client = (0, ___extend_15[\"default\"])({}, coords.client);\n _this.rect = (0, ___extend_15[\"default\"])({}, interaction.rect);\n _this.timeStamp = coords.timeStamp;\n\n if (!ending) {\n _this.page.x -= origin.x;\n _this.page.y -= origin.y;\n _this.client.x -= origin.x;\n _this.client.y -= origin.y;\n }\n\n _this.ctrlKey = event.ctrlKey;\n _this.altKey = event.altKey;\n _this.shiftKey = event.shiftKey;\n _this.metaKey = event.metaKey;\n _this.button = event.button;\n _this.buttons = event.buttons;\n _this.target = element;\n _this.currentTarget = element;\n _this.relatedTarget = related || null;\n _this.preEnd = preEnd;\n _this.type = type || actionName + (phase || '');\n _this.interactable = target;\n _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0;\n _this.x0 = interaction.coords.start.page.x - origin.x;\n _this.y0 = interaction.coords.start.page.y - origin.y;\n _this.clientX0 = interaction.coords.start.client.x - origin.x;\n _this.clientY0 = interaction.coords.start.client.y - origin.y;\n\n if (starting || ending) {\n _this.delta = {\n x: 0,\n y: 0\n };\n } else {\n _this.delta = {\n x: _this[deltaSource].x - prevEvent[deltaSource].x,\n y: _this[deltaSource].y - prevEvent[deltaSource].y\n };\n }\n\n _this.dt = interaction.coords.delta.timeStamp;\n _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second\n\n _this.velocity = (0, ___extend_15[\"default\"])({}, interaction.coords.velocity[deltaSource]);\n _this.speed = (0, ___hypot_15[\"default\"])(_this.velocity.x, _this.velocity.y);\n _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null;\n return _this;\n }\n\n ___createClass_15(InteractEvent, [{\n key: \"getSwipe\",\n value: function getSwipe() {\n var interaction = this._interaction;\n\n if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) {\n return null;\n }\n\n var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI;\n var overlap = 22.5;\n\n if (angle < 0) {\n angle += 360;\n }\n\n var left = 135 - overlap <= angle && angle < 225 + overlap;\n var up = 225 - overlap <= angle && angle < 315 + overlap;\n var right = !left && (315 - overlap <= angle || angle < 45 + overlap);\n var down = !up && 45 - overlap <= angle && angle < 135 + overlap;\n return {\n up: up,\n down: down,\n left: left,\n right: right,\n angle: angle,\n speed: interaction.prevEvent.speed,\n velocity: {\n x: interaction.prevEvent.velocityX,\n y: interaction.prevEvent.velocityY\n }\n };\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"pageX\",\n get: function get() {\n return this.page.x;\n },\n set: function set(value) {\n this.page.x = value;\n }\n }, {\n key: \"pageY\",\n get: function get() {\n return this.page.y;\n },\n set: function set(value) {\n this.page.y = value;\n }\n }, {\n key: \"clientX\",\n get: function get() {\n return this.client.x;\n },\n set: function set(value) {\n this.client.x = value;\n }\n }, {\n key: \"clientY\",\n get: function get() {\n return this.client.y;\n },\n set: function set(value) {\n this.client.y = value;\n }\n }, {\n key: \"dx\",\n get: function get() {\n return this.delta.x;\n },\n set: function set(value) {\n this.delta.x = value;\n }\n }, {\n key: \"dy\",\n get: function get() {\n return this.delta.y;\n },\n set: function set(value) {\n this.delta.y = value;\n }\n }, {\n key: \"velocityX\",\n get: function get() {\n return this.velocity.x;\n },\n set: function set(value) {\n this.velocity.x = value;\n }\n }, {\n key: \"velocityY\",\n get: function get() {\n return this.velocity.y;\n },\n set: function set(value) {\n this.velocity.y = value;\n }\n }]);\n\n return InteractEvent;\n}(_BaseEvent2[\"default\"]);\n\n_$InteractEvent_15.InteractEvent = InteractEvent;\nvar ___default_15 = InteractEvent;\n_$InteractEvent_15[\"default\"] = ___default_15;\n\nvar _$PointerInfo_19 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerInfo_19, \"__esModule\", {\n value: true\n});\n_$PointerInfo_19[\"default\"] = _$PointerInfo_19.PointerInfo = void 0;\n\nfunction ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* eslint-disable @typescript-eslint/no-parameter-properties */\nvar PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) {\n ___classCallCheck_19(this, PointerInfo);\n\n this.id = id;\n this.pointer = pointer;\n this.event = event;\n this.downTime = downTime;\n this.downTarget = downTarget;\n};\n\n_$PointerInfo_19.PointerInfo = PointerInfo;\nvar ___default_19 = PointerInfo;\n_$PointerInfo_19[\"default\"] = ___default_19;\n\nvar _$interactionFinder_22 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactionFinder_22, \"__esModule\", {\n value: true\n});\n_$interactionFinder_22[\"default\"] = void 0;\n\nvar __dom_22 = ___interopRequireWildcard_22(_$domUtils_51);\n\nfunction ___getRequireWildcardCache_22() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar finder = {\n methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'],\n search: function search(details) {\n for (var _i = 0; _i < finder.methodOrder.length; _i++) {\n var _ref;\n\n _ref = finder.methodOrder[_i];\n var method = _ref;\n var interaction = finder[method](details);\n\n if (interaction) {\n return interaction;\n }\n }\n },\n // try to resume simulation with a new pointer\n simulationResume: function simulationResume(_ref2) {\n var pointerType = _ref2.pointerType,\n eventType = _ref2.eventType,\n eventTarget = _ref2.eventTarget,\n scope = _ref2.scope;\n\n if (!/down|start/i.test(eventType)) {\n return null;\n }\n\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i2];\n var interaction = _ref3;\n var element = eventTarget;\n\n if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) {\n while (element) {\n // if the element is the interaction element\n if (element === interaction.element) {\n return interaction;\n }\n\n element = __dom_22.parentNode(element);\n }\n }\n }\n\n return null;\n },\n // if it's a mouse or pen interaction\n mouseOrPen: function mouseOrPen(_ref4) {\n var pointerId = _ref4.pointerId,\n pointerType = _ref4.pointerType,\n eventType = _ref4.eventType,\n scope = _ref4.scope;\n\n if (pointerType !== 'mouse' && pointerType !== 'pen') {\n return null;\n }\n\n var firstNonActive;\n\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i3];\n var interaction = _ref5;\n\n if (interaction.pointerType === pointerType) {\n // if it's a down event, skip interactions with running simulations\n if (interaction.simulation && !hasPointerId(interaction, pointerId)) {\n continue;\n } // if the interaction is active, return it immediately\n\n\n if (interaction.interacting()) {\n return interaction;\n } // otherwise save it and look for another active interaction\n else if (!firstNonActive) {\n firstNonActive = interaction;\n }\n }\n } // if no active mouse interaction was found use the first inactive mouse\n // interaction\n\n\n if (firstNonActive) {\n return firstNonActive;\n } // find any mouse or pen interaction.\n // ignore the interaction if the eventType is a *down, and a simulation\n // is active\n\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref6;\n\n _ref6 = scope.interactions.list[_i4];\n var _interaction = _ref6;\n\n if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) {\n return _interaction;\n }\n }\n\n return null;\n },\n // get interaction that has this pointer\n hasPointer: function hasPointer(_ref7) {\n var pointerId = _ref7.pointerId,\n scope = _ref7.scope;\n\n for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) {\n var _ref8;\n\n _ref8 = scope.interactions.list[_i5];\n var interaction = _ref8;\n\n if (hasPointerId(interaction, pointerId)) {\n return interaction;\n }\n }\n\n return null;\n },\n // get first idle interaction with a matching pointerType\n idle: function idle(_ref9) {\n var pointerType = _ref9.pointerType,\n scope = _ref9.scope;\n\n for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) {\n var _ref10;\n\n _ref10 = scope.interactions.list[_i6];\n var interaction = _ref10;\n\n // if there's already a pointer held down\n if (interaction.pointers.length === 1) {\n var target = interaction.interactable; // don't add this pointer if there is a target interactable and it\n // isn't gesturable\n\n if (target && !(target.options.gesture && target.options.gesture.enabled)) {\n continue;\n }\n } // maximum of 2 pointers per interaction\n else if (interaction.pointers.length >= 2) {\n continue;\n }\n\n if (!interaction.interacting() && pointerType === interaction.pointerType) {\n return interaction;\n }\n }\n\n return null;\n }\n};\n\nfunction hasPointerId(interaction, pointerId) {\n return interaction.pointers.some(function (_ref11) {\n var id = _ref11.id;\n return id === pointerId;\n });\n}\n\nvar ___default_22 = finder;\n_$interactionFinder_22[\"default\"] = ___default_22;\n\nvar _$drag_1 = {};\n\"use strict\";\n\nObject.defineProperty(_$drag_1, \"__esModule\", {\n value: true\n});\n_$drag_1[\"default\"] = void 0;\n\nvar ___scope_1 = _$scope_24({});\n\nvar __arr_1 = ___interopRequireWildcard_1(_$arr_47);\n\nvar __is_1 = ___interopRequireWildcard_1(_$is_57);\n\nfunction ___getRequireWildcardCache_1() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_1.ActionName.Drag = 'drag';\n\nfunction __install_1(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('before-action-move', beforeMove);\n interactions.signals.on('action-resume', beforeMove); // dragmove\n\n interactions.signals.on('action-move', move);\n Interactable.prototype.draggable = drag.draggable;\n actions[___scope_1.ActionName.Drag] = drag;\n actions.names.push(___scope_1.ActionName.Drag);\n __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']);\n actions.methodDict.drag = 'draggable';\n defaults.actions.drag = drag.defaults;\n}\n\nfunction beforeMove(_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x') {\n interaction.coords.cur.page.y = interaction.coords.start.page.y;\n interaction.coords.cur.client.y = interaction.coords.start.client.y;\n interaction.coords.velocity.client.y = 0;\n interaction.coords.velocity.page.y = 0;\n } else if (axis === 'y') {\n interaction.coords.cur.page.x = interaction.coords.start.page.x;\n interaction.coords.cur.client.x = interaction.coords.start.client.x;\n interaction.coords.velocity.client.x = 0;\n interaction.coords.velocity.page.x = 0;\n }\n}\n\nfunction move(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x' || axis === 'y') {\n var opposite = axis === 'x' ? 'y' : 'x';\n iEvent.page[opposite] = interaction.coords.start.page[opposite];\n iEvent.client[opposite] = interaction.coords.start.client[opposite];\n iEvent.delta[opposite] = 0;\n }\n}\n/**\n * ```js\n * interact(element).draggable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // the axis in which the first movement must be\n * // for the drag sequence to start\n * // 'xy' by default - any direction\n * startAxis: 'x' || 'y' || 'xy',\n *\n * // 'xy' by default - don't restrict to one axis (move in any direction)\n * // 'x' or 'y' to restrict movement to either axis\n * // 'start' to restrict movement to the axis the drag started in\n * lockAxis: 'x' || 'y' || 'xy' || 'start',\n *\n * // max number of drags that can happen concurrently\n * // with elements of this Interactable. Infinity by default\n * max: Infinity,\n *\n * // max number of drags that can target the same element+Interactable\n * // 1 by default\n * maxPerElement: 2\n * })\n *\n * var isDraggable = interact('element').draggable(); // true\n * ```\n *\n * Get or set whether drag actions can be performed on the target\n *\n * @alias Interactable.prototype.draggable\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on drag events (object makes the Interactable\n * draggable)\n * @return {boolean | Interactable} boolean indicating if this can be the\n * target of drag events, or this Interctable\n */\n\n\nvar draggable = function draggable(options) {\n if (__is_1.object(options)) {\n this.options.drag.enabled = options.enabled !== false;\n this.setPerAction('drag', options);\n this.setOnEvents('drag', options);\n\n if (/^(xy|x|y|start)$/.test(options.lockAxis)) {\n this.options.drag.lockAxis = options.lockAxis;\n }\n\n if (/^(xy|x|y)$/.test(options.startAxis)) {\n this.options.drag.startAxis = options.startAxis;\n }\n\n return this;\n }\n\n if (__is_1.bool(options)) {\n this.options.drag.enabled = options;\n return this;\n }\n\n return this.options.drag;\n};\n\nvar drag = {\n id: 'actions/drag',\n install: __install_1,\n draggable: draggable,\n beforeMove: beforeMove,\n move: move,\n defaults: {\n startAxis: 'xy',\n lockAxis: 'xy'\n },\n checker: function checker(_pointer, _event, interactable) {\n var dragOptions = interactable.options.drag;\n return dragOptions.enabled ? {\n name: 'drag',\n axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis\n } : null;\n },\n getCursor: function getCursor() {\n return 'move';\n }\n};\nvar ___default_1 = drag;\n_$drag_1[\"default\"] = ___default_1;\n\nvar _$DropEvent_2 = {};\n\"use strict\";\n\nObject.defineProperty(_$DropEvent_2, \"__esModule\", {\n value: true\n});\n_$DropEvent_2[\"default\"] = void 0;\n\nvar ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13);\n\nvar __arr_2 = ___interopRequireWildcard_2(_$arr_47);\n\nfunction ___getRequireWildcardCache_2() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_2(obj); }\n\nfunction ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); }\n\nfunction ___nonIterableSpread_2() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_2(self); }\n\nfunction ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); }\n\nfunction ___inherits_2(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); }\n\nfunction ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); }\n\nvar DropEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_2(DropEvent, _BaseEvent);\n\n /**\n * Class of events fired on dropzones during drags with acceptable targets.\n */\n function DropEvent(dropState, dragEvent, type) {\n var _this;\n\n ___classCallCheck_2(this, DropEvent);\n\n _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction));\n _this.propagationStopped = false;\n _this.immediatePropagationStopped = false;\n\n var _ref = type === 'dragleave' ? dropState.prev : dropState.cur,\n element = _ref.element,\n dropzone = _ref.dropzone;\n\n _this.type = type;\n _this.target = element;\n _this.currentTarget = element;\n _this.dropzone = dropzone;\n _this.dragEvent = dragEvent;\n _this.relatedTarget = dragEvent.target;\n _this.draggable = dragEvent.interactable;\n _this.timeStamp = dragEvent.timeStamp;\n return _this;\n }\n /**\n * If this is a `dropactivate` event, the dropzone element will be\n * deactivated.\n *\n * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the\n * dropzone element and more.\n */\n\n\n ___createClass_2(DropEvent, [{\n key: \"reject\",\n value: function reject() {\n var _this2 = this;\n\n var dropState = this._interaction.dropState;\n\n if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) {\n return;\n }\n\n dropState.prev.dropzone = this.dropzone;\n dropState.prev.element = this.target;\n dropState.rejected = true;\n dropState.events.enter = null;\n this.stopImmediatePropagation();\n\n if (this.type === 'dropactivate') {\n var activeDrops = dropState.activeDrops;\n var index = __arr_2.findIndex(activeDrops, function (_ref2) {\n var dropzone = _ref2.dropzone,\n element = _ref2.element;\n return dropzone === _this2.dropzone && element === _this2.target;\n });\n dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1)));\n var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate');\n deactivateEvent.dropzone = this.dropzone;\n deactivateEvent.target = this.target;\n this.dropzone.fire(deactivateEvent);\n } else {\n this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave'));\n }\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }]);\n\n return DropEvent;\n}(___BaseEvent2_2[\"default\"]);\n\nvar ___default_2 = DropEvent;\n_$DropEvent_2[\"default\"] = ___default_2;\n\nvar _$drop_3 = {};\n\"use strict\";\n\nObject.defineProperty(_$drop_3, \"__esModule\", {\n value: true\n});\n_$drop_3[\"default\"] = void 0;\n\nvar __utils_3 = ___interopRequireWildcard_3(_$utils_56);\n\nvar _drag = ___interopRequireDefault_3(_$drag_1);\n\nvar _DropEvent = ___interopRequireDefault_3(_$DropEvent_2);\n\nfunction ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_3() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_3(scope) {\n var actions = scope.actions,\n interact = scope.interact,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_drag[\"default\"]);\n interactions.signals.on('before-action-start', function (_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n interaction.dropState = {\n cur: {\n dropzone: null,\n element: null\n },\n prev: {\n dropzone: null,\n element: null\n },\n rejected: null,\n events: null,\n activeDrops: null\n };\n });\n interactions.signals.on('after-action-start', function (_ref2) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n dragEvent = _ref2.iEvent;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState; // reset active dropzones\n\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n dropState.events = getDropEvents(interaction, event, dragEvent);\n\n if (dropState.events.activate) {\n fireActivationEvents(dropState.activeDrops, dropState.events.activate);\n }\n }); // FIXME proper signal types\n\n interactions.signals.on('action-move', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('action-end', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('after-action-move', function (_ref3) {\n var interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n interaction.dropState.events = {};\n });\n interactions.signals.on('after-action-end', function (_ref4) {\n var interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n });\n interactions.signals.on('stop', function (_ref5) {\n var interaction = _ref5.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (dropState) {\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.cur.dropzone = null;\n dropState.cur.element = null;\n dropState.prev.dropzone = null;\n dropState.prev.element = null;\n dropState.rejected = false;\n }\n });\n /**\n *\n * ```js\n * interact('.drop').dropzone({\n * accept: '.can-drop' || document.getElementById('single-drop'),\n * overlap: 'pointer' || 'center' || zeroToOne\n * }\n * ```\n *\n * Returns or sets whether draggables can be dropped onto this target to\n * trigger drop events\n *\n * Dropzones can receive the following events:\n * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends\n * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone\n * - `dragmove` when a draggable that has entered the dropzone is moved\n * - `drop` when a draggable is dropped into this dropzone\n *\n * Use the `accept` option to allow only elements that match the given CSS\n * selector or element. The value can be:\n *\n * - **an Element** - only that element can be dropped into this dropzone.\n * - **a string**, - the element being dragged must match it as a CSS selector.\n * - **`null`** - accept options is cleared - it accepts any element.\n *\n * Use the `overlap` option to set how drops are checked for. The allowed\n * values are:\n *\n * - `'pointer'`, the pointer must be over the dropzone (default)\n * - `'center'`, the draggable element's center must be over the dropzone\n * - a number from 0-1 which is the `(intersection area) / (draggable area)`.\n * e.g. `0.5` for drop to happen when half of the area of the draggable is\n * over the dropzone\n *\n * Use the `checker` option to specify a function to check if a dragged element\n * is over this Interactable.\n *\n * @param {boolean | object | null} [options] The new options to be set.\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.dropzone = function (options) {\n return dropzoneMethod(this, options);\n };\n /**\n * ```js\n * interact(target)\n * .dropChecker(function(dragEvent, // related dragmove or dragend event\n * event, // TouchEvent/PointerEvent/MouseEvent\n * dropped, // bool result of the default checker\n * dropzone, // dropzone Interactable\n * dropElement, // dropzone elemnt\n * draggable, // draggable Interactable\n * draggableElement) {// draggable element\n *\n * return dropped && event.target.hasAttribute('allow-drop')\n * }\n * ```\n */\n\n\n Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) {\n return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect);\n };\n /**\n * Returns or sets whether the dimensions of dropzone elements are calculated\n * on every dragmove or only on dragstart for the default dropChecker\n *\n * @param {boolean} [newValue] True to check on each move. False to check only\n * before start\n * @return {boolean | interact} The current setting or interact\n */\n\n\n interact.dynamicDrop = function (newValue) {\n if (__utils_3.is.bool(newValue)) {\n // if (dragging && scope.dynamicDrop !== newValue && !newValue) {\n // calcRects(dropzones)\n // }\n scope.dynamicDrop = newValue;\n return interact;\n }\n\n return scope.dynamicDrop;\n };\n\n __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']);\n actions.methodDict.drop = 'dropzone';\n scope.dynamicDrop = false;\n defaults.actions.drop = drop.defaults;\n}\n\nfunction collectDrops(_ref6, draggableElement) {\n var interactables = _ref6.interactables;\n var drops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i = 0; _i < interactables.list.length; _i++) {\n var _ref7;\n\n _ref7 = interactables.list[_i];\n var dropzone = _ref7;\n\n if (!dropzone.options.drop.enabled) {\n continue;\n }\n\n var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting\n\n if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({\n dropzone: dropzone,\n draggableElement: draggableElement\n })) {\n continue;\n } // query for new elements if necessary\n\n\n var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target];\n\n for (var _i2 = 0; _i2 < dropElements.length; _i2++) {\n var _ref8;\n\n _ref8 = dropElements[_i2];\n var dropzoneElement = _ref8;\n\n if (dropzoneElement !== draggableElement) {\n drops.push({\n dropzone: dropzone,\n element: dropzoneElement\n });\n }\n }\n }\n\n return drops;\n}\n\nfunction fireActivationEvents(activeDrops, event) {\n // loop through all active dropzones and trigger event\n for (var _i3 = 0; _i3 < activeDrops.length; _i3++) {\n var _ref9;\n\n _ref9 = activeDrops[_i3];\n var _ref10 = _ref9,\n dropzone = _ref10.dropzone,\n element = _ref10.element;\n event.dropzone = dropzone; // set current element as event target\n\n event.target = element;\n dropzone.fire(event);\n event.propagationStopped = event.immediatePropagationStopped = false;\n }\n} // return a new array of possible drops. getActiveDrops should always be\n// called when a drag has just started or a drag event happens while\n// dynamicDrop is true\n\n\nfunction getActiveDrops(scope, dragElement) {\n // get dropzones and their elements that could receive the draggable\n var activeDrops = collectDrops(scope, dragElement);\n\n for (var _i4 = 0; _i4 < activeDrops.length; _i4++) {\n var _ref11;\n\n _ref11 = activeDrops[_i4];\n var activeDrop = _ref11;\n activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element);\n }\n\n return activeDrops;\n}\n\nfunction getDrop(_ref12, dragEvent, pointerEvent) {\n var dropState = _ref12.dropState,\n draggable = _ref12.interactable,\n dragElement = _ref12.element;\n var validDrops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) {\n var _ref13;\n\n _ref13 = dropState.activeDrops[_i5];\n var _ref14 = _ref13,\n dropzone = _ref14.dropzone,\n dropzoneElement = _ref14.element,\n rect = _ref14.rect;\n validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null);\n } // get the most appropriate dropzone based on DOM depth and order\n\n\n var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops);\n return dropState.activeDrops[dropIndex] || null;\n}\n\nfunction getDropEvents(interaction, _pointerEvent, dragEvent) {\n var dropState = interaction.dropState;\n var dropEvents = {\n enter: null,\n leave: null,\n activate: null,\n deactivate: null,\n move: null,\n drop: null\n };\n\n if (dragEvent.type === 'dragstart') {\n dropEvents.activate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropactivate');\n dropEvents.activate.target = null;\n dropEvents.activate.dropzone = null;\n }\n\n if (dragEvent.type === 'dragend') {\n dropEvents.deactivate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropdeactivate');\n dropEvents.deactivate.target = null;\n dropEvents.deactivate.dropzone = null;\n }\n\n if (dropState.rejected) {\n return dropEvents;\n }\n\n if (dropState.cur.element !== dropState.prev.element) {\n // if there was a previous dropzone, create a dragleave event\n if (dropState.prev.dropzone) {\n dropEvents.leave = new _DropEvent[\"default\"](dropState, dragEvent, 'dragleave');\n dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element;\n dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone;\n } // if dropzone is not null, create a dragenter event\n\n\n if (dropState.cur.dropzone) {\n dropEvents.enter = new _DropEvent[\"default\"](dropState, dragEvent, 'dragenter');\n dragEvent.dragEnter = dropState.cur.element;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n }\n\n if (dragEvent.type === 'dragend' && dropState.cur.dropzone) {\n dropEvents.drop = new _DropEvent[\"default\"](dropState, dragEvent, 'drop');\n dragEvent.dropzone = dropState.cur.dropzone;\n dragEvent.relatedTarget = dropState.cur.element;\n }\n\n if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) {\n dropEvents.move = new _DropEvent[\"default\"](dropState, dragEvent, 'dropmove');\n dropEvents.move.dragmove = dragEvent;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n\n return dropEvents;\n}\n\nfunction fireDropEvents(interaction, events) {\n var dropState = interaction.dropState;\n var activeDrops = dropState.activeDrops,\n cur = dropState.cur,\n prev = dropState.prev;\n\n if (events.leave) {\n prev.dropzone.fire(events.leave);\n }\n\n if (events.move) {\n cur.dropzone.fire(events.move);\n }\n\n if (events.enter) {\n cur.dropzone.fire(events.enter);\n }\n\n if (events.drop) {\n cur.dropzone.fire(events.drop);\n }\n\n if (events.deactivate) {\n fireActivationEvents(activeDrops, events.deactivate);\n }\n\n dropState.prev.dropzone = cur.dropzone;\n dropState.prev.element = cur.element;\n}\n\nfunction onEventCreated(_ref15, scope) {\n var interaction = _ref15.interaction,\n iEvent = _ref15.iEvent,\n event = _ref15.event;\n\n if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (scope.dynamicDrop) {\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n }\n\n var dragEvent = iEvent;\n var dropResult = getDrop(interaction, dragEvent, event); // update rejected status\n\n dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element;\n dropState.cur.dropzone = dropResult && dropResult.dropzone;\n dropState.cur.element = dropResult && dropResult.element;\n dropState.events = getDropEvents(interaction, event, dragEvent);\n}\n\nfunction dropzoneMethod(interactable, options) {\n if (__utils_3.is.object(options)) {\n interactable.options.drop.enabled = options.enabled !== false;\n\n if (options.listeners) {\n var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop'\n\n var corrected = Object.keys(normalized).reduce(function (acc, type) {\n var correctedType = /^(enter|leave)/.test(type) ? \"drag\".concat(type) : /^(activate|deactivate|move)/.test(type) ? \"drop\".concat(type) : type;\n acc[correctedType] = normalized[type];\n return acc;\n }, {});\n interactable.off(interactable.options.drop.listeners);\n interactable.on(corrected);\n interactable.options.drop.listeners = corrected;\n }\n\n if (__utils_3.is.func(options.ondrop)) {\n interactable.on('drop', options.ondrop);\n }\n\n if (__utils_3.is.func(options.ondropactivate)) {\n interactable.on('dropactivate', options.ondropactivate);\n }\n\n if (__utils_3.is.func(options.ondropdeactivate)) {\n interactable.on('dropdeactivate', options.ondropdeactivate);\n }\n\n if (__utils_3.is.func(options.ondragenter)) {\n interactable.on('dragenter', options.ondragenter);\n }\n\n if (__utils_3.is.func(options.ondragleave)) {\n interactable.on('dragleave', options.ondragleave);\n }\n\n if (__utils_3.is.func(options.ondropmove)) {\n interactable.on('dropmove', options.ondropmove);\n }\n\n if (/^(pointer|center)$/.test(options.overlap)) {\n interactable.options.drop.overlap = options.overlap;\n } else if (__utils_3.is.number(options.overlap)) {\n interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0);\n }\n\n if ('accept' in options) {\n interactable.options.drop.accept = options.accept;\n }\n\n if ('checker' in options) {\n interactable.options.drop.checker = options.checker;\n }\n\n return interactable;\n }\n\n if (__utils_3.is.bool(options)) {\n interactable.options.drop.enabled = options;\n return interactable;\n }\n\n return interactable.options.drop;\n}\n\nfunction dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) {\n var dropped = false; // if the dropzone has no rect (eg. display: none)\n // call the custom dropChecker or just return false\n\n if (!(rect = rect || interactable.getRect(dropElement))) {\n return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false;\n }\n\n var dropOverlap = interactable.options.drop.overlap;\n\n if (dropOverlap === 'pointer') {\n var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag');\n var page = __utils_3.pointer.getPageXY(dragEvent);\n page.x += origin.x;\n page.y += origin.y;\n var horizontal = page.x > rect.left && page.x < rect.right;\n var vertical = page.y > rect.top && page.y < rect.bottom;\n dropped = horizontal && vertical;\n }\n\n var dragRect = draggable.getRect(draggableElement);\n\n if (dragRect && dropOverlap === 'center') {\n var cx = dragRect.left + dragRect.width / 2;\n var cy = dragRect.top + dragRect.height / 2;\n dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom;\n }\n\n if (dragRect && __utils_3.is.number(dropOverlap)) {\n var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top));\n var overlapRatio = overlapArea / (dragRect.width * dragRect.height);\n dropped = overlapRatio >= dropOverlap;\n }\n\n if (interactable.options.drop.checker) {\n dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement);\n }\n\n return dropped;\n}\n\nvar drop = {\n id: 'actions/drop',\n install: __install_3,\n getActiveDrops: getActiveDrops,\n getDrop: getDrop,\n getDropEvents: getDropEvents,\n fireDropEvents: fireDropEvents,\n defaults: {\n enabled: false,\n accept: null,\n overlap: 'pointer'\n }\n};\nvar ___default_3 = drop;\n_$drop_3[\"default\"] = ___default_3;\n\nvar _$gesture_4 = {};\n\"use strict\";\n\nObject.defineProperty(_$gesture_4, \"__esModule\", {\n value: true\n});\n_$gesture_4[\"default\"] = void 0;\n\nvar ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15);\n\nvar ___scope_4 = _$scope_24({});\n\nvar __utils_4 = ___interopRequireWildcard_4(_$utils_56);\n\nfunction ___getRequireWildcardCache_4() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n___scope_4.ActionName.Gesture = 'gesture';\n\nfunction __install_4(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n /**\n * ```js\n * interact(element).gesturable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // limit multiple gestures.\n * // See the explanation in {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isGestureable = interact(element).gesturable()\n * ```\n *\n * Gets or sets whether multitouch gestures can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on gesture events (makes the Interactable gesturable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of gesture events, or this Interactable\n */\n\n Interactable.prototype.gesturable = function (options) {\n if (__utils_4.is.object(options)) {\n this.options.gesture.enabled = options.enabled !== false;\n this.setPerAction('gesture', options);\n this.setOnEvents('gesture', options);\n return this;\n }\n\n if (__utils_4.is.bool(options)) {\n this.options.gesture.enabled = options;\n return this;\n }\n\n return this.options.gesture;\n };\n\n interactions.signals.on('action-start', updateGestureProps);\n interactions.signals.on('action-move', updateGestureProps);\n interactions.signals.on('action-end', updateGestureProps);\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.gesture = {\n angle: 0,\n distance: 0,\n scale: 1,\n startAngle: 0,\n startDistance: 0\n };\n });\n actions[___scope_4.ActionName.Gesture] = gesture;\n actions.names.push(___scope_4.ActionName.Gesture);\n __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']);\n actions.methodDict.gesture = 'gesturable';\n defaults.actions.gesture = gesture.defaults;\n}\n\nvar gesture = {\n id: 'actions/gesture',\n install: __install_4,\n defaults: {},\n checker: function checker(_pointer, _event, _interactable, _element, interaction) {\n if (interaction.pointers.length >= 2) {\n return {\n name: 'gesture'\n };\n }\n\n return null;\n },\n getCursor: function getCursor() {\n return '';\n }\n};\n\nfunction updateGestureProps(_ref2) {\n var interaction = _ref2.interaction,\n iEvent = _ref2.iEvent,\n event = _ref2.event,\n phase = _ref2.phase;\n\n if (interaction.prepared.name !== 'gesture') {\n return;\n }\n\n var pointers = interaction.pointers.map(function (p) {\n return p.pointer;\n });\n var starting = phase === 'start';\n var ending = phase === 'end';\n var deltaSource = interaction.interactable.options.deltaSource;\n iEvent.touches = [pointers[0], pointers[1]];\n\n if (starting) {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = 1;\n iEvent.ds = 0;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.da = 0;\n interaction.gesture.startDistance = iEvent.distance;\n interaction.gesture.startAngle = iEvent.angle;\n } else if (ending || event instanceof ___InteractEvent_4[\"default\"]) {\n var prevEvent = interaction.prevEvent;\n iEvent.distance = prevEvent.distance;\n iEvent.box = prevEvent.box;\n iEvent.scale = prevEvent.scale;\n iEvent.ds = 0;\n iEvent.angle = prevEvent.angle;\n iEvent.da = 0;\n } else {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = iEvent.distance / interaction.gesture.startDistance;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.ds = iEvent.scale - interaction.gesture.scale;\n iEvent.da = iEvent.angle - interaction.gesture.angle;\n }\n\n interaction.gesture.distance = iEvent.distance;\n interaction.gesture.angle = iEvent.angle;\n\n if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) {\n interaction.gesture.scale = iEvent.scale;\n }\n}\n\nvar ___default_4 = gesture;\n_$gesture_4[\"default\"] = ___default_4;\n\nvar _$resize_6 = {};\n\"use strict\";\n\nObject.defineProperty(_$resize_6, \"__esModule\", {\n value: true\n});\n_$resize_6[\"default\"] = void 0;\n\nvar ___scope_6 = _$scope_24({});\n\nvar __arr_6 = ___interopRequireWildcard_6(_$arr_47);\n\nvar __dom_6 = ___interopRequireWildcard_6(_$domUtils_51);\n\nvar ___extend_6 = ___interopRequireDefault_6(_$extend_53);\n\nvar __is_6 = ___interopRequireWildcard_6(_$is_57);\n\nfunction ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_6() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_6.ActionName.Resize = 'resize';\n\nfunction __install_6(scope) {\n var actions = scope.actions,\n browser = scope.browser,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults; // Less Precision with touch input\n\n interactions.signals.on('new', function (interaction) {\n interaction.resizeAxes = 'xy';\n });\n interactions.signals.on('action-start', start);\n interactions.signals.on('action-move', __move_6);\n interactions.signals.on('action-end', end);\n interactions.signals.on('action-start', updateEventAxes);\n interactions.signals.on('action-move', updateEventAxes);\n resize.cursors = initCursors(browser);\n resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10;\n /**\n * ```js\n * interact(element).resizable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * edges: {\n * top : true, // Use pointer coords to check for resize.\n * left : false, // Disable resizing from left edge.\n * bottom: '.resize-s',// Resize if pointer target matches selector\n * right : handleEl // Resize if pointer target is the given Element\n * },\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height are adjusted at a 1:1 ratio.\n * square: false,\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height maintain the aspect ratio they had when resizing started.\n * preserveAspectRatio: false,\n *\n * // a value of 'none' will limit the resize rect to a minimum of 0x0\n * // 'negate' will allow the rect to have negative width/height\n * // 'reposition' will keep the width/height positive by swapping\n * // the top and bottom edges and/or swapping the left and right edges\n * invert: 'none' || 'negate' || 'reposition'\n *\n * // limit multiple resizes.\n * // See the explanation in the {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isResizeable = interact(element).resizable()\n * ```\n *\n * Gets or sets whether resize actions can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on resize events (object makes the Interactable\n * resizable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of resize elements, or this Interactable\n */\n\n Interactable.prototype.resizable = function (options) {\n return resizable(this, options, scope);\n };\n\n actions[___scope_6.ActionName.Resize] = resize;\n actions.names.push(___scope_6.ActionName.Resize);\n __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']);\n actions.methodDict.resize = 'resizable';\n defaults.actions.resize = resize.defaults;\n}\n\nvar resize = {\n id: 'actions/resize',\n install: __install_6,\n defaults: {\n square: false,\n preserveAspectRatio: false,\n axis: 'xy',\n // use default margin\n margin: NaN,\n // object with props left, right, top, bottom which are\n // true/false values to resize when the pointer is over that edge,\n // CSS selectors to match the handles for each direction\n // or the Elements for each handle\n edges: null,\n // a value of 'none' will limit the resize rect to a minimum of 0x0\n // 'negate' will alow the rect to have negative width/height\n // 'reposition' will keep the width/height positive by swapping\n // the top and bottom edges and/or swapping the left and right edges\n invert: 'none'\n },\n checker: function checker(_pointer, _event, interactable, element, interaction, rect) {\n if (!rect) {\n return null;\n }\n\n var page = (0, ___extend_6[\"default\"])({}, interaction.coords.cur.page);\n var options = interactable.options;\n\n if (options.resize.enabled) {\n var resizeOptions = options.resize;\n var resizeEdges = {\n left: false,\n right: false,\n top: false,\n bottom: false\n }; // if using resize.edges\n\n if (__is_6.object(resizeOptions.edges)) {\n for (var edge in resizeEdges) {\n resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin);\n }\n\n resizeEdges.left = resizeEdges.left && !resizeEdges.right;\n resizeEdges.top = resizeEdges.top && !resizeEdges.bottom;\n\n if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) {\n return {\n name: 'resize',\n edges: resizeEdges\n };\n }\n } else {\n var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin;\n var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin;\n\n if (right || bottom) {\n return {\n name: 'resize',\n axes: (right ? 'x' : '') + (bottom ? 'y' : '')\n };\n }\n }\n }\n\n return null;\n },\n cursors: null,\n getCursor: function getCursor(_ref) {\n var edges = _ref.edges,\n axis = _ref.axis,\n name = _ref.name;\n var cursors = resize.cursors;\n var result = null;\n\n if (axis) {\n result = cursors[name + axis];\n } else if (edges) {\n var cursorKey = '';\n var _arr = ['top', 'bottom', 'left', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (edges[edge]) {\n cursorKey += edge;\n }\n }\n\n result = cursors[cursorKey];\n }\n\n return result;\n },\n defaultMargin: null\n};\n\nfunction resizable(interactable, options, scope) {\n if (__is_6.object(options)) {\n interactable.options.resize.enabled = options.enabled !== false;\n interactable.setPerAction('resize', options);\n interactable.setOnEvents('resize', options);\n\n if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) {\n interactable.options.resize.axis = options.axis;\n } else if (options.axis === null) {\n interactable.options.resize.axis = scope.defaults.actions.resize.axis;\n }\n\n if (__is_6.bool(options.preserveAspectRatio)) {\n interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio;\n } else if (__is_6.bool(options.square)) {\n interactable.options.resize.square = options.square;\n }\n\n return interactable;\n }\n\n if (__is_6.bool(options)) {\n interactable.options.resize.enabled = options;\n return interactable;\n }\n\n return interactable.options.resize;\n}\n\nfunction checkResizeEdge(name, value, page, element, interactableElement, rect, margin) {\n // false, '', undefined, null\n if (!value) {\n return false;\n } // true value, use pointer coords and element rect\n\n\n if (value === true) {\n // if dimensions are negative, \"switch\" edges\n var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left;\n var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension\n\n margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2);\n\n if (width < 0) {\n if (name === 'left') {\n name = 'right';\n } else if (name === 'right') {\n name = 'left';\n }\n }\n\n if (height < 0) {\n if (name === 'top') {\n name = 'bottom';\n } else if (name === 'bottom') {\n name = 'top';\n }\n }\n\n if (name === 'left') {\n return page.x < (width >= 0 ? rect.left : rect.right) + margin;\n }\n\n if (name === 'top') {\n return page.y < (height >= 0 ? rect.top : rect.bottom) + margin;\n }\n\n if (name === 'right') {\n return page.x > (width >= 0 ? rect.right : rect.left) - margin;\n }\n\n if (name === 'bottom') {\n return page.y > (height >= 0 ? rect.bottom : rect.top) - margin;\n }\n } // the remaining checks require an element\n\n\n if (!__is_6.element(element)) {\n return false;\n }\n\n return __is_6.element(value) // the value is an element to use as a resize handle\n ? value === element // otherwise check if element matches value as selector\n : __dom_6.matchesUpTo(element, value, interactableElement);\n}\n\nfunction initCursors(browser) {\n return browser.isIe9 ? {\n x: 'e-resize',\n y: 's-resize',\n xy: 'se-resize',\n top: 'n-resize',\n left: 'w-resize',\n bottom: 's-resize',\n right: 'e-resize',\n topleft: 'se-resize',\n bottomright: 'se-resize',\n topright: 'ne-resize',\n bottomleft: 'ne-resize'\n } : {\n x: 'ew-resize',\n y: 'ns-resize',\n xy: 'nwse-resize',\n top: 'ns-resize',\n left: 'ew-resize',\n bottom: 'ns-resize',\n right: 'ew-resize',\n topleft: 'nwse-resize',\n bottomright: 'nwse-resize',\n topright: 'nesw-resize',\n bottomleft: 'nesw-resize'\n };\n}\n\nfunction start(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var startRect = (0, ___extend_6[\"default\"])({}, interaction.rect);\n var resizeOptions = interaction.interactable.options.resize;\n /*\n * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge\n * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make\n * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend\n * on the active edges and the edge being interacted with.\n */\n\n if (resizeOptions.square || resizeOptions.preserveAspectRatio) {\n var linkedEdges = (0, ___extend_6[\"default\"])({}, interaction.prepared.edges);\n linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom;\n linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right;\n linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top;\n linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left;\n interaction.prepared._linkedEdges = linkedEdges;\n } else {\n interaction.prepared._linkedEdges = null;\n } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize\n\n\n if (resizeOptions.preserveAspectRatio) {\n interaction.resizeStartAspectRatio = startRect.width / startRect.height;\n }\n\n interaction.resizeRects = {\n start: startRect,\n current: {\n left: startRect.left,\n right: startRect.right,\n top: startRect.top,\n bottom: startRect.bottom\n },\n inverted: (0, ___extend_6[\"default\"])({}, startRect),\n previous: (0, ___extend_6[\"default\"])({}, startRect),\n delta: {\n left: 0,\n right: 0,\n width: 0,\n top: 0,\n bottom: 0,\n height: 0\n }\n };\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction __move_6(_ref3) {\n var iEvent = _ref3.iEvent,\n interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var resizeOptions = interaction.interactable.options.resize;\n var invert = resizeOptions.invert;\n var invertible = invert === 'reposition' || invert === 'negate';\n var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow\n\n var start = interaction.resizeRects.start;\n var current = interaction.resizeRects.current;\n var inverted = interaction.resizeRects.inverted;\n var deltaRect = interaction.resizeRects.delta;\n var previous = (0, ___extend_6[\"default\"])(interaction.resizeRects.previous, inverted);\n var originalEdges = edges;\n var eventDelta = (0, ___extend_6[\"default\"])({}, iEvent.delta);\n\n if (resizeOptions.preserveAspectRatio || resizeOptions.square) {\n // `resize.preserveAspectRatio` takes precedence over `resize.square`\n var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1;\n edges = interaction.prepared._linkedEdges;\n\n if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) {\n eventDelta.y = -eventDelta.x / startAspectRatio;\n } else if (originalEdges.left || originalEdges.right) {\n eventDelta.y = eventDelta.x / startAspectRatio;\n } else if (originalEdges.top || originalEdges.bottom) {\n eventDelta.x = eventDelta.y * startAspectRatio;\n }\n } // update the 'current' rect without modifications\n\n\n if (edges.top) {\n current.top += eventDelta.y;\n }\n\n if (edges.bottom) {\n current.bottom += eventDelta.y;\n }\n\n if (edges.left) {\n current.left += eventDelta.x;\n }\n\n if (edges.right) {\n current.right += eventDelta.x;\n }\n\n if (invertible) {\n // if invertible, copy the current rect\n (0, ___extend_6[\"default\"])(inverted, current);\n\n if (invert === 'reposition') {\n // swap edge values if necessary to keep width/height positive\n var swap;\n\n if (inverted.top > inverted.bottom) {\n swap = inverted.top;\n inverted.top = inverted.bottom;\n inverted.bottom = swap;\n }\n\n if (inverted.left > inverted.right) {\n swap = inverted.left;\n inverted.left = inverted.right;\n inverted.right = swap;\n }\n }\n } else {\n // if not invertible, restrict to minimum of 0x0 rect\n inverted.top = Math.min(current.top, start.bottom);\n inverted.bottom = Math.max(current.bottom, start.top);\n inverted.left = Math.min(current.left, start.right);\n inverted.right = Math.max(current.right, start.left);\n }\n\n inverted.width = inverted.right - inverted.left;\n inverted.height = inverted.bottom - inverted.top;\n\n for (var edge in inverted) {\n deltaRect[edge] = inverted[edge] - previous[edge];\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = inverted;\n iEvent.deltaRect = deltaRect;\n}\n\nfunction end(_ref4) {\n var iEvent = _ref4.iEvent,\n interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction updateEventAxes(_ref5) {\n var iEvent = _ref5.iEvent,\n interaction = _ref5.interaction,\n action = _ref5.action;\n\n if (action !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) {\n return;\n }\n\n var options = interaction.interactable.options;\n\n if (options.resize.square) {\n if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = iEvent.delta.y;\n } else {\n iEvent.delta.y = iEvent.delta.x;\n }\n\n iEvent.axes = 'xy';\n } else {\n iEvent.axes = interaction.resizeAxes;\n\n if (interaction.resizeAxes === 'x') {\n iEvent.delta.y = 0;\n } else if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = 0;\n }\n }\n}\n\nvar ___default_6 = resize;\n_$resize_6[\"default\"] = ___default_6;\n\nvar _$actions_5 = {};\n\"use strict\";\n\nObject.defineProperty(_$actions_5, \"__esModule\", {\n value: true\n});\n_$actions_5.install = __install_5;\nObject.defineProperty(_$actions_5, \"drag\", {\n enumerable: true,\n get: function get() {\n return ___drag_5[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"drop\", {\n enumerable: true,\n get: function get() {\n return _drop[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"gesture\", {\n enumerable: true,\n get: function get() {\n return _gesture[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"resize\", {\n enumerable: true,\n get: function get() {\n return _resize[\"default\"];\n }\n});\n_$actions_5.id = void 0;\n\nvar ___drag_5 = ___interopRequireDefault_5(_$drag_1);\n\nvar _drop = ___interopRequireDefault_5(_$drop_3);\n\nvar _gesture = ___interopRequireDefault_5(_$gesture_4);\n\nvar _resize = ___interopRequireDefault_5(_$resize_6);\n\nfunction ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_5(scope) {\n scope.usePlugin(_gesture[\"default\"]);\n scope.usePlugin(_resize[\"default\"]);\n scope.usePlugin(___drag_5[\"default\"]);\n scope.usePlugin(_drop[\"default\"]);\n}\n\nvar id = 'actions';\n_$actions_5.id = id;\n\nvar _$autoScroll_7 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoScroll_7, \"__esModule\", {\n value: true\n});\n_$autoScroll_7.getContainer = getContainer;\n_$autoScroll_7.getScroll = getScroll;\n_$autoScroll_7.getScrollSize = getScrollSize;\n_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta;\n_$autoScroll_7[\"default\"] = void 0;\n\nvar __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_51);\n\nvar __is_7 = ___interopRequireWildcard_7(_$is_57);\n\nvar ___raf_7 = ___interopRequireDefault_7(_$raf_62);\n\n/* removed: var _$rect_63 = require(\"@interactjs/utils/rect\"); */;\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_7() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_7(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults,\n actions = scope.actions;\n scope.autoScroll = autoScroll;\n\n autoScroll.now = function () {\n return scope.now();\n };\n\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.autoScroll = null;\n });\n interactions.signals.on('destroy', function (_ref2) {\n var interaction = _ref2.interaction;\n interaction.autoScroll = null;\n autoScroll.stop();\n\n if (autoScroll.interaction) {\n autoScroll.interaction = null;\n }\n });\n interactions.signals.on('stop', autoScroll.stop);\n interactions.signals.on('action-move', function (arg) {\n return autoScroll.onInteractionMove(arg);\n });\n actions.eventTypes.push('autoscroll');\n defaults.perAction.autoScroll = autoScroll.defaults;\n}\n\nvar autoScroll = {\n defaults: {\n enabled: false,\n margin: 60,\n // the item that is scrolled (Window or HTMLElement)\n container: null,\n // the scroll speed in pixels per second\n speed: 300\n },\n now: Date.now,\n interaction: null,\n i: null,\n x: 0,\n y: 0,\n isScrolling: false,\n prevTime: 0,\n margin: 0,\n speed: 0,\n start: function start(interaction) {\n autoScroll.isScrolling = true;\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n interaction.autoScroll = autoScroll;\n autoScroll.interaction = interaction;\n autoScroll.prevTime = autoScroll.now();\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n },\n stop: function stop() {\n autoScroll.isScrolling = false;\n\n if (autoScroll.interaction) {\n autoScroll.interaction.autoScroll = null;\n }\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n },\n // scroll the window by the values in scroll.x/y\n scroll: function scroll() {\n var interaction = autoScroll.interaction;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n var now = autoScroll.now(); // change in time in seconds\n\n var dt = (now - autoScroll.prevTime) / 1000; // displacement\n\n var s = options.speed * dt;\n\n if (s >= 1) {\n var scrollBy = {\n x: autoScroll.x * s,\n y: autoScroll.y * s\n };\n\n if (scrollBy.x || scrollBy.y) {\n var prevScroll = getScroll(container);\n\n if (__is_7.window(container)) {\n container.scrollBy(scrollBy.x, scrollBy.y);\n } else if (container) {\n container.scrollLeft += scrollBy.x;\n container.scrollTop += scrollBy.y;\n }\n\n var curScroll = getScroll(container);\n var delta = {\n x: curScroll.x - prevScroll.x,\n y: curScroll.y - prevScroll.y\n };\n\n if (delta.x || delta.y) {\n interactable.fire({\n type: 'autoscroll',\n target: element,\n interactable: interactable,\n delta: delta,\n interaction: interaction,\n container: container\n });\n }\n }\n\n autoScroll.prevTime = now;\n }\n\n if (autoScroll.isScrolling) {\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n }\n },\n check: function check(interactable, actionName) {\n var options = interactable.options;\n return options[actionName].autoScroll && options[actionName].autoScroll.enabled;\n },\n onInteractionMove: function onInteractionMove(_ref3) {\n var interaction = _ref3.interaction,\n pointer = _ref3.pointer;\n\n if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) {\n return;\n }\n\n if (interaction.simulation) {\n autoScroll.x = autoScroll.y = 0;\n return;\n }\n\n var top;\n var right;\n var bottom;\n var left;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n\n if (__is_7.window(container)) {\n left = pointer.clientX < autoScroll.margin;\n top = pointer.clientY < autoScroll.margin;\n right = pointer.clientX > container.innerWidth - autoScroll.margin;\n bottom = pointer.clientY > container.innerHeight - autoScroll.margin;\n } else {\n var rect = __domUtils_7.getElementClientRect(container);\n left = pointer.clientX < rect.left + autoScroll.margin;\n top = pointer.clientY < rect.top + autoScroll.margin;\n right = pointer.clientX > rect.right - autoScroll.margin;\n bottom = pointer.clientY > rect.bottom - autoScroll.margin;\n }\n\n autoScroll.x = right ? 1 : left ? -1 : 0;\n autoScroll.y = bottom ? 1 : top ? -1 : 0;\n\n if (!autoScroll.isScrolling) {\n // set the autoScroll properties to those of the target\n autoScroll.margin = options.margin;\n autoScroll.speed = options.speed;\n autoScroll.start(interaction);\n }\n }\n};\n\nfunction getContainer(value, interactable, element) {\n return (__is_7.string(value) ? (0, _$rect_63.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_66.getWindow)(element);\n}\n\nfunction getScroll(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollLeft,\n y: container.scrollTop\n };\n}\n\nfunction getScrollSize(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollWidth,\n y: container.scrollHeight\n };\n}\n\nfunction getScrollSizeDelta(_ref4, func) {\n var interaction = _ref4.interaction,\n element = _ref4.element;\n var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll;\n\n if (!scrollOptions || !scrollOptions.enabled) {\n func();\n return {\n x: 0,\n y: 0\n };\n }\n\n var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element);\n var prevSize = getScroll(scrollContainer);\n func();\n var curSize = getScroll(scrollContainer);\n return {\n x: curSize.x - prevSize.x,\n y: curSize.y - prevSize.y\n };\n}\n\nvar ___default_7 = {\n id: 'auto-scroll',\n install: __install_7\n};\n_$autoScroll_7[\"default\"] = ___default_7;\n\nvar _$InteractableMethods_8 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableMethods_8, \"__esModule\", {\n value: true\n});\n_$InteractableMethods_8[\"default\"] = void 0;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\nvar __is_8 = ___interopRequireWildcard_8(_$is_57);\n\nfunction ___getRequireWildcardCache_8() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_8(scope) {\n var Interactable = scope.Interactable,\n actions = scope.actions;\n Interactable.prototype.getAction = getAction;\n /**\n * ```js\n * interact(element, { ignoreFrom: document.getElementById('no-action') })\n * // or\n * interact(element).ignoreFrom('input, textarea, a')\n * ```\n * @deprecated\n * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any\n * of it's parents match the given CSS selector or Element, no\n * drag/resize/gesture is started.\n *\n * Don't use this method. Instead set the `ignoreFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .draggable({\n * ignoreFrom: 'input, textarea, a[href]'',\n * })\n * .pointerEvents({\n * ignoreFrom: '[no-pointer]',\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to not ignore any elements\n * @return {string | Element | object} The current ignoreFrom value or this\n * Interactable\n */\n\n Interactable.prototype.ignoreFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('ignoreFrom', newValue);\n }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).');\n /**\n * @deprecated\n *\n * A drag/resize/gesture is started only If the target of the `mousedown`,\n * `pointerdown` or `touchstart` event or any of it's parents match the given\n * CSS selector or Element.\n *\n * Don't use this method. Instead set the `allowFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .resizable({\n * allowFrom: '.resize-handle',\n * .pointerEvents({\n * allowFrom: '.handle',,\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to allow from any element\n * @return {string | Element | object} The current allowFrom value or this\n * Interactable\n */\n\n Interactable.prototype.allowFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('allowFrom', newValue);\n }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).');\n /**\n * ```js\n * interact('.resize-drag')\n * .resizable(true)\n * .draggable(true)\n * .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n *\n * if (interact.matchesSelector(event.target, '.drag-handle')) {\n * // force drag with handle target\n * action.name = drag\n * }\n * else {\n * // resize from the top and right edges\n * action.name = 'resize'\n * action.edges = { top: true, right: true }\n * }\n *\n * return action\n * })\n * ```\n *\n * Returns or sets the function used to check action to be performed on\n * pointerDown\n *\n * @param {function | null} [checker] A function which takes a pointer event,\n * defaultAction string, interactable, element and interaction as parameters\n * and returns an object with name property 'drag' 'resize' or 'gesture' and\n * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right\n * props.\n * @return {Function | Interactable} The checker function or this Interactable\n */\n\n Interactable.prototype.actionChecker = actionChecker;\n /**\n * Returns or sets whether the the cursor should be changed depending on the\n * action that would be performed if the mouse were pressed and dragged.\n *\n * @param {boolean} [newValue]\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.styleCursor = styleCursor;\n\n Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) {\n return defaultActionChecker(this, pointer, event, interaction, element, actions);\n };\n}\n\nfunction getAction(pointer, event, interaction, element) {\n var action = this.defaultActionChecker(pointer, event, interaction, element);\n\n if (this.options.actionChecker) {\n return this.options.actionChecker(pointer, event, action, this, element, interaction);\n }\n\n return action;\n}\n\nfunction defaultActionChecker(interactable, pointer, event, interaction, element, actions) {\n var rect = interactable.getRect(element);\n var buttons = event.buttons || {\n 0: 1,\n 1: 4,\n 3: 8,\n 4: 16\n }[event.button];\n var action = null;\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n\n // check mouseButton setting if the pointer is down\n if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) {\n continue;\n }\n\n action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect);\n\n if (action) {\n return action;\n }\n }\n}\n\nfunction styleCursor(newValue) {\n if (__is_8.bool(newValue)) {\n this.options.styleCursor = newValue;\n return this;\n }\n\n if (newValue === null) {\n delete this.options.styleCursor;\n return this;\n }\n\n return this.options.styleCursor;\n}\n\nfunction actionChecker(checker) {\n if (__is_8.func(checker)) {\n this.options.actionChecker = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.options.actionChecker;\n return this;\n }\n\n return this.options.actionChecker;\n}\n\nvar ___default_8 = {\n id: 'auto-start/interactableMethods',\n install: __install_8\n};\n_$InteractableMethods_8[\"default\"] = ___default_8;\n\nvar _$base_9 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_9, \"__esModule\", {\n value: true\n});\n_$base_9[\"default\"] = void 0;\n\nvar __utils_9 = ___interopRequireWildcard_9(_$utils_56);\n\nvar _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8);\n\nfunction ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_9() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_9(scope) {\n var interact = scope.interact,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_InteractableMethods[\"default\"]); // set cursor style on mousedown\n\n interactions.signals.on('down', function (_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget;\n\n if (interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n }); // set cursor style on mousemove\n\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n pointer = _ref2.pointer,\n event = _ref2.event,\n eventTarget = _ref2.eventTarget;\n\n if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n });\n interactions.signals.on('move', function (arg) {\n var interaction = arg.interaction;\n\n if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) {\n return;\n }\n\n scope.autoStart.signals.fire('before-start', arg);\n var interactable = interaction.interactable;\n\n if (interaction.prepared.name && interactable) {\n // check manualStart and interaction limit\n if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) {\n interaction.stop();\n } else {\n interaction.start(interaction.prepared, interactable, interaction.element);\n setInteractionCursor(interaction, scope);\n }\n }\n });\n interactions.signals.on('stop', function (_ref3) {\n var interaction = _ref3.interaction;\n var interactable = interaction.interactable;\n\n if (interactable && interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n });\n defaults.base.actionChecker = null;\n defaults.base.styleCursor = true;\n __utils_9.extend(defaults.perAction, {\n manualStart: false,\n max: Infinity,\n maxPerElement: 1,\n allowFrom: null,\n ignoreFrom: null,\n // only allow left button by default\n // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value\n mouseButtons: 1\n });\n /**\n * Returns or sets the maximum number of concurrent interactions allowed. By\n * default only 1 interaction is allowed at a time (for backwards\n * compatibility). To allow multiple interactions on the same Interactables and\n * elements, you need to enable it in the draggable, resizable and gesturable\n * `'max'` and `'maxPerElement'` options.\n *\n * @alias module:interact.maxInteractions\n *\n * @param {number} [newValue] Any number. newValue <= 0 means no interactions.\n */\n\n interact.maxInteractions = function (newValue) {\n return maxInteractions(newValue, scope);\n };\n\n scope.autoStart = {\n // Allow this many interactions to happen simultaneously\n maxInteractions: Infinity,\n withinInteractionLimit: withinInteractionLimit,\n cursorElement: null,\n signals: new __utils_9.Signals()\n };\n} // Check if the current interactable supports the action.\n// If so, return the validated action. Otherwise, return null\n\n\nfunction validateAction(action, interactable, element, eventTarget, scope) {\n if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) {\n return action;\n }\n\n return null;\n}\n\nfunction validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) {\n for (var i = 0, len = matches.length; i < len; i++) {\n var match = matches[i];\n var matchElement = matchElements[i];\n var matchAction = match.getAction(pointer, event, interaction, matchElement);\n\n if (!matchAction) {\n continue;\n }\n\n var action = validateAction(matchAction, match, matchElement, eventTarget, scope);\n\n if (action) {\n return {\n action: action,\n interactable: match,\n element: matchElement\n };\n }\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction getActionInfo(interaction, pointer, event, eventTarget, scope) {\n var matches = [];\n var matchElements = [];\n var element = eventTarget;\n\n function pushMatches(interactable) {\n matches.push(interactable);\n matchElements.push(element);\n }\n\n while (__utils_9.is.element(element)) {\n matches = [];\n matchElements = [];\n scope.interactables.forEachMatch(element, pushMatches);\n var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope);\n\n if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) {\n return actionInfo;\n }\n\n element = __utils_9.dom.parentNode(element);\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction prepare(interaction, _ref4, scope) {\n var action = _ref4.action,\n interactable = _ref4.interactable,\n element = _ref4.element;\n action = action || {\n name: null\n }; // clear previous target element cursor\n\n if (interaction.interactable && interaction.interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n\n interaction.interactable = interactable;\n interaction.element = element;\n __utils_9.copyAction(interaction.prepared, action);\n interaction.rect = interactable && action.name ? interactable.getRect(element) : null;\n setInteractionCursor(interaction, scope);\n scope.autoStart.signals.fire('prepared', {\n interaction: interaction\n });\n}\n\nfunction withinInteractionLimit(interactable, element, action, scope) {\n var options = interactable.options;\n var maxActions = options[action.name].max;\n var maxPerElement = options[action.name].maxPerElement;\n var autoStartMax = scope.autoStart.maxInteractions;\n var activeInteractions = 0;\n var interactableCount = 0;\n var elementCount = 0; // no actions if any of these values == 0\n\n if (!(maxActions && maxPerElement && autoStartMax)) {\n return false;\n }\n\n for (var _i = 0; _i < scope.interactions.list.length; _i++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i];\n var interaction = _ref5;\n var otherAction = interaction.prepared.name;\n\n if (!interaction.interacting()) {\n continue;\n }\n\n activeInteractions++;\n\n if (activeInteractions >= autoStartMax) {\n return false;\n }\n\n if (interaction.interactable !== interactable) {\n continue;\n }\n\n interactableCount += otherAction === action.name ? 1 : 0;\n\n if (interactableCount >= maxActions) {\n return false;\n }\n\n if (interaction.element === element) {\n elementCount++;\n\n if (otherAction === action.name && elementCount >= maxPerElement) {\n return false;\n }\n }\n }\n\n return autoStartMax > 0;\n}\n\nfunction maxInteractions(newValue, scope) {\n if (__utils_9.is.number(newValue)) {\n scope.autoStart.maxInteractions = newValue;\n return this;\n }\n\n return scope.autoStart.maxInteractions;\n}\n\nfunction setCursor(element, cursor, scope) {\n if (scope.autoStart.cursorElement) {\n scope.autoStart.cursorElement.style.cursor = '';\n }\n\n element.ownerDocument.documentElement.style.cursor = cursor;\n element.style.cursor = cursor;\n scope.autoStart.cursorElement = cursor ? element : null;\n}\n\nfunction setInteractionCursor(interaction, scope) {\n var interactable = interaction.interactable,\n element = interaction.element,\n prepared = interaction.prepared;\n\n if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) {\n return;\n }\n\n var cursor = '';\n\n if (prepared.name) {\n var cursorChecker = interactable.options[prepared.name].cursorChecker;\n\n if (__utils_9.is.func(cursorChecker)) {\n cursor = cursorChecker(prepared, interactable, element, interaction._interacting);\n } else {\n cursor = scope.actions[prepared.name].getCursor(prepared);\n }\n }\n\n setCursor(interaction.element, cursor || '', scope);\n}\n\nvar ___default_9 = {\n id: 'auto-start/base',\n install: __install_9,\n maxInteractions: maxInteractions,\n withinInteractionLimit: withinInteractionLimit,\n validateAction: validateAction\n};\n_$base_9[\"default\"] = ___default_9;\n\nvar _$dragAxis_10 = {};\n\"use strict\";\n\nObject.defineProperty(_$dragAxis_10, \"__esModule\", {\n value: true\n});\n_$dragAxis_10[\"default\"] = void 0;\n\nvar ___scope_10 = _$scope_24({});\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar __is_10 = ___interopRequireWildcard_10(_$is_57);\n\nvar _base = ___interopRequireDefault_10(_$base_9);\n\nfunction ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_10() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_10(scope) {\n scope.autoStart.signals.on('before-start', function (_ref) {\n var interaction = _ref.interaction,\n eventTarget = _ref.eventTarget,\n dx = _ref.dx,\n dy = _ref.dy;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n } // check if a drag is in the correct axis\n\n\n var absX = Math.abs(dx);\n var absY = Math.abs(dy);\n var targetOptions = interaction.interactable.options.drag;\n var startAxis = targetOptions.startAxis;\n var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy';\n interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy'\n : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable\n\n if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) {\n // cancel the prepared action\n interaction.prepared.name = null; // then try to get a drag from another ineractable\n\n var element = eventTarget;\n\n var getDraggable = function getDraggable(interactable) {\n if (interactable === interaction.interactable) {\n return;\n }\n\n var options = interaction.interactable.options.drag;\n\n if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) {\n var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element);\n\n if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base[\"default\"].validateAction(action, interactable, element, eventTarget, scope)) {\n return interactable;\n }\n }\n }; // check all interactables\n\n\n while (__is_10.element(element)) {\n var interactable = scope.interactables.forEachMatch(element, getDraggable);\n\n if (interactable) {\n interaction.prepared.name = ___scope_10.ActionName.Drag;\n interaction.interactable = interactable;\n interaction.element = element;\n break;\n }\n\n element = (0, _$domUtils_51.parentNode)(element);\n }\n }\n });\n\n function checkStartAxis(startAxis, interactable) {\n if (!interactable) {\n return false;\n }\n\n var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis;\n return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis;\n }\n}\n\nvar ___default_10 = {\n id: 'auto-start/dragAxis',\n install: __install_10\n};\n_$dragAxis_10[\"default\"] = ___default_10;\n\nvar _$hold_11 = {};\n\"use strict\";\n\nObject.defineProperty(_$hold_11, \"__esModule\", {\n value: true\n});\n_$hold_11[\"default\"] = void 0;\n\nvar ___base_11 = ___interopRequireDefault_11(_$base_9);\n\nfunction ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_11(scope) {\n var autoStart = scope.autoStart,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(___base_11[\"default\"]);\n defaults.perAction.hold = 0;\n defaults.perAction.delay = 0;\n interactions.signals.on('new', function (interaction) {\n interaction.autoStartHoldTimer = null;\n });\n autoStart.signals.on('prepared', function (_ref) {\n var interaction = _ref.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.autoStartHoldTimer = setTimeout(function () {\n interaction.start(interaction.prepared, interaction.interactable, interaction.element);\n }, hold);\n }\n });\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n duplicate = _ref2.duplicate;\n\n if (interaction.pointerWasMoved && !duplicate) {\n clearTimeout(interaction.autoStartHoldTimer);\n }\n }); // prevent regular down->move autoStart\n\n autoStart.signals.on('before-start', function (_ref3) {\n var interaction = _ref3.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.prepared.name = null;\n }\n });\n}\n\nfunction getHoldDuration(interaction) {\n var actionName = interaction.prepared && interaction.prepared.name;\n\n if (!actionName) {\n return null;\n }\n\n var options = interaction.interactable.options;\n return options[actionName].hold || options[actionName].delay;\n}\n\nvar ___default_11 = {\n id: 'auto-start/hold',\n install: __install_11,\n getHoldDuration: getHoldDuration\n};\n_$hold_11[\"default\"] = ___default_11;\n\nvar _$autoStart_12 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoStart_12, \"__esModule\", {\n value: true\n});\n_$autoStart_12.install = __install_12;\nObject.defineProperty(_$autoStart_12, \"autoStart\", {\n enumerable: true,\n get: function get() {\n return ___base_12[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"dragAxis\", {\n enumerable: true,\n get: function get() {\n return _dragAxis[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"hold\", {\n enumerable: true,\n get: function get() {\n return _hold[\"default\"];\n }\n});\n_$autoStart_12.id = void 0;\n\nvar ___base_12 = ___interopRequireDefault_12(_$base_9);\n\nvar _dragAxis = ___interopRequireDefault_12(_$dragAxis_10);\n\nvar _hold = ___interopRequireDefault_12(_$hold_11);\n\nfunction ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_12(scope) {\n scope.usePlugin(___base_12[\"default\"]);\n scope.usePlugin(_hold[\"default\"]);\n scope.usePlugin(_dragAxis[\"default\"]);\n}\n\nvar __id_12 = 'auto-start';\n_$autoStart_12.id = __id_12;\n\nvar _$interactablePreventDefault_21 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactablePreventDefault_21, \"__esModule\", {\n value: true\n});\n_$interactablePreventDefault_21.install = __install_21;\n_$interactablePreventDefault_21[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_21 = ___interopRequireDefault_21(_$events_52);\n\nvar __is_21 = ___interopRequireWildcard_21(_$is_57);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___getRequireWildcardCache_21() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction preventDefault(newValue) {\n if (/^(always|never|auto)$/.test(newValue)) {\n this.options.preventDefault = newValue;\n return this;\n }\n\n if (__is_21.bool(newValue)) {\n this.options.preventDefault = newValue ? 'always' : 'never';\n return this;\n }\n\n return this.options.preventDefault;\n}\n\nfunction checkAndPreventDefault(interactable, scope, event) {\n var setting = interactable.options.preventDefault;\n\n if (setting === 'never') {\n return;\n }\n\n if (setting === 'always') {\n event.preventDefault();\n return;\n } // setting === 'auto'\n // if the browser supports passive event listeners and isn't running on iOS,\n // don't preventDefault of touch{start,move} events. CSS touch-action and\n // user-select should be used instead of calling event.preventDefault().\n\n\n if (___events_21[\"default\"].supportsPassive && /^touch(start|move)$/.test(event.type)) {\n var doc = (0, _$window_66.getWindow)(event.target).document;\n var docOptions = scope.getDocOptions(doc);\n\n if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) {\n return;\n }\n } // don't preventDefault of pointerdown events\n\n\n if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) {\n return;\n } // don't preventDefault on editable elements\n\n\n if (__is_21.element(event.target) && (0, _$domUtils_51.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) {\n return;\n }\n\n event.preventDefault();\n}\n\nfunction onInteractionEvent(_ref) {\n var interaction = _ref.interaction,\n event = _ref.event;\n\n if (interaction.interactable) {\n interaction.interactable.checkAndPreventDefault(event);\n }\n}\n\nfunction __install_21(scope) {\n /** @lends Interactable */\n var Interactable = scope.Interactable;\n /**\n * Returns or sets whether to prevent the browser's default behaviour in\n * response to pointer events. Can be set to:\n * - `'always'` to always prevent\n * - `'never'` to never prevent\n * - `'auto'` to let interact.js try to determine what would be best\n *\n * @param {string} [newValue] `'always'`, `'never'` or `'auto'`\n * @return {string | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.preventDefault = preventDefault;\n\n Interactable.prototype.checkAndPreventDefault = function (event) {\n return checkAndPreventDefault(this, scope, event);\n };\n\n var _arr = ['down', 'move', 'up', 'cancel'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var eventSignal = _arr[_i];\n scope.interactions.signals.on(eventSignal, onInteractionEvent);\n } // prevent native HTML5 drag on interact.js target elements\n\n\n scope.interactions.docEvents.push({\n type: 'dragstart',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n\n if (interaction.element && (interaction.element === event.target || (0, _$domUtils_51.nodeContains)(interaction.element, event.target))) {\n interaction.interactable.checkAndPreventDefault(event);\n return;\n }\n }\n }\n });\n}\n\nvar ___default_21 = {\n id: 'core/interactablePreventDefault',\n install: __install_21\n};\n_$interactablePreventDefault_21[\"default\"] = ___default_21;\n\nvar _$devTools_25 = {};\n\"use strict\";\n\nObject.defineProperty(_$devTools_25, \"__esModule\", {\n value: true\n});\n_$devTools_25[\"default\"] = void 0;\n\nvar ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___extend_25 = ___interopRequireDefault_25(_$extend_53);\n\nvar __is_25 = ___interopRequireWildcard_25(_$is_57);\n\nvar ___window_25 = ___interopRequireDefault_25(_$window_66);\n\nfunction ___getRequireWildcardCache_25() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); }\n\nfunction ___nonIterableSpread_25() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nvar CheckName;\n\n(function (CheckName) {\n CheckName[\"touchAction\"] = \"\";\n CheckName[\"boxSizing\"] = \"\";\n CheckName[\"noListeners\"] = \"\";\n})(CheckName || (CheckName = {}));\n\nvar prefix = '[interact.js] ';\nvar links = {\n touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action',\n boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing'\n};\nvar isProduction = \"production\" === 'production'; // eslint-disable-next-line no-restricted-syntax\n\nfunction __install_25(scope) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n logger = _ref.logger;\n\n var interactions = scope.interactions,\n Interactable = scope.Interactable,\n defaults = scope.defaults;\n logger = logger || console;\n interactions.signals.on('action-start', function (_ref2) {\n var interaction = _ref2.interaction;\n\n for (var _i = 0; _i < checks.length; _i++) {\n var _ref3;\n\n _ref3 = checks[_i];\n var check = _ref3;\n var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name];\n\n if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) {\n var _logger;\n\n (_logger = logger).warn.apply(_logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction))));\n }\n }\n });\n defaults.base.devTools = {\n ignore: {}\n };\n\n Interactable.prototype.devTools = function (options) {\n if (options) {\n (0, ___extend_25[\"default\"])(this.options.devTools, options);\n return this;\n }\n\n return this.options.devTools;\n };\n}\n\nvar checks = [{\n name: 'touchAction',\n perform: function perform(_ref4) {\n var element = _ref4.element;\n return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/);\n },\n getInfo: function getInfo(_ref5) {\n var element = _ref5.element;\n return [element, links.touchAction];\n },\n text: 'Consider adding CSS \"touch-action: none\" to this element\\n'\n}, {\n name: 'boxSizing',\n perform: function perform(interaction) {\n var element = interaction.element;\n return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25[\"default\"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/);\n },\n text: 'Consider adding CSS \"box-sizing: border-box\" to this resizable element',\n getInfo: function getInfo(_ref6) {\n var element = _ref6.element;\n return [element, links.boxSizing];\n }\n}, {\n name: 'noListeners',\n perform: function perform(interaction) {\n var actionName = interaction.prepared.name;\n var moveListeners = interaction.interactable.events.types[\"\".concat(actionName, \"move\")] || [];\n return !moveListeners.length;\n },\n getInfo: function getInfo(interaction) {\n return [interaction.prepared.name, interaction.interactable];\n },\n text: 'There are no listeners set for this action'\n}];\n\nfunction hasStyle(element, prop, styleRe) {\n return styleRe.test(element.style[prop] || ___window_25[\"default\"].window.getComputedStyle(element)[prop]);\n}\n\nfunction parentHasStyle(element, prop, styleRe) {\n var parent = element;\n\n while (__is_25.element(parent)) {\n if (hasStyle(parent, prop, styleRe)) {\n return true;\n }\n\n parent = (0, _$domUtils_51.parentNode)(parent);\n }\n\n return false;\n}\n\nvar __id_25 = 'dev-tools';\nvar defaultExport = isProduction ? {\n id: __id_25,\n install: function install() {}\n} : {\n id: __id_25,\n install: __install_25,\n checks: checks,\n CheckName: CheckName,\n links: links,\n prefix: prefix\n};\nvar ___default_25 = defaultExport;\n_$devTools_25[\"default\"] = ___default_25;\n\nvar _$base_30 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_30, \"__esModule\", {\n value: true\n});\n_$base_30.startAll = startAll;\n_$base_30.setAll = setAll;\n_$base_30.prepareStates = prepareStates;\n_$base_30.setCoords = setCoords;\n_$base_30.restoreCoords = restoreCoords;\n_$base_30.makeModifier = makeModifier;\n_$base_30[\"default\"] = void 0;\n\nvar ___extend_30 = ___interopRequireDefault_30(_$extend_53);\n\nfunction ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); }\n\nfunction ___nonIterableRest_30() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __install_30(scope) {\n var interactions = scope.interactions;\n scope.defaults.perAction.modifiers = [];\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.modifiers = {\n startOffset: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n offsets: {},\n states: null,\n result: null,\n endPrevented: false,\n startDelta: null\n };\n });\n interactions.signals.on('before-action-start', function (arg) {\n __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page);\n });\n interactions.signals.on('action-resume', function (arg) {\n stop(arg);\n __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords);\n __beforeMove_30(arg);\n });\n interactions.signals.on('after-action-move', restoreCoords);\n interactions.signals.on('before-action-move', __beforeMove_30);\n interactions.signals.on('before-action-start', setCoords);\n interactions.signals.on('after-action-start', restoreCoords);\n interactions.signals.on('before-action-end', beforeEnd);\n interactions.signals.on('stop', stop);\n}\n\nfunction __start_30(_ref2, pageCoords, prevCoords) {\n var interaction = _ref2.interaction,\n phase = _ref2.phase;\n var interactable = interaction.interactable,\n element = interaction.element;\n var modifierList = getModifierList(interaction);\n var states = prepareStates(modifierList);\n var rect = (0, ___extend_30[\"default\"])({}, interaction.rect);\n\n if (!('width' in rect)) {\n rect.width = rect.right - rect.left;\n }\n\n if (!('height' in rect)) {\n rect.height = rect.bottom - rect.top;\n }\n\n var startOffset = getRectOffset(rect, pageCoords);\n interaction.modifiers.startOffset = startOffset;\n interaction.modifiers.startDelta = {\n x: 0,\n y: 0\n };\n var arg = {\n interaction: interaction,\n interactable: interactable,\n element: element,\n pageCoords: pageCoords,\n phase: phase,\n rect: rect,\n startOffset: startOffset,\n states: states,\n preEnd: false,\n requireEndOnly: false,\n prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page)\n };\n interaction.modifiers.states = states;\n interaction.modifiers.result = null;\n startAll(arg);\n var result = interaction.modifiers.result = setAll(arg);\n return result;\n}\n\nfunction startAll(arg) {\n var states = arg.states;\n\n for (var _i = 0; _i < states.length; _i++) {\n var _ref3;\n\n _ref3 = states[_i];\n var state = _ref3;\n\n if (state.methods.start) {\n arg.state = state;\n state.methods.start(arg);\n }\n }\n}\n\nfunction setAll(arg) {\n var prevCoords = arg.prevCoords,\n phase = arg.phase,\n preEnd = arg.preEnd,\n requireEndOnly = arg.requireEndOnly,\n rect = arg.rect,\n states = arg.states;\n arg.coords = (0, ___extend_30[\"default\"])({}, arg.pageCoords);\n arg.rect = (0, ___extend_30[\"default\"])({}, rect);\n var result = {\n delta: {\n x: 0,\n y: 0\n },\n rectDelta: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n coords: arg.coords,\n changed: true\n };\n\n for (var _i2 = 0; _i2 < states.length; _i2++) {\n var _ref4;\n\n _ref4 = states[_i2];\n var state = _ref4;\n var options = state.options;\n\n if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) {\n continue;\n }\n\n arg.state = state;\n state.methods.set(arg);\n }\n\n result.delta.x = arg.coords.x - arg.pageCoords.x;\n result.delta.y = arg.coords.y - arg.pageCoords.y;\n var rectChanged = false;\n\n if (rect) {\n result.rectDelta.left = arg.rect.left - rect.left;\n result.rectDelta.right = arg.rect.right - rect.right;\n result.rectDelta.top = arg.rect.top - rect.top;\n result.rectDelta.bottom = arg.rect.bottom - rect.bottom;\n rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0;\n }\n\n result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged;\n return result;\n}\n\nfunction __beforeMove_30(arg) {\n var interaction = arg.interaction,\n phase = arg.phase,\n preEnd = arg.preEnd,\n skipModifiers = arg.skipModifiers;\n var interactable = interaction.interactable,\n element = interaction.element;\n var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states;\n var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page);\n var modifierResult = setAll({\n interaction: interaction,\n interactable: interactable,\n element: element,\n preEnd: preEnd,\n phase: phase,\n pageCoords: arg.modifiedCoords || interaction.coords.cur.page,\n prevCoords: prevCoords,\n rect: interaction.rect,\n states: states,\n requireEndOnly: false\n });\n interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same\n // cordinates as before\n\n if (!modifierResult.changed && interaction.interacting()) {\n return false;\n }\n\n if (arg.modifiedCoords) {\n var page = interaction.coords.cur.page;\n var adjustment = {\n x: arg.modifiedCoords.x - page.x,\n y: arg.modifiedCoords.y - page.y\n };\n modifierResult.coords.x += adjustment.x;\n modifierResult.coords.y += adjustment.y;\n modifierResult.delta.x += adjustment.x;\n modifierResult.delta.y += adjustment.y;\n }\n\n setCoords(arg);\n}\n\nfunction beforeEnd(arg) {\n var interaction = arg.interaction,\n event = arg.event,\n noPreEnd = arg.noPreEnd;\n var states = interaction.modifiers.states;\n\n if (noPreEnd || !states || !states.length) {\n return;\n }\n\n var didPreEnd = false;\n\n for (var _i3 = 0; _i3 < states.length; _i3++) {\n var _ref5;\n\n _ref5 = states[_i3];\n var state = _ref5;\n arg.state = state;\n var options = state.options,\n methods = state.methods;\n var endResult = methods.beforeEnd && methods.beforeEnd(arg);\n\n if (endResult === false) {\n interaction.modifiers.endPrevented = true;\n return false;\n } // if the endOnly option is true for any modifier\n\n\n if (!didPreEnd && shouldDo(options, true, true)) {\n // fire a move event at the modified coordinates\n interaction.move({\n event: event,\n preEnd: true\n });\n didPreEnd = true;\n }\n }\n}\n\nfunction stop(arg) {\n var interaction = arg.interaction;\n var states = interaction.modifiers.states;\n\n if (!states || !states.length) {\n return;\n }\n\n var modifierArg = (0, ___extend_30[\"default\"])({\n states: states,\n interactable: interaction.interactable,\n element: interaction.element,\n rect: null\n }, arg);\n\n for (var _i4 = 0; _i4 < states.length; _i4++) {\n var _ref6;\n\n _ref6 = states[_i4];\n var state = _ref6;\n modifierArg.state = state;\n\n if (state.methods.stop) {\n state.methods.stop(modifierArg);\n }\n }\n\n arg.interaction.modifiers.states = null;\n arg.interaction.modifiers.endPrevented = false;\n}\n\nfunction getModifierList(interaction) {\n var actionOptions = interaction.interactable.options[interaction.prepared.name];\n var actionModifiers = actionOptions.modifiers;\n\n if (actionModifiers && actionModifiers.length) {\n return actionModifiers.filter(function (modifier) {\n return !modifier.options || modifier.options.enabled !== false;\n });\n }\n\n return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) {\n var options = actionOptions[type];\n return options && options.enabled && {\n options: options,\n methods: options._methods\n };\n }).filter(function (m) {\n return !!m;\n });\n}\n\nfunction prepareStates(modifierList) {\n var states = [];\n\n for (var index = 0; index < modifierList.length; index++) {\n var _modifierList$index = modifierList[index],\n options = _modifierList$index.options,\n methods = _modifierList$index.methods,\n name = _modifierList$index.name;\n\n if (options && options.enabled === false) {\n continue;\n }\n\n states.push({\n options: options,\n methods: methods,\n index: index,\n name: name\n });\n }\n\n return states;\n}\n\nfunction setCoords(arg) {\n var interaction = arg.interaction,\n phase = arg.phase;\n var curCoords = interaction.coords.cur;\n var startCoords = interaction.coords.start;\n var _interaction$modifier = interaction.modifiers,\n result = _interaction$modifier.result,\n startDelta = _interaction$modifier.startDelta;\n var curDelta = result.delta;\n\n if (phase === 'start') {\n (0, ___extend_30[\"default\"])(interaction.modifiers.startDelta, result.delta);\n }\n\n var _arr = [[startCoords, startDelta], [curCoords, curDelta]];\n\n for (var _i5 = 0; _i5 < _arr.length; _i5++) {\n var _arr$_i = ___slicedToArray_30(_arr[_i5], 2),\n coordsSet = _arr$_i[0],\n delta = _arr$_i[1];\n\n coordsSet.page.x += delta.x;\n coordsSet.page.y += delta.y;\n coordsSet.client.x += delta.x;\n coordsSet.client.y += delta.y;\n }\n\n var rectDelta = interaction.modifiers.result.rectDelta;\n var rect = arg.rect || interaction.rect;\n rect.left += rectDelta.left;\n rect.right += rectDelta.right;\n rect.top += rectDelta.top;\n rect.bottom += rectDelta.bottom;\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n}\n\nfunction restoreCoords(_ref7) {\n var _ref7$interaction = _ref7.interaction,\n coords = _ref7$interaction.coords,\n rect = _ref7$interaction.rect,\n modifiers = _ref7$interaction.modifiers;\n\n if (!modifiers.result) {\n return;\n }\n\n var startDelta = modifiers.startDelta;\n var _modifiers$result = modifiers.result,\n curDelta = _modifiers$result.delta,\n rectDelta = _modifiers$result.rectDelta;\n var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]];\n\n for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) {\n var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2),\n coordsSet = _coordsAndDeltas$_i[0],\n delta = _coordsAndDeltas$_i[1];\n\n coordsSet.page.x -= delta.x;\n coordsSet.page.y -= delta.y;\n coordsSet.client.x -= delta.x;\n coordsSet.client.y -= delta.y;\n }\n\n rect.left -= rectDelta.left;\n rect.right -= rectDelta.right;\n rect.top -= rectDelta.top;\n rect.bottom -= rectDelta.bottom;\n}\n\nfunction shouldDo(options, preEnd, requireEndOnly, phase) {\n return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly;\n}\n\nfunction getRectOffset(rect, coords) {\n return rect ? {\n left: coords.x - rect.left,\n top: coords.y - rect.top,\n right: rect.right - coords.x,\n bottom: rect.bottom - coords.y\n } : {\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n };\n}\n\nfunction makeModifier(module, name) {\n var defaults = module.defaults;\n var methods = {\n start: module.start,\n set: module.set,\n beforeEnd: module.beforeEnd,\n stop: module.stop\n };\n\n var modifier = function modifier(_options) {\n var options = _options || {};\n options.enabled = options.enabled !== false; // add missing defaults to options\n\n for (var prop in defaults) {\n if (!(prop in options)) {\n options[prop] = defaults[prop];\n }\n }\n\n var m = {\n options: options,\n methods: methods,\n name: name\n };\n return m;\n };\n\n if (name && typeof name === 'string') {\n // for backwrads compatibility\n modifier._defaults = defaults;\n modifier._methods = methods;\n }\n\n return modifier;\n}\n\nvar ___default_30 = {\n id: 'modifiers/base',\n install: __install_30,\n startAll: startAll,\n setAll: setAll,\n prepareStates: prepareStates,\n start: __start_30,\n beforeMove: __beforeMove_30,\n beforeEnd: beforeEnd,\n stop: stop,\n shouldDo: shouldDo,\n getModifierList: getModifierList,\n getRectOffset: getRectOffset,\n makeModifier: makeModifier\n};\n_$base_30[\"default\"] = ___default_30;\n\nvar _$inertia_26 = {};\n\"use strict\";\n\nObject.defineProperty(_$inertia_26, \"__esModule\", {\n value: true\n});\n_$inertia_26[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\nvar ___base_26 = ___interopRequireWildcard_26(_$base_30);\n\nvar __utils_26 = ___interopRequireWildcard_26(_$utils_56);\n\nvar ___raf_26 = ___interopRequireDefault_26(_$raf_62);\n\nfunction ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_26() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n_$InteractEvent_15.EventPhase.Resume = 'resume';\n_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart';\n\nfunction __install_26(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.inertia = {\n active: false,\n smoothEnd: false,\n allowResume: false,\n upCoords: {},\n timeout: null\n };\n });\n interactions.signals.on('before-action-end', function (arg) {\n return release(arg, scope);\n });\n interactions.signals.on('down', function (arg) {\n return resume(arg, scope);\n });\n interactions.signals.on('stop', __stop_26);\n defaults.perAction.inertia = {\n enabled: false,\n resistance: 10,\n minSpeed: 100,\n endSpeed: 10,\n allowResume: true,\n smoothEndDuration: 300\n };\n scope.usePlugin(___base_26[\"default\"]);\n}\n\nfunction resume(_ref2, scope) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n pointer = _ref2.pointer,\n eventTarget = _ref2.eventTarget;\n var state = interaction.inertia; // Check if the down event hits the current inertia target\n\n if (state.active) {\n var element = eventTarget; // climb up the DOM tree from the event target\n\n while (__utils_26.is.element(element)) {\n // if interaction element is the current inertia target element\n if (element === interaction.element) {\n // stop inertia\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null; // update pointers to the down event's coordinates\n\n interaction.updatePointer(pointer, event, eventTarget, true);\n __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) {\n return p.pointer;\n }), interaction._now()); // fire appropriate signals\n\n var signalArg = {\n interaction: interaction,\n phase: _$InteractEvent_15.EventPhase.Resume\n };\n scope.interactions.signals.fire('action-resume', signalArg); // fire a reume event\n\n var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element);\n\n interaction._fireEvent(resumeEvent);\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n break;\n }\n\n element = __utils_26.dom.parentNode(element);\n }\n }\n}\n\nfunction release(_ref3, scope) {\n var interaction = _ref3.interaction,\n event = _ref3.event,\n noPreEnd = _ref3.noPreEnd;\n var state = interaction.inertia;\n\n if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) {\n return null;\n }\n\n var options = __getOptions_26(interaction);\n\n var now = interaction._now();\n\n var velocityClient = interaction.coords.velocity.client;\n var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y);\n var smoothEnd = false;\n var modifierResult; // check if inertia should be started\n\n var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent;\n var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed;\n var modifierArg = {\n interaction: interaction,\n pageCoords: interaction.coords.cur.page,\n states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) {\n return __utils_26.extend({}, modifierStatus);\n }),\n preEnd: true,\n prevCoords: null,\n requireEndOnly: null,\n phase: _$InteractEvent_15.EventPhase.InertiaStart\n }; // smoothEnd\n\n if (inertiaPossible && !inertia) {\n modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page;\n modifierArg.requireEndOnly = false;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n\n if (modifierResult.changed) {\n smoothEnd = true;\n }\n }\n\n if (!(inertia || smoothEnd)) {\n return null;\n }\n\n __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur);\n (0, ___base_26.setCoords)(modifierArg);\n interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name\n interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element);\n (0, ___base_26.restoreCoords)(modifierArg);\n state.t0 = now;\n state.active = true;\n state.allowResume = options.allowResume;\n interaction.simulation = state;\n interaction.interactable.fire(state.startEvent);\n\n if (inertia) {\n state.vx0 = interaction.coords.velocity.client.x;\n state.vy0 = interaction.coords.velocity.client.y;\n state.v0 = pointerSpeed;\n calcInertia(interaction, state);\n __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page);\n modifierArg.pageCoords.x += state.xe;\n modifierArg.pageCoords.y += state.ye;\n modifierArg.prevCoords = null;\n modifierArg.requireEndOnly = true;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n state.modifiedXe += modifierResult.delta.x;\n state.modifiedYe += modifierResult.delta.y;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.smoothEnd = true;\n state.xe = modifierResult.delta.x;\n state.ye = modifierResult.delta.y;\n state.sx = state.sy = 0;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n }\n\n return false;\n}\n\nfunction __stop_26(_ref4) {\n var interaction = _ref4.interaction;\n var state = interaction.inertia;\n\n if (state.active) {\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction calcInertia(interaction, state) {\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda;\n state.x0 = interaction.prevEvent.page.x;\n state.y0 = interaction.prevEvent.page.y;\n state.t0 = state.startEvent.timeStamp / 1000;\n state.sx = state.sy = 0;\n state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda;\n state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda;\n state.te = inertiaDur;\n state.lambda_v0 = lambda / state.v0;\n state.one_ve_v0 = 1 - options.endSpeed / state.v0;\n}\n\nfunction inertiaTick(interaction) {\n updateInertiaCoords(interaction);\n __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur);\n __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta);\n var state = interaction.inertia;\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var t = interaction._now() / 1000 - state.t0;\n\n if (t < state.te) {\n var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0;\n\n if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) {\n state.sx = state.xe * progress;\n state.sy = state.ye * progress;\n } else {\n var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress);\n state.sx = quadPoint.x;\n state.sy = quadPoint.y;\n }\n\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.sx = state.modifiedXe;\n state.sy = state.modifiedYe;\n interaction.move();\n interaction.end(state.startEvent);\n state.active = false;\n interaction.simulation = null;\n }\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n}\n\nfunction smothEndTick(interaction) {\n updateInertiaCoords(interaction);\n var state = interaction.inertia;\n var t = interaction._now() - state.t0;\n\n var _getOptions = __getOptions_26(interaction),\n duration = _getOptions.smoothEndDuration;\n\n if (t < duration) {\n state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration);\n state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration);\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n } else {\n state.sx = state.xe;\n state.sy = state.ye;\n interaction.move();\n interaction.end(state.startEvent);\n state.smoothEnd = state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction updateInertiaCoords(interaction) {\n var state = interaction.inertia; // return if inertia isn't running\n\n if (!state.active) {\n return;\n }\n\n var pageUp = state.upCoords.page;\n var clientUp = state.upCoords.client;\n __utils_26.pointer.setCoords(interaction.coords.cur, [{\n pageX: pageUp.x + state.sx,\n pageY: pageUp.y + state.sy,\n clientX: clientUp.x + state.sx,\n clientY: clientUp.y + state.sy\n }], interaction._now());\n}\n\nfunction __getOptions_26(_ref5) {\n var interactable = _ref5.interactable,\n prepared = _ref5.prepared;\n return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia;\n}\n\nvar ___default_26 = {\n id: 'inertia',\n install: __install_26,\n calcInertia: calcInertia,\n inertiaTick: inertiaTick,\n smothEndTick: smothEndTick,\n updateInertiaCoords: updateInertiaCoords\n};\n_$inertia_26[\"default\"] = ___default_26;\n\nvar _$pointer_33 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_33, \"__esModule\", {\n value: true\n});\n_$pointer_33[\"default\"] = void 0;\n\nvar ___extend_33 = ___interopRequireDefault_33(_$extend_53);\n\nvar __is_33 = ___interopRequireWildcard_33(_$is_57);\n\nvar ___rect_33 = ___interopRequireDefault_33(_$rect_63);\n\nfunction ___getRequireWildcardCache_33() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __start_33(_ref) {\n var rect = _ref.rect,\n startOffset = _ref.startOffset,\n state = _ref.state,\n interaction = _ref.interaction,\n pageCoords = _ref.pageCoords;\n var options = state.options;\n var elementRect = options.elementRect;\n var offset = (0, ___extend_33[\"default\"])({\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n }, options.offset || {});\n\n if (rect && elementRect) {\n var restriction = getRestrictionRect(options.restriction, interaction, pageCoords);\n\n if (restriction) {\n var widthDiff = restriction.right - restriction.left - rect.width;\n var heightDiff = restriction.bottom - restriction.top - rect.height;\n\n if (widthDiff < 0) {\n offset.left += widthDiff;\n offset.right += widthDiff;\n }\n\n if (heightDiff < 0) {\n offset.top += heightDiff;\n offset.bottom += heightDiff;\n }\n }\n\n offset.left += startOffset.left - rect.width * elementRect.left;\n offset.top += startOffset.top - rect.height * elementRect.top;\n offset.right += startOffset.right - rect.width * (1 - elementRect.right);\n offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom);\n }\n\n state.offset = offset;\n}\n\nfunction set(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var options = state.options,\n offset = state.offset;\n var restriction = getRestrictionRect(options.restriction, interaction, coords);\n\n if (!restriction) {\n return;\n }\n\n var rect = ___rect_33[\"default\"].xywhToTlbr(restriction);\n\n coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left);\n coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top);\n}\n\nfunction getRestrictionRect(value, interaction, coords) {\n if (__is_33.func(value)) {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]);\n } else {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element);\n }\n}\n\nvar __defaults_33 = {\n restriction: null,\n elementRect: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrict = {\n start: __start_33,\n set: set,\n getRestrictionRect: getRestrictionRect,\n defaults: __defaults_33\n};\nvar ___default_33 = restrict;\n_$pointer_33[\"default\"] = ___default_33;\n\nvar _$edges_32 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_32, \"__esModule\", {\n value: true\n});\n_$edges_32[\"default\"] = void 0;\n\nvar ___extend_32 = ___interopRequireDefault_32(_$extend_53);\n\nvar ___rect_32 = ___interopRequireDefault_32(_$rect_63);\n\nvar _pointer = ___interopRequireDefault_32(_$pointer_33);\n\nfunction ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n// This module adds the options.resize.restrictEdges setting which sets min and\n// max for the top, left, bottom and right edges of the target being resized.\n//\n// interact(target).resize({\n// edges: { top: true, left: true },\n// restrictEdges: {\n// inner: { top: 200, left: 200, right: 400, bottom: 400 },\n// outer: { top: 0, left: 0, right: 600, bottom: 600 },\n// },\n// })\nvar __getRestrictionRect_32 = _pointer[\"default\"].getRestrictionRect;\nvar noInner = {\n top: +Infinity,\n left: +Infinity,\n bottom: -Infinity,\n right: -Infinity\n};\nvar noOuter = {\n top: -Infinity,\n left: -Infinity,\n bottom: +Infinity,\n right: +Infinity\n};\n\nfunction __start_32(_ref) {\n var interaction = _ref.interaction,\n state = _ref.state;\n var options = state.options;\n var startOffset = interaction.modifiers.startOffset;\n var offset;\n\n if (options) {\n var offsetRect = __getRestrictionRect_32(options.offset, interaction, interaction.coords.start.page);\n offset = ___rect_32[\"default\"].rectToXY(offsetRect);\n }\n\n offset = offset || {\n x: 0,\n y: 0\n };\n state.offset = {\n top: offset.y + startOffset.top,\n left: offset.x + startOffset.left,\n bottom: offset.y - startOffset.bottom,\n right: offset.x - startOffset.right\n };\n}\n\nfunction __set_32(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var offset = state.offset,\n options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var page = (0, ___extend_32[\"default\"])({}, coords);\n var inner = __getRestrictionRect_32(options.inner, interaction, page) || {};\n var outer = __getRestrictionRect_32(options.outer, interaction, page) || {};\n fixRect(inner, noInner);\n fixRect(outer, noOuter);\n\n if (edges.top) {\n coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top);\n } else if (edges.bottom) {\n coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom);\n }\n\n if (edges.left) {\n coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left);\n } else if (edges.right) {\n coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right);\n }\n}\n\nfunction fixRect(rect, defaults) {\n var _arr = ['top', 'left', 'bottom', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (!(edge in rect)) {\n rect[edge] = defaults[edge];\n }\n }\n\n return rect;\n}\n\nvar __defaults_32 = {\n inner: null,\n outer: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrictEdges = {\n noInner: noInner,\n noOuter: noOuter,\n getRestrictionRect: __getRestrictionRect_32,\n start: __start_32,\n set: __set_32,\n defaults: __defaults_32\n};\nvar ___default_32 = restrictEdges;\n_$edges_32[\"default\"] = ___default_32;\n\nvar _$rect_34 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_34, \"__esModule\", {\n value: true\n});\n_$rect_34[\"default\"] = void 0;\n\nvar ___extend_34 = ___interopRequireDefault_34(_$extend_53);\n\nvar ___pointer_34 = ___interopRequireDefault_34(_$pointer_33);\n\nfunction ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __defaults_34 = (0, ___extend_34[\"default\"])({\n get elementRect() {\n return {\n top: 0,\n left: 0,\n bottom: 1,\n right: 1\n };\n },\n\n set elementRect(_) {}\n\n}, ___pointer_34[\"default\"].defaults);\nvar restrictRect = {\n start: ___pointer_34[\"default\"].start,\n set: ___pointer_34[\"default\"].set,\n defaults: __defaults_34\n};\nvar ___default_34 = restrictRect;\n_$rect_34[\"default\"] = ___default_34;\n\nvar _$size_35 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_35, \"__esModule\", {\n value: true\n});\n_$size_35[\"default\"] = void 0;\n\nvar ___extend_35 = ___interopRequireDefault_35(_$extend_53);\n\nvar ___rect_35 = ___interopRequireDefault_35(_$rect_63);\n\nvar _edges = ___interopRequireDefault_35(_$edges_32);\n\nfunction ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar noMin = {\n width: -Infinity,\n height: -Infinity\n};\nvar noMax = {\n width: +Infinity,\n height: +Infinity\n};\n\nfunction __start_35(arg) {\n return _edges[\"default\"].start(arg);\n}\n\nfunction __set_35(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var rect = ___rect_35[\"default\"].xywhToTlbr(interaction.resizeRects.inverted);\n\n var minSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.min, interaction, arg.coords)) || noMin;\n var maxSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.max, interaction, arg.coords)) || noMax;\n state.options = {\n endOnly: options.endOnly,\n inner: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noInner),\n outer: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noOuter)\n };\n\n if (edges.top) {\n state.options.inner.top = rect.bottom - minSize.height;\n state.options.outer.top = rect.bottom - maxSize.height;\n } else if (edges.bottom) {\n state.options.inner.bottom = rect.top + minSize.height;\n state.options.outer.bottom = rect.top + maxSize.height;\n }\n\n if (edges.left) {\n state.options.inner.left = rect.right - minSize.width;\n state.options.outer.left = rect.right - maxSize.width;\n } else if (edges.right) {\n state.options.inner.right = rect.left + minSize.width;\n state.options.outer.right = rect.left + maxSize.width;\n }\n\n _edges[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_35 = {\n min: null,\n max: null,\n endOnly: false,\n enabled: false\n};\nvar restrictSize = {\n start: __start_35,\n set: __set_35,\n defaults: __defaults_35\n};\nvar ___default_35 = restrictSize;\n_$size_35[\"default\"] = ___default_35;\n\nvar _$pointer_37 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_37, \"__esModule\", {\n value: true\n});\n_$pointer_37[\"default\"] = void 0;\n\nvar __utils_37 = ___interopRequireWildcard_37(_$utils_56);\n\nfunction ___getRequireWildcardCache_37() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __start_37(arg) {\n var interaction = arg.interaction,\n interactable = arg.interactable,\n element = arg.element,\n rect = arg.rect,\n state = arg.state,\n startOffset = arg.startOffset;\n var options = state.options;\n var offsets = [];\n var origin = options.offsetWithOrigin ? getOrigin(arg) : {\n x: 0,\n y: 0\n };\n var snapOffset;\n\n if (options.offset === 'startCoords') {\n snapOffset = {\n x: interaction.coords.start.page.x,\n y: interaction.coords.start.page.y\n };\n } else {\n var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]);\n snapOffset = __utils_37.rect.rectToXY(offsetRect) || {\n x: 0,\n y: 0\n };\n snapOffset.x += origin.x;\n snapOffset.y += origin.y;\n }\n\n var relativePoints = options.relativePoints || [];\n\n if (rect && options.relativePoints && options.relativePoints.length) {\n for (var index = 0; index < relativePoints.length; index++) {\n var relativePoint = relativePoints[index];\n offsets.push({\n index: index,\n relativePoint: relativePoint,\n x: startOffset.left - rect.width * relativePoint.x + snapOffset.x,\n y: startOffset.top - rect.height * relativePoint.y + snapOffset.y\n });\n }\n } else {\n offsets.push(__utils_37.extend({\n index: 0,\n relativePoint: null\n }, snapOffset));\n }\n\n state.offsets = offsets;\n}\n\nfunction __set_37(arg) {\n var interaction = arg.interaction,\n coords = arg.coords,\n state = arg.state;\n var options = state.options,\n offsets = state.offsets;\n var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name);\n var page = __utils_37.extend({}, coords);\n var targets = [];\n var target;\n\n if (!options.offsetWithOrigin) {\n page.x -= origin.x;\n page.y -= origin.y;\n }\n\n state.realX = page.x;\n state.realY = page.y;\n\n for (var _i = 0; _i < offsets.length; _i++) {\n var _ref;\n\n _ref = offsets[_i];\n var offset = _ref;\n var relativeX = page.x - offset.x;\n var relativeY = page.y - offset.y;\n\n for (var index = 0, _len = options.targets.length; index < _len; index++) {\n var snapTarget = options.targets[index];\n\n if (__utils_37.is.func(snapTarget)) {\n target = snapTarget(relativeX, relativeY, interaction, offset, index);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n targets.push({\n x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x,\n y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y,\n range: __utils_37.is.number(target.range) ? target.range : options.range\n });\n }\n }\n\n var closest = {\n target: null,\n inRange: false,\n distance: 0,\n range: 0,\n dx: 0,\n dy: 0\n };\n\n for (var i = 0, len = targets.length; i < len; i++) {\n target = targets[i];\n var range = target.range;\n var dx = target.x - page.x;\n var dy = target.y - page.y;\n var distance = __utils_37.hypot(dx, dy);\n var inRange = distance <= range; // Infinite targets count as being out of range\n // compared to non infinite ones that are in range\n\n if (range === Infinity && closest.inRange && closest.range !== Infinity) {\n inRange = false;\n }\n\n if (!closest.target || (inRange // is the closest target in range?\n ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target\n ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't\n : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest\n distance < closest.distance : // The other is not in range and the pointer is closer to this target\n !closest.inRange && distance < closest.distance)) {\n closest.target = target;\n closest.distance = distance;\n closest.range = range;\n closest.inRange = inRange;\n closest.dx = dx;\n closest.dy = dy;\n state.range = range;\n }\n }\n\n if (closest.inRange) {\n coords.x = closest.target.x;\n coords.y = closest.target.y;\n }\n\n state.closest = closest;\n}\n\nfunction getOrigin(arg) {\n var element = arg.interaction.element;\n var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element]));\n var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name);\n return origin;\n}\n\nvar __defaults_37 = {\n range: Infinity,\n targets: null,\n offset: null,\n offsetWithOrigin: true,\n origin: null,\n relativePoints: null,\n endOnly: false,\n enabled: false\n};\nvar snap = {\n start: __start_37,\n set: __set_37,\n defaults: __defaults_37\n};\nvar ___default_37 = snap;\n_$pointer_37[\"default\"] = ___default_37;\n\nvar _$size_38 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_38, \"__esModule\", {\n value: true\n});\n_$size_38[\"default\"] = void 0;\n\nvar ___extend_38 = ___interopRequireDefault_38(_$extend_53);\n\nvar __is_38 = ___interopRequireWildcard_38(_$is_57);\n\nvar ___pointer_38 = ___interopRequireDefault_38(_$pointer_37);\n\nfunction ___getRequireWildcardCache_38() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); }\n\nfunction ___nonIterableRest_38() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __start_38(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state = {\n options: {\n targets: null,\n relativePoints: [{\n x: edges.left ? 0 : 1,\n y: edges.top ? 0 : 1\n }],\n offset: options.offset || 'self',\n origin: {\n x: 0,\n y: 0\n },\n range: options.range\n }\n };\n state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']];\n\n ___pointer_38[\"default\"].start(arg);\n\n state.offsets = arg.state.offsets;\n arg.state = state;\n}\n\nfunction __set_38(arg) {\n var interaction = arg.interaction,\n state = arg.state,\n coords = arg.coords;\n var options = state.options,\n offsets = state.offsets;\n var relative = {\n x: coords.x - offsets[0].x,\n y: coords.y - offsets[0].y\n };\n state.options = (0, ___extend_38[\"default\"])({}, options);\n state.options.targets = [];\n\n for (var _i = 0; _i < (options.targets || []).length; _i++) {\n var _ref;\n\n _ref = (options.targets || [])[_i];\n var snapTarget = _ref;\n var target = void 0;\n\n if (__is_38.func(snapTarget)) {\n target = snapTarget(relative.x, relative.y, interaction);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) {\n var _ref2;\n\n _ref2 = state.targetFields[_i2];\n\n var _ref3 = _ref2,\n _ref4 = ___slicedToArray_38(_ref3, 2),\n xField = _ref4[0],\n yField = _ref4[1];\n\n if (xField in target || yField in target) {\n target.x = target[xField];\n target.y = target[yField];\n break;\n }\n }\n\n state.options.targets.push(target);\n }\n\n ___pointer_38[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_38 = {\n range: Infinity,\n targets: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar snapSize = {\n start: __start_38,\n set: __set_38,\n defaults: __defaults_38\n};\nvar ___default_38 = snapSize;\n_$size_38[\"default\"] = ___default_38;\n\nvar _$edges_36 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_36, \"__esModule\", {\n value: true\n});\n_$edges_36[\"default\"] = void 0;\n\nvar ___clone_36 = ___interopRequireDefault_36(_$clone_49);\n\nvar ___extend_36 = ___interopRequireDefault_36(_$extend_53);\n\nvar _size = ___interopRequireDefault_36(_$size_38);\n\nfunction ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @module modifiers/snapEdges\n *\n * @description\n * This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * @example\n * interact(target).resizable({\n * snapEdges: {\n * targets: [interact.snappers.grid({ x: 100, y: 50 })],\n * },\n * })\n *\n * interact(target).resizable({\n * snapEdges: {\n * targets: [\n * interact.snappers.grid({\n * top: 50,\n * left: 50,\n * bottom: 100,\n * right: 100,\n * }),\n * ],\n * },\n * })\n */\nfunction __start_36(arg) {\n var edges = arg.interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']];\n return _size[\"default\"].start(arg);\n}\n\nfunction __set_36(arg) {\n return _size[\"default\"].set(arg);\n}\n\nvar snapEdges = {\n start: __start_36,\n set: __set_36,\n defaults: (0, ___extend_36[\"default\"])((0, ___clone_36[\"default\"])(_size[\"default\"].defaults), {\n offset: {\n x: 0,\n y: 0\n }\n })\n};\nvar ___default_36 = snapEdges;\n_$edges_36[\"default\"] = ___default_36;\n\nvar _$modifiers_31 = {};\n\"use strict\";\n\nObject.defineProperty(_$modifiers_31, \"__esModule\", {\n value: true\n});\n_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0;\n\nvar ___base_31 = ___interopRequireDefault_31(_$base_30);\n\nvar ___edges_31 = ___interopRequireDefault_31(_$edges_32);\n\nvar ___pointer_31 = ___interopRequireDefault_31(_$pointer_33);\n\nvar ___rect_31 = ___interopRequireDefault_31(_$rect_34);\n\nvar ___size_31 = ___interopRequireDefault_31(_$size_35);\n\nvar _edges2 = ___interopRequireDefault_31(_$edges_36);\n\nvar _pointer2 = ___interopRequireDefault_31(_$pointer_37);\n\nvar _size2 = ___interopRequireDefault_31(_$size_38);\n\nfunction ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __makeModifier_31 = ___base_31[\"default\"].makeModifier;\nvar __snap_31 = __makeModifier_31(_pointer2[\"default\"], 'snap');\n_$modifiers_31.snap = __snap_31;\nvar __snapSize_31 = __makeModifier_31(_size2[\"default\"], 'snapSize');\n_$modifiers_31.snapSize = __snapSize_31;\nvar __snapEdges_31 = __makeModifier_31(_edges2[\"default\"], 'snapEdges');\n_$modifiers_31.snapEdges = __snapEdges_31;\nvar __restrict_31 = __makeModifier_31(___pointer_31[\"default\"], 'restrict');\n_$modifiers_31.restrict = __restrict_31;\nvar __restrictRect_31 = __makeModifier_31(___rect_31[\"default\"], 'restrictRect');\n_$modifiers_31.restrictRect = __restrictRect_31;\nvar __restrictEdges_31 = __makeModifier_31(___edges_31[\"default\"], 'restrictEdges');\n_$modifiers_31.restrictEdges = __restrictEdges_31;\nvar __restrictSize_31 = __makeModifier_31(___size_31[\"default\"], 'restrictSize');\n_$modifiers_31.restrictSize = __restrictSize_31;\n\nvar _$PointerEvent_39 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerEvent_39, \"__esModule\", {\n value: true\n});\n_$PointerEvent_39[\"default\"] = void 0;\n\nvar ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13);\n\nvar ___pointerUtils_39 = ___interopRequireDefault_39(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_39(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_39(obj); }\n\nfunction ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_39(self); }\n\nfunction ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); }\n\nfunction ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___inherits_39(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); }\n\nfunction ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); }\n\n/** */\nvar PointerEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_39(PointerEvent, _BaseEvent);\n\n /** */\n function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) {\n var _this;\n\n ___classCallCheck_39(this, PointerEvent);\n\n _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction));\n\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), event);\n\n if (event !== pointer) {\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), pointer);\n }\n\n _this.timeStamp = timeStamp;\n _this.originalEvent = event;\n _this.type = type;\n _this.pointerId = ___pointerUtils_39[\"default\"].getPointerId(pointer);\n _this.pointerType = ___pointerUtils_39[\"default\"].getPointerType(pointer);\n _this.target = eventTarget;\n _this.currentTarget = null;\n\n if (type === 'tap') {\n var pointerIndex = interaction.getPointerIndex(pointer);\n _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime;\n var interval = _this.timeStamp - interaction.tapTime;\n _this[\"double\"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500);\n } else if (type === 'doubletap') {\n _this.dt = pointer.timeStamp - interaction.tapTime;\n }\n\n return _this;\n }\n\n ___createClass_39(PointerEvent, [{\n key: \"_subtractOrigin\",\n value: function _subtractOrigin(_ref) {\n var originX = _ref.x,\n originY = _ref.y;\n this.pageX -= originX;\n this.pageY -= originY;\n this.clientX -= originX;\n this.clientY -= originY;\n return this;\n }\n }, {\n key: \"_addOrigin\",\n value: function _addOrigin(_ref2) {\n var originX = _ref2.x,\n originY = _ref2.y;\n this.pageX += originX;\n this.pageY += originY;\n this.clientX += originX;\n this.clientY += originY;\n return this;\n }\n /**\n * Prevent the default behaviour of the original Event\n */\n\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {\n this.originalEvent.preventDefault();\n }\n }]);\n\n return PointerEvent;\n}(___BaseEvent2_39[\"default\"]);\n\n_$PointerEvent_39[\"default\"] = PointerEvent;\n\nvar _$base_40 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_40, \"__esModule\", {\n value: true\n});\n_$base_40[\"default\"] = void 0;\n\nvar __utils_40 = ___interopRequireWildcard_40(_$utils_56);\n\nvar _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39);\n\nfunction ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_40() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar signals = new __utils_40.Signals();\nvar simpleSignals = ['down', 'up', 'cancel'];\nvar simpleEvents = ['down', 'up', 'cancel'];\nvar __defaults_40 = {\n holdDuration: 600,\n ignoreFrom: null,\n allowFrom: null,\n origin: {\n x: 0,\n y: 0\n }\n};\nvar pointerEvents = {\n id: 'pointer-events/base',\n install: __install_40,\n signals: signals,\n PointerEvent: _PointerEvent[\"default\"],\n fire: fire,\n collectEventTargets: collectEventTargets,\n createSignalListener: createSignalListener,\n defaults: __defaults_40,\n types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold']\n};\n\nfunction fire(arg, scope) {\n var interaction = arg.interaction,\n pointer = arg.pointer,\n event = arg.event,\n eventTarget = arg.eventTarget,\n _arg$type = arg.type,\n type = _arg$type === void 0 ? arg.pointerEvent.type : _arg$type,\n _arg$targets = arg.targets,\n targets = _arg$targets === void 0 ? collectEventTargets(arg) : _arg$targets;\n var _arg$pointerEvent = arg.pointerEvent,\n pointerEvent = _arg$pointerEvent === void 0 ? new _PointerEvent[\"default\"](type, pointer, event, eventTarget, interaction, scope.now()) : _arg$pointerEvent;\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n targets: targets,\n type: type,\n pointerEvent: pointerEvent\n };\n\n for (var i = 0; i < targets.length; i++) {\n var target = targets[i];\n\n for (var prop in target.props || {}) {\n pointerEvent[prop] = target.props[prop];\n }\n\n var origin = __utils_40.getOriginXY(target.eventable, target.node);\n\n pointerEvent._subtractOrigin(origin);\n\n pointerEvent.eventable = target.eventable;\n pointerEvent.currentTarget = target.node;\n target.eventable.fire(pointerEvent);\n\n pointerEvent._addOrigin(origin);\n\n if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) {\n break;\n }\n }\n\n signals.fire('fired', signalArg);\n\n if (type === 'tap') {\n // if pointerEvent should make a double tap, create and fire a doubletap\n // PointerEvent and use that as the prevTap\n var prevTap = pointerEvent[\"double\"] ? fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'doubletap'\n }, scope) : pointerEvent;\n interaction.prevTap = prevTap;\n interaction.tapTime = prevTap.timeStamp;\n }\n\n return pointerEvent;\n}\n\nfunction collectEventTargets(_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget,\n type = _ref.type;\n var pointerIndex = interaction.getPointerIndex(pointer);\n var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted\n\n if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target\n !(pointerInfo && pointerInfo.downTarget === eventTarget))) {\n return [];\n }\n\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: type,\n path: path,\n targets: [],\n node: null\n };\n\n for (var _i = 0; _i < path.length; _i++) {\n var _ref2;\n\n _ref2 = path[_i];\n var node = _ref2;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (type === 'hold') {\n signalArg.targets = signalArg.targets.filter(function (target) {\n return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration;\n });\n }\n\n return signalArg.targets;\n}\n\nfunction __install_40(scope) {\n var interactions = scope.interactions;\n scope.pointerEvents = pointerEvents;\n scope.defaults.actions.pointerEvents = pointerEvents.defaults;\n interactions.signals.on('new', function (_ref3) {\n var interaction = _ref3.interaction;\n interaction.prevTap = null; // the most recent tap event on this interaction\n\n interaction.tapTime = 0; // time of the most recent tap event\n });\n interactions.signals.on('update-pointer', function (_ref4) {\n var down = _ref4.down,\n pointerInfo = _ref4.pointerInfo;\n\n if (!down && pointerInfo.hold) {\n return;\n }\n\n pointerInfo.hold = {\n duration: Infinity,\n timeout: null\n };\n });\n interactions.signals.on('move', function (_ref5) {\n var interaction = _ref5.interaction,\n pointer = _ref5.pointer,\n event = _ref5.event,\n eventTarget = _ref5.eventTarget,\n duplicateMove = _ref5.duplicateMove;\n var pointerIndex = interaction.getPointerIndex(pointer);\n\n if (!duplicateMove && (!interaction.pointerIsDown || interaction.pointerWasMoved)) {\n if (interaction.pointerIsDown) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n\n fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'move'\n }, scope);\n }\n });\n interactions.signals.on('down', function (_ref6) {\n var interaction = _ref6.interaction,\n pointer = _ref6.pointer,\n event = _ref6.event,\n eventTarget = _ref6.eventTarget,\n pointerIndex = _ref6.pointerIndex;\n var timer = interaction.pointers[pointerIndex].hold;\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'hold',\n targets: [],\n path: path,\n node: null\n };\n\n for (var _i2 = 0; _i2 < path.length; _i2++) {\n var _ref7;\n\n _ref7 = path[_i2];\n var node = _ref7;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (!signalArg.targets.length) {\n return;\n }\n\n var minDuration = Infinity;\n\n for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) {\n var _ref8;\n\n _ref8 = signalArg.targets[_i3];\n var target = _ref8;\n var holdDuration = target.eventable.options.holdDuration;\n\n if (holdDuration < minDuration) {\n minDuration = holdDuration;\n }\n }\n\n timer.duration = minDuration;\n timer.timeout = setTimeout(function () {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'hold'\n }, scope);\n }, minDuration);\n });\n var _arr = ['up', 'cancel'];\n\n for (var _i4 = 0; _i4 < _arr.length; _i4++) {\n var signalName = _arr[_i4];\n interactions.signals.on(signalName, function (_ref10) {\n var interaction = _ref10.interaction,\n pointerIndex = _ref10.pointerIndex;\n\n if (interaction.pointers[pointerIndex].hold) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n });\n }\n\n for (var i = 0; i < simpleSignals.length; i++) {\n interactions.signals.on(simpleSignals[i], createSignalListener(simpleEvents[i], scope));\n }\n\n interactions.signals.on('up', function (_ref9) {\n var interaction = _ref9.interaction,\n pointer = _ref9.pointer,\n event = _ref9.event,\n eventTarget = _ref9.eventTarget;\n\n if (!interaction.pointerWasMoved) {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'tap'\n }, scope);\n }\n });\n}\n\nfunction createSignalListener(type, scope) {\n return function (_ref11) {\n var interaction = _ref11.interaction,\n pointer = _ref11.pointer,\n event = _ref11.event,\n eventTarget = _ref11.eventTarget;\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: type\n }, scope);\n };\n}\n\nvar ___default_40 = pointerEvents;\n_$base_40[\"default\"] = ___default_40;\n\nvar _$holdRepeat_41 = {};\n\"use strict\";\n\nObject.defineProperty(_$holdRepeat_41, \"__esModule\", {\n value: true\n});\n_$holdRepeat_41[\"default\"] = void 0;\n\nvar ___base_41 = ___interopRequireDefault_41(_$base_40);\n\nfunction ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_41(scope) {\n var pointerEvents = scope.pointerEvents,\n interactions = scope.interactions;\n scope.usePlugin(___base_41[\"default\"]);\n pointerEvents.signals.on('new', onNew);\n pointerEvents.signals.on('fired', function (arg) {\n return onFired(arg, scope);\n });\n var _arr = ['move', 'up', 'cancel', 'endall'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var signal = _arr[_i];\n interactions.signals.on(signal, endHoldRepeat);\n } // don't repeat by default\n\n\n pointerEvents.defaults.holdRepeatInterval = 0;\n pointerEvents.types.push('holdrepeat');\n}\n\nfunction onNew(_ref) {\n var pointerEvent = _ref.pointerEvent;\n\n if (pointerEvent.type !== 'hold') {\n return;\n }\n\n pointerEvent.count = (pointerEvent.count || 0) + 1;\n}\n\nfunction onFired(_ref2, scope) {\n var interaction = _ref2.interaction,\n pointerEvent = _ref2.pointerEvent,\n eventTarget = _ref2.eventTarget,\n targets = _ref2.targets;\n\n if (pointerEvent.type !== 'hold' || !targets.length) {\n return;\n } // get the repeat interval from the first eventable\n\n\n var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less\n\n if (interval <= 0) {\n return;\n } // set a timeout to fire the holdrepeat event\n\n\n interaction.holdIntervalHandle = setTimeout(function () {\n scope.pointerEvents.fire({\n interaction: interaction,\n eventTarget: eventTarget,\n type: 'hold',\n pointer: pointerEvent,\n event: pointerEvent\n }, scope);\n }, interval);\n}\n\nfunction endHoldRepeat(_ref3) {\n var interaction = _ref3.interaction;\n\n // set the interaction's holdStopTime property\n // to stop further holdRepeat events\n if (interaction.holdIntervalHandle) {\n clearInterval(interaction.holdIntervalHandle);\n interaction.holdIntervalHandle = null;\n }\n}\n\nvar ___default_41 = {\n id: 'pointer-events/holdRepeat',\n install: __install_41\n};\n_$holdRepeat_41[\"default\"] = ___default_41;\n\nvar _$interactableTargets_43 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactableTargets_43, \"__esModule\", {\n value: true\n});\n_$interactableTargets_43[\"default\"] = void 0;\n\n/* removed: var _$arr_47 = require(\"@interactjs/utils/arr\"); */;\n\nvar ___extend_43 = ___interopRequireDefault_43(_$extend_53);\n\nfunction ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_43(scope) {\n var pointerEvents = scope.pointerEvents,\n actions = scope.actions,\n Interactable = scope.Interactable,\n interactables = scope.interactables;\n pointerEvents.signals.on('collect-targets', function (_ref) {\n var targets = _ref.targets,\n node = _ref.node,\n type = _ref.type,\n eventTarget = _ref.eventTarget;\n scope.interactables.forEachMatch(node, function (interactable) {\n var eventable = interactable.events;\n var options = eventable.options;\n\n if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) {\n targets.push({\n node: node,\n eventable: eventable,\n props: {\n interactable: interactable\n }\n });\n }\n });\n });\n interactables.signals.on('new', function (_ref2) {\n var interactable = _ref2.interactable;\n\n interactable.events.getRect = function (element) {\n return interactable.getRect(element);\n };\n });\n interactables.signals.on('set', function (_ref3) {\n var interactable = _ref3.interactable,\n options = _ref3.options;\n (0, ___extend_43[\"default\"])(interactable.events.options, pointerEvents.defaults);\n (0, ___extend_43[\"default\"])(interactable.events.options, options.pointerEvents || {});\n });\n (0, _$arr_47.merge)(actions.eventTypes, pointerEvents.types);\n Interactable.prototype.pointerEvents = pointerEventsMethod;\n var __backCompatOption = Interactable.prototype._backCompatOption;\n\n Interactable.prototype._backCompatOption = function (optionName, newValue) {\n var ret = __backCompatOption.call(this, optionName, newValue);\n\n if (ret === this) {\n this.events.options[optionName] = newValue;\n }\n\n return ret;\n };\n}\n\nfunction pointerEventsMethod(options) {\n (0, ___extend_43[\"default\"])(this.events.options, options);\n return this;\n}\n\nvar ___default_43 = {\n id: 'pointer-events/interactableTargets',\n install: __install_43\n};\n_$interactableTargets_43[\"default\"] = ___default_43;\n\nvar _$pointerEvents_42 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerEvents_42, \"__esModule\", {\n value: true\n});\n_$pointerEvents_42.install = __install_42;\nObject.defineProperty(_$pointerEvents_42, \"pointerEvents\", {\n enumerable: true,\n get: function get() {\n return ___base_42[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"holdRepeat\", {\n enumerable: true,\n get: function get() {\n return _holdRepeat[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"interactableTargets\", {\n enumerable: true,\n get: function get() {\n return _interactableTargets[\"default\"];\n }\n});\n_$pointerEvents_42.id = void 0;\n\nvar ___base_42 = ___interopRequireDefault_42(_$base_40);\n\nvar _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41);\n\nvar _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43);\n\nfunction ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_42(scope) {\n scope.usePlugin(___base_42[\"default\"]);\n scope.usePlugin(_holdRepeat[\"default\"]);\n scope.usePlugin(_interactableTargets[\"default\"]);\n}\n\nvar __id_42 = 'pointer-events';\n_$pointerEvents_42.id = __id_42;\n\nvar _$reflow_44 = {};\n\"use strict\";\n\nObject.defineProperty(_$reflow_44, \"__esModule\", {\n value: true\n});\n_$reflow_44.install = __install_44;\n_$reflow_44[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\n_$InteractEvent_15.EventPhase.Reflow = 'reflow';\n\nfunction __install_44(scope) {\n var actions = scope.actions,\n interactions = scope.interactions,\n Interactable = scope.Interactable; // add action reflow event types\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n actions.eventTypes.push(\"\".concat(actionName, \"reflow\"));\n } // remove completed reflow interactions\n\n\n interactions.signals.on('stop', function (_ref2) {\n var interaction = _ref2.interaction;\n\n if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) {\n if (interaction._reflowResolve) {\n interaction._reflowResolve();\n }\n\n _$utils_56.arr.remove(scope.interactions.list, interaction);\n }\n });\n /**\n * ```js\n * const interactable = interact(target)\n * const drag = { name: drag, axis: 'x' }\n * const resize = { name: resize, edges: { left: true, bottom: true }\n *\n * interactable.reflow(drag)\n * interactable.reflow(resize)\n * ```\n *\n * Start an action sequence to re-apply modifiers, check drops, etc.\n *\n * @param { Object } action The action to begin\n * @param { string } action.name The name of the action\n * @returns { Promise }\n */\n\n Interactable.prototype.reflow = function (action) {\n return reflow(this, action, scope);\n };\n}\n\nfunction reflow(interactable, action, scope) {\n var elements = _$utils_56.is.string(interactable.target) ? _$utils_56.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name\n\n var Promise = _$utils_56.win.window.Promise;\n var promises = Promise ? [] : null;\n\n var _loop = function _loop() {\n _ref3 = elements[_i2];\n var element = _ref3;\n var rect = interactable.getRect(element);\n\n if (!rect) {\n return \"break\";\n }\n\n var runningInteraction = _$utils_56.arr.find(scope.interactions.list, function (interaction) {\n return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name;\n });\n\n var reflowPromise = void 0;\n\n if (runningInteraction) {\n runningInteraction.move();\n\n if (promises) {\n reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) {\n runningInteraction._reflowResolve = resolve;\n });\n }\n } else {\n var xywh = _$utils_56.rect.tlbrToXywh(rect);\n\n var coords = {\n page: {\n x: xywh.x,\n y: xywh.y\n },\n client: {\n x: xywh.x,\n y: xywh.y\n },\n timeStamp: scope.now()\n };\n\n var event = _$utils_56.pointer.coordsToEvent(coords);\n\n reflowPromise = startReflow(scope, interactable, element, action, event);\n }\n\n if (promises) {\n promises.push(reflowPromise);\n }\n };\n\n for (var _i2 = 0; _i2 < elements.length; _i2++) {\n var _ref3;\n\n var _ret = _loop();\n\n if (_ret === \"break\") break;\n }\n\n return promises && Promise.all(promises).then(function () {\n return interactable;\n });\n}\n\nfunction startReflow(scope, interactable, element, action, event) {\n var interaction = scope.interactions[\"new\"]({\n pointerType: 'reflow'\n });\n var signalArg = {\n interaction: interaction,\n event: event,\n pointer: event,\n eventTarget: element,\n phase: _$InteractEvent_15.EventPhase.Reflow\n };\n interaction.interactable = interactable;\n interaction.element = element;\n interaction.prepared = (0, _$utils_56.extend)({}, action);\n interaction.prevEvent = event;\n interaction.updatePointer(event, event, element, true);\n\n interaction._doPhase(signalArg);\n\n var reflowPromise = _$utils_56.win.window.Promise ? new _$utils_56.win.window.Promise(function (resolve) {\n interaction._reflowResolve = resolve;\n }) : null;\n interaction._reflowPromise = reflowPromise;\n interaction.start(action, interactable, element);\n\n if (interaction._interacting) {\n interaction.move(signalArg);\n interaction.end(event);\n } else {\n interaction.stop();\n }\n\n interaction.removePointer(event, event);\n interaction.pointerIsDown = false;\n return reflowPromise;\n}\n\nvar ___default_44 = {\n id: 'reflow',\n install: __install_44\n};\n_$reflow_44[\"default\"] = ___default_44;\n\nvar _$interact_28 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_28, \"__esModule\", {\n value: true\n});\n_$interact_28[\"default\"] = _$interact_28.scope = _$interact_28.interact = void 0;\n\nvar ___scope_28 = _$scope_24({});\n\nvar __utils_28 = ___interopRequireWildcard_28(_$utils_56);\n\nvar ___browser_28 = ___interopRequireDefault_28(_$browser_48);\n\nvar ___events_28 = ___interopRequireDefault_28(_$events_52);\n\nfunction ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_28() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/** @module interact */\nvar globalEvents = {};\nvar scope = new ___scope_28.Scope();\n/**\n * ```js\n * interact('#draggable').draggable(true)\n *\n * var rectables = interact('rect')\n * rectables\n * .gesturable(true)\n * .on('gesturemove', function (event) {\n * // ...\n * })\n * ```\n *\n * The methods of this variable can be used to set elements as interactables\n * and also to change various default settings.\n *\n * Calling it as a function and passing an element or a valid CSS selector\n * string returns an Interactable object which has various methods to configure\n * it.\n *\n * @global\n *\n * @param {Element | string} target The HTML or SVG Element to interact with\n * or CSS selector\n * @return {Interactable}\n */\n\n_$interact_28.scope = scope;\n\nvar interact = function interact(target, options) {\n var interactable = scope.interactables.get(target, options);\n\n if (!interactable) {\n interactable = scope.interactables[\"new\"](target, options);\n interactable.events.global = globalEvents;\n }\n\n return interactable;\n};\n/**\n * Use a plugin\n *\n * @alias module:interact.use\n *\n * @param {Object} plugin\n * @param {function} plugin.install\n * @return {interact}\n */\n\n\n_$interact_28.interact = interact;\ninteract.use = use;\n\nfunction use(plugin, options) {\n scope.usePlugin(plugin, options);\n return interact;\n}\n/**\n * Check if an element or selector has been set with the {@link interact}\n * function\n *\n * @alias module:interact.isSet\n *\n * @param {Element} element The Element being searched for\n * @return {boolean} Indicates if the element or CSS selector was previously\n * passed to interact\n */\n\n\ninteract.isSet = isSet;\n\nfunction isSet(target, options) {\n return !!scope.interactables.get(target, options && options.context);\n}\n/**\n * Add a global listener for an InteractEvent or adds a DOM event to `document`\n *\n * @alias module:interact.on\n *\n * @param {string | array | object} type The types of events to listen for\n * @param {function} listener The function event (s)\n * @param {object | boolean} [options] object or useCapture flag for\n * addEventListener\n * @return {object} interact\n */\n\n\ninteract.on = on;\n\nfunction on(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i = 0; _i < type.length; _i++) {\n var _ref;\n\n _ref = type[_i];\n var eventType = _ref;\n interact.on(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.on(prop, type[prop], listener);\n }\n\n return interact;\n } // if it is an InteractEvent type, add listener to globalEvents\n\n\n if (__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n // if this type of event was never bound\n if (!globalEvents[type]) {\n globalEvents[type] = [listener];\n } else {\n globalEvents[type].push(listener);\n }\n } // If non InteractEvent type, addEventListener to document\n else {\n ___events_28[\"default\"].add(scope.document, type, listener, {\n options: options\n });\n }\n\n return interact;\n}\n/**\n * Removes a global InteractEvent listener or DOM event from `document`\n *\n * @alias module:interact.off\n *\n * @param {string | array | object} type The types of events that were listened\n * for\n * @param {function} listener The listener function to be removed\n * @param {object | boolean} options [options] object or useCapture flag for\n * removeEventListener\n * @return {object} interact\n */\n\n\ninteract.off = off;\n\nfunction off(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i2 = 0; _i2 < type.length; _i2++) {\n var _ref2;\n\n _ref2 = type[_i2];\n var eventType = _ref2;\n interact.off(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.off(prop, type[prop], listener);\n }\n\n return interact;\n }\n\n if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n ___events_28[\"default\"].remove(scope.document, type, listener, options);\n } else {\n var index;\n\n if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) {\n globalEvents[type].splice(index, 1);\n }\n }\n\n return interact;\n}\n/**\n * Returns an object which exposes internal data\n * @alias module:interact.debug\n *\n * @return {object} An object with properties that outline the current state\n * and expose internal functions and variables\n */\n\n\ninteract.debug = debug;\n\nfunction debug() {\n return scope;\n} // expose the functions used to calculate multi-touch properties\n\n\ninteract.getPointerAverage = __utils_28.pointer.pointerAverage;\ninteract.getTouchBBox = __utils_28.pointer.touchBBox;\ninteract.getTouchDistance = __utils_28.pointer.touchDistance;\ninteract.getTouchAngle = __utils_28.pointer.touchAngle;\ninteract.getElementRect = __utils_28.dom.getElementRect;\ninteract.getElementClientRect = __utils_28.dom.getElementClientRect;\ninteract.matchesSelector = __utils_28.dom.matchesSelector;\ninteract.closest = __utils_28.dom.closest;\n/**\n * @alias module:interact.supportsTouch\n *\n * @return {boolean} Whether or not the browser supports touch input\n */\n\ninteract.supportsTouch = supportsTouch;\n\nfunction supportsTouch() {\n return ___browser_28[\"default\"].supportsTouch;\n}\n/**\n * @alias module:interact.supportsPointerEvent\n *\n * @return {boolean} Whether or not the browser supports PointerEvents\n */\n\n\ninteract.supportsPointerEvent = supportsPointerEvent;\n\nfunction supportsPointerEvent() {\n return ___browser_28[\"default\"].supportsPointerEvent;\n}\n/**\n * Cancels all interactions (end events are not fired)\n *\n * @alias module:interact.stop\n *\n * @return {object} interact\n */\n\n\ninteract.stop = __stop_28;\n\nfunction __stop_28() {\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n interaction.stop();\n }\n\n return interact;\n}\n/**\n * Returns or sets the distance the pointer must be moved before an action\n * sequence occurs. This also affects tolerance for tap events.\n *\n * @alias module:interact.pointerMoveTolerance\n *\n * @param {number} [newValue] The movement from the start position must be greater than this value\n * @return {interact | number}\n */\n\n\ninteract.pointerMoveTolerance = pointerMoveTolerance;\n\nfunction pointerMoveTolerance(newValue) {\n if (__utils_28.is.number(newValue)) {\n scope.interactions.pointerMoveTolerance = newValue;\n return interact;\n }\n\n return scope.interactions.pointerMoveTolerance;\n}\n\nscope.interactables.signals.on('unset', function (_ref4) {\n var interactable = _ref4.interactable;\n scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i4];\n var interaction = _ref5;\n\n if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) {\n interaction.stop();\n }\n }\n});\n\ninteract.addDocument = function (doc, options) {\n return scope.addDocument(doc, options);\n};\n\ninteract.removeDocument = function (doc) {\n return scope.removeDocument(doc);\n};\n\nscope.interact = interact;\nvar ___default_28 = interact;\n_$interact_28[\"default\"] = ___default_28;\n\nvar _$interact_27 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_27, \"__esModule\", {\n value: true\n});\n_$interact_27.init = __init_27;\nObject.defineProperty(_$interact_27, \"autoScroll\", {\n enumerable: true,\n get: function get() {\n return _autoScroll[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interactablePreventDefault\", {\n enumerable: true,\n get: function get() {\n return _interactablePreventDefault[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"inertia\", {\n enumerable: true,\n get: function get() {\n return _inertia[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"modifiers\", {\n enumerable: true,\n get: function get() {\n return ___base_27[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"reflow\", {\n enumerable: true,\n get: function get() {\n return _reflow[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interact\", {\n enumerable: true,\n get: function get() {\n return _interact[\"default\"];\n }\n});\n_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27[\"default\"] = void 0;\n\nvar actions = ___interopRequireWildcard_27(_$actions_5);\n\n_$interact_27.actions = actions;\n\nvar _autoScroll = ___interopRequireDefault_27(_$autoScroll_7);\n\nvar autoStart = ___interopRequireWildcard_27(_$autoStart_12);\n\nvar _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21);\n\nvar _devTools = ___interopRequireDefault_27(_$devTools_25);\n\nvar _inertia = ___interopRequireDefault_27(_$inertia_26);\n\nvar modifiers = ___interopRequireWildcard_27(_$modifiers_31);\n\nvar ___base_27 = ___interopRequireDefault_27(_$base_30);\n\nvar __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42);\n\n_$interact_27.pointerEvents = __pointerEvents_27;\n\nvar _reflow = ___interopRequireDefault_27(_$reflow_44);\n\nvar _interact = ___interopRequireWildcard_27(_$interact_28);\n\nfunction ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_27() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __init_27(window) {\n _interact.scope.init(window);\n\n _interact[\"default\"].use(_interactablePreventDefault[\"default\"]); // pointerEvents\n\n\n _interact[\"default\"].use(__pointerEvents_27); // inertia\n\n\n _interact[\"default\"].use(_inertia[\"default\"]); // autoStart, hold\n\n\n _interact[\"default\"].use(autoStart); // drag and drop, resize, gesture\n\n\n _interact[\"default\"].use(actions); // snap, resize, etc.\n\n\n _interact[\"default\"].use(___base_27[\"default\"]); // for backwrads compatibility\n\n\n for (var type in modifiers) {\n var _modifiers$type = modifiers[type],\n _defaults = _modifiers$type._defaults,\n _methods = _modifiers$type._methods;\n _defaults._methods = _methods;\n _interact.scope.defaults.perAction[type] = _defaults;\n } // autoScroll\n\n\n _interact[\"default\"].use(_autoScroll[\"default\"]); // reflow\n\n\n _interact[\"default\"].use(_reflow[\"default\"]); // eslint-disable-next-line no-undef\n\n\n if (\"production\" !== 'production') {\n _interact[\"default\"].use(_devTools[\"default\"]);\n }\n\n return _interact[\"default\"];\n} // eslint-disable-next-line no-undef\n\n\n_interact[\"default\"].version = \"1.6.3\";\nvar ___default_27 = _interact[\"default\"];\n_$interact_27[\"default\"] = ___default_27;\n\nvar _$types_45 = {};\n/// \n\"use strict\";\n\nvar _$grid_64 = {};\n\"use strict\";\n\nObject.defineProperty(_$grid_64, \"__esModule\", {\n value: true\n});\n_$grid_64[\"default\"] = void 0;\n\nfunction ___slicedToArray_64(arr, i) { return ___arrayWithHoles_64(arr) || ___iterableToArrayLimit_64(arr, i) || ___nonIterableRest_64(); }\n\nfunction ___nonIterableRest_64() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_64(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_64(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction createGrid(grid) {\n var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) {\n var _ref2 = ___slicedToArray_64(_ref, 2),\n xField = _ref2[0],\n yField = _ref2[1];\n\n return xField in grid || yField in grid;\n });\n return function (x, y) {\n var range = grid.range,\n _grid$limits = grid.limits,\n limits = _grid$limits === void 0 ? {\n left: -Infinity,\n right: Infinity,\n top: -Infinity,\n bottom: Infinity\n } : _grid$limits,\n _grid$offset = grid.offset,\n offset = _grid$offset === void 0 ? {\n x: 0,\n y: 0\n } : _grid$offset;\n var result = {\n range: range\n };\n\n for (var _i2 = 0; _i2 < coordFields.length; _i2++) {\n var _ref3;\n\n _ref3 = coordFields[_i2];\n\n var _ref4 = _ref3,\n _ref5 = ___slicedToArray_64(_ref4, 2),\n xField = _ref5[0],\n yField = _ref5[1];\n\n var gridx = Math.round((x - offset.x) / grid[xField]);\n var gridy = Math.round((y - offset.y) / grid[yField]);\n result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x));\n result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y));\n }\n\n return result;\n };\n}\n\nvar ___default_64 = createGrid;\n_$grid_64[\"default\"] = ___default_64;\n\nvar _$snappers_65 = {};\n\"use strict\";\n\nObject.defineProperty(_$snappers_65, \"__esModule\", {\n value: true\n});\nObject.defineProperty(_$snappers_65, \"grid\", {\n enumerable: true,\n get: function get() {\n return _grid[\"default\"];\n }\n});\n\nvar _grid = ___interopRequireDefault_65(_$grid_64);\n\nfunction ___interopRequireDefault_65(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar _$index_29 = { exports: {} };\n\"use strict\";\n\nObject.defineProperty(_$index_29.exports, \"__esModule\", {\n value: true\n});\n_$index_29.exports.init = __init_29;\n_$index_29.exports[\"default\"] = void 0;\n\nvar ___interact_29 = ___interopRequireWildcard_29(_$interact_27);\n\nvar __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31);\n\n_$types_45;\n\nvar ___extend_29 = ___interopRequireDefault_29(_$extend_53);\n\nvar snappers = ___interopRequireWildcard_29(_$snappers_65);\n\nfunction ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_29() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___typeof_29(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_29(obj); }\n\nif ((typeof window === \"undefined\" ? \"undefined\" : ___typeof_29(window)) === 'object' && !!window) {\n __init_29(window);\n}\n\nfunction __init_29(win) {\n (0, ___interact_29.init)(win);\n return ___interact_29[\"default\"].use({\n id: 'interactjs',\n install: function install() {\n ___interact_29[\"default\"].modifiers = (0, ___extend_29[\"default\"])({}, __modifiers_29);\n ___interact_29[\"default\"].snappers = snappers;\n ___interact_29[\"default\"].createSnapGrid = ___interact_29[\"default\"].snappers.grid;\n }\n });\n}\n\nvar ___default_29 = ___interact_29[\"default\"];\n_$index_29.exports[\"default\"] = ___default_29;\n___interact_29[\"default\"][\"default\"] = ___interact_29[\"default\"] // tslint:disable-line no-string-literal\n;\n___interact_29[\"default\"].init = __init_29; // tslint:disable-line no-string-literal\n\nif ((\"object\" === \"undefined\" ? \"undefined\" : ___typeof_29(_$index_29)) === 'object' && !!_$index_29) {\n _$index_29.exports = ___interact_29[\"default\"];\n}\n\n_$index_29 = _$index_29.exports\nreturn _$index_29;\n\n});\n\n\n//# sourceMappingURL=interact.js.map\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://VueGridLayout/webpack/universalModuleDefinition","webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?0c71","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.min.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?d9a3","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["currentDir","hasDocument","document","hasWindow","window","getDocumentDir","direction","dir","getElementsByTagName","getAttribute","setDocumentDir","html","setAttribute","addWindowEventListener","event","callback","addEventListener","removeWindowEventListener","removeEventListener","VueGridLayout","GridLayout","GridItem","install","Vue","installed","Object","keys","forEach","name","component","plugin","GlobalVue","global","use","getBreakpointFromWidth","breakpoints","width","sorted","sortBreakpoints","matching","i","len","length","breakpointName","getColsFromBreakpoint","breakpoint","cols","Error","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","slice","indexOf","b","compact","correctBounds","generateResponsiveLayout","sort","a","bottom","max","bottomY","y","h","newLayout","Array","cloneLayoutItem","layoutItem","JSON","parse","stringify","collides","l1","l2","x","w","compareWith","getStatics","sortLayoutItemsByRowCol","out","l","static","compactItem","push","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","id","getAllCollisions","filter","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","Math","undefined","perc","num","setTransform","top","left","height","translate","transform","WebkitTransform","MozTransform","msTransform","OTransform","position","setTransformRtl","right","setTopLeft","setTopRight","concat","validateLayout","contextName","subProps","isArray","item","j","autoBindHandlers","el","fns","key","bind","createMarkup","obj","result","val","hyphenate","addPx","IS_UNITLESS","animationIterationCount","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridColumn","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","stopOpacity","strokeDashoffset","strokeOpacity","strokeWidth","value","hyphenateRE","str","replace","toLowerCase","findItemInArray","array","property","findAndRemove","index","splice","getControlPosition","e","offsetXYFromParentOf","evt","offsetParent","target","body","offsetParentRect","getBoundingClientRect","clientX","scrollLeft","clientY","scrollTop","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","isNaN"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;AClFa;AACb,cAAc,mBAAO,CAAC,MAAY;AAClC,cAAc,mBAAO,CAAC,MAAW;AACjC,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,gBAAgB,mBAAO,CAAC,MAAc;AACtC,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD,qBAAqB,mBAAO,CAAC,MAAe;AAC5C,eAAe,mBAAO,CAAC,MAAQ;AAC/B,8CAA8C;AAC9C;AACA;AACA;;AAEA,8BAA8B,aAAa;;AAE3C;AACA;AACA;AACA;AACA;AACA,yCAAyC,oCAAoC;AAC7E,6CAA6C,oCAAoC;AACjF,KAAK,4BAA4B,oCAAoC;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA,kCAAkC,2BAA2B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;ACpEA,gBAAgB,mBAAO,CAAC,MAAe;AACvC,cAAc,mBAAO,CAAC,MAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AChBa;AACb,SAAS,mBAAO,CAAC,MAAc;;AAE/B;AACA;AACA;AACA;AACA;;;;;;;;ACPA,uBAAuB;AACvB;AACA;AACA;;;;;;;;;ACHa;AACb;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACZA;AACA,YAAY,mBAAO,CAAC,MAAyB;AAC7C,kBAAkB,mBAAO,CAAC,MAAkB;;AAE5C;AACA;AACA;;;;;;;;ACNA;;AAEA;AACA,cAAc,mBAAO,CAAC,MAAka;AACxb,4CAA4C,QAAS;AACrD;AACA;AACA,UAAU,mBAAO,CAAC,MAA6D;AAC/E,6CAA6C,qCAAqC,E;;;;;;;ACRlF,UAAU,mBAAO,CAAC,MAAe;AACjC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,gBAAgB,mBAAO,CAAC,MAAe;AACvC,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C,UAAU,mBAAO,CAAC,MAAQ;AAC1B,qBAAqB,mBAAO,CAAC,MAAmB;AAChD;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;;;;;;;;ACfA,SAAS,mBAAO,CAAC,MAAc;AAC/B,eAAe,mBAAO,CAAC,MAAc;AACrC,cAAc,mBAAO,CAAC,MAAgB;;AAEtC,iBAAiB,mBAAO,CAAC,MAAgB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACZA;AACA;AACA;AACA;;AAEa;;AAEb,sBAAsB,mBAAO,CAAC,MAAqB;;AAEnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,+CAA+C,oBAAoB,QAAQ,SAAS,aAAa,cAAc,cAAc,YAAY,WAAW,YAAY,gBAAgB,sBAAsB;;AAEtM;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;;AAE7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACtNa;;AAEb;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;;;;;ACtCA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA,IAAIA;AAAkC;AAAA,EAAI,MAA1C,C,CACA;;AAEA,SAASC,WAAT,GAAsB;AAClB,SAAQ,OAAOC,QAAP,KAAoB,WAA5B;AACH;;AAED,SAASC,SAAT,GAAoB;AAChB,SAAQ,OAAOC,MAAP,KAAkB,WAA1B;AACH;;AAEM,SAASC,cAAT,GAAyB;AAC5B,MAAG,CAACJ,WAAW,EAAf,EAAkB;AACd,WAAOD,UAAP;AACH;;AACD,MAAMM,SAAS,GAAI,OAAOJ,QAAQ,CAACK,GAAhB,KAAwB,WAAzB,GACdL,QAAQ,CAACK,GADK,GAEdL,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,EAAyCC,YAAzC,CAAsD,KAAtD,CAFJ;AAGA,SAAOH,SAAP;AACH;AAEM,SAASI,cAAT,CAAwBH;AAAxB;AAAA,EAAoD;AAC3D;AACI,MAAG,CAACN,WAAJ,EAAgB;AACZD,cAAU,GAAGO,GAAb;AACA;AACH;;AAED,MAAMI,IAAI,GAAGT,QAAQ,CAACM,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,CAAb;AACAG,MAAI,CAACC,YAAL,CAAkB,KAAlB,EAAyBL,GAAzB;AACH;AAEM,SAASM,sBAAT,CAAgCC;AAAhC;AAAA,EAA8CC;AAA9C;AAAA,EAAoE;AACvE,MAAG,CAACZ,SAAJ,EAAc;AAEVY,YAAQ;AACR;AACH;;AACDX,QAAM,CAACY,gBAAP,CAAwBF,KAAxB,EAA+BC,QAA/B;AACH;AAEM,SAASE,yBAAT,CAAmCH;AAAnC;AAAA,EAAiDC;AAAjD;AAAA,EAAuE;AAC1E,MAAG,CAACZ,SAAJ,EAAc;AACV;AACH;;AACDC,QAAM,CAACc,mBAAP,CAA2BJ,KAA3B,EAAkCC,QAAlC;AACH,C;;;;;;;AC9CD,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;;ACNa;AACb,mBAAO,CAAC,MAAmB;AAC3B,eAAe,mBAAO,CAAC,MAAa;AACpC,WAAW,mBAAO,CAAC,MAAS;AAC5B,YAAY,mBAAO,CAAC,MAAU;AAC9B,cAAc,mBAAO,CAAC,MAAY;AAClC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,iBAAiB,mBAAO,CAAC,MAAgB;;AAEzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,yBAAyB,4CAA4C;AACrE;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,2BAA2B,mBAAmB,aAAa;AAC3D;AACA;AACA;AACA;AACA,6CAA6C,WAAW;AACxD;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAkB;AAClB;AACA,gBAAgB;AAChB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;;;;;;;;AC/FA,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAW;AAClC;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD,IAAI;AACJ;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oDAAoD,cAAc;;AAElE;AACA;;;;;;;;AC3EA;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B;AACA,2BAA2B,kBAAkB,EAAE;;AAE/C;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBA;;;;;;;;;ACAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;AC5FA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACNA,aAAa,mBAAO,CAAC,MAAW;AAChC,WAAW,mBAAO,CAAC,MAAS;AAC5B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAuB;AAC/C;AACA;;AAEA,mBAAO,CAAC,MAAS;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,CAAC;AACD;AACA,CAAC;;;;;;;;AC9BD;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,UAAU,mBAAO,CAAC,MAAe;AACjC,kBAAkB,mBAAO,CAAC,MAAkB;AAC5C,eAAe,mBAAO,CAAC,MAAe;AACtC,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA,eAAe,mBAAO,CAAC,MAAe;AACtC;AACA;AACA;AACA;AACA;AACA,EAAE,mBAAO,CAAC,MAAS;AACnB,6BAA6B;AAC7B;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA,GApHA;AAqHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GA5HA;AA6HA;AACA;AACA,GA/HA;AAgIA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA,sCAHA,CAKA;;AACA;AAEA;AAEA;AAEA;AACA;AACA;AACA,8BADA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA,WAFA;AAGA,SATA;AAUA,OAvBA;AAwBA,KA7BA;AA8BA,GAhKA;AAiKA;AACA;AACA;AACA;AAAA;;AACA;AACA;;AACA;AACA;;;;;;;;;;;;;;;;;;AAoBA;AACA;AACA,WAFA;AAGA;;AACA;AACA,OA7BA;AA8BA,KAjCA;AAkCA;AACA;AACA,KApCA;AAqCA;AACA;AACA,KAvCA;AAwCA;AACA;AACA,KA1CA;AA2CA;AACA;AACA,KA7CA;AA8CA;AACA;AACA,KAhDA;AAiDA,cAjDA,wBAiDA;AACA;AACA;AACA;AACA;;AACA;AACA,KAvDA;AAwDA;AACA;AACA,KA1DA;AA2DA,UA3DA,oBA2DA;AACA;AACA;AA7DA,GAjKA;AAgOA;AACA,gBADA,0BACA;AACA;AACA;AACA;AAEA;;AACA;AACA;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;AACA;AACA,iBAFA;AAGA,eAJA;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AAEA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AADA;AAGA,KAnCA;AAoCA;AACA;AACA;AACA;;AACA;AACA,KAzCA;AA0CA;AACA,iCADA,CAEA;AACA;;AACA;AACA;AACA,KAhDA;AAiDA;AACA;AACA,sEAFA,CAGA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AACA,OAXA,MAWA;AACA;AACA;AACA,SAFA;AAGA,OAvBA,CAyBA;;;AACA;AACA,0EA3BA,CA4BA;;AACA;AACA;AACA;AACA,KAjFA;AAkFA;AACA,sEADA,CAEA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;;AAEA;;AACA;AACA;AAAA;AAAA;AAAA,mBACA;AAAA;AAAA,SADA;AAGA,8CAJA,CAMA;;AACA;AACA;AACA;AAAA,cACA,iBADA;AAEA;AACA;AACA;AACA,WAHA;AAKA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,EANA,CASA;;AACA;AAEA,OAZA,MAYA;AACA;AACA;AACA,SAFA;AAGA;;AAEA;AAEA;AACA;AACA;AAEA;AACA,KA9IA;AAgJA;AACA,wBAjJA,kCAiJA;AACA;AACA,oEAFA,CAIA;;AACA,6EACA,sFANA,CAQA;;AACA,kDACA,mBADA,EAEA,YAFA,EAGA,gBAHA,EAIA,aAJA,EAKA,mBALA,EAMA,OANA,EAOA,oBAPA,EATA,CAmBA;;AACA;;AAEA;AACA;AACA,OAxBA,CA0BA;;;AACA;AAEA;AACA;AACA,KAhLA;AAkLA;AACA,0BAnLA,oCAmLA;AACA;AACA;AACA,KAtLA;AAwLA;AACA,kBAzLA,0BAyLA,MAzLA,EAyLA,cAzLA,EAyLA;AAEA;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAHA,CASA;;AACA;AACA;AACA;AACA,SAFA;AAGA,OAJA,EAVA,CAgBA;;AACA;AACA;AA3MA;AAhOA,G;;AC7BoU,CAAgB,oHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGtE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,6CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,2F;;;;;;;ACnBf;AACA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAe;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;ACZa;AACb,aAAa,mBAAO,CAAC,MAAkB;AACvC,iBAAiB,mBAAO,CAAC,MAAkB;AAC3C,qBAAqB,mBAAO,CAAC,MAAsB;AACnD;;AAEA;AACA,mBAAO,CAAC,MAAS,qBAAqB,mBAAO,CAAC,MAAQ,4BAA4B,aAAa,EAAE;;AAEjG;AACA,qDAAqD,4BAA4B;AACjF;AACA;;;;;;;;ACZA,mBAAO,CAAC,MAA0C;AAClD,cAAc,mBAAO,CAAC,MAAqB;AAC3C;AACA;AACA;;;;;;;;ACJA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,YAAY,mBAAO,CAAC,MAAgB;;AAEpC,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACPA,cAAc,mBAAO,CAAC,MAAW;AACjC;AACA,iCAAiC,mBAAO,CAAC,MAAgB,cAAc,iBAAiB,mBAAO,CAAC,MAAc,KAAK;;;;;;;;;ACFtG;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;;AAElD;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACvCD;AACA;AACA;AACA;AACe;AACf;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAwB;AAC3D,KAAK;AACL;AACA;AACA;AACA;AACA;;;AC1BA;AAAA;AACA;AACA;AACA;AACA;;AAEyC;;AAEzC;;AAEA;AACA;AACA;AACA;AACA,UAAU,iBAAiB;AAC3B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEe;AACf;;AAEA;;AAEA,eAAe,YAAY;AAC3B;;AAEA;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY;AAC3B;AACA,KAAK;AACL;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA,uBAAuB,2BAA2B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AC7Na;;AAEb;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,+CAA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,WAAW,mBAAO,CAAC,MAAS;AAC5B,UAAU,mBAAO,CAAC,MAAQ;AAC1B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE;AACA,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,eAAe;AACf,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;;AC7DA;AACA,cAAc,mBAAO,CAAC,MAAY;AAClC,cAAc,mBAAO,CAAC,MAAY;AAClC;AACA;AACA;;;;;;;;ACLA,uBAAuB;AACvB;AACA;AACA;;;;;;;;ACHA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACXA;;AAEA;AACA,cAAc,mBAAO,CAAC,MAAga;AACtb,4CAA4C,QAAS;AACrD;AACA;AACA,UAAU,mBAAO,CAAC,MAA6D;AAC/E,6CAA6C,qCAAqC,E;;;;;;;;ACRrE;AACb;AACA,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C,cAAc,mBAAO,CAAC,MAAgB;AACtC,WAAW,mBAAO,CAAC,MAAgB;AACnC,UAAU,mBAAO,CAAC,MAAe;AACjC,eAAe,mBAAO,CAAC,MAAc;AACrC,cAAc,mBAAO,CAAC,MAAY;AAClC;;AAEA;AACA,6BAA6B,mBAAO,CAAC,MAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,UAAU,EAAE;AAChD,mBAAmB,sCAAsC;AACzD,CAAC,qCAAqC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;;ACrCD;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;ACLzC,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACNA,kBAAkB,mBAAO,CAAC,MAAgB,MAAM,mBAAO,CAAC,MAAU;AAClE,+BAA+B,mBAAO,CAAC,MAAe,gBAAgB,mBAAmB,UAAU,EAAE,EAAE;AACvG,CAAC;;;;;;;;ACFD;AACA;AACA;AACA;;;;;;;;ACHA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACNA,UAAU,mBAAO,CAAC,MAAc;AAChC,UAAU,mBAAO,CAAC,MAAQ;AAC1B,UAAU,mBAAO,CAAC,MAAQ;;AAE1B;AACA,oEAAoE,iCAAiC;AACrG;;;;;;;;ACNA,SAAS,mBAAO,CAAC,MAAc;AAC/B;AACA;AACA;;AAEA;AACA,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,CAAC;;;;;;;;ACfD,6BAA6B;AAC7B,uCAAuC;;;;;;;;ACDvC;;;;;;;;ACAA,iBAAiB,mBAAO,CAAC,MAA2C,E;;;;;;;ACApE,eAAe,mBAAO,CAAC,MAAc;AACrC,qBAAqB,mBAAO,CAAC,MAAmB;AAChD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;;ACfA;AACA;AACA,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,cAAc,mBAAO,CAAC,MAAQ,iBAAiB,mBAAO,CAAC,MAAgB;AACvE;AACA;AACA,OAAO,YAAY,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA;;;;;;;;ACxBA,mD;;;;;;;ACAA;AACA,kBAAkB,mBAAO,CAAC,MAAU;AACpC,iCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,CAAC;;;;;;;;ACHD;AACA,cAAc,mBAAO,CAAC,MAAW;AACjC,cAAc,mBAAO,CAAC,MAAa;AACnC,gBAAgB,mBAAO,CAAC,MAAe;AACvC,WAAW,mBAAO,CAAC,MAAgB;AACnC,qBAAqB,mBAAO,CAAC,MAAoB;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACrBD;AACA,YAAY,mBAAO,CAAC,MAAyB;AAC7C,iBAAiB,mBAAO,CAAC,MAAkB;;AAE3C;AACA;AACA;;;;;;;;ACNA;AACA,WAAW,mBAAO,CAAC,MAAgB;AACnC,WAAW,mBAAO,CAAC,MAAgB;AACnC,eAAe,mBAAO,CAAC,MAAc;AACrC,cAAc,mBAAO,CAAC,MAAW;AACjC;AACA;AACA;AACA;AACA;;;;;;;;ACTA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnBA;AACA,kBAAkB,mBAAO,CAAC,MAAQ;AAClC;AACA,0CAA0C,mBAAO,CAAC,MAAS,6BAA6B;AACxF;AACA;AACA;;;;;;;;ACNA,2BAA2B,mBAAO,CAAC,MAA+C;AAClF;;;AAGA;AACA,cAAc,QAAS,kBAAkB,gCAAgC,wBAAwB,2CAA2C,mCAAmC,wBAAwB,sBAAsB,kBAAkB,6BAA6B,8CAA8C,sCAAsC,8BAA8B,gDAAgD,OAAO,WAAW,wCAAwC,UAAU,QAAQ,wBAAwB,WAAW,UAAU,sCAAsC,wBAAwB,gBAAgB,UAAU,oCAAoC,eAAe,WAAW,gCAAgC,wBAAwB,UAAU,yBAAyB,sBAAsB,qBAAqB,oBAAoB,iBAAiB,qCAAqC,kBAAkB,WAAW,YAAY,SAAS,QAAQ,oCAAoC,mNAAmN,8BAA8B,oBAAoB,4BAA4B,8BAA8B,8BAA8B,sBAAsB,iBAAiB,yCAAyC,SAAS,OAAO,kCAAkC,6hBAA6hB,2BAA2B,iBAAiB,4BAA4B,8BAA8B,iBAAiB,WAAW,kCAAkC,yBAAyB,sBAAsB,qBAAqB,iBAAiB;;AAEhuE;;;;;;;;ACPA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA,2DAA2D;AAC3D;;;;;;;;ACLA;AACA,kBAAkB,mBAAO,CAAC,MAAU;AACpC,iCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACHD;;;;;;;;;AAOA;;AACA;;;;;;;;AAQA;;;;AAEA;AAEA;;AACA;;;;;;;;;AAMO,SAASM,MAAT,CAAgBX;AAAhB;AAAA;AAAA;AAAwC;AAC7C,MAAIY,GAAG,GAAG,CAAV;AAAA,MAAaC,OAAb;;AACA,OAAK,IAAI3B,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD2B,WAAO,GAAGb,MAAM,CAACd,CAAD,CAAN,CAAW4B,CAAX,GAAed,MAAM,CAACd,CAAD,CAAN,CAAU6B,CAAnC;AACA,QAAIF,OAAO,GAAGD,GAAd,EAAmBA,GAAG,GAAGC,OAAN;AACpB;;AACD,SAAOD,GAAP;AACD;AAEM,SAASb,WAAT,CAAqBC;AAArB;AAAA;AAAA;AAA6C;AAClD,MAAMgB,SAAS,GAAGC,KAAK,CAACjB,MAAM,CAACZ,MAAR,CAAvB;;AACA,OAAK,IAAIF,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD8B,aAAS,CAAC9B,CAAD,CAAT,GAAegC,eAAe,CAAClB,MAAM,CAACd,CAAD,CAAP,CAA9B;AACD;;AACD,SAAO8B,SAAP;AACD,C,CAED;;AACO,SAASE,eAAT,CAAyBC;AAAzB;AAAA;AAAA;AAA6D;AAClE;;;;;;;AAOE,SAAOC,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAeH,UAAf,CAAX,CAAP;AACH;AAED;;;;;;AAKO,SAASI,QAAT,CAAkBC;AAAlB;AAAA,EAAkCC;AAAlC;AAAA;AAAA;AAA2D;AAChE,MAAID,EAAE,KAAKC,EAAX,EAAe,OAAO,KAAP,CADiD,CACnC;;AAC7B,MAAID,EAAE,CAACE,CAAH,GAAOF,EAAE,CAACG,CAAV,IAAeF,EAAE,CAACC,CAAtB,EAAyB,OAAO,KAAP,CAFuC,CAEzB;;AACvC,MAAIF,EAAE,CAACE,CAAH,IAAQD,EAAE,CAACC,CAAH,GAAOD,EAAE,CAACE,CAAtB,EAAyB,OAAO,KAAP,CAHuC,CAGzB;;AACvC,MAAIH,EAAE,CAACV,CAAH,GAAOU,EAAE,CAACT,CAAV,IAAeU,EAAE,CAACX,CAAtB,EAAyB,OAAO,KAAP,CAJuC,CAIzB;;AACvC,MAAIU,EAAE,CAACV,CAAH,IAAQW,EAAE,CAACX,CAAH,GAAOW,EAAE,CAACV,CAAtB,EAAyB,OAAO,KAAP,CALuC,CAKzB;;AACvC,SAAO,IAAP,CANgE,CAMnD;AACd;AAED;;;;;;;;;;AASO,SAAST,OAAT,CAAiBN;AAAjB;AAAA,EAAiCF;AAAjC;AAAA;AAAA;AAAmE;AACtE;AACF,MAAM8B,WAAW,GAAGC,UAAU,CAAC7B,MAAD,CAA9B,CAFwE,CAGxE;;AACA,MAAMjB,MAAM,GAAG+C,uBAAuB,CAAC9B,MAAD,CAAtC,CAJwE,CAKxE;;AACA,MAAM+B,GAAG,GAAGd,KAAK,CAACjB,MAAM,CAACZ,MAAR,CAAjB;;AAEA,OAAK,IAAIF,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGJ,MAAM,CAACK,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD,QAAI8C,CAAC,GAAGjD,MAAM,CAACG,CAAD,CAAd,CADiD,CAGjD;;AACA,QAAI,CAAC8C,CAAC,CAACC,MAAP,EAAe;AACbD,OAAC,GAAGE,WAAW,CAACN,WAAD,EAAcI,CAAd,EAAiBlC,eAAjB,CAAf,CADa,CAGb;AACA;;AACA8B,iBAAW,CAACO,IAAZ,CAAiBH,CAAjB;AACD,KAVgD,CAYjD;;;AACAD,OAAG,CAAC/B,MAAM,CAACI,OAAP,CAAe4B,CAAf,CAAD,CAAH,GAAyBA,CAAzB,CAbiD,CAejD;;AACAA,KAAC,CAACI,KAAF,GAAU,KAAV;AACD;;AAED,SAAOL,GAAP;AACD;AAED;;;;AAGO,SAASG,WAAT,CAAqBN;AAArB;AAAA,EAA0CI;AAA1C;AAAA,EAAyDlC;AAAzD;AAAA;AAAA;AAA+F;AACpG,MAAIA,eAAJ,EAAqB;AACnB;AACA,WAAOkC,CAAC,CAAClB,CAAF,GAAM,CAAN,IAAW,CAACuB,iBAAiB,CAACT,WAAD,EAAcI,CAAd,CAApC,EAAsD;AACpDA,OAAC,CAAClB,CAAF;AACD;AACF,GANmG,CAQpG;;;AACA,MAAIS,QAAJ;;AACA,SAAOA,QAAQ,GAAGc,iBAAiB,CAACT,WAAD,EAAcI,CAAd,CAAnC,EAAsD;AACpDA,KAAC,CAAClB,CAAF,GAAMS,QAAQ,CAACT,CAAT,GAAaS,QAAQ,CAACR,CAA5B;AACD;;AACD,SAAOiB,CAAP;AACD;AAED;;;;;;;AAMO,SAASzB,aAAT,CAAuBP;AAAvB;AAAA,EAAuCsC;AAAvC;AAAA;AAAA;AAAuE;AAC5E,MAAMC,YAAY,GAAGV,UAAU,CAAC7B,MAAD,CAA/B;;AACA,OAAK,IAAId,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD,QAAM8C,CAAC,GAAGhC,MAAM,CAACd,CAAD,CAAhB,CADiD,CAEjD;;AACA,QAAI8C,CAAC,CAACN,CAAF,GAAMM,CAAC,CAACL,CAAR,GAAYW,MAAM,CAAC9C,IAAvB,EAA6BwC,CAAC,CAACN,CAAF,GAAMY,MAAM,CAAC9C,IAAP,GAAcwC,CAAC,CAACL,CAAtB,CAHoB,CAIjD;;AACA,QAAIK,CAAC,CAACN,CAAF,GAAM,CAAV,EAAa;AACXM,OAAC,CAACN,CAAF,GAAM,CAAN;AACAM,OAAC,CAACL,CAAF,GAAMW,MAAM,CAAC9C,IAAb;AACD;;AACD,QAAI,CAACwC,CAAC,CAACC,MAAP,EAAeM,YAAY,CAACJ,IAAb,CAAkBH,CAAlB,EAAf,KACK;AACH;AACA;AACA,aAAMK,iBAAiB,CAACE,YAAD,EAAeP,CAAf,CAAvB,EAA0C;AACxCA,SAAC,CAAClB,CAAF;AACD;AACF;AACF;;AACD,SAAOd,MAAP;AACD;AAED;;;;;;;;AAOO,SAASwC,aAAT,CAAuBxC;AAAvB;AAAA,EAAuCyC;AAAvC;AAAA;AAAA;AAAgE;AACrE,OAAK,IAAIvD,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD,QAAIc,MAAM,CAACd,CAAD,CAAN,CAAUA,CAAV,KAAgBuD,EAApB,EAAwB,OAAOzC,MAAM,CAACd,CAAD,CAAb;AACzB;AACF;AAED;;;;;;;;;AAQO,SAASmD,iBAAT,CAA2BrC;AAA3B;AAAA,EAA2CmB;AAA3C;AAAA;AAAA;AAAgF;AACrF,OAAK,IAAIjC,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD,QAAIqC,QAAQ,CAACvB,MAAM,CAACd,CAAD,CAAP,EAAYiC,UAAZ,CAAZ,EAAqC,OAAOnB,MAAM,CAACd,CAAD,CAAb;AACtC;AACF;AAEM,SAASwD,gBAAT,CAA0B1C;AAA1B;AAAA,EAA0CmB;AAA1C;AAAA;AAAA;AAAqF;AAC1F,SAAOnB,MAAM,CAAC2C,MAAP,CAAc,UAACX,CAAD;AAAA,WAAOT,QAAQ,CAACS,CAAD,EAAIb,UAAJ,CAAf;AAAA,GAAd,CAAP;AACD;AAED;;;;;;AAKO,SAASU,UAAT,CAAoB7B;AAApB;AAAA;AAAA;AAAuD;AAC1D;AACA,SAAOA,MAAM,CAAC2C,MAAP,CAAc,UAACX,CAAD;AAAA,WAAOA,CAAC,CAACC,MAAT;AAAA,GAAd,CAAP;AACH;AAED;;;;;;;;;;;AAUO,SAASW,WAAT,CAAqB5C;AAArB;AAAA,EAAqCgC;AAArC;AAAA,EAAoDN;AAApD;AAAA,EAA+DZ;AAA/D;AAAA,EAA0E+B;AAA1E;AAAA,EAAiGC;AAAjG;AAAA;AAAA;AAAoI;AACzI,MAAId,CAAC,CAACC,MAAN,EAAc,OAAOjC,MAAP,CAD2H,CAGzI;AACA;;AAEA,MAAM+C,IAAI,GAAGf,CAAC,CAACN,CAAf;AACA,MAAMsB,IAAI,GAAGhB,CAAC,CAAClB,CAAf;AAEA,MAAMmC,QAAQ,GAAGnC,CAAC,IAAIkB,CAAC,CAAClB,CAAF,GAAMA,CAA5B,CATyI,CAUzI;;AACA,MAAI,OAAOY,CAAP,KAAa,QAAjB,EAA2BM,CAAC,CAACN,CAAF,GAAMA,CAAN;AAC3B,MAAI,OAAOZ,CAAP,KAAa,QAAjB,EAA2BkB,CAAC,CAAClB,CAAF,GAAMA,CAAN;AAC3BkB,GAAC,CAACI,KAAF,GAAU,IAAV,CAbyI,CAezI;AACA;AACA;AACA;;AACA,MAAIrD,MAAM,GAAG+C,uBAAuB,CAAC9B,MAAD,CAApC;AACA,MAAIiD,QAAJ,EAAclE,MAAM,GAAGA,MAAM,CAACmE,OAAP,EAAT;AACd,MAAMC,UAAU,GAAGT,gBAAgB,CAAC3D,MAAD,EAASiD,CAAT,CAAnC;;AAEA,MAAIc,gBAAgB,IAAIK,UAAU,CAAC/D,MAAnC,EAA2C;AACzC4C,KAAC,CAACN,CAAF,GAAMqB,IAAN;AACAf,KAAC,CAAClB,CAAF,GAAMkC,IAAN;AACAhB,KAAC,CAACI,KAAF,GAAU,KAAV;AACA,WAAOpC,MAAP;AACD,GA5BwI,CA8BzI;;;AACA,OAAK,IAAId,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGgE,UAAU,CAAC/D,MAAjC,EAAyCF,CAAC,GAAGC,GAA7C,EAAkDD,CAAC,EAAnD,EAAuD;AACrD,QAAMkE,SAAS,GAAGD,UAAU,CAACjE,CAAD,CAA5B,CADqD,CAErD;AAEA;;AACA,QAAIkE,SAAS,CAAChB,KAAd,EAAqB,SALgC,CAOrD;;AACA,QAAIJ,CAAC,CAAClB,CAAF,GAAMsC,SAAS,CAACtC,CAAhB,IAAqBkB,CAAC,CAAClB,CAAF,GAAMsC,SAAS,CAACtC,CAAhB,GAAoBsC,SAAS,CAACrC,CAAV,GAAc,CAA3D,EAA8D,SART,CAUrD;;AACA,QAAIqC,SAAS,CAACnB,MAAd,EAAsB;AACpBjC,YAAM,GAAGqD,4BAA4B,CAACrD,MAAD,EAASoD,SAAT,EAAoBpB,CAApB,EAAuBa,YAAvB,CAArC;AACD,KAFD,MAEO;AACL7C,YAAM,GAAGqD,4BAA4B,CAACrD,MAAD,EAASgC,CAAT,EAAYoB,SAAZ,EAAuBP,YAAvB,CAArC;AACD;AACF;;AAED,SAAO7C,MAAP;AACD;AAED;;;;;;;;;;;AAUO,SAASqD,4BAAT,CAAsCrD;AAAtC;AAAA,EAAsDuC;AAAtD;AAAA,EACsCe;AADtC;AAAA,EAC8DT;AAD9D;AAAA;AAAA;AAC8F;AAEnG,MAAMC,gBAAgB,GAAG,KAAzB,CAFmG,CAEpE;AAC/B;AACA;AACA;;AACA,MAAID,YAAJ,EAAkB;AAChB;AACA,QAAMU;AAAoB;AAAA,MAAG;AAC3B7B,OAAC,EAAE4B,UAAU,CAAC5B,CADa;AAE3BZ,OAAC,EAAEwC,UAAU,CAACxC,CAFa;AAG3Ba,OAAC,EAAE2B,UAAU,CAAC3B,CAHa;AAI3BZ,OAAC,EAAEuC,UAAU,CAACvC,CAJa;AAK3B7B,OAAC,EAAE;AALwB,KAA7B;AAOAqE,YAAQ,CAACzC,CAAT,GAAa0C,IAAI,CAAC5C,GAAL,CAAS2B,YAAY,CAACzB,CAAb,GAAiBwC,UAAU,CAACvC,CAArC,EAAwC,CAAxC,CAAb;;AACA,QAAI,CAACsB,iBAAiB,CAACrC,MAAD,EAASuD,QAAT,CAAtB,EAA0C;AACxC,aAAOX,WAAW,CAAC5C,MAAD,EAASsD,UAAT,EAAqBG,SAArB,EAAgCF,QAAQ,CAACzC,CAAzC,EAA4CgC,gBAA5C,CAAlB;AACD;AACF,GAnBkG,CAqBnG;AACA;;;AACA,SAAOF,WAAW,CAAC5C,MAAD,EAASsD,UAAT,EAAqBG,SAArB,EAAgCH,UAAU,CAACxC,CAAX,GAAe,CAA/C,EAAkDgC,gBAAlD,CAAlB;AACD;AAED;;;;;;;AAMO,SAASY,IAAT,CAAcC;AAAd;AAAA;AAAA;AAAmC;AACxC,SAAOA,GAAG,GAAG,GAAN,GAAY,GAAnB;AACD;AAEM,SAASC,YAAT,CAAsBC,GAAtB,EAA2BC,IAA3B,EAAiChF,KAAjC,EAAwCiF,MAAxC;AAAA;AAAwD;AAC7D;AACA,MAAMC,SAAS,GAAG,iBAAiBF,IAAjB,GAAwB,KAAxB,GAAgCD,GAAhC,GAAsC,QAAxD;AACA,SAAO;AACLI,aAAS,EAAED,SADN;AAELE,mBAAe,EAAEF,SAFZ;AAGLG,gBAAY,EAAEH,SAHT;AAILI,eAAW,EAAEJ,SAJR;AAKLK,cAAU,EAAEL,SALP;AAMLlF,SAAK,EAAEA,KAAK,GAAG,IANV;AAOLiF,UAAM,EAAEA,MAAM,GAAG,IAPZ;AAQLO,YAAQ,EAAE;AARL,GAAP;AAUD;AACD;;;;;;;;;;AASO,SAASC,eAAT,CAAyBV,GAAzB,EAA8BW,KAA9B,EAAqC1F,KAArC,EAA4CiF,MAA5C;AAAA;AAA4D;AAC/D;AACA,MAAMC,SAAS,GAAG,iBAAiBQ,KAAK,GAAG,CAAC,CAA1B,GAA8B,KAA9B,GAAsCX,GAAtC,GAA4C,QAA9D;AACA,SAAO;AACHI,aAAS,EAAED,SADR;AAEHE,mBAAe,EAAEF,SAFd;AAGHG,gBAAY,EAAEH,SAHX;AAIHI,eAAW,EAAEJ,SAJV;AAKHK,cAAU,EAAEL,SALT;AAMHlF,SAAK,EAAEA,KAAK,GAAG,IANZ;AAOHiF,UAAM,EAAEA,MAAM,GAAG,IAPd;AAQHO,YAAQ,EAAE;AARP,GAAP;AAUH;AAEM,SAASG,UAAT,CAAoBZ,GAApB,EAAyBC,IAAzB,EAA+BhF,KAA/B,EAAsCiF,MAAtC;AAAA;AAAsD;AACzD,SAAO;AACHF,OAAG,EAAEA,GAAG,GAAG,IADR;AAEHC,QAAI,EAAEA,IAAI,GAAG,IAFV;AAGHhF,SAAK,EAAEA,KAAK,GAAG,IAHZ;AAIHiF,UAAM,EAAEA,MAAM,GAAG,IAJd;AAKHO,YAAQ,EAAE;AALP,GAAP;AAOH;AACD;;;;;;;;;;AASO,SAASI,WAAT,CAAqBb,GAArB,EAA0BW,KAA1B,EAAiC1F,KAAjC,EAAwCiF,MAAxC;AAAA;AAAwD;AAC3D,SAAO;AACHF,OAAG,EAAEA,GAAG,GAAG,IADR;AAEHW,SAAK,EAAEA,KAAK,GAAE,IAFX;AAGH1F,SAAK,EAAEA,KAAK,GAAG,IAHZ;AAIHiF,UAAM,EAAEA,MAAM,GAAG,IAJd;AAKHO,YAAQ,EAAE;AALP,GAAP;AAOH;AAGD;;;;;;;AAMO,SAASxC,uBAAT,CAAiC9B;AAAjC;AAAA;AAAA;AAAyD;AAC9D,SAAO,GAAG2E,MAAH,CAAU3E,MAAV,EAAkBS,IAAlB,CAAuB,UAASC,CAAT,EAAYL,CAAZ,EAAe;AAC3C,QAAIK,CAAC,CAACI,CAAF,KAAQT,CAAC,CAACS,CAAV,IAAeJ,CAAC,CAACgB,CAAF,KAAQrB,CAAC,CAACqB,CAA7B,EAAgC;AAC9B,aAAO,CAAP;AACD;;AAED,QAAIhB,CAAC,CAACI,CAAF,GAAMT,CAAC,CAACS,CAAR,IAAcJ,CAAC,CAACI,CAAF,KAAQT,CAAC,CAACS,CAAV,IAAeJ,CAAC,CAACgB,CAAF,GAAMrB,CAAC,CAACqB,CAAzC,EAA6C;AAC3C,aAAO,CAAP;AACD;;AAED,WAAO,CAAC,CAAR;AACD,GAVM,CAAP;AAWD;AAED;;;;;;;;;;AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA;;;;;;;;AAOO,SAASkD,cAAT,CAAwB5E;AAAxB;AAAA,EAAwC6E;AAAxC;AAAA;AAAA;AAAmE;AACxEA,aAAW,GAAGA,WAAW,IAAI,QAA7B;AACA,MAAMC,QAAQ,GAAG,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,EAAgB,GAAhB,CAAjB;AACA,MAAI,CAAC7D,KAAK,CAAC8D,OAAN,CAAc/E,MAAd,CAAL,EAA4B,MAAM,IAAIP,KAAJ,CAAUoF,WAAW,GAAG,oBAAxB,CAAN;;AAC5B,OAAK,IAAI3F,CAAC,GAAG,CAAR,EAAWC,GAAG,GAAGa,MAAM,CAACZ,MAA7B,EAAqCF,CAAC,GAAGC,GAAzC,EAA8CD,CAAC,EAA/C,EAAmD;AACjD,QAAM8F,IAAI,GAAGhF,MAAM,CAACd,CAAD,CAAnB;;AACA,SAAK,IAAI+F,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,QAAQ,CAAC1F,MAA7B,EAAqC6F,CAAC,EAAtC,EAA0C;AACxC,UAAI,OAAOD,IAAI,CAACF,QAAQ,CAACG,CAAD,CAAT,CAAX,KAA6B,QAAjC,EAA2C;AACzC,cAAM,IAAIxF,KAAJ,CAAU,oBAAoBoF,WAApB,GAAkC,GAAlC,GAAwC3F,CAAxC,GAA4C,IAA5C,GAAmD4F,QAAQ,CAACG,CAAD,CAA3D,GAAiE,oBAA3E,CAAN;AACD;AACF;;AACD,QAAID,IAAI,CAAC9F,CAAL,IAAU,OAAO8F,IAAI,CAAC9F,CAAZ,KAAkB,QAAhC,EAA0C,CACxC;AACE;AACF;AACD;;AACD,QAAI8F,IAAI,CAAC/C,MAAL,KAAgBwB,SAAhB,IAA6B,OAAOuB,IAAI,CAAC/C,MAAZ,KAAuB,SAAxD,EAAmE;AACjE,YAAM,IAAIxC,KAAJ,CAAU,oBAAoBoF,WAApB,GAAkC,GAAlC,GAAwC3F,CAAxC,GAA4C,6BAAtD,CAAN;AACD;AACF;AACF,C,CAED;;AACO,SAASgG,gBAAT,CAA0BC;AAA1B;AAAA,EAAsCC;AAAtC;AAAA;AAAA;AAAgE;AACrEA,KAAG,CAAC/G,OAAJ,CAAY,UAACgH,GAAD;AAAA,WAASF,EAAE,CAACE,GAAD,CAAF,GAAUF,EAAE,CAACE,GAAD,CAAF,CAAQC,IAAR,CAAaH,EAAb,CAAnB;AAAA,GAAZ;AACD;AAID;;;;;;AAKO,SAASI,YAAT,CAAsBC,GAAtB,EAA2B;AAC9B,MAAIpH,IAAI,GAAGD,MAAM,CAACC,IAAP,CAAYoH,GAAZ,CAAX;AACA,MAAI,CAACpH,IAAI,CAACgB,MAAV,EAAkB,OAAO,EAAP;AAClB,MAAIF,CAAJ;AAAA,MAAOC,GAAG,GAAGf,IAAI,CAACgB,MAAlB;AACA,MAAIqG,MAAM,GAAG,EAAb;;AAEA,OAAKvG,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAGC,GAAhB,EAAqBD,CAAC,EAAtB,EAA0B;AACtB,QAAImG,GAAG,GAAGjH,IAAI,CAACc,CAAD,CAAd;AACA,QAAIwG,GAAG,GAAGF,GAAG,CAACH,GAAD,CAAb;AACAI,UAAM,IAAIE,SAAS,CAACN,GAAD,CAAT,GAAiB,GAAjB,GAAuBO,KAAK,CAACP,GAAD,EAAMK,GAAN,CAA5B,GAAyC,GAAnD;AACH;;AAED,SAAOD,MAAP;AACH;AAGD;;AACO,IAAII,WAAW,GAAG;AACrBC,yBAAuB,EAAE,IADJ;AAErBC,SAAO,EAAE,IAFY;AAGrBC,cAAY,EAAE,IAHO;AAIrBC,iBAAe,EAAE,IAJI;AAKrBC,aAAW,EAAE,IALQ;AAMrBC,MAAI,EAAE,IANe;AAOrBC,UAAQ,EAAE,IAPW;AAQrBC,cAAY,EAAE,IARO;AASrBC,YAAU,EAAE,IATS;AAUrBC,cAAY,EAAE,IAVO;AAWrBC,WAAS,EAAE,IAXU;AAYrBC,SAAO,EAAE,IAZY;AAarBC,YAAU,EAAE,IAbS;AAcrBC,YAAU,EAAE,IAdS;AAerBC,WAAS,EAAE,IAfU;AAgBrBC,YAAU,EAAE,IAhBS;AAiBrBC,SAAO,EAAE,IAjBY;AAkBrBC,OAAK,EAAE,IAlBc;AAmBrBC,SAAO,EAAE,IAnBY;AAoBrBC,SAAO,EAAE,IApBY;AAqBrBC,QAAM,EAAE,IArBa;AAsBrBC,QAAM,EAAE,IAtBa;AAuBrBC,MAAI,EAAE,IAvBe;AAyBrB;AACAC,aAAW,EAAE,IA1BQ;AA2BrBC,aAAW,EAAE,IA3BQ;AA4BrBC,kBAAgB,EAAE,IA5BG;AA6BrBC,eAAa,EAAE,IA7BM;AA8BrBC,aAAW,EAAE;AA9BQ,CAAlB;AAkCP;;;;;;;AAMO,SAAS7B,KAAT,CAAetH,IAAf,EAAqBoJ,KAArB,EAA4B;AAC/B,MAAG,OAAOA,KAAP,KAAiB,QAAjB,IAA6B,CAAC7B,WAAW,CAAEvH,IAAF,CAA5C,EAAsD;AAClD,WAAOoJ,KAAK,GAAG,IAAf;AACH,GAFD,MAEO;AACH,WAAOA,KAAP;AACH;AACJ;AAGD;;;;;;;AAOO,IAAIC,WAAW,GAAG,mBAAlB;AAEA,SAAShC,SAAT,CAAmBiC,GAAnB,EAAwB;AAC3B,SAAOA,GAAG,CAACC,OAAJ,CAAYF,WAAZ,EAAyB,OAAzB,EAAkCG,WAAlC,EAAP;AACH;AAGM,SAASC,eAAT,CAAyBC,KAAzB,EAAgCC,QAAhC,EAA0CP,KAA1C,EAAiD;AACpD,OAAK,IAAIxI,CAAC,GAAC,CAAX,EAAcA,CAAC,GAAG8I,KAAK,CAAC5I,MAAxB,EAAgCF,CAAC,EAAjC;AACI,QAAI8I,KAAK,CAAC9I,CAAD,CAAL,CAAS+I,QAAT,KAAsBP,KAA1B,EACI,OAAO,IAAP;AAFR;;AAIA,SAAO,KAAP;AACH;AAEM,SAASQ,aAAT,CAAuBF,KAAvB,EAA8BC,QAA9B,EAAwCP,KAAxC,EAA+C;AAClDM,OAAK,CAAC3J,OAAN,CAAc,UAAUoH,MAAV,EAAkB0C,KAAlB,EAAyB;AACnC,QAAI1C,MAAM,CAACwC,QAAD,CAAN,KAAqBP,KAAzB,EAAgC;AAC5B;AACAM,WAAK,CAACI,MAAN,CAAaD,KAAb,EAAoB,CAApB;AACH;AACJ,GALD;AAMH,C;;;;;;;;AC9kBY;;AAEb,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,eAAe,mBAAO,CAAC,MAAc;AACrC,gBAAgB,mBAAO,CAAC,MAAe;AACvC,yBAAyB,mBAAO,CAAC,MAAyB;AAC1D,iBAAiB,mBAAO,CAAC,MAAyB;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAO,CAAC,MAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACrHD,cAAc,mBAAO,CAAC,MAAW;AACjC,cAAc,mBAAO,CAAC,MAAY;AAClC,YAAY,mBAAO,CAAC,MAAU;AAC9B,aAAa,mBAAO,CAAC,MAAc;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;A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A,SAvIA,qBAuIA;AAAA;;AACA,oBADA,CAGA;;AACA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA;AACA;AACA,KAJA;;AAMA;AACA;AACA,KAFA;;AAIA;AACA;AACA,KAFA;;AAIA;AACA;;AACA;AACA,KAHA;;AAKA;AACA;AACA,KAFA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,GA1LA;AA2LA;AACA,oBADA,CAEA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,+BADA,CACA;AACA;AACA,GAzMA;AA0MA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,KAFA,MAEA;AACA;AACA;;AACA;AACA;AACA,GA5NA;AA6NA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA;AACA,KAPA;AAQA;AACA;AACA,KAVA;AAWA;AACA;AACA,KAbA;AAcA;AACA;AACA,KAhBA;AAiBA;AACA;AACA;AACA,KApBA;AAqBA;AACA;AACA;AACA;AACA,KAzBA;AA0BA;AACA;AACA;AACA;AACA,KA9BA;AA+BA;AACA;AACA;AACA,KAlCA;AAmCA;AACA;AACA;AACA,KAtCA;AAuCA;AACA;AACA,yBAFA,CAGA;AACA,KA3CA;AA4CA;AACA;AACA,yBAFA,CAGA;AACA,KAhDA;AAiDA;AACA;AACA;AACA;AACA,KArDA;AAsDA;AACA;AACA,KAxDA;AAyDA;AACA;AACA,KA3DA;AA4DA;AACA;AACA,KA9DA;AA+DA;AACA;AACA,KAjEA;AAkEA;AACA;AACA;AACA;;AACA;AAAA;AAAA;AACA;AACA;AACA;AAzEA,GA7NA;AAwSA;AACA,YADA,sBACA;AACA;AACA,mDADA;AAEA,6BAFA;AAGA,mCAHA;AAIA,iDAJA;AAKA,8CALA;AAMA,oCANA;AAOA,6CAPA;AAQA;AARA;AAUA,KAZA;AAaA,yBAbA,mCAaA;AACA;AACA,KAfA;AAgBA,oCAhBA,8CAgBA;AACA;AACA,KAlBA;AAmBA,aAnBA,uBAmBA;AACA;AACA,KArBA;AAsBA,aAtBA,uBAsBA;AACA;AACA,KAxBA;AAyBA,wBAzBA,kCAyBA;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA;AA/BA,GAxSA;AAyUA;AACA;AACA;AACA;AACA;AACA,OAHA,MAGA;AACA;AACA;AACA;;AACA;;AAGA;AACA,oCADA,CAEA;;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;;AAEA,gBAzBA,CA0BA;;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AAEA,OARA,MAQA;AAAA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA;AACA;;AACA;AACA,KA7CA;AA8CA,wBA9CA,kCA8CA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA,sBACA;AACA;AACA;;AACA;AACA,KA1DA;AA2DA;AACA;AACA,+CAFA,CAGA;;AACA,mCAJA,CAIA;;AAJA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAAA,UAKA,CALA,GAKA,QALA,CAKA,CALA;AAOA;AAAA;AAAA;AAAA;AACA;;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,qEARA,CAUA;;AACA;AACA;AACA;;AACA;AAAA;AACA;AACA;AACA;AACA,wCAJA,CAKA;;AACA;AACA;AACA;AACA;AAlCA,OATA,CA8CA;;;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KAzIA;AA0IA,cA1IA,sBA0IA,KA1IA,EA0IA;AACA;AACA;AAEA,+CAJA,CAMA;;AACA,oCAPA,CAOA;;AAPA,UAQA,CARA,GAQA,QARA,CAQA,CARA;AAAA,UAQA,CARA,GAQA,QARA,CAQA,CARA,EAUA;;AACA;AAAA;AAAA;AAAA;;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;AACA;AAAA;AACA;;AACA;;AACA,mEAHA,CAIA;;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,gEAVA,CAWA;AACA;;AACA;AACA,oCAdA,CAeA;;AACA;AACA;;AACA;AAAA;AACA,yEADA,CAEA;;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA,mEARA,CASA;AACA;AACA;;AACA;AACA;AACA;AAjDA,OAZA,CAgEA;;;AACA;;AACA;AACA;AACA,OAFA,MAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA,KA5NA;AA6NA;AACA,yCADA,CAEA;;AACA;;AACA;AACA;AACA,oEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA,OAVA,MAUA;AACA;AACA,mEADA;AAEA,wEAFA;AAGA;AACA;AACA;AACA,oGANA;AAOA;AAPA;AASA;;AAGA;AACA,KAzPA;;AA0PA;;;;;;AAMA;AACA,UAjQA,kBAiQA,GAjQA,EAiQA,IAjQA,EAiQA;AACA,yCADA,CAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA,qFAXA,CAaA;;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA,KAnRA;AAoRA;AACA,gBArRA,0BAqRA;AACA,0FADA,CAEA;;AACA;AACA,KAzRA;;AA2RA;;;;;;AAMA,UAjSA,kBAiSA,MAjSA,EAiSA,KAjSA,EAiSA;AACA,yCADA,CAGA;AACA;AACA;;AACA;AACA,wFAPA,CASA;;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA,KA9SA;AA+SA;AACA;;AACA;AACA;AACA;AACA,KApTA;AAqTA;AACA;AACA,KAvTA;AAwTA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,yCADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA;AACA;AACA;AACA,WAFA;AAGA;AACA,OAbA,MAaA;AACA;AACA;AADA;AAGA;AACA,KA/UA;AAgVA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA,oEAFA,CAIA;AACA;;AAEA;AACA,mCADA;AAEA;AACA;AACA,uBADA;AAEA,kDAFA;AAGA,mDAHA;AAIA;AAJA,WAHA;AASA,2CATA;AAUA;AACA;AACA,oCADA;AAEA;AAFA,aADA;AAKA;AACA,oCADA;AAEA;AAFA;AALA;AAVA;AAsBA;;AACA;AACA;AACA,2BACA,EADA,CACA,kCADA,EACA;AACA;AACA,WAHA;AAIA;AACA,OArCA,MAqCA;AACA;AACA;AADA;AAGA;AACA,KA/XA;AAgYA;AACA;AACA;AACA;AAEA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA,OAzBA,CA2BA;AACA;;;AAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AAraA;AAzUA,G;;AC/FkU,CAAgB,gHAAG,EAAC,C;;;;;;;;ACA/P;AAC3B;AACL;AACa;;;AAGpE;AAC0F;AAC1F,gBAAgB,8CAAU;AAC1B,EAAE,2CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,yF;;;;;;;ACnBf;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;;AAEb,YAAY,mBAAO,CAAC,MAAS;;AAE7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;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ACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,mCAAmC,iBAAiB;AACpD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kEAAkE,iBAAiB,YAAY,aAAa,aAAa,kBAAkB,WAAW,YAAY;AAClK;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,2CAA2C,kBAAkB,sBAAsB,wBAAwB;AAC3G;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc,WAAW,UAAU;AAC7K,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB;AAC7H,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,YAAY,kBAAkB,aAAa,oBAAoB,aAAa,cAAc;AACxJ,8DAA8D,SAAS,QAAQ;AAC/E,8DAA8D,aAAa,cAAc;;AAEzF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtoBA;AACA;AACA;AACA;AACA;;;;;;;;;ACJa;AACb,uBAAuB,mBAAO,CAAC,MAAuB;AACtD,WAAW,mBAAO,CAAC,MAAc;AACjC,gBAAgB,mBAAO,CAAC,MAAc;AACtC,gBAAgB,mBAAO,CAAC,MAAe;;AAEvC;AACA;AACA;AACA;AACA,iBAAiB,mBAAO,CAAC,MAAgB;AACzC,gCAAgC;AAChC,cAAc;AACd,iBAAiB;AACjB;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;;;;;;;;ACjCA,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA,UAAU,mBAAO,CAAC,MAAQ;AAC1B,gBAAgB,mBAAO,CAAC,MAAe;AACvC,mBAAmB,mBAAO,CAAC,MAAmB;AAC9C,eAAe,mBAAO,CAAC,MAAe;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChBA;AACA;AACA;;;;;;;;ACFA;AACA,UAAU;AACV;;;;;;;;;ACFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AACA,gBAAgB,mBAAO,CAAC,MAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;;ACHA,eAAe,mBAAO,CAAC,MAAc;AACrC,qBAAqB,mBAAO,CAAC,MAAmB;AAChD,kBAAkB,mBAAO,CAAC,MAAiB;AAC3C;;AAEA,YAAY,mBAAO,CAAC,MAAgB;AACpC;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;;ACfA;AACA;AACA;AACA;;;;;;;;;ACHA;AAAA;AAAA;AAAkf,CAAgB,whBAAG,EAAC,C;;;;;;;ACAtgB,eAAe,mBAAO,CAAC,MAAc;AACrC;AACA;AACA;AACA;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA,yCAAyC;;;;;;;;;ACL5B;;AAEb,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAgB;AACtD,8BAA8B,mBAAO,CAAC,MAAc;AACpD,8BAA8B,mBAAO,CAAC,MAAY;AAClD,8BAA8B,mBAAO,CAAC,MAAoB;AAC1D,8BAA8B,mBAAO,CAAC,MAAiB;AACvD,8BAA8B,mBAAO,CAAC,MAAiB;;AAEvD;AACA,8BAA8B,mBAAO,CAAC,MAAgC;AACtE,8BAA8B,mBAAO,CAAC,MAAgC;;AAEtE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB;;AAEA;AACA;AACA,UAAU;AACV,cAAc,QAAQ;AACtB;AACA;AACA,cAAc,UAAU;AACxB;AACA,cAAc,SAAS;AACvB;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,qCAAqC,6CAA6C,EAAE;AACpF;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,mFAAmF,qBAAqB;;AAExG;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,SAAS;AACxB,eAAe,kBAAkB;AACjC,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA,8EAA8E;AAC9E;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA,yDAAyD,eAAe;AACxE;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,qBAAqB;AACrB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;AChUa;AACb,sBAAsB,mBAAO,CAAC,MAAc;AAC5C,iBAAiB,mBAAO,CAAC,MAAkB;;AAE3C;AACA;AACA;AACA;;;;;;;;ACPA;;AAEA;;AAEA;AACA;AACA,wDAAwD;;AAExD;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,mBAAmB;AAChC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,CAAC;;;;;;;;ACnCD;AACA,cAAc,mBAAO,CAAC,MAAW;;AAEjC,0CAA0C,SAAS,mBAAO,CAAC,MAAkB,GAAG;;;;;;;;ACHhF;AACA;AACA;;;;;;;;ACFA,iBAAiB,mBAAO,CAAC,MAAW;;;;;;;;ACApC,eAAe,mBAAO,CAAC,MAAW;AAClC;;;;;;;;;;;;ACDA;;AAEA;AACA,MAAM,IAAuC;AAC7C,IAAI,mBAAO,CAAC,MAAyB;AACrC;;AAEA;AACA;AACA,IAAI,qBAAuB;AAC3B;AACA;;AAEA;AACe,sDAAI;;;;;;ACdnB;AAAA;AAAA;AAAwB;AACA;AACT,4GAAG;AACI;;;;;;;;ACHtB;AACA,cAAc,mBAAO,CAAC,MAAW;AACjC,gBAAgB,mBAAO,CAAC,MAAW;;AAEnC;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACRD;AACA","file":"vue-grid-layout.umd.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"VueGridLayout\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"VueGridLayout\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/vue-grid-layout.umd.min.js b/dist/vue-grid-layout.umd.min.js index 7a13c66a..e2d5877c 100644 --- a/dist/vue-grid-layout.umd.min.js +++ b/dist/vue-grid-layout.umd.min.js @@ -1,2 +1,2 @@ -(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("vue")):"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["VueGridLayout"]=t(require("vue")):e["VueGridLayout"]=t(e["Vue"])})("undefined"!==typeof self?self:this,(function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="fb15")}({"01f9":function(e,t,n){"use strict";var r=n("2d00"),i=n("5ca1"),o=n("2aba"),a=n("32e9"),s=n("84f2"),u=n("41a0"),l=n("7f20"),c=n("38fd"),f=n("2b4c")("iterator"),d=!([].keys&&"next"in[].keys()),p="@@iterator",v="keys",h="values",g=function(){return this};e.exports=function(e,t,n,y,m,b,w){u(n,t,y);var x,O,P,_=function(e){if(!d&&e in E)return E[e];switch(e){case v:return function(){return new n(this,e)};case h:return function(){return new n(this,e)}}return function(){return new n(this,e)}},j=t+" Iterator",S=m==h,M=!1,E=e.prototype,k=E[f]||E[p]||m&&E[m],T=k||_(m),z=m?S?_("entries"):T:void 0,D="Array"==t&&E.entries||k;if(D&&(P=c(D.call(new e)),P!==Object.prototype&&P.next&&(l(P,j,!0),r||"function"==typeof P[f]||a(P,f,g))),S&&k&&k.name!==h&&(M=!0,T=function(){return k.call(this)}),r&&!w||!d&&!M&&E[f]||a(E,f,T),s[t]=T,s[j]=g,m)if(x={values:S?T:_(h),keys:b?T:_(v),entries:z},w)for(O in x)O in E||o(E,O,x[O]);else i(i.P+i.F*(d||M),t,x);return x}},"02f4":function(e,t,n){var r=n("4588"),i=n("be13");e.exports=function(e){return function(t,n){var o,a,s=String(i(t)),u=r(n),l=s.length;return u<0||u>=l?e?"":void 0:(o=s.charCodeAt(u),o<55296||o>56319||u+1===l||(a=s.charCodeAt(u+1))<56320||a>57343?e?s.charAt(u):o:e?s.slice(u,u+2):a-56320+(o-55296<<10)+65536)}}},"0390":function(e,t,n){"use strict";var r=n("02f4")(!0);e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},"07e3":function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"0bfb":function(e,t,n){"use strict";var r=n("cb7c");e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},"0d58":function(e,t,n){var r=n("ce10"),i=n("e11e");e.exports=Object.keys||function(e){return r(e,i)}},1156:function(e,t,n){var r=n("ad20");"string"===typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);var i=n("499e").default;i("c1ec597e",r,!0,{sourceMap:!1,shadowMode:!1})},"11e9":function(e,t,n){var r=n("52a7"),i=n("4630"),o=n("6821"),a=n("6a99"),s=n("69a8"),u=n("c69a"),l=Object.getOwnPropertyDescriptor;t.f=n("9e1e")?l:function(e,t){if(e=o(e),t=a(t,!0),u)try{return l(e,t)}catch(n){}if(s(e,t))return i(!r.f.call(e,t),e[t])}},1495:function(e,t,n){var r=n("86cc"),i=n("cb7c"),o=n("0d58");e.exports=n("9e1e")?Object.defineProperties:function(e,t){i(e);var n,a=o(t),s=a.length,u=0;while(s>u)r.f(e,n=a[u++],t[n]);return e}},"18d2":function(e,t,n){"use strict";var r=n("18e9");e.exports=function(e){e=e||{};var t=e.reporter,n=e.batchProcessor,i=e.stateHandler.getState;if(!t)throw new Error("Missing required dependency: reporter.");function o(e,t){if(!s(e))throw new Error("Element is not detectable by this strategy.");function n(){t(e)}if(r.isIE(8))i(e).object={proxy:n},e.attachEvent("onresize",n);else{var o=s(e);o.contentDocument.defaultView.addEventListener("resize",n)}}function a(e,o,a){a||(a=o,o=e,e=null),e=e||{};e.debug;function s(e,o){var a="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; padding: 0; margin: 0; opacity: 0; z-index: -1000; pointer-events: none;",s=!1,u=window.getComputedStyle(e),l=e.offsetWidth,c=e.offsetHeight;function f(){function n(){if("static"===u.position){e.style.position="relative";var n=function(e,t,n,r){function i(e){return e.replace(/[^-\d\.]/g,"")}var o=n[r];"auto"!==o&&"0"!==i(o)&&(e.warn("An element that is positioned static has style."+r+"="+o+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+r+" will be set to 0. Element: ",t),t.style[r]=0)};n(t,e,u,"top"),n(t,e,u,"right"),n(t,e,u,"bottom"),n(t,e,u,"left")}}function l(){function t(e,n){e.contentDocument?n(e.contentDocument):setTimeout((function(){t(e,n)}),100)}s||n();var r=this;t(r,(function(t){o(e)}))}""!==u.position&&(n(u),s=!0);var c=document.createElement("object");c.style.cssText=a,c.tabIndex=-1,c.type="text/html",c.setAttribute("aria-hidden","true"),c.onload=l,r.isIE()||(c.data="about:blank"),e.appendChild(c),i(e).object=c,r.isIE()&&(c.data="about:blank")}i(e).startSize={width:l,height:c},n?n.add(f):f()}r.isIE(8)?a(o):s(o,a)}function s(e){return i(e).object}function u(e){r.isIE(8)?e.detachEvent("onresize",i(e).object.proxy):e.removeChild(s(e)),delete i(e).object}return{makeDetectable:a,addListener:o,uninstall:u}}},"18e9":function(e,t,n){"use strict";var r=e.exports={};r.isIE=function(e){function t(){var e=navigator.userAgent.toLowerCase();return-1!==e.indexOf("msie")||-1!==e.indexOf("trident")||-1!==e.indexOf(" edge/")}if(!t())return!1;if(!e)return!0;var n=function(){var e,t=3,n=document.createElement("div"),r=n.getElementsByTagName("i");do{n.innerHTML="\x3c!--[if gt IE "+ ++t+"]>4?t:e}();return e===n},r.isLegacyOpera=function(){return!!window.opera}},"1bc3":function(e,t,n){var r=n("f772");e.exports=function(e,t){if(!r(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},"1ca7":function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return s})),n.d(t,"c",(function(){return u}));var r="auto";function i(){return"undefined"!==typeof document}function o(){return"undefined"!==typeof window}function a(){if(!i())return r;var e="undefined"!==typeof document.dir?document.dir:document.getElementsByTagName("html")[0].getAttribute("dir");return e}function s(e,t){o?window.addEventListener(e,t):t()}function u(e,t){o&&window.removeEventListener(e,t)}},"1ec9":function(e,t,n){var r=n("f772"),i=n("e53d").document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},"214f":function(e,t,n){"use strict";n("b0c5");var r=n("2aba"),i=n("32e9"),o=n("79e5"),a=n("be13"),s=n("2b4c"),u=n("520a"),l=s("species"),c=!o((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),f=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();e.exports=function(e,t,n){var d=s(e),p=!o((function(){var t={};return t[d]=function(){return 7},7!=""[e](t)})),v=p?!o((function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[l]=function(){return n}),n[d](""),!t})):void 0;if(!p||!v||"replace"===e&&!c||"split"===e&&!f){var h=/./[d],g=n(a,d,""[e],(function(e,t,n,r,i){return t.exec===u?p&&!i?{done:!0,value:h.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}})),y=g[0],m=g[1];r(String.prototype,e,y),i(RegExp.prototype,d,2==t?function(e,t){return m.call(e,this,t)}:function(e){return m.call(e,this)})}}},"230e":function(e,t,n){var r=n("d3f4"),i=n("7726").document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},2350:function(e,t){function n(e,t){var n=e[1]||"",i=e[3];if(!i)return n;if(t&&"function"===typeof btoa){var o=r(i),a=i.sources.map((function(e){return"/*# sourceURL="+i.sourceRoot+e+" */"}));return[n].concat(a).concat([o]).join("\n")}return[n].join("\n")}function r(e){var t=btoa(unescape(encodeURIComponent(JSON.stringify(e)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,"+t;return"/*# "+n+" */"}e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r=n(t,e);return t[2]?"@media "+t[2]+"{"+r+"}":r})).join("")},t.i=function(e,n){"string"===typeof e&&(e=[[null,e,""]]);for(var r={},i=0;i";t.style.display="none",n("fab2").appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write(i+"script"+a+"document.F=Object"+i+"/script"+a),e.close(),l=e.F;while(r--)delete l[u][o[r]];return l()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[u]=r(e),n=new s,s[u]=null,n[a]=e):n=l(),void 0===t?n:i(n,t)}},"2af9":function(e,t,n){"use strict";(function(e){n.d(t,"d",(function(){return a}));n("7f7f"),n("cadf"),n("456d"),n("ac6a");var r=n("bc21");n.d(t,"a",(function(){return r["a"]}));var i=n("37c8");n.d(t,"b",(function(){return i["a"]}));var o={GridLayout:i["a"],GridItem:r["a"]};function a(e){a.installed||(a.installed=!0,Object.keys(o).forEach((function(t){e.component(t,o[t])})))}var s={install:a},u=null;"undefined"!==typeof window?u=window.Vue:"undefined"!==typeof e&&(u=e.Vue),u&&u.use(s),t["c"]=o}).call(this,n("c8ba"))},"2b4c":function(e,t,n){var r=n("5537")("wks"),i=n("ca5a"),o=n("7726").Symbol,a="function"==typeof o,s=e.exports=function(e){return r[e]||(r[e]=a&&o[e]||(a?o:i)("Symbol."+e))};s.store=r},"2cef":function(e,t,n){"use strict";e.exports=function(){var e=1;function t(){return e++}return{generate:t}}},"2d00":function(e,t){e.exports=!1},"2d95":function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},"2f21":function(e,t,n){"use strict";var r=n("79e5");e.exports=function(e,t){return!!e&&r((function(){t?e.call(null,(function(){}),1):e.call(null)}))}},"32e9":function(e,t,n){var r=n("86cc"),i=n("4630");e.exports=n("9e1e")?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},"35e8":function(e,t,n){var r=n("d9f6"),i=n("aebd");e.exports=n("8e60")?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},"37c8":function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"item",staticClass:"vue-grid-layout",style:e.mergedStyle},[e._t("default"),n("grid-item",{directives:[{name:"show",rawName:"v-show",value:e.isDragging,expression:"isDragging"}],staticClass:"vue-grid-placeholder",attrs:{x:e.placeholder.x,y:e.placeholder.y,w:e.placeholder.w,h:e.placeholder.h,i:e.placeholder.i}})],2)},i=[],o=(n("8e6e"),n("cadf"),n("456d"),n("f751"),n("fca0"),n("ac6a"),n("85f2")),a=n.n(o);function s(e,t,n){return t in e?a()(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n("c5f6");var u=n("8bbf"),l=n.n(u),c=n("a2b6");n("55dd");function f(e,t){for(var n=v(e),r=n[0],i=1,o=n.length;ie[a]&&(r=a)}return r}function d(e,t){if(!t[e])throw new Error("ResponsiveGridLayout: `cols` entry for breakpoint "+e+" is missing!");return t[e]}function p(e,t,n,r,i,o,a){if(t[r])return Object(c["b"])(t[r]);for(var s=e,u=v(n),l=u.slice(u.indexOf(r)),f=0,d=l.length;f0&&(this.layout.length>this.originalLayout.length?this.originalLayout=this.originalLayout.concat(e):this.originalLayout=this.originalLayout.filter((function(t){return!e.some((function(e){return t.i===e.i}))}))),this.lastLayoutLength=this.layout.length,this.initResponsiveFeatures()}Object(c["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("updateWidth",this.width),this.updateHeight(),this.$emit("layout-updated",this.layout)}},updateHeight:function(){this.mergedStyle={height:this.containerHeight()}},onWindowResize:function(){null!==this.$refs&&null!==this.$refs.item&&void 0!==this.$refs.item&&(this.width=this.$refs.item.offsetWidth),this.eventBus.$emit("resizeEvent")},containerHeight:function(){if(this.autoSize){var e=Object(c["a"])(this.layout)*(this.rowHeight+this.margin[1])+this.margin[1]+"px";return e}},dragEvent:function(e,t,n,r,i,o){var a=Object(c["f"])(this.layout,t);void 0!==a&&null!==a||(a={x:0,y:0}),"dragmove"===e||"dragstart"===e?(this.placeholder.i=t,this.placeholder.x=a.x,this.placeholder.y=a.y,this.placeholder.w=o,this.placeholder.h=i,this.$nextTick((function(){this.isDragging=!0})),this.eventBus.$emit("updateWidth",this.width)):this.$nextTick((function(){this.isDragging=!1})),this.layout=Object(c["g"])(this.layout,a,n,r,!0,this.preventCollision),Object(c["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("compact"),this.updateHeight(),"dragend"===e&&this.$emit("layout-updated",this.layout)},resizeEvent:function(e,t,n,r,i,o){var a,s=Object(c["f"])(this.layout,t);if(void 0!==s&&null!==s||(s={h:0,w:0}),this.preventCollision){var u=Object(c["e"])(this.layout,m({},s,{w:o,h:i})).filter((function(e){return e.i!==s.i}));if(a=u.length>0,a){var l=1/0,f=1/0;u.forEach((function(e){e.x>s.x&&(l=Math.min(l,e.x)),e.y>s.y&&(f=Math.min(f,e.y))})),Number.isFinite(l)&&(s.w=l-s.x),Number.isFinite(f)&&(s.h=f-s.y)}}a||(s.w=o,s.h=i),"resizestart"===e||"resizemove"===e?(this.placeholder.i=t,this.placeholder.x=n,this.placeholder.y=r,this.placeholder.w=s.w,this.placeholder.h=s.h,this.$nextTick((function(){this.isDragging=!0})),this.eventBus.$emit("updateWidth",this.width)):this.$nextTick((function(){this.isDragging=!1})),this.responsive&&this.responsiveGridLayout(),Object(c["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("compact"),this.updateHeight(),"resizeend"===e&&this.$emit("layout-updated",this.layout)},responsiveGridLayout:function(){var e=f(this.breakpoints,this.width),t=d(e,this.cols);null==this.lastBreakpoint||this.layouts[this.lastBreakpoint]||(this.layouts[this.lastBreakpoint]=Object(c["b"])(this.layout));var n=p(this.originalLayout,this.layouts,this.breakpoints,e,this.lastBreakpoint,t,this.verticalCompact);this.layouts[e]=n,this.lastBreakpoint!==e&&this.$emit("breakpoint-changed",e,n),this.$emit("update:layout",n),this.lastBreakpoint=e,this.eventBus.$emit("setColNum",d(e,this.cols))},initResponsiveFeatures:function(){this.layouts=Object.assign({},this.responsiveLayouts)},findDifference:function(e,t){var n=e.filter((function(e){return!t.some((function(t){return e.i===t.i}))})),r=t.filter((function(t){return!e.some((function(e){return t.i===e.i}))}));return n.concat(r)}}},x=w,O=(n("e279"),n("2877")),P=Object(O["a"])(x,r,i,!1,null,null,null);t["a"]=P.exports},"38fd":function(e,t,n){var r=n("69a8"),i=n("4bf8"),o=n("613b")("IE_PROTO"),a=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=i(e),r(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?a:null}},"41a0":function(e,t,n){"use strict";var r=n("2aeb"),i=n("4630"),o=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),(function(){return this})),e.exports=function(e,t,n){e.prototype=r(a,{next:i(1,n)}),o(e,t+" Iterator")}},"454f":function(e,t,n){n("46a7");var r=n("584a").Object;e.exports=function(e,t,n){return r.defineProperty(e,t,n)}},"456d":function(e,t,n){var r=n("4bf8"),i=n("0d58");n("5eda")("keys",(function(){return function(e){return i(r(e))}}))},4588:function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},4630:function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"46a7":function(e,t,n){var r=n("63b6");r(r.S+r.F*!n("8e60"),"Object",{defineProperty:n("d9f6").f})},4917:function(e,t,n){"use strict";var r=n("cb7c"),i=n("9def"),o=n("0390"),a=n("5f1b");n("214f")("match",1,(function(e,t,n,s){return[function(n){var r=e(this),i=void 0==n?void 0:n[t];return void 0!==i?i.call(n,r):new RegExp(n)[t](String(r))},function(e){var t=s(n,e,this);if(t.done)return t.value;var u=r(e),l=String(this);if(!u.global)return a(u,l);var c=u.unicode;u.lastIndex=0;var f,d=[],p=0;while(null!==(f=a(u,l))){var v=String(f[0]);d[p]=v,""===v&&(u.lastIndex=o(l,i(u.lastIndex),c)),p++}return 0===p?null:d}]}))},"499e":function(e,t,n){"use strict";function r(e,t){for(var n=[],r={},i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var a=[];for(i=0;i1&&o.call(a[0],n,(function(){for(c=1;cc){var p,v=u(arguments[c++]),h=f?i(v).concat(f(v)):i(v),g=h.length,y=0;while(g>y)p=h[y++],r&&!d.call(v,p)||(n[p]=v[p])}return n}:l},7726:function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"77f1":function(e,t,n){var r=n("4588"),i=Math.max,o=Math.min;e.exports=function(e,t){return e=r(e),e<0?i(e+t,0):o(e,t)}},"794b":function(e,t,n){e.exports=!n("8e60")&&!n("294c")((function(){return 7!=Object.defineProperty(n("1ec9")("div"),"a",{get:function(){return 7}}).a}))},"79aa":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},"79e5":function(e,t){e.exports=function(e){try{return!!e()}catch(t){return!0}}},"7f20":function(e,t,n){var r=n("86cc").f,i=n("69a8"),o=n("2b4c")("toStringTag");e.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,o)&&r(e,o,{configurable:!0,value:t})}},"7f7f":function(e,t,n){var r=n("86cc").f,i=Function.prototype,o=/^\s*function ([^ (]*)/,a="name";a in i||n("9e1e")&&r(i,a,{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(e){return""}}})},8378:function(e,t){var n=e.exports={version:"2.6.10"};"number"==typeof __e&&(__e=n)},"84f2":function(e,t){e.exports={}},"85f2":function(e,t,n){e.exports=n("454f")},"86cc":function(e,t,n){var r=n("cb7c"),i=n("c69a"),o=n("6a99"),a=Object.defineProperty;t.f=n("9e1e")?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return a(e,t,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},"8b97":function(e,t,n){var r=n("d3f4"),i=n("cb7c"),o=function(e,t){if(i(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,t,r){try{r=n("9b43")(Function.call,n("11e9").f(Object.prototype,"__proto__").set,2),r(e,[]),t=!(e instanceof Array)}catch(i){t=!0}return function(e,n){return o(e,n),t?e.__proto__=n:r(e,n),e}}({},!1):void 0),check:o}},"8bbf":function(t,n){t.exports=e},"8e60":function(e,t,n){e.exports=!n("294c")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},"8e6e":function(e,t,n){var r=n("5ca1"),i=n("990b"),o=n("6821"),a=n("11e9"),s=n("f1ae");r(r.S,"Object",{getOwnPropertyDescriptors:function(e){var t,n,r=o(e),u=a.f,l=i(r),c={},f=0;while(l.length>f)n=u(r,t=l[f++]),void 0!==n&&s(c,t,n);return c}})},9093:function(e,t,n){var r=n("ce10"),i=n("e11e").concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},"990b":function(e,t,n){var r=n("9093"),i=n("2621"),o=n("cb7c"),a=n("7726").Reflect;e.exports=a&&a.ownKeys||function(e){var t=r.f(o(e)),n=i.f;return n?t.concat(n(e)):t}},"9b43":function(e,t,n){var r=n("d8e8");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},"9c6c":function(e,t,n){var r=n("2b4c")("unscopables"),i=Array.prototype;void 0==i[r]&&n("32e9")(i,r,{}),e.exports=function(e){i[r][e]=!0}},"9cbe":function(e,t,n){t=e.exports=n("2350")(!1),t.push([e.i,'.vue-grid-item{-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-transition-property:left,top,right;transition-property:left,top,right}.vue-grid-item.no-touch{-ms-touch-action:none;touch-action:none}.vue-grid-item.cssTransforms{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;left:0;right:auto}.vue-grid-item.cssTransforms.render-rtl{left:auto;right:0}.vue-grid-item.resizing{opacity:.6;z-index:3}.vue-grid-item.vue-draggable-dragging{-webkit-transition:none;transition:none;z-index:3}.vue-grid-item.vue-grid-placeholder{background:red;opacity:.2;-webkit-transition-duration:.1s;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.vue-grid-item>.vue-resizable-handle{position:absolute;width:20px;height:20px;bottom:0;right:0;background:url("data:image/svg+xml;base64,PHN2ZyBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjojZmZmZmZmMDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjYiIGhlaWdodD0iNiI+PHBhdGggZD0iTTYgNkgwVjQuMmg0LjJWMEg2djZ6IiBvcGFjaXR5PSIuMzAyIi8+PC9zdmc+");background-position:100% 100%;padding:0 3px 3px 0;background-repeat:no-repeat;background-origin:content-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:se-resize}.vue-grid-item>.vue-rtl-resizable-handle{bottom:0;left:0;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTS0xLTFoMTJ2MTJILTF6Ii8+PGc+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InVuZGVmaW5lZCIgc3Ryb2tlLWxpbmVqb2luPSJ1bmRlZmluZWQiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2U9IiMwMDAiIGZpbGw9Im5vbmUiIGQ9Ik0xNDQuODIxLTM4LjM5M2wtMjAuMzU3LTMxLjc4NSIvPjxwYXRoIHN0cm9rZT0iIzY2NiIgc3Ryb2tlLWxpbmVjYXA9InVuZGVmaW5lZCIgc3Ryb2tlLWxpbmVqb2luPSJ1bmRlZmluZWQiIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIgZD0iTS45NDctLjAxOHY5LjEyNU0tLjY1NiA5aDEwLjczIi8+PC9nPjwvc3ZnPg==);background-position:0 100%;padding-left:3px;background-repeat:no-repeat;background-origin:content-box;cursor:sw-resize;right:auto}.vue-grid-item.disable-userselect{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}',""])},"9def":function(e,t,n){var r=n("4588"),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},"9e1e":function(e,t,n){e.exports=!n("79e5")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},a2b6:function(e,t,n){"use strict";n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"f",(function(){return c})),n.d(t,"e",(function(){return d})),n.d(t,"g",(function(){return v})),n.d(t,"j",(function(){return g})),n.d(t,"k",(function(){return y})),n.d(t,"h",(function(){return m})),n.d(t,"i",(function(){return b})),n.d(t,"l",(function(){return x}));n("a481"),n("cadf"),n("456d"),n("ac6a"),n("55dd");function r(e){for(var t,n=0,r=0,i=e.length;rn&&(n=t);return n}function i(e){for(var t=Array(e.length),n=0,r=e.length;n=t.x+t.w)&&(!(e.y+e.h<=t.y)&&!(e.y>=t.y+t.h))))}function s(e,t){for(var n=p(e),r=w(e),i=Array(e.length),o=0,a=r.length;o0&&!f(e,t))t.y--;var r;while(r=f(e,t))t.y=r.y+r.h;return t}function l(e,t){for(var n=p(e),r=0,i=e.length;rt.cols&&(o.x=t.cols-o.w),o.x<0&&(o.x=0,o.w=t.cols),o.static)while(f(n,o))o.y++;else n.push(o)}return e}function c(e,t){for(var n=0,r=e.length;nr;"number"===typeof n&&(t.x=n),"number"===typeof r&&(t.y=r),t.moved=!0;var l=w(e);u&&(l=l.reverse());var c=d(l,t);if(o&&c.length)return t.x=a,t.y=s,t.moved=!1,e;for(var f=0,p=c.length;fv.y&&t.y-v.y>v.h/4||(e=v.static?h(e,v,t,i):h(e,t,v,i)))}return e}function h(e,t,n,r){var i=!1;if(r){var o={x:n.x,y:n.y,w:n.w,h:n.h,i:"-1"};if(o.y=Math.max(t.y-n.h,0),!f(e,o))return v(e,n,void 0,o.y,i)}return v(e,n,void 0,n.y+1,i)}function g(e,t,n,r){var i="translate3d("+t+"px,"+e+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function y(e,t,n,r){var i="translate3d("+-1*t+"px,"+e+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function m(e,t,n,r){return{top:e+"px",left:t+"px",width:n+"px",height:r+"px",position:"absolute"}}function b(e,t,n,r){return{top:e+"px",right:t+"px",width:n+"px",height:r+"px",position:"absolute"}}function w(e){return[].concat(e).sort((function(e,t){return e.y===t.y&&e.x===t.x?0:e.y>t.y||e.y===t.y&&e.x>t.x?1:-1}))}function x(e,t){t=t||"Layout";var n=["x","y","w","h"];if(!Array.isArray(e))throw new Error(t+" must be an array!");for(var r=0,i=e.length;r]*>)/g,p=/\$([$&`']|\d\d?)/g,v=function(e){return void 0===e?e:String(e)};n("214f")("replace",2,(function(e,t,n,h){return[function(r,i){var o=e(this),a=void 0==r?void 0:r[t];return void 0!==a?a.call(r,o,i):n.call(String(o),r,i)},function(e,t){var i=h(n,e,this,t);if(i.done)return i.value;var f=r(e),d=String(this),p="function"===typeof t;p||(t=String(t));var y=f.global;if(y){var m=f.unicode;f.lastIndex=0}var b=[];while(1){var w=u(f,d);if(null===w)break;if(b.push(w),!y)break;var x=String(w[0]);""===x&&(f.lastIndex=s(d,o(f.lastIndex),m))}for(var O="",P=0,_=0;_=P&&(O+=d.slice(P,S)+z,P=S+j.length)}return O+d.slice(P)}];function g(e,t,r,o,a,s){var u=r+e.length,l=o.length,c=p;return void 0!==a&&(a=i(a),c=d),n.call(s,c,(function(n,i){var s;switch(i.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(u);case"<":s=a[i.slice(1,-1)];break;default:var c=+i;if(0===c)return n;if(c>l){var d=f(c/10);return 0===d?n:d<=l?void 0===o[d-1]?i.charAt(1):o[d-1]+i.charAt(1):n}s=o[c-1]}return void 0===s?"":s}))}}))},aa77:function(e,t,n){var r=n("5ca1"),i=n("be13"),o=n("79e5"),a=n("fdef"),s="["+a+"]",u="​…",l=RegExp("^"+s+s+"*"),c=RegExp(s+s+"*$"),f=function(e,t,n){var i={},s=o((function(){return!!a[e]()||u[e]()!=u})),l=i[e]=s?t(d):a[e];n&&(i[n]=l),r(r.P+r.F*s,"String",i)},d=f.trim=function(e,t){return e=String(i(e)),1&t&&(e=e.replace(l,"")),2&t&&(e=e.replace(c,"")),e};e.exports=f},abb4:function(e,t,n){"use strict";e.exports=function(e){function t(){}var n={log:t,warn:t,error:t};if(!e&&window.console){var r=function(e,t){e[t]=function(){var e=console[t];if(e.apply)e.apply(console,arguments);else for(var n=0;nthis.cols?(this.innerX=0,this.innerW=this.w>this.cols?this.cols:this.w):(this.innerX=this.x,this.innerW=this.w);var e,t=this.calcPosition(this.innerX,this.innerY,this.innerW,this.innerH);this.isDragging&&(t.top=this.dragging.top,this.renderRtl?t.right=this.dragging.left:t.left=this.dragging.left),this.isResizing&&(t.width=this.resizing.width,t.height=this.resizing.height),e=this.useCssTransforms?this.renderRtl?Object(o["k"])(t.top,t.right,t.width,t.height):Object(o["j"])(t.top,t.left,t.width,t.height):this.renderRtl?Object(o["i"])(t.top,t.right,t.width,t.height):Object(o["h"])(t.top,t.left,t.width,t.height),this.style=e},emitContainerResized:function(){for(var e={},t=0,n=["width","height"];tthis.maxW&&(n.w=this.maxW),n.hthis.maxH&&(n.h=this.maxH),n.h<1&&(n.h=1),n.w<1&&(n.w=1),this.lastW=r,this.lastH=i,this.innerW===n.w&&this.innerH===n.h||this.$emit("resize",this.i,n.h,n.w,o.height,o.width),"resizeend"!==e.type||this.previousW===this.innerW&&this.previousH===this.innerH||this.$emit("resized",this.i,n.h,n.w,o.height,o.width),this.eventBus.$emit("resizeEvent",e.type,this.i,this.innerX,this.innerY,n.h,n.w)}}},handleDrag:function(e){if(!this.static&&!this.isResizing){var t=a(e);if(null!==t){var n,r=t.x,i=t.y,o={top:0,left:0};switch(e.type){case"dragstart":this.previousX=this.innerX,this.previousY=this.innerY;var s=e.target.offsetParent.getBoundingClientRect(),l=e.target.getBoundingClientRect();this.renderRtl?o.left=-1*(l.right-s.right):o.left=l.left-s.left,o.top=l.top-s.top,this.dragging=o,this.isDragging=!0;break;case"dragend":if(!this.isDragging)return;var c=e.target.offsetParent.getBoundingClientRect(),f=e.target.getBoundingClientRect();this.renderRtl?o.left=-1*(f.right-c.right):o.left=f.left-c.left,o.top=f.top-c.top,this.dragging=null,this.isDragging=!1;break;case"dragmove":var d=u(this.lastX,this.lastY,r,i);this.renderRtl?o.left=this.dragging.left-d.deltaX:o.left=this.dragging.left+d.deltaX,o.top=this.dragging.top+d.deltaY,this.dragging=o;break}n=(this.renderRtl,this.calcXY(o.top,o.left)),this.lastX=r,this.lastY=i,this.innerX===n.x&&this.innerY===n.y||this.$emit("move",this.i,n.x,n.y),"dragend"!==e.type||this.previousX===this.innerX&&this.previousY===this.innerY||this.$emit("moved",this.i,n.x,n.y),this.eventBus.$emit("dragEvent",e.type,this.i,n.x,n.y,this.innerH,this.innerW)}}},calcPosition:function(e,t,n,r){var i,o=this.calcColWidth();return i=this.renderRtl?{right:Math.round(o*e+(e+1)*this.margin[0]),top:Math.round(this.rowHeight*t+(t+1)*this.margin[1]),width:n===1/0?n:Math.round(o*n+Math.max(0,n-1)*this.margin[0]),height:r===1/0?r:Math.round(this.rowHeight*r+Math.max(0,r-1)*this.margin[1])}:{left:Math.round(o*e+(e+1)*this.margin[0]),top:Math.round(this.rowHeight*t+(t+1)*this.margin[1]),width:n===1/0?n:Math.round(o*n+Math.max(0,n-1)*this.margin[0]),height:r===1/0?r:Math.round(this.rowHeight*r+Math.max(0,r-1)*this.margin[1])},i},calcXY:function(e,t){var n=this.calcColWidth(),r=Math.round((t-this.margin[0])/(n+this.margin[0])),i=Math.round((e-this.margin[1])/(this.rowHeight+this.margin[1]));return r=Math.max(Math.min(r,this.cols-this.innerW),0),i=Math.max(Math.min(i,this.maxRows-this.innerH),0),{x:r,y:i}},calcColWidth:function(){var e=(this.containerWidth-this.margin[0]*(this.cols+1))/this.cols;return e},calcWH:function(e,t){var n=this.calcColWidth(),r=Math.round((t+this.margin[0])/(n+this.margin[0])),i=Math.round((e+this.margin[1])/(this.rowHeight+this.margin[1]));return r=Math.max(Math.min(r,this.cols-this.innerX),0),i=Math.max(Math.min(i,this.maxRows-this.innerY),0),{w:r,h:i}},updateWidth:function(e,t){this.containerWidth=e,void 0!==t&&null!==t&&(this.cols=t)},compact:function(){this.createStyle()},tryMakeDraggable:function(){var e=this;if(null!==this.interactObj&&void 0!==this.interactObj||(this.interactObj=f(this.$refs.item)),this.draggable&&!this.static){var t={ignoreFrom:this.dragIgnoreFrom,allowFrom:this.dragAllowFrom};this.interactObj.draggable(t),this.dragEventSet||(this.dragEventSet=!0,this.interactObj.on("dragstart dragmove dragend",(function(t){e.handleDrag(t)})))}else this.interactObj.draggable({enabled:!1})},tryMakeResizable:function(){var e=this;if(null!==this.interactObj&&void 0!==this.interactObj||(this.interactObj=f(this.$refs.item)),this.resizable&&!this.static){var t=this.calcPosition(0,0,this.maxW,this.maxH),n=this.calcPosition(0,0,this.minW,this.minH),r={preserveAspectRatio:!0,edges:{left:!1,right:"."+this.resizableHandleClass,bottom:"."+this.resizableHandleClass,top:!1},ignoreFrom:this.resizeIgnoreFrom,restrictSize:{min:{height:n.height,width:n.width},max:{height:t.height,width:t.width}}};this.interactObj.resizable(r),this.resizeEventSet||(this.resizeEventSet=!0,this.interactObj.on("resizestart resizemove resizeend",(function(t){e.handleResize(t)})))}else this.interactObj.resizable({enabled:!1})},autoSize:function(){this.previousW=this.innerW,this.previousH=this.innerH;var e=this.$slots.default[0].elm.getBoundingClientRect(),t=this.calcWH(e.height,e.width);t.wthis.maxW&&(t.w=this.maxW),t.hthis.maxH&&(t.h=this.maxH),t.h<1&&(t.h=1),t.w<1&&(t.w=1),this.innerW===t.w&&this.innerH===t.h||this.$emit("resize",this.i,t.h,t.w,e.height,e.width),this.previousW===t.w&&this.previousH===t.h||(this.$emit("resized",this.i,t.h,t.w,e.height,e.width),this.eventBus.$emit("resizeEvent","resizeend",this.i,this.innerX,this.innerY,t.h,t.w))}}},p=d,v=(n("5ed4"),n("2877")),h=Object(v["a"])(p,r,i,!1,null,null,null);t["a"]=h.exports},be13:function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},c274:function(e,t,n){"use strict";var r=n("50bf");function i(){var e={},t=0,n=0,r=0;function i(i,o){o||(o=i,i=0),i>n?n=i:ic)if(s=u[c++],s!=s)return!0}else for(;l>c;c++)if((e||c in u)&&u[c]===n)return e||c||0;return!e&&-1}}},c5f6:function(e,t,n){"use strict";var r=n("7726"),i=n("69a8"),o=n("2d95"),a=n("5dbc"),s=n("6a99"),u=n("79e5"),l=n("9093").f,c=n("11e9").f,f=n("86cc").f,d=n("aa77").trim,p="Number",v=r[p],h=v,g=v.prototype,y=o(n("2aeb")(g))==p,m="trim"in String.prototype,b=function(e){var t=s(e,!1);if("string"==typeof t&&t.length>2){t=m?t.trim():d(t,3);var n,r,i,o=t.charCodeAt(0);if(43===o||45===o){if(n=t.charCodeAt(2),88===n||120===n)return NaN}else if(48===o){switch(t.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+t}for(var a,u=t.slice(2),l=0,c=u.length;li)return NaN;return parseInt(u,r)}}return+t};if(!v(" 0o1")||!v("0b1")||v("+0x1")){v=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof v&&(y?u((function(){g.valueOf.call(n)})):o(n)!=p)?a(new h(b(t)),n,v):b(t)};for(var w,x=n("9e1e")?l(h):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),O=0;x.length>O;O++)i(h,w=x[O])&&!i(v,w)&&f(v,w,c(h,w));v.prototype=g,g.constructor=v,n("2aba")(r,p,v)}},c69a:function(e,t,n){e.exports=!n("9e1e")&&!n("79e5")((function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a}))},c8ba:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}e.exports=n},c946:function(e,t,n){"use strict";var r=n("b770").forEach;e.exports=function(e){e=e||{};var t=e.reporter,n=e.batchProcessor,i=e.stateHandler.getState,o=(e.stateHandler.hasState,e.idHandler);if(!n)throw new Error("Missing required dependency: batchProcessor");if(!t)throw new Error("Missing required dependency: reporter.");var a=l(),s="erd_scroll_detection_scrollbar_style",u="erd_scroll_detection_container";function l(){var e=500,t=500,n=document.createElement("div");n.style.cssText="position: absolute; width: "+2*e+"px; height: "+2*t+"px; visibility: hidden; margin: 0; padding: 0;";var r=document.createElement("div");r.style.cssText="position: absolute; width: "+e+"px; height: "+t+"px; overflow: scroll; visibility: none; top: "+3*-e+"px; left: "+3*-t+"px; visibility: hidden; margin: 0; padding: 0;",r.appendChild(n),document.body.insertBefore(r,document.body.firstChild);var i=e-r.clientWidth,o=t-r.clientHeight;return document.body.removeChild(r),{width:i,height:o}}function c(e,t){function n(t,n){n=n||function(e){document.head.appendChild(e)};var r=document.createElement("style");return r.innerHTML=t,r.id=e,n(r),r}if(!document.getElementById(e)){var r=t+"_animation",i=t+"_animation_active",o="/* Created by the element-resize-detector library. */\n";o+="."+t+" > div::-webkit-scrollbar { display: none; }\n\n",o+="."+i+" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: "+r+"; animation-name: "+r+"; }\n",o+="@-webkit-keyframes "+r+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n",o+="@keyframes "+r+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }",n(o)}}function f(e){e.className+=" "+u+"_animation_active"}function d(e,n,r){if(e.addEventListener)e.addEventListener(n,r);else{if(!e.attachEvent)return t.error("[scroll] Don't know how to add event listeners.");e.attachEvent("on"+n,r)}}function p(e,n,r){if(e.removeEventListener)e.removeEventListener(n,r);else{if(!e.detachEvent)return t.error("[scroll] Don't know how to remove event listeners.");e.detachEvent("on"+n,r)}}function v(e){return i(e).container.childNodes[0].childNodes[0].childNodes[0]}function h(e){return i(e).container.childNodes[0].childNodes[0].childNodes[1]}function g(e,t){var n=i(e).listeners;if(!n.push)throw new Error("Cannot add listener to an element that is not detectable.");i(e).listeners.push(t)}function y(e,s,l){function c(){if(e.debug){var n=Array.prototype.slice.call(arguments);if(n.unshift(o.get(s),"Scroll: "),t.log.apply)t.log.apply(null,n);else for(var r=0;r=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])}),"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},cb7c:function(e,t,n){var r=n("d3f4");e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},ce10:function(e,t,n){var r=n("69a8"),i=n("6821"),o=n("c366")(!1),a=n("613b")("IE_PROTO");e.exports=function(e,t){var n,s=i(e),u=0,l=[];for(n in s)n!=a&&r(s,n)&&l.push(n);while(t.length>u)r(s,n=t[u++])&&(~o(l,n)||l.push(n));return l}},d3f4:function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},d53b:function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},d6eb:function(e,t,n){"use strict";var r="_erd";function i(e){return e[r]={},o(e)}function o(e){return e[r]}function a(e){delete e[r]}e.exports={initState:i,getState:o,cleanState:a}},d864:function(e,t,n){var r=n("79aa");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},d8e8:function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},d9f6:function(e,t,n){var r=n("e4ae"),i=n("794b"),o=n("1bc3"),a=Object.defineProperty;t.f=n("8e60")?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return a(e,t,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},e11e:function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},e279:function(e,t,n){"use strict";var r=n("1156"),i=n.n(r);i.a},e4ae:function(e,t,n){var r=n("f772");e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},e53d:function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},eec4:function(e,t,n){"use strict";var r=n("b770").forEach,i=n("5be5"),o=n("49ad"),a=n("2cef"),s=n("5058"),u=n("abb4"),l=n("18e9"),c=n("c274"),f=n("d6eb"),d=n("18d2"),p=n("c946");function v(e){return Array.isArray(e)||void 0!==e.length}function h(e){if(Array.isArray(e))return e;var t=[];return r(e,(function(e){t.push(e)})),t}function g(e){return e&&1===e.nodeType}function y(e,t,n){var r=e[t];return void 0!==r&&null!==r||void 0===n?r:n}e.exports=function(e){var t;if(e=e||{},e.idHandler)t={get:function(t){return e.idHandler.get(t,!0)},set:e.idHandler.set};else{var n=a(),m=s({idGenerator:n,stateHandler:f});t=m}var b=e.reporter;if(!b){var w=!1===b;b=u(w)}var x=y(e,"batchProcessor",c({reporter:b})),O={};O.callOnAdd=!!y(e,"callOnAdd",!0),O.debug=!!y(e,"debug",!1);var P,_=o(t),j=i({stateHandler:f}),S=y(e,"strategy","object"),M={reporter:b,batchProcessor:x,stateHandler:f,idHandler:t};if("scroll"===S&&(l.isLegacyOpera()?(b.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),S="object"):l.isIE(9)&&(b.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),S="object")),"scroll"===S)P=p(M);else{if("object"!==S)throw new Error("Invalid strategy name: "+S);P=d(M)}var E={};function k(e,n,i){function o(e){var t=_.get(e);r(t,(function(t){t(e)}))}function a(e,t,n){_.add(t,n),e&&n(t)}if(i||(i=n,n=e,e={}),!n)throw new Error("At least one element required.");if(!i)throw new Error("Listener required.");if(g(n))n=[n];else{if(!v(n))return b.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");n=h(n)}var s=0,u=y(e,"callOnAdd",O.callOnAdd),l=y(e,"onReady",(function(){})),c=y(e,"debug",O.debug);r(n,(function(e){f.getState(e)||(f.initState(e),t.set(e));var d=t.get(e);if(c&&b.log("Attaching listener to element",d,e),!j.isDetectable(e))return c&&b.log(d,"Not detectable."),j.isBusy(e)?(c&&b.log(d,"System busy making it detectable"),a(u,e,i),E[d]=E[d]||[],void E[d].push((function(){s++,s===n.length&&l()}))):(c&&b.log(d,"Making detectable..."),j.markBusy(e,!0),P.makeDetectable({debug:c},e,(function(e){if(c&&b.log(d,"onElementDetectable"),f.getState(e)){j.markAsDetectable(e),j.markBusy(e,!1),P.addListener(e,o),a(u,e,i);var t=f.getState(e);if(t&&t.startSize){var p=e.offsetWidth,v=e.offsetHeight;t.startSize.width===p&&t.startSize.height===v||o(e)}E[d]&&r(E[d],(function(e){e()}))}else c&&b.log(d,"Element uninstalled before being detectable.");delete E[d],s++,s===n.length&&l()})));c&&b.log(d,"Already detecable, adding listener."),a(u,e,i),s++})),s===n.length&&l()}function T(e){if(!e)return b.error("At least one element is required.");if(g(e))e=[e];else{if(!v(e))return b.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");e=h(e)}r(e,(function(e){_.removeAllListeners(e),P.uninstall(e),f.cleanState(e)}))}return{listenTo:k,removeListener:_.removeListener,removeAllListeners:_.removeAllListeners,uninstall:T}}},f1ae:function(e,t,n){"use strict";var r=n("86cc"),i=n("4630");e.exports=function(e,t,n){t in e?r.f(e,t,i(0,n)):e[t]=n}},f6fd:function(e,t){(function(e){var t="currentScript",n=e.getElementsByTagName("script");t in e||Object.defineProperty(e,t,{get:function(){try{throw new Error}catch(r){var e,t=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(r.stack)||[!1])[1];for(e in n)if(n[e].src==t||"interactive"==n[e].readyState)return n[e];return null}}})})(document)},f751:function(e,t,n){var r=n("5ca1");r(r.S+r.F,"Object",{assign:n("7333")})},f772:function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},fa5b:function(e,t,n){e.exports=n("5537")("native-function-to-string",Function.toString)},fab2:function(e,t,n){var r=n("7726").document;e.exports=r&&r.documentElement},fb15:function(e,t,n){"use strict";var r;(n.r(t),"undefined"!==typeof window)&&(n("f6fd"),(r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))&&(n.p=r[1]));var i=n("2af9");n.d(t,"install",(function(){return i["d"]})),n.d(t,"GridLayout",(function(){return i["b"]})),n.d(t,"GridItem",(function(){return i["a"]}));t["default"]=i["c"]},fb3a:function(e,t,n){(function(t){e.exports=t()})((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scope=t.ActionName=void 0;var r=v(tn),i=d(f),o=d(Sn),a=d(kn),s=d(Bn),u=d(or),l=d(jr),c=d(n({}));function d(e){return e&&e.__esModule?e:{default:e}}function p(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return p=function(){return e},e}function v(e){if(e&&e.__esModule)return e;var t=p();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function h(e){return h="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}function g(e,t){return!t||"object"!==h(t)&&"function"!==typeof t?y(e):t}function y(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e,t,n){return m="undefined"!==typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=b(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}},m(e,t,n||e)}function b(e,t){while(!Object.prototype.hasOwnProperty.call(e,t))if(e=w(e),null===e)break;return e}function w(e){return w=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},w(e)}function x(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&O(e,t)}function O(e,t){return O=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},O(e,t)}function P(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _(e,t){for(var n=0;n=0;e--){var r=n.interactions.list[e];r.interactable===this&&(r.stop(),n.interactions.signals.fire("destroy",{interaction:r}),r.destroy(),n.interactions.list.length>2&&n.interactions.list.splice(e,1))}n.interactables.signals.fire("unset",{interactable:this})}},{key:"_defaults",get:function(){return n.defaults}}]),t}(s["default"])}return j(e,[{key:"init",value:function(e){return R(this,e)}},{key:"pluginIsInstalled",value:function(e){return this._pluginMap[e.id]||-1!==this._plugins.indexOf(e)}},{key:"usePlugin",value:function(e,t){return this.pluginIsInstalled(e)?this:(e.id&&(this._pluginMap[e.id]=e),e.install(this,t),this._plugins.push(e),this)}},{key:"addDocument",value:function(e,t){if(-1!==this.getDocIndex(e))return!1;var n=M.getWindow(e);t=t?r.extend({},t):{},this.documents.push({doc:e,options:t}),z.documents.push(e),e!==this.document&&z.add(n,"unload",this.onWindowUnload),this.signals.fire("add-document",{doc:e,window:n,scope:this,options:t})}},{key:"removeDocument",value:function(e){var t=this.getDocIndex(e),n=M.getWindow(e),r=this.documents[t].options;z.remove(n,"unload",this.onWindowUnload),this.documents.splice(t,1),z.documents.splice(t,1),this.signals.fire("remove-document",{doc:e,window:n,scope:this,options:r})}},{key:"getDocIndex",value:function(e){for(var t=0;tthis.pointerMoveTolerance);var s={pointer:e,pointerIndex:this.getPointerIndex(e),event:t,eventTarget:n,dx:r,dy:i,duplicate:a,interaction:this};a||(o.pointer.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),o.pointer.setCoordVelocity(this.coords.velocity,this.coords.delta)),this._signals.fire("move",s),a||(this.interacting()&&this.move(s),this.pointerWasMoved&&o.pointer.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(e){e=o.extend({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},e||{}),e.phase=a.EventPhase.Move,this._doPhase(e)}},{key:"pointerUp",value:function(e,t,n,r){var i=this.getPointerIndex(e);-1===i&&(i=this.updatePointer(e,t,n,!1)),this._signals.fire(/cancel$/i.test(t.type)?"cancel":"up",{pointer:e,pointerIndex:i,event:t,eventTarget:n,curEventTarget:r,interaction:this}),this.simulation||this.end(t),this.pointerIsDown=!1,this.removePointer(e,t)}},{key:"documentBlur",value:function(e){this.end(e),this._signals.fire("blur",{event:e,interaction:this})}},{key:"end",value:function(e){var t;this._ending=!0,e=e||this._latestPointer.event,this.interacting()&&(t=this._doPhase({event:e,interaction:this,phase:a.EventPhase.End})),this._ending=!1,!0===t&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._signals.fire("stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(e){var t=o.pointer.getPointerId(e);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:o.arr.findIndex(this.pointers,(function(e){return e.id===t}))}},{key:"getPointerInfo",value:function(e){return this.pointers[this.getPointerIndex(e)]}},{key:"updatePointer",value:function(e,t,n,r){var i=o.pointer.getPointerId(e),a=this.getPointerIndex(e),u=this.pointers[a];return r=!1!==r&&(r||/(down|start)$/i.test(t.type)),u?u.pointer=e:(u=new s["default"](i,e,t,null,null),a=this.pointers.length,this.pointers.push(u)),r&&(this.pointerIsDown=!0,this.interacting()||(o.pointer.setCoords(this.coords.start,this.pointers.map((function(e){return e.pointer})),this._now()),o.pointer.copyCoords(this.coords.cur,this.coords.start),o.pointer.copyCoords(this.coords.prev,this.coords.start),o.pointer.pointerExtend(this.downPointer,e),this.downEvent=t,u.downTime=this.coords.cur.timeStamp,u.downTarget=n,this.pointerWasMoved=!1)),this._updateLatestPointer(e,t,n),this._signals.fire("update-pointer",{pointer:e,event:t,eventTarget:n,down:r,pointerInfo:u,pointerIndex:a,interaction:this}),a}},{key:"removePointer",value:function(e,t){var n=this.getPointerIndex(e);if(-1!==n){var r=this.pointers[n];this._signals.fire("remove-pointer",{pointer:e,event:t,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1)}}},{key:"_updateLatestPointer",value:function(e,t,n){this._latestPointer.pointer=e,this._latestPointer.event=t,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(e,t,n,r){var i=this.prepared.name;return new a["default"](this,e,i,t,this.element,null,n,r)}},{key:"_fireEvent",value:function(e){this.interactable.fire(e),(!this.prevEvent||e.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=e)}},{key:"_doPhase",value:function(e){var t=e.event,n=e.phase,r=e.preEnd,i=e.type,o=this._signals.fire("before-action-".concat(n),e);if(!1===o)return!1;var a=e.iEvent=this._createPreparedEvent(t,n,r,i),s=this.rect;if(s){var u=this.edges||this.prepared.edges||{left:!0,right:!0,top:!0,bottom:!0};u.top&&(s.top+=a.delta.y),u.bottom&&(s.bottom+=a.delta.y),u.left&&(s.left+=a.delta.x),u.right&&(s.right+=a.delta.x),s.width=s.right-s.left,s.height=s.bottom-s.top}return this._signals.fire("action-".concat(n),e),this._fireEvent(a),this._signals.fire("after-action-".concat(n),e),!0}},{key:"_now",value:function(){return Date.now()}},{key:"pointerMoveTolerance",get:function(){return 1}}]),e}();n.Interaction=h;var g=h;n["default"]=g})),i={};function o(e,t){return-1!==e.indexOf(t)}function a(e,t){return e.splice(e.indexOf(t),1)}function s(e,t){for(var n=0;n=p&&(i=a,o=t)}else i=a,o=t}else i=a,o=t}return o}function ce(e,t,n){while(K.element(e)){if(se(e,t))return!0;if(e=ae(e),e===n)return se(e,t)}return!1}function fe(e){return e instanceof Q["default"].SVGElementInstance?e.correspondingUseElement:e}function de(e){return e=e||ee["default"].window,{x:e.scrollX||e.document.documentElement.scrollLeft,y:e.scrollY||e.document.documentElement.scrollTop}}function pe(e){var t=e instanceof Q["default"].SVGElement?e.getBoundingClientRect():e.getClientRects()[0];return t&&{left:t.left,right:t.right,top:t.top,bottom:t.bottom,width:t.width||t.right-t.left,height:t.height||t.bottom-t.top}}function ve(e){var t=pe(e);if(!J["default"].isIOS7&&t){var n=de(ee["default"].getWindow(e));t.left+=n.x,t.right+=n.x,t.top+=n.y,t.bottom+=n.y}return t}function he(e){var t=[];while(e)t.push(e),e=ae(e);return t}function ge(e){return!!K.string(e)&&(Q["default"].document.querySelector(e),!0)}var ye={};Object.defineProperty(ye,"__esModule",{value:!0}),ye["default"]=Oe;var me=xe(i),be=xe(j);function we(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return we=function(){return e},e}function xe(e){if(e&&e.__esModule)return e;var t=we();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function Oe(e){var t={};for(var n in e){var r=e[n];be.plainObject(r)?t[n]=Oe(r):be.array(r)?t[n]=me.from(r):t[n]=r}return t}var Pe={};function _e(e,t){for(var n in t){var r=_e.prefixedPropREs,i=!1;for(var o in r)if(0===n.indexOf(o)&&r[o].test(n)){i=!0;break}i||"function"===typeof t[n]||(e[n]=t[n])}return e}Object.defineProperty(Pe,"__esModule",{value:!0}),Pe["default"]=void 0,_e.prefixedPropREs={webkit:/(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,moz:/(Pressure)$/};var je=_e;Pe["default"]=je;var Se={};Object.defineProperty(Se,"__esModule",{value:!0}),Se["default"]=void 0;var Me=function(e,t){return Math.sqrt(e*e+t*t)};Se["default"]=Me;var Ee={};Object.defineProperty(Ee,"__esModule",{value:!0}),Ee["default"]=void 0;var ke=We(L),Te=We(f),ze=Ce(Z),De=We(Se),Re=Ce(j),Ie=We(Pe);function Ae(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return Ae=function(){return e},e}function Ce(e){if(e&&e.__esModule)return e;var t=Ae();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function We(e){return e&&e.__esModule?e:{default:e}}var Ne={copyCoords:function(e,t){e.page=e.page||{},e.page.x=t.page.x,e.page.y=t.page.y,e.client=e.client||{},e.client.x=t.client.x,e.client.y=t.client.y,e.timeStamp=t.timeStamp},setCoordDeltas:function(e,t,n){e.page.x=n.page.x-t.page.x,e.page.y=n.page.y-t.page.y,e.client.x=n.client.x-t.client.x,e.client.y=n.client.y-t.client.y,e.timeStamp=n.timeStamp-t.timeStamp},setCoordVelocity:function(e,t){var n=Math.max(t.timeStamp/1e3,.001);e.page.x=t.page.x/n,e.page.y=t.page.y/n,e.client.x=t.client.x/n,e.client.y=t.client.y/n,e.timeStamp=n},isNativePointer:function(e){return e instanceof Te["default"].Event||e instanceof Te["default"].Touch},getXY:function(e,t,n){return n=n||{},e=e||"page",n.x=t[e+"X"],n.y=t[e+"Y"],n},getPageXY:function(e,t){return t=t||{x:0,y:0},ke["default"].isOperaMobile&&Ne.isNativePointer(e)?(Ne.getXY("screen",e,t),t.x+=window.scrollX,t.y+=window.scrollY):Ne.getXY("page",e,t),t},getClientXY:function(e,t){return t=t||{},ke["default"].isOperaMobile&&Ne.isNativePointer(e)?Ne.getXY("screen",e,t):Ne.getXY("client",e,t),t},getPointerId:function(e){return Re.number(e.pointerId)?e.pointerId:e.identifier},setCoords:function(e,t,n){var r=t.length>1?Ne.pointerAverage(t):t[0],i={};Ne.getPageXY(r,i),e.page.x=i.x,e.page.y=i.y,Ne.getClientXY(r,i),e.client.x=i.x,e.client.y=i.y,e.timeStamp=n},pointerExtend:Ie["default"],getTouchPair:function(e){var t=[];return Re.array(e)?(t[0]=e[0],t[1]=e[1]):"touchend"===e.type?1===e.touches.length?(t[0]=e.touches[0],t[1]=e.changedTouches[0]):0===e.touches.length&&(t[0]=e.changedTouches[0],t[1]=e.changedTouches[1]):(t[0]=e.touches[0],t[1]=e.touches[1]),t},pointerAverage:function(e){for(var t={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0},n=0;n1))return null;var t=Ne.getTouchPair(e),n=Math.min(t[0].pageX,t[1].pageX),r=Math.min(t[0].pageY,t[1].pageY),i=Math.max(t[0].pageX,t[1].pageX),o=Math.max(t[0].pageY,t[1].pageY);return{x:n,y:r,left:n,top:r,right:i,bottom:o,width:i-n,height:o-r}},touchDistance:function(e,t){var n=t+"X",r=t+"Y",i=Ne.getTouchPair(e),o=i[0][n]-i[1][n],a=i[0][r]-i[1][r];return(0,De["default"])(o,a)},touchAngle:function(e,t){var n=t+"X",r=t+"Y",i=Ne.getTouchPair(e),o=i[1][n]-i[0][n],a=i[1][r]-i[0][r],s=180*Math.atan2(a,o)/Math.PI;return s},getPointerType:function(e){return Re.string(e.pointerType)?e.pointerType:Re.number(e.pointerType)?[void 0,void 0,"touch","pen","mouse"][e.pointerType]:/touch/.test(e.type)||e instanceof Te["default"].Touch?"touch":"mouse"},getEventTargets:function(e){var t=Re.func(e.composedPath)?e.composedPath():e.path;return[ze.getActualElement(t?t[0]:e.target),ze.getActualElement(e.currentTarget)]},newCoords:function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},coordsToEvent:function(e){var t={coords:e,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons}};return t}},He=Ne;Ee["default"]=He;var Le={};Object.defineProperty(Le,"__esModule",{value:!0}),Le["default"]=Le.FakeEvent=void 0;var $e=Ve(Z),Be=Ve(j),Xe=Fe(Pe),Ye=Fe(Ee);function Fe(e){return e&&e.__esModule?e:{default:e}}function Ge(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return Ge=function(){return e},e}function Ve(e){if(e&&e.__esModule)return e;var t=Ge();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function qe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ue(e,t){for(var n=0;n=0;l--)if(c.selectors[l]===e&&c.contexts[l]===t)break;-1===l&&(l=c.selectors.length,c.selectors.push(e),c.contexts.push(t),c.listeners.push([])),c.listeners[l].push([r,!!o.capture,o.passive])}function ut(e,t,n,r,i){var o,a=ft(i),s=rt[n],u=!1;if(s)for(o=s.selectors.length-1;o>=0;o--)if(s.selectors[o]===e&&s.contexts[o]===t){for(var l=s.listeners[o],c=l.length-1;c>=0;c--){var f=Je(l[c],3),d=f[0],p=f[1],v=f[2];if(d===r&&p===!!a.capture&&v===a.passive){l.splice(c,1),l.length||(s.selectors.splice(o,1),s.contexts.splice(o,1),s.listeners.splice(o,1),at(t,n,lt),at(t,n,ct,!0),s.selectors.length||(rt[n]=null)),u=!0;break}}if(u)break}}function lt(e,t){var n=ft(t),r=new dt(e),i=rt[e.type],o=Ye["default"].getEventTargets(e),a=Je(o,1),s=a[0],u=s;while(Be.element(u)){for(var l=0;l150)return null;var t=180*Math.atan2(e.prevEvent.velocityY,e.prevEvent.velocityX)/Math.PI,n=22.5;t<0&&(t+=360);var r=135-n<=t&&t<225+n,i=225-n<=t&&t<315+n,o=!r&&(315-n<=t||t<45+n),a=!i&&45-n<=t&&t<135+n;return{up:i,down:a,left:r,right:o,angle:t,speed:e.prevEvent.speed,velocity:{x:e.prevEvent.velocityX,y:e.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"pageX",get:function(){return this.page.x},set:function(e){this.page.x=e}},{key:"pageY",get:function(){return this.page.y},set:function(e){this.page.y=e}},{key:"clientX",get:function(){return this.client.x},set:function(e){this.client.x=e}},{key:"clientY",get:function(){return this.client.y},set:function(e){this.client.y=e}},{key:"dx",get:function(){return this.delta.x},set:function(e){this.delta.x=e}},{key:"dy",get:function(){return this.delta.y},set:function(e){this.delta.y=e}},{key:"velocityX",get:function(){return this.velocity.x},set:function(e){this.velocity.x=e}},{key:"velocityY",get:function(){return this.velocity.y},set:function(e){this.velocity.y=e}}]),t}(Tr["default"]);jr.InteractEvent=Br;var Xr=Br;jr["default"]=Xr;var Yr={};function Fr(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(Yr,"__esModule",{value:!0}),Yr["default"]=Yr.PointerInfo=void 0;var Gr=function e(t,n,r,i,o){Fr(this,e),this.id=t,this.pointer=n,this.event=r,this.downTime=i,this.downTarget=o};Yr.PointerInfo=Gr;var Vr=Gr;Yr["default"]=Vr;var qr={};Object.defineProperty(qr,"__esModule",{value:!0}),qr["default"]=void 0;var Ur=Jr(Z);function Zr(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return Zr=function(){return e},e}function Jr(e){if(e&&e.__esModule)return e;var t=Zr();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}var Qr={methodOrder:["simulationResume","mouseOrPen","hasPointer","idle"],search:function(e){for(var t=0;t=2)continue;if(!o.interacting()&&t===o.pointerType)return o}return null}};function Kr(e,t){return e.pointers.some((function(e){var n=e.id;return n===t}))}var ei=Qr;qr["default"]=ei;var ti={};Object.defineProperty(ti,"__esModule",{value:!0}),ti["default"]=void 0;var ni=t({}),ri=ai(i),ii=ai(j);function oi(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return oi=function(){return e},e}function ai(e){if(e&&e.__esModule)return e;var t=oi();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function si(e){var t=e.actions,n=e.Interactable,r=e.interactions,i=e.defaults;r.signals.on("before-action-move",ui),r.signals.on("action-resume",ui),r.signals.on("action-move",li),n.prototype.draggable=fi.draggable,t[ni.ActionName.Drag]=fi,t.names.push(ni.ActionName.Drag),ri.merge(t.eventTypes,["dragstart","dragmove","draginertiastart","dragresume","dragend"]),t.methodDict.drag="draggable",i.actions.drag=fi.defaults}function ui(e){var t=e.interaction;if("drag"===t.prepared.name){var n=t.prepared.axis;"x"===n?(t.coords.cur.page.y=t.coords.start.page.y,t.coords.cur.client.y=t.coords.start.client.y,t.coords.velocity.client.y=0,t.coords.velocity.page.y=0):"y"===n&&(t.coords.cur.page.x=t.coords.start.page.x,t.coords.cur.client.x=t.coords.start.client.x,t.coords.velocity.client.x=0,t.coords.velocity.page.x=0)}}function li(e){var t=e.iEvent,n=e.interaction;if("drag"===n.prepared.name){var r=n.prepared.axis;if("x"===r||"y"===r){var i="x"===r?"y":"x";t.page[i]=n.coords.start.page[i],t.client[i]=n.coords.start.client[i],t.delta[i]=0}}}ni.ActionName.Drag="drag";var ci=function(e){return ii.object(e)?(this.options.drag.enabled=!1!==e.enabled,this.setPerAction("drag",e),this.setOnEvents("drag",e),/^(xy|x|y|start)$/.test(e.lockAxis)&&(this.options.drag.lockAxis=e.lockAxis),/^(xy|x|y)$/.test(e.startAxis)&&(this.options.drag.startAxis=e.startAxis),this):ii.bool(e)?(this.options.drag.enabled=e,this):this.options.drag},fi={id:"actions/drag",install:si,draggable:ci,beforeMove:ui,move:li,defaults:{startAxis:"xy",lockAxis:"xy"},checker:function(e,t,n){var r=n.options.drag;return r.enabled?{name:"drag",axis:"start"===r.lockAxis?r.startAxis:r.lockAxis}:null},getCursor:function(){return"move"}},di=fi;ti["default"]=di;var pi={};Object.defineProperty(pi,"__esModule",{value:!0}),pi["default"]=void 0;var vi=mi(br),hi=yi(i);function gi(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return gi=function(){return e},e}function yi(e){if(e&&e.__esModule)return e;var t=gi();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function mi(e){return e&&e.__esModule?e:{default:e}}function bi(e){return bi="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},bi(e)}function wi(e){return Pi(e)||Oi(e)||xi()}function xi(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function Oi(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function Pi(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);ta.left&&c.xa.top&&c.y=a.left&&v<=a.right&&h>=a.top&&h<=a.bottom}if(p&&Ai.is.number(u)){var g=Math.max(0,Math.min(a.right,p.right)-Math.max(a.left,p.left))*Math.max(0,Math.min(a.bottom,p.bottom)-Math.max(a.top,p.top)),y=g/(p.width*p.height);s=y>=u}return e.options.drop.checker&&(s=e.options.drop.checker(t,n,s,e,o,r,i)),s}var Ji={id:"actions/drop",install:$i,getActiveDrops:Yi,getDrop:Fi,getDropEvents:Gi,fireDropEvents:Vi,defaults:{enabled:!1,accept:null,overlap:"pointer"}},Qi=Ji;Ii["default"]=Qi;var Ki={};Object.defineProperty(Ki,"__esModule",{value:!0}),Ki["default"]=void 0;var eo=oo(jr),to=t({}),no=io(tn);function ro(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return ro=function(){return e},e}function io(e){if(e&&e.__esModule)return e;var t=ro();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function oo(e){return e&&e.__esModule?e:{default:e}}function ao(e){var t=e.actions,n=e.Interactable,r=e.interactions,i=e.defaults;n.prototype.gesturable=function(e){return no.is.object(e)?(this.options.gesture.enabled=!1!==e.enabled,this.setPerAction("gesture",e),this.setOnEvents("gesture",e),this):no.is.bool(e)?(this.options.gesture.enabled=e,this):this.options.gesture},r.signals.on("action-start",uo),r.signals.on("action-move",uo),r.signals.on("action-end",uo),r.signals.on("new",(function(e){var t=e.interaction;t.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}})),t[to.ActionName.Gesture]=so,t.names.push(to.ActionName.Gesture),no.arr.merge(t.eventTypes,["gesturestart","gesturemove","gestureend"]),t.methodDict.gesture="gesturable",i.actions.gesture=so.defaults}to.ActionName.Gesture="gesture";var so={id:"actions/gesture",install:ao,defaults:{},checker:function(e,t,n,r,i){return i.pointers.length>=2?{name:"gesture"}:null},getCursor:function(){return""}};function uo(e){var t=e.interaction,n=e.iEvent,r=e.event,i=e.phase;if("gesture"===t.prepared.name){var o=t.pointers.map((function(e){return e.pointer})),a="start"===i,s="end"===i,u=t.interactable.options.deltaSource;if(n.touches=[o[0],o[1]],a)n.distance=no.pointer.touchDistance(o,u),n.box=no.pointer.touchBBox(o),n.scale=1,n.ds=0,n.angle=no.pointer.touchAngle(o,u),n.da=0,t.gesture.startDistance=n.distance,t.gesture.startAngle=n.angle;else if(s||r instanceof eo["default"]){var l=t.prevEvent;n.distance=l.distance,n.box=l.box,n.scale=l.scale,n.ds=0,n.angle=l.angle,n.da=0}else n.distance=no.pointer.touchDistance(o,u),n.box=no.pointer.touchBBox(o),n.scale=n.distance/t.gesture.startDistance,n.angle=no.pointer.touchAngle(o,u),n.ds=n.scale-t.gesture.scale,n.da=n.angle-t.gesture.angle;t.gesture.distance=n.distance,t.gesture.angle=n.angle,no.is.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(t.gesture.scale=n.scale)}}var lo=so;Ki["default"]=lo;var co={};Object.defineProperty(co,"__esModule",{value:!0}),co["default"]=void 0;var fo=t({}),po=bo(i),vo=bo(Z),ho=yo(ht),go=bo(j);function yo(e){return e&&e.__esModule?e:{default:e}}function mo(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return mo=function(){return e},e}function bo(e){if(e&&e.__esModule)return e;var t=mo();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function wo(e){var t=e.actions,n=e.browser,r=e.Interactable,i=e.interactions,o=e.defaults;i.signals.on("new",(function(e){e.resizeAxes="xy"})),i.signals.on("action-start",jo),i.signals.on("action-move",So),i.signals.on("action-end",Mo),i.signals.on("action-start",Eo),i.signals.on("action-move",Eo),xo.cursors=_o(n),xo.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(t){return Oo(this,t,e)},t[fo.ActionName.Resize]=xo,t.names.push(fo.ActionName.Resize),po.merge(t.eventTypes,["resizestart","resizemove","resizeinertiastart","resizeresume","resizeend"]),t.methodDict.resize="resizable",o.actions.resize=xo.defaults}fo.ActionName.Resize="resize";var xo={id:"actions/resize",install:wo,defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},checker:function(e,t,n,r,i,o){if(!o)return null;var a=(0,ho["default"])({},i.coords.cur.page),s=n.options;if(s.resize.enabled){var u=s.resize,l={left:!1,right:!1,top:!1,bottom:!1};if(go.object(u.edges)){for(var c in l)l[c]=Po(c,u.edges[c],a,i._latestPointer.eventTarget,r,o,u.margin||this.defaultMargin);if(l.left=l.left&&!l.right,l.top=l.top&&!l.bottom,l.left||l.right||l.top||l.bottom)return{name:"resize",edges:l}}else{var f="y"!==s.resize.axis&&a.x>o.right-this.defaultMargin,d="x"!==s.resize.axis&&a.y>o.bottom-this.defaultMargin;if(f||d)return{name:"resize",axes:(f?"x":"")+(d?"y":"")}}}return null},cursors:null,getCursor:function(e){var t=e.edges,n=e.axis,r=e.name,i=xo.cursors,o=null;if(n)o=i[r+n];else if(t){for(var a="",s=["top","bottom","left","right"],u=0;u=0?o.left:o.right)+a;if("top"===e)return n.y<(u>=0?o.top:o.bottom)+a;if("right"===e)return n.x>(s>=0?o.right:o.left)-a;if("bottom"===e)return n.y>(u>=0?o.bottom:o.top)-a}return!!go.element(r)&&(go.element(t)?t===r:vo.matchesUpTo(r,t,i))}function _o(e){return e.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}function jo(e){var t=e.iEvent,n=e.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=(0,ho["default"])({},n.rect),i=n.interactable.options.resize;if(i.square||i.preserveAspectRatio){var o=(0,ho["default"])({},n.prepared.edges);o.top=o.top||o.left&&!o.bottom,o.left=o.left||o.top&&!o.right,o.bottom=o.bottom||o.right&&!o.top,o.right=o.right||o.bottom&&!o.left,n.prepared._linkedEdges=o}else n.prepared._linkedEdges=null;i.preserveAspectRatio&&(n.resizeStartAspectRatio=r.width/r.height),n.resizeRects={start:r,current:{left:r.left,right:r.right,top:r.top,bottom:r.bottom},inverted:(0,ho["default"])({},r),previous:(0,ho["default"])({},r),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},t.edges=n.prepared.edges,t.rect=n.resizeRects.inverted,t.deltaRect=n.resizeRects.delta}}function So(e){var t=e.iEvent,n=e.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r,i=n.interactable.options.resize,o=i.invert,a="reposition"===o||"negate"===o,s=n.prepared.edges,u=n.resizeRects.start,l=n.resizeRects.current,c=n.resizeRects.inverted,f=n.resizeRects.delta,d=(0,ho["default"])(n.resizeRects.previous,c),p=s,v=(0,ho["default"])({},t.delta);if(i.preserveAspectRatio||i.square){var h=i.preserveAspectRatio?n.resizeStartAspectRatio:1;s=n.prepared._linkedEdges,p.left&&p.bottom||p.right&&p.top?v.y=-v.x/h:p.left||p.right?v.y=v.x/h:(p.top||p.bottom)&&(v.x=v.y*h)}if(s.top&&(l.top+=v.y),s.bottom&&(l.bottom+=v.y),s.left&&(l.left+=v.x),s.right&&(l.right+=v.x),a){if((0,ho["default"])(c,l),"reposition"===o)c.top>c.bottom&&(r=c.top,c.top=c.bottom,c.bottom=r),c.left>c.right&&(r=c.left,c.left=c.right,c.right=r)}else c.top=Math.min(l.top,u.bottom),c.bottom=Math.max(l.bottom,u.top),c.left=Math.min(l.left,u.right),c.right=Math.max(l.right,u.left);for(var g in c.width=c.right-c.left,c.height=c.bottom-c.top,c)f[g]=c[g]-d[g];t.edges=n.prepared.edges,t.rect=c,t.deltaRect=f}}function Mo(e){var t=e.iEvent,n=e.interaction;"resize"===n.prepared.name&&n.prepared.edges&&(t.edges=n.prepared.edges,t.rect=n.resizeRects.inverted,t.deltaRect=n.resizeRects.delta)}function Eo(e){var t=e.iEvent,n=e.interaction,r=e.action;if(r===fo.ActionName.Resize&&n.resizeAxes){var i=n.interactable.options;i.resize.square?("y"===n.resizeAxes?t.delta.x=t.delta.y:t.delta.y=t.delta.x,t.axes="xy"):(t.axes=n.resizeAxes,"x"===n.resizeAxes?t.delta.y=0:"y"===n.resizeAxes&&(t.delta.x=0))}}var ko=xo;co["default"]=ko;var To={};Object.defineProperty(To,"__esModule",{value:!0}),To.install=Co,Object.defineProperty(To,"drag",{enumerable:!0,get:function(){return zo["default"]}}),Object.defineProperty(To,"drop",{enumerable:!0,get:function(){return Do["default"]}}),Object.defineProperty(To,"gesture",{enumerable:!0,get:function(){return Ro["default"]}}),Object.defineProperty(To,"resize",{enumerable:!0,get:function(){return Io["default"]}}),To.id=void 0;var zo=Ao(ti),Do=Ao(Ii),Ro=Ao(Ki),Io=Ao(co);function Ao(e){return e&&e.__esModule?e:{default:e}}function Co(e){e.usePlugin(Ro["default"]),e.usePlugin(Io["default"]),e.usePlugin(zo["default"]),e.usePlugin(Do["default"])}var Wo="actions";To.id=Wo;var No={};Object.defineProperty(No,"__esModule",{value:!0}),No.getContainer=Vo,No.getScroll=qo,No.getScrollSize=Uo,No.getScrollSizeDelta=Zo,No["default"]=void 0;var Ho=Yo(Z),Lo=Yo(j),$o=Bo(Xt);function Bo(e){return e&&e.__esModule?e:{default:e}}function Xo(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return Xo=function(){return e},e}function Yo(e){if(e&&e.__esModule)return e;var t=Xo();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function Fo(e){var t=e.interactions,n=e.defaults,r=e.actions;e.autoScroll=Go,Go.now=function(){return e.now()},t.signals.on("new",(function(e){var t=e.interaction;t.autoScroll=null})),t.signals.on("destroy",(function(e){var t=e.interaction;t.autoScroll=null,Go.stop(),Go.interaction&&(Go.interaction=null)})),t.signals.on("stop",Go.stop),t.signals.on("action-move",(function(e){return Go.onInteractionMove(e)})),r.eventTypes.push("autoscroll"),n.perAction.autoScroll=Go.defaults}var Go={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:null,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start:function(e){Go.isScrolling=!0,$o["default"].cancel(Go.i),e.autoScroll=Go,Go.interaction=e,Go.prevTime=Go.now(),Go.i=$o["default"].request(Go.scroll)},stop:function(){Go.isScrolling=!1,Go.interaction&&(Go.interaction.autoScroll=null),$o["default"].cancel(Go.i)},scroll:function(){var e=Go.interaction,t=e.interactable,n=e.element,r=t.options[Go.interaction.prepared.name].autoScroll,i=Vo(r.container,t,n),o=Go.now(),a=(o-Go.prevTime)/1e3,s=r.speed*a;if(s>=1){var u={x:Go.x*s,y:Go.y*s};if(u.x||u.y){var l=qo(i);Lo.window(i)?i.scrollBy(u.x,u.y):i&&(i.scrollLeft+=u.x,i.scrollTop+=u.y);var c=qo(i),f={x:c.x-l.x,y:c.y-l.y};(f.x||f.y)&&t.fire({type:"autoscroll",target:n,interactable:t,delta:f,interaction:e,container:i})}Go.prevTime=o}Go.isScrolling&&($o["default"].cancel(Go.i),Go.i=$o["default"].request(Go.scroll))},check:function(e,t){var n=e.options;return n[t].autoScroll&&n[t].autoScroll.enabled},onInteractionMove:function(e){var t=e.interaction,n=e.pointer;if(t.interacting()&&Go.check(t.interactable,t.prepared.name))if(t.simulation)Go.x=Go.y=0;else{var r,i,o,a,s=t.interactable,u=t.element,l=s.options[t.prepared.name].autoScroll,c=Vo(l.container,s,u);if(Lo.window(c))a=n.clientXc.innerWidth-Go.margin,o=n.clientY>c.innerHeight-Go.margin;else{var f=Ho.getElementClientRect(c);a=n.clientXf.right-Go.margin,o=n.clientY>f.bottom-Go.margin}Go.x=i?1:a?-1:0,Go.y=o?1:r?-1:0,Go.isScrolling||(Go.margin=l.margin,Go.speed=l.speed,Go.start(t))}}};function Vo(e,t,n){return(Lo.string(e)?(0,yt.getStringOptionResult)(e,t,n):e)||(0,m.getWindow)(n)}function qo(e){return Lo.window(e)&&(e=window.document.body),{x:e.scrollLeft,y:e.scrollTop}}function Uo(e){return Lo.window(e)&&(e=window.document.body),{x:e.scrollWidth,y:e.scrollHeight}}function Zo(e,t){var n=e.interaction,r=e.element,i=n&&n.interactable.options[n.prepared.name].autoScroll;if(!i||!i.enabled)return t(),{x:0,y:0};var o=Vo(i.container,n.interactable,r),a=qo(o);t();var s=qo(o);return{x:s.x-a.x,y:s.y-a.y}}var Jo={id:"auto-scroll",install:Fo};No["default"]=Jo;var Qo={};Object.defineProperty(Qo,"__esModule",{value:!0}),Qo["default"]=void 0;var Ko=ta(j);function ea(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return ea=function(){return e},e}function ta(e){if(e&&e.__esModule)return e;var t=ea();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function na(e){var t=e.Interactable,n=e.actions;t.prototype.getAction=ra,t.prototype.ignoreFrom=(0,tn.warnOnce)((function(e){return this._backCompatOption("ignoreFrom",e)}),"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),t.prototype.allowFrom=(0,tn.warnOnce)((function(e){return this._backCompatOption("allowFrom",e)}),"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),t.prototype.actionChecker=aa,t.prototype.styleCursor=oa,t.prototype.defaultActionChecker=function(e,t,r,i){return ia(this,e,t,r,i,n)}}function ra(e,t,n,r){var i=this.defaultActionChecker(e,t,n,r);return this.options.actionChecker?this.options.actionChecker(e,t,i,this,r,n):i}function ia(e,t,n,r,i,o){for(var a=e.getRect(i),s=n.buttons||{0:1,1:4,3:8,4:16}[n.button],u=null,l=0;l=s)return!1;if(p.interactable===e){if(l+=v===n.name?1:0,l>=o)return!1;if(p.element===t&&(c++,v===n.name&&c>=a))return!1}}}return s>0}function wa(e,t){return la.is.number(e)?(t.autoStart.maxInteractions=e,this):t.autoStart.maxInteractions}function xa(e,t,n){n.autoStart.cursorElement&&(n.autoStart.cursorElement.style.cursor=""),e.ownerDocument.documentElement.style.cursor=t,e.style.cursor=t,n.autoStart.cursorElement=t?e:null}function Oa(e,t){var n=e.interactable,r=e.element,i=e.prepared;if("mouse"===e.pointerType&&n&&n.options.styleCursor){var o="";if(i.name){var a=n.options[i.name].cursorChecker;o=la.is.func(a)?a(i,n,r,e._interacting):t.actions[i.name].getCursor(i)}xa(e.element,o||"",t)}}var Pa={id:"auto-start/base",install:va,maxInteractions:wa,withinInteractionLimit:ba,validateAction:ha};ua["default"]=Pa;var _a={};Object.defineProperty(_a,"__esModule",{value:!0}),_a["default"]=void 0;var ja=t({}),Sa=Ta(j),Ma=Ea(ua);function Ea(e){return e&&e.__esModule?e:{default:e}}function ka(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return ka=function(){return e},e}function Ta(e){if(e&&e.__esModule)return e;var t=ka();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function za(e){function t(e,t){if(!t)return!1;var n=t.options[ja.ActionName.Drag].startAxis;return"xy"===e||"xy"===n||n===e}e.autoStart.signals.on("before-start",(function(n){var r=n.interaction,i=n.eventTarget,o=n.dx,a=n.dy;if("drag"===r.prepared.name){var s=Math.abs(o),u=Math.abs(a),l=r.interactable.options.drag,c=l.startAxis,f=s>u?"x":s0&&(t.autoStartHoldTimer=setTimeout((function(){t.start(t.prepared,t.interactable,t.element)}),n))})),n.signals.on("move",(function(e){var t=e.interaction,n=e.duplicate;t.pointerWasMoved&&!n&&clearTimeout(t.autoStartHoldTimer)})),t.signals.on("before-start",(function(e){var t=e.interaction,n=Wa(t);n>0&&(t.prepared.name=null)}))}function Wa(e){var t=e.prepared&&e.prepared.name;if(!t)return null;var n=e.interactable.options;return n[t].hold||n[t].delay}var Na={id:"auto-start/hold",install:Ca,getHoldDuration:Wa};Ra["default"]=Na;var Ha={};Object.defineProperty(Ha,"__esModule",{value:!0}),Ha.install=Ya,Object.defineProperty(Ha,"autoStart",{enumerable:!0,get:function(){return La["default"]}}),Object.defineProperty(Ha,"dragAxis",{enumerable:!0,get:function(){return $a["default"]}}),Object.defineProperty(Ha,"hold",{enumerable:!0,get:function(){return Ba["default"]}}),Ha.id=void 0;var La=Xa(ua),$a=Xa(_a),Ba=Xa(Ra);function Xa(e){return e&&e.__esModule?e:{default:e}}function Ya(e){e.usePlugin(La["default"]),e.usePlugin(Ba["default"]),e.usePlugin($a["default"])}var Fa="auto-start";Ha.id=Fa;var Ga={};Object.defineProperty(Ga,"__esModule",{value:!0}),Ga.install=ts,Ga["default"]=void 0;var Va=Ja(Le),qa=Za(j);function Ua(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return Ua=function(){return e},e}function Za(e){if(e&&e.__esModule)return e;var t=Ua();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}}return n["default"]=e,t&&t.set(e,n),n}function Ja(e){return e&&e.__esModule?e:{default:e}}function Qa(e){return/^(always|never|auto)$/.test(e)?(this.options.preventDefault=e,this):qa.bool(e)?(this.options.preventDefault=e?"always":"never",this):this.options.preventDefault}function Ka(e,t,n){var r=e.options.preventDefault;if("never"!==r)if("always"!==r){if(Va["default"].supportsPassive&&/^touch(start|move)$/.test(n.type)){var i=(0,m.getWindow)(n.target).document,o=t.getDocOptions(i);if(!o||!o.events||!1!==o.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(n.type)||qa.element(n.target)&&(0,Z.matchesSelector)(n.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||n.preventDefault()}else n.preventDefault()}function es(e){var t=e.interaction,n=e.event;t.interactable&&t.interactable.checkAndPreventDefault(n)}function ts(e){var t=e.Interactable;t.prototype.preventDefault=Qa,t.prototype.checkAndPreventDefault=function(t){return Ka(this,e,t)};for(var n=["down","move","up","cancel"],r=0;r1&&void 0!==arguments[1]?arguments[1]:{},n=t.logger,r=e.interactions,i=e.Interactable,o=e.defaults;n=n||console,r.signals.on("action-start",(function(e){for(var t=e.interaction,r=0;rs.minSpeed&&c>s.endSpeed,v={interaction:n,pageCoords:n.coords.cur.page,states:d&&n.modifiers.states.map((function(e){return Zs.extend({},e)})),preEnd:!0,prevCoords:null,requireEndOnly:null,phase:jr.EventPhase.InertiaStart};return d&&!p&&(v.prevCoords=n.modifiers.result?n.modifiers.result.coords:n.prevEvent.page,v.requireEndOnly=!1,a=Us["default"].setAll(v),a.changed&&(f=!0)),p||f?(Zs.pointer.copyCoords(o.upCoords,n.coords.cur),(0,Us.setCoords)(v),n.pointers[0].pointer=o.startEvent=new t.InteractEvent(n,r,n.prepared.name,jr.EventPhase.InertiaStart,n.element),(0,Us.restoreCoords)(v),o.t0=u,o.active=!0,o.allowResume=s.allowResume,n.simulation=o,n.interactable.fire(o.startEvent),p?(o.vx0=n.coords.velocity.client.x,o.vy0=n.coords.velocity.client.y,o.v0=c,ou(n,o),Zs.extend(v.pageCoords,n.coords.cur.page),v.pageCoords.x+=o.xe,v.pageCoords.y+=o.ye,v.prevCoords=null,v.requireEndOnly=!0,a=Us["default"].setAll(v),o.modifiedXe+=a.delta.x,o.modifiedYe+=a.delta.y,o.timeout=Js["default"].request((function(){return au(n)}))):(o.smoothEnd=!0,o.xe=a.delta.x,o.ye=a.delta.y,o.sx=o.sy=0,o.timeout=Js["default"].request((function(){return su(n)}))),!1):null}function iu(e){var t=e.interaction,n=t.inertia;n.active&&(Js["default"].cancel(n.timeout),n.active=!1,t.simulation=null)}function ou(e,t){var n=lu(e),r=n.resistance,i=-Math.log(n.endSpeed/t.v0)/r;t.x0=e.prevEvent.page.x,t.y0=e.prevEvent.page.y,t.t0=t.startEvent.timeStamp/1e3,t.sx=t.sy=0,t.modifiedXe=t.xe=(t.vx0-i)/r,t.modifiedYe=t.ye=(t.vy0-i)/r,t.te=i,t.lambda_v0=r/t.v0,t.one_ve_v0=1-n.endSpeed/t.v0}function au(e){uu(e),Zs.pointer.setCoordDeltas(e.coords.delta,e.coords.prev,e.coords.cur),Zs.pointer.setCoordVelocity(e.coords.velocity,e.coords.delta);var t=e.inertia,n=lu(e),r=n.resistance,i=e._now()/1e3-t.t0;if(i=c?t?"":void 0:(o=s.charCodeAt(u),o<55296||o>56319||u+1===c||(a=s.charCodeAt(u+1))<56320||a>57343?t?s.charAt(u):o:t?s.slice(u,u+2):a-56320+(o-55296<<10)+65536)}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"07e3":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var r=n("ce10"),i=n("e11e");t.exports=Object.keys||function(t){return r(t,i)}},1156:function(t,e,n){var r=n("ad20");"string"===typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);var i=n("499e").default;i("c1ec597e",r,!0,{sourceMap:!1,shadowMode:!1})},"11e9":function(t,e,n){var r=n("52a7"),i=n("4630"),o=n("6821"),a=n("6a99"),s=n("69a8"),u=n("c69a"),c=Object.getOwnPropertyDescriptor;e.f=n("9e1e")?c:function(t,e){if(t=o(t),e=a(e,!0),u)try{return c(t,e)}catch(n){}if(s(t,e))return i(!r.f.call(t,e),t[e])}},1495:function(t,e,n){var r=n("86cc"),i=n("cb7c"),o=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){i(t);var n,a=o(e),s=a.length,u=0;while(s>u)r.f(t,n=a[u++],e[n]);return t}},"18d2":function(t,e,n){"use strict";var r=n("18e9");t.exports=function(t){t=t||{};var e=t.reporter,n=t.batchProcessor,i=t.stateHandler.getState;if(!e)throw new Error("Missing required dependency: reporter.");function o(t,e){if(!s(t))throw new Error("Element is not detectable by this strategy.");function n(){e(t)}if(r.isIE(8))i(t).object={proxy:n},t.attachEvent("onresize",n);else{var o=s(t);o.contentDocument.defaultView.addEventListener("resize",n)}}function a(t,o,a){a||(a=o,o=t,t=null),t=t||{};t.debug;function s(t,o){var a="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; padding: 0; margin: 0; opacity: 0; z-index: -1000; pointer-events: none;",s=!1,u=window.getComputedStyle(t),c=t.offsetWidth,l=t.offsetHeight;function f(){function n(){if("static"===u.position){t.style.position="relative";var n=function(t,e,n,r){function i(t){return t.replace(/[^-\d\.]/g,"")}var o=n[r];"auto"!==o&&"0"!==i(o)&&(t.warn("An element that is positioned static has style."+r+"="+o+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+r+" will be set to 0. Element: ",e),e.style[r]=0)};n(e,t,u,"top"),n(e,t,u,"right"),n(e,t,u,"bottom"),n(e,t,u,"left")}}function c(){function e(t,n){t.contentDocument?n(t.contentDocument):setTimeout((function(){e(t,n)}),100)}s||n();var r=this;e(r,(function(e){o(t)}))}""!==u.position&&(n(u),s=!0);var l=document.createElement("object");l.style.cssText=a,l.tabIndex=-1,l.type="text/html",l.setAttribute("aria-hidden","true"),l.onload=c,r.isIE()||(l.data="about:blank"),t.appendChild(l),i(t).object=l,r.isIE()&&(l.data="about:blank")}i(t).startSize={width:c,height:l},n?n.add(f):f()}r.isIE(8)?a(o):s(o,a)}function s(t){return i(t).object}function u(t){r.isIE(8)?t.detachEvent("onresize",i(t).object.proxy):t.removeChild(s(t)),delete i(t).object}return{makeDetectable:a,addListener:o,uninstall:u}}},"18e9":function(t,e,n){"use strict";var r=t.exports={};r.isIE=function(t){function e(){var t=navigator.userAgent.toLowerCase();return-1!==t.indexOf("msie")||-1!==t.indexOf("trident")||-1!==t.indexOf(" edge/")}if(!e())return!1;if(!t)return!0;var n=function(){var t,e=3,n=document.createElement("div"),r=n.getElementsByTagName("i");do{n.innerHTML="\x3c!--[if gt IE "+ ++e+"]>4?e:t}();return t===n},r.isLegacyOpera=function(){return!!window.opera}},"1bc3":function(t,e,n){var r=n("f772");t.exports=function(t,e){if(!r(t))return t;var n,i;if(e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;if("function"==typeof(n=t.valueOf)&&!r(i=n.call(t)))return i;if(!e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},"1ca7":function(t,e,n){"use strict";n.d(e,"b",(function(){return a})),n.d(e,"a",(function(){return s})),n.d(e,"c",(function(){return u}));var r="auto";function i(){return"undefined"!==typeof document}function o(){return"undefined"!==typeof window}function a(){if(!i())return r;var t="undefined"!==typeof document.dir?document.dir:document.getElementsByTagName("html")[0].getAttribute("dir");return t}function s(t,e){o?window.addEventListener(t,e):e()}function u(t,e){o&&window.removeEventListener(t,e)}},"1ec9":function(t,e,n){var r=n("f772"),i=n("e53d").document,o=r(i)&&r(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),i=n("32e9"),o=n("79e5"),a=n("be13"),s=n("2b4c"),u=n("520a"),c=s("species"),l=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var d=s(t),p=!o((function(){var e={};return e[d]=function(){return 7},7!=""[t](e)})),h=p?!o((function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[c]=function(){return n}),n[d](""),!e})):void 0;if(!p||!h||"replace"===t&&!l||"split"===t&&!f){var v=/./[d],g=n(a,d,""[t],(function(t,e,n,r,i){return e.exec===u?p&&!i?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}})),y=g[0],m=g[1];r(String.prototype,t,y),i(RegExp.prototype,d,2==e?function(t,e){return m.call(t,this,e)}:function(t){return m.call(t,this)})}}},"230e":function(t,e,n){var r=n("d3f4"),i=n("7726").document,o=r(i)&&r(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},2350:function(t,e){function n(t,e){var n=t[1]||"",i=t[3];if(!i)return n;if(e&&"function"===typeof btoa){var o=r(i),a=i.sources.map((function(t){return"/*# sourceURL="+i.sourceRoot+t+" */"}));return[n].concat(a).concat([o]).join("\n")}return[n].join("\n")}function r(t){var e=btoa(unescape(encodeURIComponent(JSON.stringify(t)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,"+e;return"/*# "+n+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=n(e,t);return e[2]?"@media "+e[2]+"{"+r+"}":r})).join("")},e.i=function(t,n){"string"===typeof t&&(t=[[null,t,""]]);for(var r={},i=0;i";e.style.display="none",n("fab2").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(i+"script"+a+"document.F=Object"+i+"/script"+a),t.close(),c=t.F;while(r--)delete c[u][o[r]];return c()};t.exports=Object.create||function(t,e){var n;return null!==t?(s[u]=r(t),n=new s,s[u]=null,n[a]=t):n=c(),void 0===e?n:i(n,e)}},"2af9":function(t,e,n){"use strict";(function(t){n.d(e,"d",(function(){return a}));n("7f7f"),n("cadf"),n("456d"),n("ac6a");var r=n("bc21");n.d(e,"a",(function(){return r["a"]}));var i=n("37c8");n.d(e,"b",(function(){return i["a"]}));var o={GridLayout:i["a"],GridItem:r["a"]};function a(t){a.installed||(a.installed=!0,Object.keys(o).forEach((function(e){t.component(e,o[e])})))}var s={install:a},u=null;"undefined"!==typeof window?u=window.Vue:"undefined"!==typeof t&&(u=t.Vue),u&&u.use(s),e["c"]=o}).call(this,n("c8ba"))},"2b4c":function(t,e,n){var r=n("5537")("wks"),i=n("ca5a"),o=n("7726").Symbol,a="function"==typeof o,s=t.exports=function(t){return r[t]||(r[t]=a&&o[t]||(a?o:i)("Symbol."+t))};s.store=r},"2cef":function(t,e,n){"use strict";t.exports=function(){var t=1;function e(){return t++}return{generate:e}}},"2d00":function(t,e){t.exports=!1},"2d95":function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},"2f21":function(t,e,n){"use strict";var r=n("79e5");t.exports=function(t,e){return!!t&&r((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},"32e9":function(t,e,n){var r=n("86cc"),i=n("4630");t.exports=n("9e1e")?function(t,e,n){return r.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},"35e8":function(t,e,n){var r=n("d9f6"),i=n("aebd");t.exports=n("8e60")?function(t,e,n){return r.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},"37c8":function(t,e,n){"use strict";var r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"item",staticClass:"vue-grid-layout",style:t.mergedStyle},[t._t("default"),n("grid-item",{directives:[{name:"show",rawName:"v-show",value:t.isDragging,expression:"isDragging"}],staticClass:"vue-grid-placeholder",attrs:{x:t.placeholder.x,y:t.placeholder.y,w:t.placeholder.w,h:t.placeholder.h,i:t.placeholder.i}})],2)},i=[],o=(n("8e6e"),n("cadf"),n("456d"),n("f751"),n("fca0"),n("ac6a"),n("85f2")),a=n.n(o);function s(t,e,n){return e in t?a()(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}n("c5f6");var u=n("8bbf"),c=n.n(u),l=n("a2b6");n("55dd");function f(t,e){for(var n=h(t),r=n[0],i=1,o=n.length;it[a]&&(r=a)}return r}function d(t,e){if(!e[t])throw new Error("ResponsiveGridLayout: `cols` entry for breakpoint "+t+" is missing!");return e[t]}function p(t,e,n,r,i,o,a){if(e[r])return Object(l["b"])(e[r]);for(var s=t,u=h(n),c=u.slice(u.indexOf(r)),f=0,d=c.length;f0&&(this.layout.length>this.originalLayout.length?this.originalLayout=this.originalLayout.concat(t):this.originalLayout=this.originalLayout.filter((function(e){return!t.some((function(t){return e.i===t.i}))}))),this.lastLayoutLength=this.layout.length,this.initResponsiveFeatures()}Object(l["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("updateWidth",this.width),this.updateHeight(),this.$emit("layout-updated",this.layout)}},updateHeight:function(){this.mergedStyle={height:this.containerHeight()}},onWindowResize:function(){null!==this.$refs&&null!==this.$refs.item&&void 0!==this.$refs.item&&(this.width=this.$refs.item.offsetWidth),this.eventBus.$emit("resizeEvent")},containerHeight:function(){if(this.autoSize){var t=Object(l["a"])(this.layout)*(this.rowHeight+this.margin[1])+this.margin[1]+"px";return t}},dragEvent:function(t,e,n,r,i,o){var a=Object(l["f"])(this.layout,e);void 0!==a&&null!==a||(a={x:0,y:0}),"dragmove"===t||"dragstart"===t?(this.placeholder.i=e,this.placeholder.x=a.x,this.placeholder.y=a.y,this.placeholder.w=o,this.placeholder.h=i,this.$nextTick((function(){this.isDragging=!0})),this.eventBus.$emit("updateWidth",this.width)):this.$nextTick((function(){this.isDragging=!1})),this.layout=Object(l["g"])(this.layout,a,n,r,!0,this.preventCollision),Object(l["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("compact"),this.updateHeight(),"dragend"===t&&this.$emit("layout-updated",this.layout)},resizeEvent:function(t,e,n,r,i,o){var a,s=Object(l["f"])(this.layout,e);if(void 0!==s&&null!==s||(s={h:0,w:0}),this.preventCollision){var u=Object(l["e"])(this.layout,m({},s,{w:o,h:i})).filter((function(t){return t.i!==s.i}));if(a=u.length>0,a){var c=1/0,f=1/0;u.forEach((function(t){t.x>s.x&&(c=Math.min(c,t.x)),t.y>s.y&&(f=Math.min(f,t.y))})),Number.isFinite(c)&&(s.w=c-s.x),Number.isFinite(f)&&(s.h=f-s.y)}}a||(s.w=o,s.h=i),"resizestart"===t||"resizemove"===t?(this.placeholder.i=e,this.placeholder.x=n,this.placeholder.y=r,this.placeholder.w=s.w,this.placeholder.h=s.h,this.$nextTick((function(){this.isDragging=!0})),this.eventBus.$emit("updateWidth",this.width)):this.$nextTick((function(){this.isDragging=!1})),this.responsive&&this.responsiveGridLayout(),Object(l["c"])(this.layout,this.verticalCompact),this.eventBus.$emit("compact"),this.updateHeight(),"resizeend"===t&&this.$emit("layout-updated",this.layout)},responsiveGridLayout:function(){var t=f(this.breakpoints,this.width),e=d(t,this.cols);null==this.lastBreakpoint||this.layouts[this.lastBreakpoint]||(this.layouts[this.lastBreakpoint]=Object(l["b"])(this.layout));var n=p(this.originalLayout,this.layouts,this.breakpoints,t,this.lastBreakpoint,e,this.verticalCompact);this.layouts[t]=n,this.lastBreakpoint!==t&&this.$emit("breakpoint-changed",t,n),this.$emit("update:layout",n),this.lastBreakpoint=t,this.eventBus.$emit("setColNum",d(t,this.cols))},initResponsiveFeatures:function(){this.layouts=Object.assign({},this.responsiveLayouts)},findDifference:function(t,e){var n=t.filter((function(t){return!e.some((function(e){return t.i===e.i}))})),r=e.filter((function(e){return!t.some((function(t){return e.i===t.i}))}));return n.concat(r)}}},w=x,S=(n("e279"),n("2877")),O=Object(S["a"])(w,r,i,!1,null,null,null);e["a"]=O.exports},"38fd":function(t,e,n){var r=n("69a8"),i=n("4bf8"),o=n("613b")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),r(t,o)?t[o]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},"41a0":function(t,e,n){"use strict";var r=n("2aeb"),i=n("4630"),o=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(a,{next:i(1,n)}),o(t,e+" Iterator")}},"454f":function(t,e,n){n("46a7");var r=n("584a").Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},"456d":function(t,e,n){var r=n("4bf8"),i=n("0d58");n("5eda")("keys",(function(){return function(t){return i(r(t))}}))},4588:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},4630:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"46a7":function(t,e,n){var r=n("63b6");r(r.S+r.F*!n("8e60"),"Object",{defineProperty:n("d9f6").f})},4917:function(t,e,n){"use strict";var r=n("cb7c"),i=n("9def"),o=n("0390"),a=n("5f1b");n("214f")("match",1,(function(t,e,n,s){return[function(n){var r=t(this),i=void 0==n?void 0:n[e];return void 0!==i?i.call(n,r):new RegExp(n)[e](String(r))},function(t){var e=s(n,t,this);if(e.done)return e.value;var u=r(t),c=String(this);if(!u.global)return a(u,c);var l=u.unicode;u.lastIndex=0;var f,d=[],p=0;while(null!==(f=a(u,c))){var h=String(f[0]);d[p]=h,""===h&&(u.lastIndex=o(c,i(u.lastIndex),l)),p++}return 0===p?null:d}]}))},"499e":function(t,e,n){"use strict";function r(t,e){for(var n=[],r={},i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var a=[];for(i=0;i=m&&(n=i);else n=i}else n=i}var h,g,y,m;return n},S.matchesUpTo=function(t,e,n){for(;o.default.element(t);){if(_(t,e))return!0;if((t=O(t))===n)return _(t,e)}return!1},S.getActualElement=function(t){return t.correspondingUseElement||t},S.getScrollXY=j,S.getElementClientRect=M,S.getElementRect=function(t){var n=M(t);if(!b.default.isIOS7&&n){var r=j(e.getWindow(t));n.left+=r.x,n.right+=r.x,n.top+=r.y,n.bottom+=r.y}return n},S.getPath=function(t){for(var e=[];t;)e.push(t),t=O(t);return e},S.trySelector=function(t){return!!o.default.string(t)&&(v.default.document.querySelector(t),!0)};var E=function(t){return t.parentNode||t.host};function P(t,e){for(var n,r=[],i=t;(n=E(i))&&i!==e&&n!==i.ownerDocument;)r.unshift(i),i=n;return r}function j(t){return{x:(t=t||e.window).scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function M(t){var e=t instanceof v.default.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}var T={};Object.defineProperty(T,"__esModule",{value:!0}),T.default=function(t,e){for(var n in e)t[n]=e[n];return t};var k={};function z(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n1?G(e):e[0];F(r,t.page),X(r,t.client),t.timeStamp=n},W.getTouchPair=Y,W.pointerAverage=G,W.touchBBox=function(t){if(!t.length)return null;var e=Y(t),n=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY),i=Math.max(e[0].pageX,e[1].pageX),o=Math.max(e[0].pageY,e[1].pageY);return{x:n,y:r,left:n,top:r,right:i,bottom:o,width:i-n,height:o-r}},W.touchDistance=function(t,e){var n=e+"X",r=e+"Y",i=Y(t),o=i[0][n]-i[1][n],a=i[0][r]-i[1][r];return(0,C.default)(o,a)},W.touchAngle=function(t,e){var n=e+"X",r=e+"Y",i=Y(t),o=i[1][n]-i[0][n],a=i[1][r]-i[0][r];return 180*Math.atan2(a,o)/Math.PI},W.getPointerType=function(t){return o.default.string(t.pointerType)?t.pointerType:o.default.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type)||t instanceof v.default.Touch?"touch":"mouse"},W.getEventTargets=function(t){var e=o.default.func(t.composedPath)?t.composedPath():t.path;return[S.getActualElement(e?e[0]:t.target),S.getActualElement(t.currentTarget)]},W.newCoords=function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},W.coordsToEvent=function(t){return{coords:t,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons},preventDefault:function(){}}},Object.defineProperty(W,"pointerExtend",{enumerable:!0,get:function(){return H.default}});var V={};function U(t,e){for(var n=0;ns.left&&f.xs.top&&f.y=s.left&&v<=s.right&&g>=s.top&&g<=s.bottom}if(h&&o.default.number(c)){var y=Math.max(0,Math.min(s.right,h.right)-Math.max(s.left,h.left))*Math.max(0,Math.min(s.bottom,h.bottom)-Math.max(s.top,h.top))/(h.width*h.height);u=y>=c}return t.options.drop.checker&&(u=t.options.drop.checker(e,n,u,t,a,r,i)),u}(this,t,e,n,r,i,a)},n.dynamicDrop=function(e){return o.default.bool(e)?(t.dynamicDrop=e,n):t.dynamicDrop},(0,T.default)(e.phaselessTypes,{dragenter:!0,dragleave:!0,dropactivate:!0,dropdeactivate:!0,dropmove:!0,drop:!0}),e.methodDict.drop="dropzone",t.dynamicDrop=!1,i.actions.drop=ht.defaults},listeners:{"interactions:before-action-start":function(t){var e=t.interaction;"drag"===e.prepared.name&&(e.dropState={cur:{dropzone:null,element:null},prev:{dropzone:null,element:null},rejected:null,events:null,activeDrops:[]})},"interactions:after-action-start":function(t,e){var n=t.interaction,r=(t.event,t.iEvent);if("drag"===n.prepared.name){var i=n.dropState;i.activeDrops=null,i.events=null,i.activeDrops=ct(e,n.element),i.events=ft(n,0,r),i.events.activate&&(ut(i.activeDrops,i.events.activate),e.fire("actions/drop:start",{interaction:n,dragEvent:r}))}},"interactions:action-move":pt,"interactions:after-action-move":function(t,e){var n=t.interaction,r=t.iEvent;"drag"===n.prepared.name&&(dt(n,n.dropState.events),e.fire("actions/drop:move",{interaction:n,dragEvent:r}),n.dropState.events={})},"interactions:action-end":function(t,e){if("drag"===t.interaction.prepared.name){var n=t.interaction,r=t.iEvent;pt(t,e),dt(n,n.dropState.events),e.fire("actions/drop:end",{interaction:n,dragEvent:r})}},"interactions:stop":function(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.dropState;n&&(n.activeDrops=null,n.events=null,n.cur.dropzone=null,n.cur.element=null,n.prev.dropzone=null,n.prev.element=null,n.rejected=!1)}}},getActiveDrops:ct,getDrop:lt,getDropEvents:ft,fireDropEvents:dt,defaults:{enabled:!1,accept:null,overlap:"pointer"}},vt=ht;st.default=vt;var gt={};function yt(t){var e=t.interaction,n=t.iEvent,r=t.phase;if("gesture"===e.prepared.name){var i=e.pointers.map((function(t){return t.pointer})),a="start"===r,s="end"===r,u=e.interactable.options.deltaSource;if(n.touches=[i[0],i[1]],a)n.distance=W.touchDistance(i,u),n.box=W.touchBBox(i),n.scale=1,n.ds=0,n.angle=W.touchAngle(i,u),n.da=0,e.gesture.startDistance=n.distance,e.gesture.startAngle=n.angle;else if(s){var c=e.prevEvent;n.distance=c.distance,n.box=c.box,n.scale=c.scale,n.ds=0,n.angle=c.angle,n.da=0}else n.distance=W.touchDistance(i,u),n.box=W.touchBBox(i),n.scale=n.distance/e.gesture.startDistance,n.angle=W.touchAngle(i,u),n.ds=n.scale-e.gesture.scale,n.da=n.angle-e.gesture.angle;e.gesture.distance=n.distance,e.gesture.angle=n.angle,o.default.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(e.gesture.scale=n.scale)}}Object.defineProperty(gt,"__esModule",{value:!0}),gt.default=void 0;var mt={id:"actions/gesture",before:["actions/drag","actions/resize"],install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.gesturable=function(t){return o.default.object(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):o.default.bool(t)?(this.options.gesture.enabled=t,this):this.options.gesture},e.map.gesture=mt,e.methodDict.gesture="gesturable",r.actions.gesture=mt.defaults},listeners:{"interactions:action-start":yt,"interactions:action-move":yt,"interactions:action-end":yt,"interactions:new":function(t){t.interaction.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}},"auto-start:check":function(t){if(!(t.interaction.pointers.length<2)){var e=t.interactable.options.gesture;if(e&&e.enabled)return t.action={name:"gesture"},!1}}},defaults:{},getCursor:function(){return""}},bt=mt;gt.default=bt;var xt={};function wt(t,e,n,r,i,a,s){if(!e)return!1;if(!0===e){var u=o.default.number(a.width)?a.width:a.right-a.left,c=o.default.number(a.height)?a.height:a.bottom-a.top;if(s=Math.min(s,Math.abs(("left"===t||"right"===t?u:c)/2)),u<0&&("left"===t?t="right":"right"===t&&(t="left")),c<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return n.x<(u>=0?a.left:a.right)+s;if("top"===t)return n.y<(c>=0?a.top:a.bottom)+s;if("right"===t)return n.x>(u>=0?a.right:a.left)-s;if("bottom"===t)return n.y>(c>=0?a.bottom:a.top)-s}return!!o.default.element(r)&&(o.default.element(e)?e===r:S.matchesUpTo(r,e,i))}function St(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.resizeAxes){var r=e;n.interactable.options.resize.square?("y"===n.resizeAxes?r.delta.x=r.delta.y:r.delta.y=r.delta.x,r.axes="xy"):(r.axes=n.resizeAxes,"x"===n.resizeAxes?r.delta.y=0:"y"===n.resizeAxes&&(r.delta.x=0))}}Object.defineProperty(xt,"__esModule",{value:!0}),xt.default=void 0;var Ot={id:"actions/resize",before:["actions/drag"],install:function(t){var e=t.actions,n=t.browser,r=t.Interactable,i=t.defaults;Ot.cursors=function(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}(n),Ot.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(e){return function(t,e,n){return o.default.object(e)?(t.options.resize.enabled=!1!==e.enabled,t.setPerAction("resize",e),t.setOnEvents("resize",e),o.default.string(e.axis)&&/^x$|^y$|^xy$/.test(e.axis)?t.options.resize.axis=e.axis:null===e.axis&&(t.options.resize.axis=n.defaults.actions.resize.axis),o.default.bool(e.preserveAspectRatio)?t.options.resize.preserveAspectRatio=e.preserveAspectRatio:o.default.bool(e.square)&&(t.options.resize.square=e.square),t):o.default.bool(e)?(t.options.resize.enabled=e,t):t.options.resize}(this,e,t)},e.map.resize=Ot,e.methodDict.resize="resizable",i.actions.resize=Ot.defaults},listeners:{"interactions:new":function(t){t.interaction.resizeAxes="xy"},"interactions:action-start":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,i=n.rect;n._rects={start:(0,T.default)({},i),corrected:(0,T.default)({},i),previous:(0,T.default)({},i),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}}(t),St(t)},"interactions:action-move":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,i=n.interactable.options.resize.invert,o="reposition"===i||"negate"===i,a=n.rect,s=n._rects,u=s.start,c=s.corrected,l=s.delta,f=s.previous;if((0,T.default)(f,c),o){if((0,T.default)(c,a),"reposition"===i){if(c.top>c.bottom){var d=c.top;c.top=c.bottom,c.bottom=d}if(c.left>c.right){var p=c.left;c.left=c.right,c.right=p}}}else c.top=Math.min(a.top,u.bottom),c.bottom=Math.max(a.bottom,u.top),c.left=Math.min(a.left,u.right),c.right=Math.max(a.right,u.left);for(var h in c.width=c.right-c.left,c.height=c.bottom-c.top,c)l[h]=c[h]-f[h];r.edges=n.prepared.edges,r.rect=c,r.deltaRect=l}}(t),St(t)},"interactions:action-end":function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e;r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}},"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.element,i=t.rect,a=t.buttons;if(i){var s=(0,T.default)({},e.coords.cur.page),u=n.options.resize;if(u&&u.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(a&u.mouseButtons))){if(o.default.object(u.edges)){var c={left:!1,right:!1,top:!1,bottom:!1};for(var l in c)c[l]=wt(l,u.edges[l],s,e._latestPointer.eventTarget,r,i,u.margin||Ot.defaultMargin);c.left=c.left&&!c.right,c.top=c.top&&!c.bottom,(c.left||c.right||c.top||c.bottom)&&(t.action={name:"resize",edges:c})}else{var f="y"!==u.axis&&s.x>i.right-Ot.defaultMargin,d="x"!==u.axis&&s.y>i.bottom-Ot.defaultMargin;(f||d)&&(t.action={name:"resize",axes:(f?"x":"")+(d?"y":"")})}return!t.action&&void 0}}}},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor:function(t){var e=t.edges,n=t.axis,r=t.name,i=Ot.cursors,o=null;if(n)o=i[r+n];else if(e){for(var a="",s=["top","bottom","left","right"],u=0;u=1){var l={x:At.x*c,y:At.y*c};if(l.x||l.y){var f=Ct(a);o.default.window(a)?a.scrollBy(l.x,l.y):a&&(a.scrollLeft+=l.x,a.scrollTop+=l.y);var d=Ct(a),p={x:d.x-f.x,y:d.y-f.y};(p.x||p.y)&&e.fire({type:"autoscroll",target:n,interactable:e,delta:p,interaction:t,container:a})}At.prevTime=s}At.isScrolling&&(Mt.default.cancel(At.i),At.i=Mt.default.request(At.scroll))},check:function(t,e){var n=t.options;return n[e].autoScroll&&n[e].autoScroll.enabled},onInteractionMove:function(t){var e=t.interaction,n=t.pointer;if(e.interacting()&&At.check(e.interactable,e.prepared.name))if(e.simulation)At.x=At.y=0;else{var r,i,a,s,u=e.interactable,c=e.element,l=e.prepared.name,f=u.options[l].autoScroll,d=Dt(f.container,u,c);if(o.default.window(d))s=n.clientXd.innerWidth-At.margin,a=n.clientY>d.innerHeight-At.margin;else{var p=S.getElementClientRect(d);s=n.clientXp.right-At.margin,a=n.clientY>p.bottom-At.margin}At.x=i?1:s?-1:0,At.y=a?1:r?-1:0,At.isScrolling||(At.margin=f.margin,At.speed=f.speed,At.start(e))}}};function Dt(t,n,r){return(o.default.string(t)?(0,k.getStringOptionResult)(t,n,r):t)||(0,e.getWindow)(r)}function Ct(t){return o.default.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}var Ht={id:"auto-scroll",install:function(t){var e=t.defaults,n=t.actions;t.autoScroll=At,At.now=function(){return t.now()},n.phaselessTypes.autoscroll=!0,e.perAction.autoScroll=At.defaults},listeners:{"interactions:new":function(t){t.interaction.autoScroll=null},"interactions:destroy":function(t){t.interaction.autoScroll=null,At.stop(),At.interaction&&(At.interaction=null)},"interactions:stop":At.stop,"interactions:action-move":function(t){return At.onInteractionMove(t)}}};Rt.default=Ht;var Lt={};Object.defineProperty(Lt,"__esModule",{value:!0}),Lt.warnOnce=function(t,n){var r=!1;return function(){return r||(e.window.console.warn(n),r=!0),t.apply(this,arguments)}},Lt.copyAction=function(t,e){return t.name=e.name,t.axis=e.axis,t.edges=e.edges,t};var Nt={};function Wt(t){return o.default.bool(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor}function Bt(t){return o.default.func(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker}Object.defineProperty(Nt,"__esModule",{value:!0}),Nt.default=void 0;var $t={id:"auto-start/interactableMethods",install:function(t){var e=t.Interactable;e.prototype.getAction=function(e,n,r,i){var o=function(t,e,n,r,i){var o=t.getRect(r),a=e.buttons||{0:1,1:4,3:8,4:16}[e.button],s={action:null,interactable:t,interaction:n,element:r,rect:o,buttons:a};return i.fire("auto-start:check",s),s.action}(this,n,r,i,t);return this.options.actionChecker?this.options.actionChecker(e,n,o,this,i,r):o},e.prototype.ignoreFrom=(0,Lt.warnOnce)((function(t){return this._backCompatOption("ignoreFrom",t)}),"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),e.prototype.allowFrom=(0,Lt.warnOnce)((function(t){return this._backCompatOption("allowFrom",t)}),"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),e.prototype.actionChecker=Bt,e.prototype.styleCursor=Wt}};Nt.default=$t;var Ft={};function Xt(t,e,n,r,i){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&Ut(e,n,t,i)?t:null}function Yt(t,e,n,r,i,o,a){for(var s=0,u=r.length;s=s)return!1;if(d.interactable===t){if((c+=p===n.name?1:0)>=o)return!1;if(d.element===e&&(l++,p===n.name&&l>=a))return!1}}}return s>0}function qt(t,e){return o.default.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function Zt(t,e,n){var r=n.autoStart.cursorElement;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function Kt(t,e){var n=t.interactable,r=t.element,i=t.prepared;if("mouse"===t.pointerType&&n&&n.options.styleCursor){var a="";if(i.name){var s=n.options[i.name].cursorChecker;a=o.default.func(s)?s(i,n,r,t._interacting):e.actions.map[i.name].getCursor(i)}Zt(t.element,a||"",e)}else e.autoStart.cursorElement&&Zt(e.autoStart.cursorElement,"",e)}Object.defineProperty(Ft,"__esModule",{value:!0}),Ft.default=void 0;var Jt={id:"auto-start/base",before:["actions"],install:function(t){var e=t.interactStatic,n=t.defaults;t.usePlugin(Nt.default),n.base.actionChecker=null,n.base.styleCursor=!0,(0,T.default)(n.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),e.maxInteractions=function(e){return qt(e,t)},t.autoStart={maxInteractions:1/0,withinInteractionLimit:Ut,cursorElement:null}},listeners:{"interactions:down":function(t,e){var n=t.interaction,r=t.pointer,i=t.event,o=t.eventTarget;n.interacting()||Vt(n,Gt(n,r,i,o,e),e)},"interactions:move":function(t,e){!function(t,e){var n=t.interaction,r=t.pointer,i=t.event,o=t.eventTarget;"mouse"!==n.pointerType||n.pointerIsDown||n.interacting()||Vt(n,Gt(n,r,i,o,e),e)}(t,e),function(t,e){var n=t.interaction;if(n.pointerIsDown&&!n.interacting()&&n.pointerWasMoved&&n.prepared.name){e.fire("autoStart:before-start",t);var r=n.interactable,i=n.prepared.name;i&&r&&(r.options[i].manualStart||!Ut(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),Kt(n,e)))}}(t,e)},"interactions:stop":function(t,e){var n=t.interaction,r=n.interactable;r&&r.options.styleCursor&&Zt(n.element,"",e)}},maxInteractions:qt,withinInteractionLimit:Ut,validateAction:Xt};Ft.default=Jt;var Qt={};Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.default=void 0;var te={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":function(t,e){var n=t.interaction,r=t.eventTarget,i=t.dx,a=t.dy;if("drag"===n.prepared.name){var s=Math.abs(i),u=Math.abs(a),c=n.interactable.options.drag,l=c.startAxis,f=s>u?"x":s0&&(e.autoStartHoldTimer=setTimeout((function(){e.start(e.prepared,e.interactable,e.element)}),n))},"interactions:move":function(t){var e=t.interaction,n=t.duplicate;e.autoStartHoldTimer&&e.pointerWasMoved&&!n&&(clearTimeout(e.autoStartHoldTimer),e.autoStartHoldTimer=null)},"autoStart:before-start":function(t){var e=t.interaction;ne(e)>0&&(e.prepared.name=null)}},getHoldDuration:ne};ee.default=re;var ie={};Object.defineProperty(ie,"__esModule",{value:!0}),ie.default=void 0;var oe={id:"auto-start",install:function(t){t.usePlugin(Ft.default),t.usePlugin(ee.default),t.usePlugin(Qt.default)}};ie.default=oe;var ae={};Object.defineProperty(ae,"__esModule",{value:!0}),ae.default=void 0,ae.default={};var se={};function ue(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):o.default.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault}function ce(t){var e=t.interaction,n=t.event;e.interactable&&e.interactable.checkAndPreventDefault(n)}function le(t){var n=t.Interactable;n.prototype.preventDefault=ue,n.prototype.checkAndPreventDefault=function(n){return function(t,n,r){var i=t.options.preventDefault;if("never"!==i)if("always"!==i){if(n.events.supportsPassive&&/^touch(start|move)$/.test(r.type)){var a=(0,e.getWindow)(r.target).document,s=n.getDocOptions(a);if(!s||!s.events||!1!==s.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(r.type)||o.default.element(r.target)&&(0,S.matchesSelector)(r.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||r.preventDefault()}else r.preventDefault()}(this,t,n)},t.interactions.docEvents.push({type:"dragstart",listener:function(e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n1&&void 0!==arguments[1]?arguments[1]:{},n=e.logger,r=t.Interactable,i=t.defaults;t.logger=n||console,i.base.devTools={ignore:{}},r.prototype.devTools=function(t){return t?((0,T.default)(this.options.devTools,t),this):this.options.devTools}},listeners:{"interactions:action-start":function(t,e){for(var n=t.interaction,r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n150)return null;var e=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;e<0&&(e+=360);var n=112.5<=e&&e<247.5,r=202.5<=e&&e<337.5;return{up:r,down:!r&&22.5<=e&&e<157.5,left:n,right:!n&&(292.5<=e||e<67.5),angle:e,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}}])&&Ce(e.prototype,n),r&&Ce(e,r),o}(V.BaseEvent);Ae.InteractEvent=$e,Object.defineProperties($e.prototype,{pageX:{get:function(){return this.page.x},set:function(t){this.page.x=t}},pageY:{get:function(){return this.page.y},set:function(t){this.page.y=t}},clientX:{get:function(){return this.client.x},set:function(t){this.client.x=t}},clientY:{get:function(){return this.client.y},set:function(t){this.client.y=t}},dx:{get:function(){return this.delta.x},set:function(t){this.delta.x=t}},dy:{get:function(){return this.delta.y},set:function(t){this.delta.y=t}},velocityX:{get:function(){return this.velocity.x},set:function(t){this.velocity.x=t}},velocityY:{get:function(){return this.velocity.y},set:function(t){this.velocity.y=t}}});var Fe={};Object.defineProperty(Fe,"__esModule",{value:!0}),Fe.PointerInfo=void 0,Fe.PointerInfo=function t(e,n,r,i,o){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.id=void 0,this.pointer=void 0,this.event=void 0,this.downTime=void 0,this.downTarget=void 0,this.id=e,this.pointer=n,this.event=r,this.downTime=i,this.downTarget=o};var Xe,Ye,Ge={};function Ve(t,e){for(var n=0;nthis.pointerMoveTolerance);var a=this.getPointerIndex(t),s={pointer:t,pointerIndex:a,pointerInfo:this.pointers[a],event:e,type:"move",eventTarget:n,dx:r,dy:i,duplicate:o,interaction:this};o||W.setCoordVelocity(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),o||this.simulation||(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&W.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(t){t&&t.event||W.setZeroCoords(this.coords.delta),(t=(0,T.default)({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},t||{})).phase="move",this._doPhase(t)}},{key:"pointerUp",value:function(t,e,n,r){var i=this.getPointerIndex(t);-1===i&&(i=this.updatePointer(t,e,n,!1));var o=/cancel$/i.test(e.type)?"cancel":"up";this._scopeFire("interactions:".concat(o),{pointer:t,pointerIndex:i,pointerInfo:this.pointers[i],event:e,eventTarget:n,type:o,curEventTarget:r,interaction:this}),this.simulation||this.end(e),this.removePointer(t,e)}},{key:"documentBlur",value:function(t){this.end(t),this._scopeFire("interactions:blur",{event:t,type:"blur",interaction:this})}},{key:"end",value:function(t){var e;this._ending=!0,t=t||this._latestPointer.event,this.interacting()&&(e=this._doPhase({event:t,interaction:this,phase:"end"})),this._ending=!1,!0===e&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(t){var e=W.getPointerId(t);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:Z.findIndex(this.pointers,(function(t){return t.id===e}))}},{key:"getPointerInfo",value:function(t){return this.pointers[this.getPointerIndex(t)]}},{key:"updatePointer",value:function(t,e,n,r){var i=W.getPointerId(t),o=this.getPointerIndex(t),a=this.pointers[o];return r=!1!==r&&(r||/(down|start)$/i.test(e.type)),a?a.pointer=t:(a=new Fe.PointerInfo(i,t,e,null,null),o=this.pointers.length,this.pointers.push(a)),W.setCoords(this.coords.cur,this.pointers.map((function(t){return t.pointer})),this._now()),W.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),r&&(this.pointerIsDown=!0,a.downTime=this.coords.cur.timeStamp,a.downTarget=n,W.pointerExtend(this.downPointer,t),this.interacting()||(W.copyCoords(this.coords.start,this.coords.cur),W.copyCoords(this.coords.prev,this.coords.cur),this.downEvent=e,this.pointerWasMoved=!1)),this._updateLatestPointer(t,e,n),this._scopeFire("interactions:update-pointer",{pointer:t,event:e,eventTarget:n,down:r,pointerInfo:a,pointerIndex:o,interaction:this}),o}},{key:"removePointer",value:function(t,e){var n=this.getPointerIndex(t);if(-1!==n){var r=this.pointers[n];this._scopeFire("interactions:remove-pointer",{pointer:t,event:e,eventTarget:null,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1),this.pointerIsDown=!1}}},{key:"_updateLatestPointer",value:function(t,e,n){this._latestPointer.pointer=t,this._latestPointer.event=e,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(t,e,n,r){return new Ae.InteractEvent(this,t,this.prepared.name,e,this.element,n,r)}},{key:"_fireEvent",value:function(t){this.interactable.fire(t),(!this.prevEvent||t.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=t)}},{key:"_doPhase",value:function(t){var e=t.event,n=t.phase,r=t.preEnd,i=t.type,o=this.rect;if(o&&"move"===n&&(k.addEdges(this.edges,o,this.coords.delta[this.interactable.options.deltaSource]),o.width=o.right-o.left,o.height=o.bottom-o.top),!1===this._scopeFire("interactions:before-action-".concat(n),t))return!1;var a=t.iEvent=this._createPreparedEvent(e,n,r,i);return this._scopeFire("interactions:action-".concat(n),t),"start"===n&&(this.prevEvent=a),this._fireEvent(a),this._scopeFire("interactions:after-action-".concat(n),t),!0}},{key:"_now",value:function(){return Date.now()}}]),t}();Ge.Interaction=Ze;var Ke=Ze;Ge.default=Ke;var Je={};function Qe(t){t.pointerIsDown&&(rn(t.coords.cur,t.offset.total),t.offset.pending.x=0,t.offset.pending.y=0)}function tn(t){en(t.interaction)}function en(t){if(!function(t){return!(!t.offset.pending.x&&!t.offset.pending.y)}(t))return!1;var e=t.offset.pending;return rn(t.coords.cur,e),rn(t.coords.delta,e),k.addEdges(t.edges,t.rect,e),e.x=0,e.y=0,!0}function nn(t){var e=t.x,n=t.y;this.offset.pending.x+=e,this.offset.pending.y+=n,this.offset.total.x+=e,this.offset.total.y+=n}function rn(t,e){var n=t.page,r=t.client,i=e.x,o=e.y;n.x+=i,n.y+=o,r.x+=i,r.y+=o}Object.defineProperty(Je,"__esModule",{value:!0}),Je.addTotal=Qe,Je.applyPending=en,Je.default=void 0,Ge._ProxyMethods.offsetBy="";var on={id:"offset",before:["modifiers","pointer-events","actions","inertia"],install:function(t){t.Interaction.prototype.offsetBy=nn},listeners:{"interactions:new":function(t){t.interaction.offset={total:{x:0,y:0},pending:{x:0,y:0}}},"interactions:update-pointer":function(t){return Qe(t.interaction)},"interactions:before-action-start":tn,"interactions:before-action-move":tn,"interactions:before-action-end":function(t){var e=t.interaction;if(en(e))return e.move({offset:!0}),e.end(),!1},"interactions:stop":function(t){var e=t.interaction;e.offset.total.x=0,e.offset.total.y=0,e.offset.pending.x=0,e.offset.pending.y=0}}};Je.default=on;var an={};function sn(t,e){for(var n=0;nn.minSpeed&&i>n.endSpeed)this.startInertia();else{if(o.result=o.setAll(this.modifierArg),!o.result.changed)return!1;this.startSmoothEnd()}return e.modification.result.rect=null,e.offsetBy(this.targetOffset),e._doPhase({interaction:e,event:t,phase:"inertiastart"}),e.offsetBy({x:-this.targetOffset.x,y:-this.targetOffset.y}),e.modification.result.rect=null,this.active=!0,e.simulation=this,!0}},{key:"startInertia",value:function(){var t=this,e=this.interaction.coords.velocity.client,n=cn(this.interaction),r=n.resistance,i=-Math.log(n.endSpeed/this.v0)/r;this.targetOffset={x:(e.x-i)/r,y:(e.y-i)/r},this.te=i,this.lambda_v0=r/this.v0,this.one_ve_v0=1-n.endSpeed/this.v0;var o=this.modification,a=this.modifierArg;a.pageCoords={x:this.startCoords.x+this.targetOffset.x,y:this.startCoords.y+this.targetOffset.y},o.result=o.setAll(a),o.result.changed&&(this.isModified=!0,this.modifiedOffset={x:this.targetOffset.x+o.result.delta.x,y:this.targetOffset.y+o.result.delta.y}),this.onNextFrame((function(){return t.inertiaTick()}))}},{key:"startSmoothEnd",value:function(){var t=this;this.smoothEnd=!0,this.isModified=!0,this.targetOffset={x:this.modification.result.delta.x,y:this.modification.result.delta.y},this.onNextFrame((function(){return t.smoothEndTick()}))}},{key:"onNextFrame",value:function(t){var e=this;this.timeout=Mt.default.request((function(){e.active&&t()}))}},{key:"inertiaTick",value:function(){var t,e,n,r,i,o,a,s=this,u=this.interaction,c=cn(u).resistance,l=(u._now()-this.t0)/1e3;if(l=0;n--){var r=e[n],i=r.selector,a=r.context,s=r.listeners;i===this.target&&a===this._context&&e.splice(n,1);for(var u=s.length-1;u>=0;u--)this._scopeEvents.removeDelegate(this.target,this._context,t,s[u][0],s[u][1])}else this._scopeEvents.remove(this.target,"all")}}]),t}();mn.Interactable=wn;var Sn={};function On(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;a--){var p=f[a];if(p.selector===t&&p.context===e){for(var h=p.listeners,v=h.length-1;v>=0;v--){var g=jn(h[v],2),y=g[0],m=g[1],b=m.capture,x=m.passive;if(y===i&&b===l.capture&&x===l.passive){h.splice(v,1),h.length||(f.splice(a,1),s(e,r,u),s(e,r,c,!0)),d=!0;break}}if(d)break}}},delegateListener:u,delegateUseCapture:c,delegatedEvents:n,documents:r,targets:e,supportsOptions:!1,supportsPassive:!1};function a(t,n,r,o){var a=kn(o),s=Z.find(e,(function(e){return e.eventTarget===t}));s||(s={eventTarget:t,events:{}},e.push(s)),s.events[n]||(s.events[n]=[]),t.addEventListener&&!Z.contains(s.events[n],r)&&(t.addEventListener(n,r,i.supportsOptions?a:a.capture),s.events[n].push(r))}function s(t,n,r,o){var a=kn(o),u=Z.findIndex(e,(function(e){return e.eventTarget===t})),c=e[u];if(c&&c.events)if("all"!==n){var l=!1,f=c.events[n];if(f){if("all"===r){for(var d=f.length-1;d>=0;d--)s(t,n,f[d],a);return}for(var p=0;p=2)continue;if(!i.interacting()&&e===i.pointerType)return i}return null}};function Dn(t,e){return t.pointers.some((function(t){return t.id===e}))}var Cn=An;Rn.default=Cn;var Hn={};function Ln(t){return(Ln="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Nn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Wn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wn(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n=0;r--){var i=e.interactions.list[r];i.interactable===n&&(i.stop(),e.fire("interactions:destroy",{interaction:i}),i.destroy(),e.interactions.list.length>2&&e.interactions.list.splice(r,1))}}},onDocSignal:Zn,doOnInteractions:Un,methodNames:Vn};Hn.default=Kn;var Jn={};function Qn(t){return(Qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function tr(t,e,n){return(tr="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=ir(t)););return t}(t,e);if(r){var i=Object.getOwnPropertyDescriptor(r,e);return i.get?i.get.call(n):i.value}})(t,e,n||t)}function er(t,e){return(er=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function nr(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,r=ir(t);if(e){var i=ir(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return rr(this,n)}}function rr(t,e){return!e||"object"!==Qn(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function ir(t){return(ir=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function or(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ar(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=Array(e);nMath.abs(u.y),s.coords,s.rect),(0,T.default)(r,s.coords)),s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function Tr(t,e,n){var r=t.startCoords,i=t.edgeSign;e?n.y=r.y+(n.x-r.x)*i:n.x=r.x+(n.y-r.y)*i}function kr(t,e,n,r){var i=t.startRect,o=t.startCoords,a=t.ratio,s=t.edgeSign;if(e){var u=r.width/a;n.y=o.y+(u-i.height)*s}else{var c=r.height*a;n.x=o.x+(c-i.width)*s}}_r.aspectRatio=Mr;var zr=(0,ke.makeModifier)(Mr,"aspectRatio");_r.default=zr;var Ir={};Object.defineProperty(Ir,"__esModule",{value:!0}),Ir.default=void 0;var Rr=function(){};Rr._defaults={};var Ar=Rr;Ir.default=Ar;var Dr={};Object.defineProperty(Dr,"__esModule",{value:!0}),Object.defineProperty(Dr,"default",{enumerable:!0,get:function(){return Ir.default}});var Cr={};function Hr(t,e,n){return o.default.func(t)?k.resolveRectLike(t,e.interactable,e.element,[n.x,n.y,e]):k.resolveRectLike(t,e.interactable,e.element)}Object.defineProperty(Cr,"__esModule",{value:!0}),Cr.getRestrictionRect=Hr,Cr.restrict=Cr.default=void 0;var Lr={start:function(t){var e=t.rect,n=t.startOffset,r=t.state,i=t.interaction,o=t.pageCoords,a=r.options,s=a.elementRect,u=(0,T.default)({left:0,top:0,right:0,bottom:0},a.offset||{});if(e&&s){var c=Hr(a.restriction,i,o);if(c){var l=c.right-c.left-e.width,f=c.bottom-c.top-e.height;l<0&&(u.left+=l,u.right+=l),f<0&&(u.top+=f,u.bottom+=f)}u.left+=n.left-e.width*s.left,u.top+=n.top-e.height*s.top,u.right+=n.right-e.width*(1-s.right),u.bottom+=n.bottom-e.height*(1-s.bottom)}r.offset=u},set:function(t){var e=t.coords,n=t.interaction,r=t.state,i=r.options,o=r.offset,a=Hr(i.restriction,n,e);if(a){var s=k.xywhToTlbr(a);e.x=Math.max(Math.min(s.right-o.right,e.x),s.left+o.left),e.y=Math.max(Math.min(s.bottom-o.bottom,e.y),s.top+o.top)}},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};Cr.restrict=Lr;var Nr=(0,ke.makeModifier)(Lr,"restrict");Cr.default=Nr;var Wr={};Object.defineProperty(Wr,"__esModule",{value:!0}),Wr.restrictEdges=Wr.default=void 0;var Br={top:1/0,left:1/0,bottom:-1/0,right:-1/0},$r={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function Fr(t,e){for(var n=["top","left","bottom","right"],r=0;rt.length)&&(e=t.length);for(var n=0,r=Array(e);n1&&o.call(a[0],n,(function(){for(l=1;ll){var p,h=u(arguments[l++]),v=f?i(h).concat(f(h)):i(h),g=v.length,y=0;while(g>y)p=v[y++],r&&!d.call(h,p)||(n[p]=h[p])}return n}:c},7726:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"77f1":function(t,e,n){var r=n("4588"),i=Math.max,o=Math.min;t.exports=function(t,e){return t=r(t),t<0?i(t+e,0):o(t,e)}},"794b":function(t,e,n){t.exports=!n("8e60")&&!n("294c")((function(){return 7!=Object.defineProperty(n("1ec9")("div"),"a",{get:function(){return 7}}).a}))},"79aa":function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"79e5":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"7f20":function(t,e,n){var r=n("86cc").f,i=n("69a8"),o=n("2b4c")("toStringTag");t.exports=function(t,e,n){t&&!i(t=n?t:t.prototype,o)&&r(t,o,{configurable:!0,value:e})}},"7f7f":function(t,e,n){var r=n("86cc").f,i=Function.prototype,o=/^\s*function ([^ (]*)/,a="name";a in i||n("9e1e")&&r(i,a,{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(t){return""}}})},8378:function(t,e){var n=t.exports={version:"2.6.10"};"number"==typeof __e&&(__e=n)},"84f2":function(t,e){t.exports={}},"85f2":function(t,e,n){t.exports=n("454f")},"86cc":function(t,e,n){var r=n("cb7c"),i=n("c69a"),o=n("6a99"),a=Object.defineProperty;e.f=n("9e1e")?Object.defineProperty:function(t,e,n){if(r(t),e=o(e,!0),r(n),i)try{return a(t,e,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},"8b97":function(t,e,n){var r=n("d3f4"),i=n("cb7c"),o=function(t,e){if(i(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{r=n("9b43")(Function.call,n("11e9").f(Object.prototype,"__proto__").set,2),r(t,[]),e=!(t instanceof Array)}catch(i){e=!0}return function(t,n){return o(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:o}},"8bbf":function(e,n){e.exports=t},"8e60":function(t,e,n){t.exports=!n("294c")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},"8e6e":function(t,e,n){var r=n("5ca1"),i=n("990b"),o=n("6821"),a=n("11e9"),s=n("f1ae");r(r.S,"Object",{getOwnPropertyDescriptors:function(t){var e,n,r=o(t),u=a.f,c=i(r),l={},f=0;while(c.length>f)n=u(r,e=c[f++]),void 0!==n&&s(l,e,n);return l}})},9093:function(t,e,n){var r=n("ce10"),i=n("e11e").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,i)}},"990b":function(t,e,n){var r=n("9093"),i=n("2621"),o=n("cb7c"),a=n("7726").Reflect;t.exports=a&&a.ownKeys||function(t){var e=r.f(o(t)),n=i.f;return n?e.concat(n(t)):e}},"9b43":function(t,e,n){var r=n("d8e8");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,i){return t.call(e,n,r,i)}}return function(){return t.apply(e,arguments)}}},"9c6c":function(t,e,n){var r=n("2b4c")("unscopables"),i=Array.prototype;void 0==i[r]&&n("32e9")(i,r,{}),t.exports=function(t){i[r][t]=!0}},"9cbe":function(t,e,n){e=t.exports=n("2350")(!1),e.push([t.i,'.vue-grid-item{-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-transition-property:left,top,right;transition-property:left,top,right}.vue-grid-item.no-touch{-ms-touch-action:none;touch-action:none}.vue-grid-item.cssTransforms{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;left:0;right:auto}.vue-grid-item.cssTransforms.render-rtl{left:auto;right:0}.vue-grid-item.resizing{opacity:.6;z-index:3}.vue-grid-item.vue-draggable-dragging{-webkit-transition:none;transition:none;z-index:3}.vue-grid-item.vue-grid-placeholder{background:red;opacity:.2;-webkit-transition-duration:.1s;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.vue-grid-item>.vue-resizable-handle{position:absolute;width:20px;height:20px;bottom:0;right:0;background:url("data:image/svg+xml;base64,PHN2ZyBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjojZmZmZmZmMDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjYiIGhlaWdodD0iNiI+PHBhdGggZD0iTTYgNkgwVjQuMmg0LjJWMEg2djZ6IiBvcGFjaXR5PSIuMzAyIi8+PC9zdmc+");background-position:100% 100%;padding:0 3px 3px 0;background-repeat:no-repeat;background-origin:content-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:se-resize}.vue-grid-item>.vue-rtl-resizable-handle{bottom:0;left:0;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTS0xLTFoMTJ2MTJILTF6Ii8+PGc+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InVuZGVmaW5lZCIgc3Ryb2tlLWxpbmVqb2luPSJ1bmRlZmluZWQiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2U9IiMwMDAiIGZpbGw9Im5vbmUiIGQ9Ik0xNDQuODIxLTM4LjM5M2wtMjAuMzU3LTMxLjc4NSIvPjxwYXRoIHN0cm9rZT0iIzY2NiIgc3Ryb2tlLWxpbmVjYXA9InVuZGVmaW5lZCIgc3Ryb2tlLWxpbmVqb2luPSJ1bmRlZmluZWQiIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIgZD0iTS45NDctLjAxOHY5LjEyNU0tLjY1NiA5aDEwLjczIi8+PC9nPjwvc3ZnPg==);background-position:0 100%;padding-left:3px;background-repeat:no-repeat;background-origin:content-box;cursor:sw-resize;right:auto}.vue-grid-item.disable-userselect{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}',""])},"9def":function(t,e,n){var r=n("4588"),i=Math.min;t.exports=function(t){return t>0?i(r(t),9007199254740991):0}},"9e1e":function(t,e,n){t.exports=!n("79e5")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},a2b6:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i})),n.d(e,"c",(function(){return s})),n.d(e,"d",(function(){return c})),n.d(e,"f",(function(){return l})),n.d(e,"e",(function(){return d})),n.d(e,"g",(function(){return h})),n.d(e,"j",(function(){return g})),n.d(e,"k",(function(){return y})),n.d(e,"h",(function(){return m})),n.d(e,"i",(function(){return b})),n.d(e,"l",(function(){return w}));n("a481"),n("cadf"),n("456d"),n("ac6a"),n("55dd");function r(t){for(var e,n=0,r=0,i=t.length;rn&&(n=e);return n}function i(t){for(var e=Array(t.length),n=0,r=t.length;n=e.x+e.w)&&(!(t.y+t.h<=e.y)&&!(t.y>=e.y+e.h))))}function s(t,e){for(var n=p(t),r=x(t),i=Array(t.length),o=0,a=r.length;o0&&!f(t,e))e.y--;var r;while(r=f(t,e))e.y=r.y+r.h;return e}function c(t,e){for(var n=p(t),r=0,i=t.length;re.cols&&(o.x=e.cols-o.w),o.x<0&&(o.x=0,o.w=e.cols),o.static)while(f(n,o))o.y++;else n.push(o)}return t}function l(t,e){for(var n=0,r=t.length;nr;"number"===typeof n&&(e.x=n),"number"===typeof r&&(e.y=r),e.moved=!0;var c=x(t);u&&(c=c.reverse());var l=d(c,e);if(o&&l.length)return e.x=a,e.y=s,e.moved=!1,t;for(var f=0,p=l.length;fh.y&&e.y-h.y>h.h/4||(t=h.static?v(t,h,e,i):v(t,e,h,i)))}return t}function v(t,e,n,r){var i=!1;if(r){var o={x:n.x,y:n.y,w:n.w,h:n.h,i:"-1"};if(o.y=Math.max(e.y-n.h,0),!f(t,o))return h(t,n,void 0,o.y,i)}return h(t,n,void 0,n.y+1,i)}function g(t,e,n,r){var i="translate3d("+e+"px,"+t+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function y(t,e,n,r){var i="translate3d("+-1*e+"px,"+t+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function m(t,e,n,r){return{top:t+"px",left:e+"px",width:n+"px",height:r+"px",position:"absolute"}}function b(t,e,n,r){return{top:t+"px",right:e+"px",width:n+"px",height:r+"px",position:"absolute"}}function x(t){return[].concat(t).sort((function(t,e){return t.y===e.y&&t.x===e.x?0:t.y>e.y||t.y===e.y&&t.x>e.x?1:-1}))}function w(t,e){e=e||"Layout";var n=["x","y","w","h"];if(!Array.isArray(t))throw new Error(e+" must be an array!");for(var r=0,i=t.length;r]*>)/g,p=/\$([$&`']|\d\d?)/g,h=function(t){return void 0===t?t:String(t)};n("214f")("replace",2,(function(t,e,n,v){return[function(r,i){var o=t(this),a=void 0==r?void 0:r[e];return void 0!==a?a.call(r,o,i):n.call(String(o),r,i)},function(t,e){var i=v(n,t,this,e);if(i.done)return i.value;var f=r(t),d=String(this),p="function"===typeof e;p||(e=String(e));var y=f.global;if(y){var m=f.unicode;f.lastIndex=0}var b=[];while(1){var x=u(f,d);if(null===x)break;if(b.push(x),!y)break;var w=String(x[0]);""===w&&(f.lastIndex=s(d,o(f.lastIndex),m))}for(var S="",O=0,_=0;_=O&&(S+=d.slice(O,P)+z,O=P+E.length)}return S+d.slice(O)}];function g(t,e,r,o,a,s){var u=r+t.length,c=o.length,l=p;return void 0!==a&&(a=i(a),l=d),n.call(s,l,(function(n,i){var s;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,r);case"'":return e.slice(u);case"<":s=a[i.slice(1,-1)];break;default:var l=+i;if(0===l)return n;if(l>c){var d=f(l/10);return 0===d?n:d<=c?void 0===o[d-1]?i.charAt(1):o[d-1]+i.charAt(1):n}s=o[l-1]}return void 0===s?"":s}))}}))},aa77:function(t,e,n){var r=n("5ca1"),i=n("be13"),o=n("79e5"),a=n("fdef"),s="["+a+"]",u="​…",c=RegExp("^"+s+s+"*"),l=RegExp(s+s+"*$"),f=function(t,e,n){var i={},s=o((function(){return!!a[t]()||u[t]()!=u})),c=i[t]=s?e(d):a[t];n&&(i[n]=c),r(r.P+r.F*s,"String",i)},d=f.trim=function(t,e){return t=String(i(t)),1&e&&(t=t.replace(c,"")),2&e&&(t=t.replace(l,"")),t};t.exports=f},abb4:function(t,e,n){"use strict";t.exports=function(t){function e(){}var n={log:e,warn:e,error:e};if(!t&&window.console){var r=function(t,e){t[e]=function(){var t=console[e];if(t.apply)t.apply(console,arguments);else for(var n=0;nthis.cols?(this.innerX=0,this.innerW=this.w>this.cols?this.cols:this.w):(this.innerX=this.x,this.innerW=this.w);var t,e=this.calcPosition(this.innerX,this.innerY,this.innerW,this.innerH);this.isDragging&&(e.top=this.dragging.top,this.renderRtl?e.right=this.dragging.left:e.left=this.dragging.left),this.isResizing&&(e.width=this.resizing.width,e.height=this.resizing.height),t=this.useCssTransforms?this.renderRtl?Object(o["k"])(e.top,e.right,e.width,e.height):Object(o["j"])(e.top,e.left,e.width,e.height):this.renderRtl?Object(o["i"])(e.top,e.right,e.width,e.height):Object(o["h"])(e.top,e.left,e.width,e.height),this.style=t},emitContainerResized:function(){for(var t={},e=0,n=["width","height"];ethis.maxW&&(n.w=this.maxW),n.hthis.maxH&&(n.h=this.maxH),n.h<1&&(n.h=1),n.w<1&&(n.w=1),this.lastW=r,this.lastH=i,this.innerW===n.w&&this.innerH===n.h||this.$emit("resize",this.i,n.h,n.w,o.height,o.width),"resizeend"!==t.type||this.previousW===this.innerW&&this.previousH===this.innerH||this.$emit("resized",this.i,n.h,n.w,o.height,o.width),this.eventBus.$emit("resizeEvent",t.type,this.i,this.innerX,this.innerY,n.h,n.w)}}},handleDrag:function(t){if(!this.static&&!this.isResizing){var e=a(t);if(null!==e){var n,r=e.x,i=e.y,o={top:0,left:0};switch(t.type){case"dragstart":this.previousX=this.innerX,this.previousY=this.innerY;var s=t.target.offsetParent.getBoundingClientRect(),c=t.target.getBoundingClientRect();this.renderRtl?o.left=-1*(c.right-s.right):o.left=c.left-s.left,o.top=c.top-s.top,this.dragging=o,this.isDragging=!0;break;case"dragend":if(!this.isDragging)return;var l=t.target.offsetParent.getBoundingClientRect(),f=t.target.getBoundingClientRect();this.renderRtl?o.left=-1*(f.right-l.right):o.left=f.left-l.left,o.top=f.top-l.top,this.dragging=null,this.isDragging=!1;break;case"dragmove":var d=u(this.lastX,this.lastY,r,i);this.renderRtl?o.left=this.dragging.left-d.deltaX:o.left=this.dragging.left+d.deltaX,o.top=this.dragging.top+d.deltaY,this.dragging=o;break}n=(this.renderRtl,this.calcXY(o.top,o.left)),this.lastX=r,this.lastY=i,this.innerX===n.x&&this.innerY===n.y||this.$emit("move",this.i,n.x,n.y),"dragend"!==t.type||this.previousX===this.innerX&&this.previousY===this.innerY||this.$emit("moved",this.i,n.x,n.y),this.eventBus.$emit("dragEvent",t.type,this.i,n.x,n.y,this.innerH,this.innerW)}}},calcPosition:function(t,e,n,r){var i,o=this.calcColWidth();return i=this.renderRtl?{right:Math.round(o*t+(t+1)*this.margin[0]),top:Math.round(this.rowHeight*e+(e+1)*this.margin[1]),width:n===1/0?n:Math.round(o*n+Math.max(0,n-1)*this.margin[0]),height:r===1/0?r:Math.round(this.rowHeight*r+Math.max(0,r-1)*this.margin[1])}:{left:Math.round(o*t+(t+1)*this.margin[0]),top:Math.round(this.rowHeight*e+(e+1)*this.margin[1]),width:n===1/0?n:Math.round(o*n+Math.max(0,n-1)*this.margin[0]),height:r===1/0?r:Math.round(this.rowHeight*r+Math.max(0,r-1)*this.margin[1])},i},calcXY:function(t,e){var n=this.calcColWidth(),r=Math.round((e-this.margin[0])/(n+this.margin[0])),i=Math.round((t-this.margin[1])/(this.rowHeight+this.margin[1]));return r=Math.max(Math.min(r,this.cols-this.innerW),0),i=Math.max(Math.min(i,this.maxRows-this.innerH),0),{x:r,y:i}},calcColWidth:function(){var t=(this.containerWidth-this.margin[0]*(this.cols+1))/this.cols;return t},calcWH:function(t,e){var n=this.calcColWidth(),r=Math.round((e+this.margin[0])/(n+this.margin[0])),i=Math.round((t+this.margin[1])/(this.rowHeight+this.margin[1]));return r=Math.max(Math.min(r,this.cols-this.innerX),0),i=Math.max(Math.min(i,this.maxRows-this.innerY),0),{w:r,h:i}},updateWidth:function(t,e){this.containerWidth=t,void 0!==e&&null!==e&&(this.cols=e)},compact:function(){this.createStyle()},tryMakeDraggable:function(){var t=this;if(null!==this.interactObj&&void 0!==this.interactObj||(this.interactObj=f(this.$refs.item)),this.draggable&&!this.static){var e={ignoreFrom:this.dragIgnoreFrom,allowFrom:this.dragAllowFrom};this.interactObj.draggable(e),this.dragEventSet||(this.dragEventSet=!0,this.interactObj.on("dragstart dragmove dragend",(function(e){t.handleDrag(e)})))}else this.interactObj.draggable({enabled:!1})},tryMakeResizable:function(){var t=this;if(null!==this.interactObj&&void 0!==this.interactObj||(this.interactObj=f(this.$refs.item)),this.resizable&&!this.static){var e=this.calcPosition(0,0,this.maxW,this.maxH),n=this.calcPosition(0,0,this.minW,this.minH),r={preserveAspectRatio:!0,edges:{left:!1,right:"."+this.resizableHandleClass,bottom:"."+this.resizableHandleClass,top:!1},ignoreFrom:this.resizeIgnoreFrom,restrictSize:{min:{height:n.height,width:n.width},max:{height:e.height,width:e.width}}};this.interactObj.resizable(r),this.resizeEventSet||(this.resizeEventSet=!0,this.interactObj.on("resizestart resizemove resizeend",(function(e){t.handleResize(e)})))}else this.interactObj.resizable({enabled:!1})},autoSize:function(){this.previousW=this.innerW,this.previousH=this.innerH;var t=this.$slots.default[0].elm.getBoundingClientRect(),e=this.calcWH(t.height,t.width);e.wthis.maxW&&(e.w=this.maxW),e.hthis.maxH&&(e.h=this.maxH),e.h<1&&(e.h=1),e.w<1&&(e.w=1),this.innerW===e.w&&this.innerH===e.h||this.$emit("resize",this.i,e.h,e.w,t.height,t.width),this.previousW===e.w&&this.previousH===e.h||(this.$emit("resized",this.i,e.h,e.w,t.height,t.width),this.eventBus.$emit("resizeEvent","resizeend",this.i,this.innerX,this.innerY,e.h,e.w))}}},p=d,h=(n("5ed4"),n("2877")),v=Object(h["a"])(p,r,i,!1,null,null,null);e["a"]=v.exports},be13:function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},c274:function(t,e,n){"use strict";var r=n("50bf");function i(){var t={},e=0,n=0,r=0;function i(i,o){o||(o=i,i=0),i>n?n=i:il)if(s=u[l++],s!=s)return!0}else for(;c>l;l++)if((t||l in u)&&u[l]===n)return t||l||0;return!t&&-1}}},c5f6:function(t,e,n){"use strict";var r=n("7726"),i=n("69a8"),o=n("2d95"),a=n("5dbc"),s=n("6a99"),u=n("79e5"),c=n("9093").f,l=n("11e9").f,f=n("86cc").f,d=n("aa77").trim,p="Number",h=r[p],v=h,g=h.prototype,y=o(n("2aeb")(g))==p,m="trim"in String.prototype,b=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){e=m?e.trim():d(e,3);var n,r,i,o=e.charCodeAt(0);if(43===o||45===o){if(n=e.charCodeAt(2),88===n||120===n)return NaN}else if(48===o){switch(e.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+e}for(var a,u=e.slice(2),c=0,l=u.length;ci)return NaN;return parseInt(u,r)}}return+e};if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(y?u((function(){g.valueOf.call(n)})):o(n)!=p)?a(new v(b(e)),n,h):b(e)};for(var x,w=n("9e1e")?c(v):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),S=0;w.length>S;S++)i(v,x=w[S])&&!i(h,x)&&f(h,x,l(v,x));h.prototype=g,g.constructor=h,n("2aba")(r,p,h)}},c69a:function(t,e,n){t.exports=!n("9e1e")&&!n("79e5")((function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a}))},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},c946:function(t,e,n){"use strict";var r=n("b770").forEach;t.exports=function(t){t=t||{};var e=t.reporter,n=t.batchProcessor,i=t.stateHandler.getState,o=(t.stateHandler.hasState,t.idHandler);if(!n)throw new Error("Missing required dependency: batchProcessor");if(!e)throw new Error("Missing required dependency: reporter.");var a=c(),s="erd_scroll_detection_scrollbar_style",u="erd_scroll_detection_container";function c(){var t=500,e=500,n=document.createElement("div");n.style.cssText="position: absolute; width: "+2*t+"px; height: "+2*e+"px; visibility: hidden; margin: 0; padding: 0;";var r=document.createElement("div");r.style.cssText="position: absolute; width: "+t+"px; height: "+e+"px; overflow: scroll; visibility: none; top: "+3*-t+"px; left: "+3*-e+"px; visibility: hidden; margin: 0; padding: 0;",r.appendChild(n),document.body.insertBefore(r,document.body.firstChild);var i=t-r.clientWidth,o=e-r.clientHeight;return document.body.removeChild(r),{width:i,height:o}}function l(t,e){function n(e,n){n=n||function(t){document.head.appendChild(t)};var r=document.createElement("style");return r.innerHTML=e,r.id=t,n(r),r}if(!document.getElementById(t)){var r=e+"_animation",i=e+"_animation_active",o="/* Created by the element-resize-detector library. */\n";o+="."+e+" > div::-webkit-scrollbar { display: none; }\n\n",o+="."+i+" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: "+r+"; animation-name: "+r+"; }\n",o+="@-webkit-keyframes "+r+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n",o+="@keyframes "+r+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }",n(o)}}function f(t){t.className+=" "+u+"_animation_active"}function d(t,n,r){if(t.addEventListener)t.addEventListener(n,r);else{if(!t.attachEvent)return e.error("[scroll] Don't know how to add event listeners.");t.attachEvent("on"+n,r)}}function p(t,n,r){if(t.removeEventListener)t.removeEventListener(n,r);else{if(!t.detachEvent)return e.error("[scroll] Don't know how to remove event listeners.");t.detachEvent("on"+n,r)}}function h(t){return i(t).container.childNodes[0].childNodes[0].childNodes[0]}function v(t){return i(t).container.childNodes[0].childNodes[0].childNodes[1]}function g(t,e){var n=i(t).listeners;if(!n.push)throw new Error("Cannot add listener to an element that is not detectable.");i(t).listeners.push(e)}function y(t,s,c){function l(){if(t.debug){var n=Array.prototype.slice.call(arguments);if(n.unshift(o.get(s),"Scroll: "),e.log.apply)e.log.apply(null,n);else for(var r=0;r=t.length?(this._t=void 0,i(1)):i(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},cb7c:function(t,e,n){var r=n("d3f4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},ce10:function(t,e,n){var r=n("69a8"),i=n("6821"),o=n("c366")(!1),a=n("613b")("IE_PROTO");t.exports=function(t,e){var n,s=i(t),u=0,c=[];for(n in s)n!=a&&r(s,n)&&c.push(n);while(e.length>u)r(s,n=e[u++])&&(~o(c,n)||c.push(n));return c}},d3f4:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},d53b:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},d6eb:function(t,e,n){"use strict";var r="_erd";function i(t){return t[r]={},o(t)}function o(t){return t[r]}function a(t){delete t[r]}t.exports={initState:i,getState:o,cleanState:a}},d864:function(t,e,n){var r=n("79aa");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,i){return t.call(e,n,r,i)}}return function(){return t.apply(e,arguments)}}},d8e8:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},d9f6:function(t,e,n){var r=n("e4ae"),i=n("794b"),o=n("1bc3"),a=Object.defineProperty;e.f=n("8e60")?Object.defineProperty:function(t,e,n){if(r(t),e=o(e,!0),r(n),i)try{return a(t,e,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},e11e:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},e279:function(t,e,n){"use strict";var r=n("1156"),i=n.n(r);i.a},e4ae:function(t,e,n){var r=n("f772");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},e53d:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},eec4:function(t,e,n){"use strict";var r=n("b770").forEach,i=n("5be5"),o=n("49ad"),a=n("2cef"),s=n("5058"),u=n("abb4"),c=n("18e9"),l=n("c274"),f=n("d6eb"),d=n("18d2"),p=n("c946");function h(t){return Array.isArray(t)||void 0!==t.length}function v(t){if(Array.isArray(t))return t;var e=[];return r(t,(function(t){e.push(t)})),e}function g(t){return t&&1===t.nodeType}function y(t,e,n){var r=t[e];return void 0!==r&&null!==r||void 0===n?r:n}t.exports=function(t){var e;if(t=t||{},t.idHandler)e={get:function(e){return t.idHandler.get(e,!0)},set:t.idHandler.set};else{var n=a(),m=s({idGenerator:n,stateHandler:f});e=m}var b=t.reporter;if(!b){var x=!1===b;b=u(x)}var w=y(t,"batchProcessor",l({reporter:b})),S={};S.callOnAdd=!!y(t,"callOnAdd",!0),S.debug=!!y(t,"debug",!1);var O,_=o(e),E=i({stateHandler:f}),P=y(t,"strategy","object"),j={reporter:b,batchProcessor:w,stateHandler:f,idHandler:e};if("scroll"===P&&(c.isLegacyOpera()?(b.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),P="object"):c.isIE(9)&&(b.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),P="object")),"scroll"===P)O=p(j);else{if("object"!==P)throw new Error("Invalid strategy name: "+P);O=d(j)}var M={};function T(t,n,i){function o(t){var e=_.get(t);r(e,(function(e){e(t)}))}function a(t,e,n){_.add(e,n),t&&n(e)}if(i||(i=n,n=t,t={}),!n)throw new Error("At least one element required.");if(!i)throw new Error("Listener required.");if(g(n))n=[n];else{if(!h(n))return b.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");n=v(n)}var s=0,u=y(t,"callOnAdd",S.callOnAdd),c=y(t,"onReady",(function(){})),l=y(t,"debug",S.debug);r(n,(function(t){f.getState(t)||(f.initState(t),e.set(t));var d=e.get(t);if(l&&b.log("Attaching listener to element",d,t),!E.isDetectable(t))return l&&b.log(d,"Not detectable."),E.isBusy(t)?(l&&b.log(d,"System busy making it detectable"),a(u,t,i),M[d]=M[d]||[],void M[d].push((function(){s++,s===n.length&&c()}))):(l&&b.log(d,"Making detectable..."),E.markBusy(t,!0),O.makeDetectable({debug:l},t,(function(t){if(l&&b.log(d,"onElementDetectable"),f.getState(t)){E.markAsDetectable(t),E.markBusy(t,!1),O.addListener(t,o),a(u,t,i);var e=f.getState(t);if(e&&e.startSize){var p=t.offsetWidth,h=t.offsetHeight;e.startSize.width===p&&e.startSize.height===h||o(t)}M[d]&&r(M[d],(function(t){t()}))}else l&&b.log(d,"Element uninstalled before being detectable.");delete M[d],s++,s===n.length&&c()})));l&&b.log(d,"Already detecable, adding listener."),a(u,t,i),s++})),s===n.length&&c()}function k(t){if(!t)return b.error("At least one element is required.");if(g(t))t=[t];else{if(!h(t))return b.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");t=v(t)}r(t,(function(t){_.removeAllListeners(t),O.uninstall(t),f.cleanState(t)}))}return{listenTo:T,removeListener:_.removeListener,removeAllListeners:_.removeAllListeners,uninstall:k}}},f1ae:function(t,e,n){"use strict";var r=n("86cc"),i=n("4630");t.exports=function(t,e,n){e in t?r.f(t,e,i(0,n)):t[e]=n}},f6fd:function(t,e){(function(t){var e="currentScript",n=t.getElementsByTagName("script");e in t||Object.defineProperty(t,e,{get:function(){try{throw new Error}catch(r){var t,e=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(r.stack)||[!1])[1];for(t in n)if(n[t].src==e||"interactive"==n[t].readyState)return n[t];return null}}})})(document)},f751:function(t,e,n){var r=n("5ca1");r(r.S+r.F,"Object",{assign:n("7333")})},f772:function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},fa5b:function(t,e,n){t.exports=n("5537")("native-function-to-string",Function.toString)},fab2:function(t,e,n){var r=n("7726").document;t.exports=r&&r.documentElement},fb15:function(t,e,n){"use strict";var r;(n.r(e),"undefined"!==typeof window)&&(n("f6fd"),(r=window.document.currentScript)&&(r=r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/))&&(n.p=r[1]));var i=n("2af9");n.d(e,"install",(function(){return i["d"]})),n.d(e,"GridLayout",(function(){return i["b"]})),n.d(e,"GridItem",(function(){return i["a"]}));e["default"]=i["c"]},fca0:function(t,e,n){var r=n("5ca1"),i=n("7726").isFinite;r(r.S,"Number",{isFinite:function(t){return"number"==typeof t&&i(t)}})},fdef:function(t,e){t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"}})["default"]})); //# sourceMappingURL=vue-grid-layout.umd.min.js.map \ No newline at end of file diff --git a/dist/vue-grid-layout.umd.min.js.map b/dist/vue-grid-layout.umd.min.js.map index 2520ac1c..ac5b9794 100644 --- a/dist/vue-grid-layout.umd.min.js.map +++ b/dist/vue-grid-layout.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://VueGridLayout/webpack/universalModuleDefinition","webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?f4e6","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?a307","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["root","factory","exports","module","require","define","amd","self","this","__WEBPACK_EXTERNAL_MODULE__8bbf__","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","LIBRARY","$export","redefine","hide","Iterators","$iterCreate","setToStringTag","getPrototypeOf","ITERATOR","BUGGY","keys","FF_ITERATOR","KEYS","VALUES","returnThis","Base","NAME","Constructor","next","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","proto","TAG","DEF_VALUES","VALUES_BUG","$native","$default","$entries","undefined","$anyNative","entries","values","P","F","toInteger","defined","TO_STRING","that","pos","a","b","String","length","charCodeAt","charAt","slice","at","S","index","unicode","it","anObject","result","global","ignoreCase","multiline","sticky","$keys","enumBugKeys","O","content","locals","add","default","pIE","createDesc","toIObject","toPrimitive","has","IE8_DOM_DEFINE","gOPD","getOwnPropertyDescriptor","f","e","dP","getKeys","defineProperties","Properties","browserDetector","options","reporter","batchProcessor","getState","stateHandler","Error","addListener","element","listener","getObject","listenerProxy","isIE","proxy","attachEvent","contentDocument","defaultView","addEventListener","makeDetectable","callback","debug","injectObject","OBJECT_STYLE","positionCheckPerformed","style","window","getComputedStyle","width","offsetWidth","height","offsetHeight","mutateDom","alterPositionStyles","position","removeRelativeStyles","getNumericalValue","replace","warn","onObjectLoad","getDocument","setTimeout","objectElement","objectDocument","document","createElement","cssText","tabIndex","type","setAttribute","onload","data","appendChild","startSize","uninstall","detachEvent","removeChild","detector","version","isAnyIeVersion","agent","navigator","userAgent","toLowerCase","indexOf","ieVersion","undef","v","div","all","getElementsByTagName","innerHTML","isLegacyOpera","opera","isObject","fn","val","toString","valueOf","TypeError","currentDir","hasDocument","hasWindow","getDocumentDir","direction","dir","getAttribute","addWindowEventListener","event","removeWindowEventListener","removeEventListener","is","fails","wks","regexpExec","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","re","exec","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","apply","arguments","split","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","constructor","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","done","strfn","rxfn","RegExp","string","arg","cssWithMappingToString","item","useSourceMap","cssMapping","btoa","sourceMapping","toComment","sourceURLs","sources","map","source","sourceRoot","concat","join","sourceMap","base64","unescape","encodeURIComponent","JSON","stringify","list","mediaQuery","alreadyImportedModules","id","push","cof","ARG","tryGet","T","B","callee","getOwnPropertySymbols","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","context","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","SRC","$toString","TPL","inspectSource","safe","isFunction","Function","dPs","IE_PROTO","Empty","PROTOTYPE","createDict","iframeDocument","iframe","lt","gt","display","src","contentWindow","open","write","close","VueGridLayout","GridLayout","GridItem","install","Vue","installed","forEach","component","plugin","GlobalVue","use","store","uid","USE_SYMBOL","$exports","idCount","generate","method","_vm","_h","$createElement","_c","_self","ref","staticClass","_t","directives","rawName","expression","attrs","placeholder","x","y","w","_defineProperty","obj","configurable","writable","getBreakpointFromWidth","breakpoints","sorted","sortBreakpoints","matching","len","breakpointName","getColsFromBreakpoint","breakpoint","cols","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","compact","correctBounds","sort","toObject","ObjectProto","descriptor","$Object","desc","ceil","Math","floor","isNaN","bitmap","toLength","advanceStringIndex","regExpExec","MATCH","$match","maybeCallNative","res","rx","fullUnicode","lastIndex","A","matchStr","listToStyles","parentId","styles","newStyles","css","media","part","parts","DEBUG","stylesInDom","head","singletonElement","singletonCounter","isProduction","noop","ssrIdKey","isOldIE","test","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","j","addStyle","createStyleElement","styleElement","update","remove","querySelector","parentNode","styleIndex","applyToSingletonTag","applyToTag","newObj","replaceText","textStore","replacement","filter","Boolean","styleSheet","cssNode","createTextNode","childNodes","insertBefore","ssrId","firstChild","idHandler","eventListeners","getListeners","removeListener","listeners","splice","removeAllListeners","idGenerator","getId","state","setId","set","utils","getOption","defaultValue","regexpFlags","nativeExec","nativeReplace","patchedExec","LAST_INDEX","UPDATES_LAST_INDEX_WRONG","re1","re2","NPCG_INCLUDED","PATCH","reCopy","match","propertyIsEnumerable","core","SHARED","copyright","aFunction","$sort","comparefn","__e","isDetectable","markAsDetectable","isBusy","busy","markBusy","ctx","own","out","exp","IS_FORCED","IS_GLOBAL","G","IS_STATIC","IS_PROTO","IS_BIND","target","expProto","U","W","R","setPrototypeOf","C","classof","builtinExec","shared","IS_WRAP","virtual","IObject","DESCRIPTORS","gOPS","$assign","assign","K","k","aLen","getSymbols","isEnum","__g","max","min","def","tag","stat","FProto","nameRE","Attributes","check","buggy","Array","__proto__","ownKeys","createProperty","getOwnPropertyDescriptors","getDesc","hiddenKeys","getOwnPropertyNames","gOPN","Reflect","UNSCOPABLES","ArrayProto","bottom","bottomY","newLayout","cloneLayoutItem","layoutItem","parse","collides","l1","l2","compareWith","getStatics","sortLayoutItemsByRowCol","static","compactItem","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","getAllCollisions","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","setTransform","top","left","translate","transform","WebkitTransform","MozTransform","msTransform","OTransform","setTransformRtl","right","setTopLeft","setTopRight","validateLayout","contextName","subProps","isArray","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","spaces","space","non","ltrim","rtrim","exporter","ALIAS","FORCE","trim","TYPE","quiet","log","error","console","attachFunction","$iterators","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","forced","collection","class","classObj","resizableHandleClass","_e","getControlPosition","offsetXYFromParentOf","evt","offsetParent","body","offsetParentRect","getBoundingClientRect","clientX","scrollLeft","clientY","scrollTop","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","num","Batch","batch","size","topLevel","bottomLevel","level","process","getSize","asyncProcess","autoProcess","asyncFrameHandler","isProcessing","addFunction","processBatchAsync","processBatch","processingBatch","forceProcessBatch","localAsyncProcess","cancelFrame","requestFrame","cancel","clearTimeout","raf","force","toAbsoluteIndex","IS_INCLUDES","$this","el","fromIndex","inheritIfRequired","$trim","NUMBER","$Number","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","NaN","code","digits","parseInt","g","hasState","scrollbarSizes","getScrollbarSizes","styleId","detectionContainerClass","child","container","widthSize","clientWidth","heightSize","clientHeight","injectScrollStyle","containerClass","injectStyle","getElementById","containerAnimationClass","containerAnimationActiveClass","addAnimationClass","className","addEvent","cb","removeEvent","getExpandElement","getShrinkElement","args","unshift","isDetached","isInDocument","ownerDocument","contains","isUnrendered","getStyle","elementStyle","widthCSS","heightCSS","storeStartSize","initListeners","storeStyle","storeCurrentSize","lastWidth","lastHeight","getExpandChildElement","getWidthOffset","getHeightOffset","getExpandWidth","getExpandHeight","getShrinkWidth","getShrinkHeight","positionScrollbars","expand","shrink","expandWidth","expandHeight","shrinkWidth","shrinkHeight","injectContainerElement","onAnimationStart","onRendered","injectScrollElements","getLeftTopBottomRightCssText","rootContainer","scrollbarWidth","scrollbarHeight","containerContainerStyle","containerStyle","expandStyle","shrinkStyle","expandChildStyle","shrinkChildStyle","containerContainer","expandChild","shrinkChild","onExpandScroll","onShrinkScroll","onExpand","onShrink","registerListenersAndPositionElements","updateChildSizes","updateDetectorElements","areElementsInjected","notifyListenersIfNeeded","isFirstNotify","lastNotifiedWidth","lastNotifiedHeight","handleRender","handleScroll","finalizeDomMutation","ready","px","random","addToUnscopables","step","iterated","_i","_k","Arguments","arrayIndexOf","names","prop","initState","cleanState","elementUtilsMaker","listenerHandlerMaker","idGeneratorMaker","idHandlerMaker","reporterMaker","batchProcessorMaker","objectStrategyMaker","scrollStrategyMaker","isCollection","toArray","array","isElement","nodeType","defaultIdHandler","globalOptions","callOnAdd","detectionStrategy","eventListenerHandler","elementUtils","desiredStrategy","strategyOptions","onReadyCallbacks","listenTo","elements","onResizeCallback","elementsReady","onReadyCallback","$defineProperty","currentScript","scripts","err","stack","readyState","documentElement","createModuleFactory","_$scope_24","Scope","ActionName","_interopRequireWildcard","_$utils_56","_domObjects","_interopRequireDefault","_$domObjects_50","_defaultOptions","_$defaultOptions_20","_Eventable","_$Eventable_14","_Interactable","_$Interactable_16","_InteractableSet","_$InteractableSet_17","_InteractEvent","_$InteractEvent_15","_interactions","_$interactions_23","_getRequireWildcardCache","WeakMap","cache","hasPropertyDescriptor","_typeof","iterator","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","_get","receiver","base","_superPropBase","_getPrototypeOf","_inherits","subClass","superClass","_setPrototypeOf","_classCallCheck","instance","_defineProperties","props","_createClass","protoProps","staticProps","win","browser","Signals","events","_this","signals","defaults","clone","Eventable","actions","methodDict","eventTypes","InteractEvent","interactables","documents","_plugins","_pluginMap","onWindowUnload","removeDocument","scope","Interactable","_InteractableBase","fire","interactable","interactions","interaction","stop","destroy","initScope","pluginIsInstalled","doc","getDocIndex","getWindow","extend","docIndex","Date","now","init","usePlugin","_browser","_$browser_48","_events","_$events_52","_pointerUtils","_$pointerUtils_61","_Signals","_$Signals_46","_Interaction","_$Interaction_18","_interactionFinder","_$interactionFinder_22","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","_arr","_n","_d","_s","methodNames","_ref","doOnInteractions","docEvents","pEventTypes","releasePointersOnRemovedEls","_i3","_ref3","pointerIsDown","pointerType","_interacting","_loop","_ref4","pointers","_i4","pointer","some","_ref5","_$domUtils_51","nodeContains","downTarget","removePointer","PointerEvent","down","pointerDown","move","pointerMove","up","pointerUp","_i2","_ref2","documentBlur","on","onDocSignal","prevTouchTime","Interaction","_InteractionBase","pointerMoveTolerance","getPointerType","_pointerUtils$getEven","getEventTargets","_pointerUtils$getEven2","eventTarget","curEventTarget","matches","_i5","changedTouches","_ref6","changedTouch","pointerId","getPointerId","searchDetails","eventType","getInteraction","invalidPointer","supportsPointerEvent","timeStamp","_searchDetails","_interaction","_i6","_matches$_i","_pointer","_eventTarget","_curEventTarget","_interaction2","foundInteraction","search","signalArg","_ref7","signalName","eventMethod","isIOS","passive","delegatedEvents","delegateListener","delegateUseCapture","eventOptions","_i7","_ref8","_ref9","_default","_PointerInfo","_ProxyMethods","_ProxyValues","_$PointerInfo_19","_scope","prepared","axis","edges","downEvent","downPointer","_latestPointer","prevEvent","pointerWasMoved","_ending","_stopped","_proxy","simulation","doMove","warnOnce","coords","start","newCoords","prev","cur","delta","velocity","_signals","_loop2","_key","pointerIndex","updatePointer","action","interacting","Gesture","enabled","copyAction","rect","getRect","_doPhase","phase","EventPhase","Start","modifiers","endPrevented","setCoords","_now","dx","dy","duplicateMove","page","client","hypot","getPointerIndex","duplicate","setCoordDeltas","setCoordVelocity","copyCoords","Move","end","endPhaseResult","End","findIndex","curPointer","pointerInfo","pointerExtend","downTime","_updateLatestPointer","preEnd","actionName","iEvent","beforeResult","_createPreparedEvent","_fireEvent","_$arr_47","merge","from","func","find","domObjects","DocumentFragment","SVGElement","SVGSVGElement","SVGElementInstance","Element","HTMLElement","Event","Touch","blank","MSPointerEvent","_$isWindow_58","___default_58","thing","Window","_$window_66","__init_66","_isWindow","realWindow","wrap","node","rootNode","___default_66","_$is_57","plainObject","bool","number","docFrag","___isWindow_57","___interopRequireDefault_57","_window2","__window_57","_window","nodeName","___interopRequireDefault_48","__init_48","supportsTouch","isIOS7","isIe9","isOperaMobile","prefixedMatchesSelector","wheelEvent","DocumentTouch","pointerEnabled","platform","appVersion","appName","over","___default_48","closest","matchesSelector","indexOfDeepestElement","matchesUpTo","getActualElement","getScrollXY","getElementClientRect","getElementRect","getPath","trySelector","___interopRequireDefault_51","___domObjects_51","__is_51","___interopRequireWildcard_51","___window_51","___getRequireWildcardCache_51","selector","host","getParent","deepestZoneParents","deepestZone","dropzone","_parent","parentParent","ownerSVGElement","dropzoneParents","parents","lastChild","previousSibling","deepestZIndex","zIndex","dropzoneZIndex","limit","correspondingUseElement","relevantWindow","scrollX","scrollY","clientRect","getClientRects","scroll","path","_$clone_49","___interopRequireWildcard_49","__is_49","___getRequireWildcardCache_49","dest","_$pointerExtend_60","prefixedPropREs","deprecated","vendor","webkit","moz","___default_60","_$hypot_55","___default_55","sqrt","___browser_61","___interopRequireDefault_61","___domObjects_61","domUtils","___interopRequireWildcard_61","_hypot","__is_61","_pointerExtend","___getRequireWildcardCache_61","pointerUtils","targetObj","dt","isNativePointer","getXY","xy","getPageXY","getClientXY","identifier","pointerAverage","tmpXY","getTouchPair","touches","average","pageX","pageY","screenX","screenY","_prop","touchBBox","minX","minY","maxX","maxY","touchDistance","deltaSource","sourceX","sourceY","touchAngle","angle","atan2","PI","composedPath","currentTarget","coordsToEvent","buttons","___default_61","FakeEvent","__domUtils_52","___interopRequireWildcard_52","__is_52","___pointerExtend_52","___interopRequireDefault_52","___getRequireWildcardCache_52","targets","optionalArg","getOptions","elementIndex","typeCount","supportsOptions","__remove_52","addDelegate","contexts","selectors","delegated","removeDelegate","matchFound","_listeners$i","fakeEvent","param","originalEvent","preventDefault","stopPropagation","stopImmediatePropagation","supportsPassive","_elements","_targets","___default_52","_$extend_53","_$rect_63","getStringOptionResult","resolveRectLike","rectToXY","xywhToTlbr","tlbrToXywh","_extend","___interopRequireDefault_63","__is_63","___interopRequireWildcard_63","___getRequireWildcardCache_63","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","iter","arr2","functionArgs","___default_63","_$getOriginXY_54","___default_54","actionOptions","actionOrigin","origin","originRect","_$normalizeListeners_59","normalize","___extend_59","___interopRequireDefault_59","__is_59","___interopRequireWildcard_59","___getRequireWildcardCache_59","reduce","acc","prefix","combinedTypes","_$raf_62","_request","_cancel","lastTime","__init_62","requestAnimationFrame","cancelAnimationFrame","vendors","currTime","timeToCall","token","___default_62","request","___classCallCheck_46","___defineProperties_46","___createClass_46","targetListeners","___default_46","_getQBezierValue","getQuadraticCurvePoint","easeOutQuad","___window_56","___browser_56","_clone","___extend_56","_getOriginXY","___hypot_56","_normalizeListeners","___pointerUtils_56","_raf","___rect_56","dom","__arr_56","___interopRequireWildcard_56","__is_56","___interopRequireDefault_56","___getRequireWildcardCache_56","message","warned","p1","p2","p3","iT","startX","startY","cpX","cpY","endX","endY","perAction","___default_20","__arr_14","___interopRequireWildcard_14","___extend_14","___interopRequireDefault_14","___normalizeListeners_14","___getRequireWildcardCache_14","___classCallCheck_14","___defineProperties_14","___createClass_14","fireUntilImmediateStopped","immediatePropagationStopped","types","propagationStopped","eventList","subListener","_element","___default_14","__arr_16","___interopRequireWildcard_16","___browser_16","___interopRequireDefault_16","___clone_16","___events_16","___extend_16","__is_16","___normalizeListeners_16","___getRequireWildcardCache_16","___classCallCheck_16","___defineProperties_16","___createClass_16","defaultContext","_actions","_context","_win","_doc","phases","onstart","onmove","onend","oninertiastart","off","_defaults","optionName","optionValue","updatePerActionListeners","checker","newValue","_backCompatOption","targetNode","testIgnore","ignoreFrom","testAllow","allowFrom","typeArg","listenerArg","addRemove","_onOff","methodName","setPerAction","setting","___default_16","__arr_17","___interopRequireWildcard_17","__domUtils_17","___extend_17","___interopRequireDefault_17","__is_17","___Signals_17","___getRequireWildcardCache_17","___classCallCheck_17","___defineProperties_17","___createClass_17","InteractableSet","selectorMap","targetMappings","targetIndex","mappingInfo","addDocument","isSelector","found","inContext","ret","_$BaseEvent_13","___classCallCheck_13","___defineProperties_13","___createClass_13","BaseEvent","___default_13","__EventPhase_15","___extend_15","___interopRequireDefault_15","___getOriginXY_15","___hypot_15","_BaseEvent2","___typeof_15","___classCallCheck_15","___defineProperties_15","___createClass_15","_BaseEvent","related","starting","ending","ctrlKey","altKey","shiftKey","metaKey","button","relatedTarget","t0","x0","y0","clientX0","clientY0","duration","speed","swipe","getSwipe","velocityY","velocityX","overlap","___default_15","___classCallCheck_19","PointerInfo","___default_19","__dom_22","___interopRequireWildcard_22","___getRequireWildcardCache_22","finder","methodOrder","details","simulationResume","allowResume","mouseOrPen","firstNonActive","hasPointerId","hasPointer","idle","_ref10","gesture","_ref11","___default_22","_$drag_1","___scope_1","__arr_1","___interopRequireWildcard_1","__is_1","___getRequireWildcardCache_1","__install_1","beforeMove","draggable","drag","Drag","opposite","setOnEvents","lockAxis","startAxis","_event","dragOptions","getCursor","___default_1","_$DropEvent_2","___BaseEvent2_2","___interopRequireDefault_2","__arr_2","___interopRequireWildcard_2","___getRequireWildcardCache_2","___typeof_2","___toConsumableArray_2","___arrayWithoutHoles_2","___iterableToArray_2","___nonIterableSpread_2","___classCallCheck_2","___defineProperties_2","___createClass_2","___possibleConstructorReturn_2","___assertThisInitialized_2","___getPrototypeOf_2","___inherits_2","___setPrototypeOf_2","DropEvent","dropState","dragEvent","_this2","rejected","enter","activeDrops","deactivateEvent","___default_2","_$drop_3","__utils_3","___interopRequireWildcard_3","_drag","___interopRequireDefault_3","_DropEvent","___getRequireWildcardCache_3","__install_3","interact","getActiveDrops","getDropEvents","activate","fireActivationEvents","onEventCreated","fireDropEvents","dropzoneMethod","dropCheck","draggableElement","dropElement","dropCheckMethod","dynamicDrop","drop","collectDrops","drops","accept","dropElements","querySelectorAll","dropzoneElement","dragElement","activeDrop","getDrop","_ref12","pointerEvent","validDrops","_ref13","_ref14","dropIndex","_pointerEvent","dropEvents","leave","deactivate","dragLeave","prevDropzone","dragEnter","dragmove","_ref15","dropResult","normalized","normalizeListeners","corrected","correctedType","ondrop","ondropactivate","ondropdeactivate","ondragenter","ondragleave","ondropmove","dropped","dropOverlap","getOriginXY","horizontal","vertical","dragRect","cx","cy","overlapArea","overlapRatio","___default_3","_$gesture_4","___InteractEvent_4","___interopRequireDefault_4","___scope_4","__utils_4","___interopRequireWildcard_4","___getRequireWildcardCache_4","__install_4","gesturable","updateGestureProps","distance","scale","startAngle","startDistance","_interactable","box","ds","da","Infinity","___default_4","_$resize_6","___scope_6","__arr_6","___interopRequireWildcard_6","__dom_6","___extend_6","___interopRequireDefault_6","__is_6","___getRequireWildcardCache_6","__install_6","resizeAxes","__move_6","updateEventAxes","resize","cursors","initCursors","defaultMargin","resizable","Resize","square","preserveAspectRatio","margin","invert","resizeOptions","resizeEdges","edge","checkResizeEdge","axes","cursorKey","interactableElement","topleft","bottomright","topright","bottomleft","startRect","linkedEdges","_linkedEdges","resizeStartAspectRatio","resizeRects","current","inverted","previous","deltaRect","swap","invertible","originalEdges","eventDelta","startAspectRatio","___default_6","_$actions_5","__install_5","___drag_5","_drop","_gesture","_resize","___interopRequireDefault_5","_$autoScroll_7","getContainer","getScroll","getScrollSize","getScrollSizeDelta","__domUtils_7","___interopRequireWildcard_7","__is_7","___raf_7","___interopRequireDefault_7","___getRequireWildcardCache_7","__install_7","autoScroll","onInteractionMove","isScrolling","prevTime","scrollBy","prevScroll","curScroll","innerWidth","innerHeight","scrollWidth","scrollHeight","scrollOptions","scrollContainer","prevSize","curSize","___default_7","_$InteractableMethods_8","__is_8","___interopRequireWildcard_8","___getRequireWildcardCache_8","__install_8","getAction","actionChecker","styleCursor","defaultActionChecker","0","1","3","4","mouseButtons","___default_8","_$base_9","__utils_9","___interopRequireWildcard_9","_InteractableMethods","___interopRequireDefault_9","___getRequireWildcardCache_9","__install_9","actionInfo","getActionInfo","prepare","autoStart","manualStart","withinInteractionLimit","setInteractionCursor","setCursor","maxPerElement","maxInteractions","cursorElement","validateAction","testIgnoreAllow","validateMatches","matchElements","matchElement","matchAction","pushMatches","forEachMatch","maxActions","autoStartMax","activeInteractions","interactableCount","elementCount","otherAction","cursor","cursorChecker","___default_9","_$dragAxis_10","___scope_10","__is_10","___interopRequireWildcard_10","_base","___interopRequireDefault_10","___getRequireWildcardCache_10","__install_10","checkStartAxis","thisAxis","absX","abs","absY","targetOptions","currentAxis","getDraggable","___default_10","_$hold_11","___base_11","___interopRequireDefault_11","__install_11","hold","delay","autoStartHoldTimer","getHoldDuration","___default_11","_$autoStart_12","__install_12","___base_12","_dragAxis","_hold","___interopRequireDefault_12","__id_12","_$interactablePreventDefault_21","__install_21","___events_21","___interopRequireDefault_21","__is_21","___interopRequireWildcard_21","___getRequireWildcardCache_21","checkAndPreventDefault","docOptions","getDocOptions","onInteractionEvent","eventSignal","___default_21","_$devTools_25","CheckName","___domObjects_25","___interopRequireDefault_25","___extend_25","__is_25","___interopRequireWildcard_25","___window_25","___getRequireWildcardCache_25","___toConsumableArray_25","___arrayWithoutHoles_25","___iterableToArray_25","___nonIterableSpread_25","links","touchAction","boxSizing","__install_25","logger","checks","_logger","devTools","ignore","perform","text","getInfo","parentHasStyle","hasStyle","moveListeners","styleRe","__id_25","defaultExport","___default_25","_$base_30","startAll","setAll","prepareStates","restoreCoords","makeModifier","___extend_30","___interopRequireDefault_30","___slicedToArray_30","___arrayWithHoles_30","___iterableToArrayLimit_30","___nonIterableRest_30","__install_30","startOffset","offsets","states","startDelta","__start_30","__beforeMove_30","beforeEnd","pageCoords","prevCoords","modifierList","getModifierList","getRectOffset","requireEndOnly","rectDelta","changed","shouldDo","rectChanged","skipModifiers","modifierResult","modifiedCoords","adjustment","noPreEnd","didPreEnd","endResult","modifierArg","actionModifiers","modifier","_methods","_modifierList$index","curCoords","startCoords","_interaction$modifier","curDelta","_arr$_i","coordsSet","_ref7$interaction","_modifiers$result","coordsAndDeltas","_coordsAndDeltas$_i","endOnly","alwaysOnEnd","setStart","___default_30","_$inertia_26","___base_26","___interopRequireWildcard_26","__utils_26","___raf_26","___interopRequireDefault_26","___getRequireWildcardCache_26","__install_26","inertia","active","smoothEnd","upCoords","timeout","release","resume","__stop_26","resistance","minSpeed","endSpeed","smoothEndDuration","Resume","resumeEvent","__getOptions_26","velocityClient","pointerSpeed","inertiaPossible","startEvent","modifierStatus","InertiaStart","vx0","vy0","v0","calcInertia","xe","ye","modifiedXe","modifiedYe","inertiaTick","sx","sy","smothEndTick","lambda","inertiaDur","te","lambda_v0","one_ve_v0","updateInertiaCoords","progress","quadPoint","_getOptions","pageUp","clientUp","___default_26","_$pointer_33","___extend_33","___interopRequireDefault_33","__is_33","___interopRequireWildcard_33","___rect_33","___getRequireWildcardCache_33","__start_33","elementRect","offset","restriction","getRestrictionRect","widthDiff","heightDiff","__defaults_33","restrict","___default_33","_$edges_32","___extend_32","___interopRequireDefault_32","___rect_32","__getRestrictionRect_32","noInner","noOuter","__start_32","offsetRect","__set_32","inner","outer","fixRect","__defaults_32","restrictEdges","___default_32","_$rect_34","___extend_34","___interopRequireDefault_34","___pointer_34","__defaults_34","_","restrictRect","___default_34","_$size_35","___extend_35","___interopRequireDefault_35","___rect_35","_edges","noMin","noMax","__start_35","__set_35","minSize","maxSize","__defaults_35","restrictSize","___default_35","_$pointer_37","__utils_37","___interopRequireWildcard_37","___getRequireWildcardCache_37","__start_37","snapOffset","offsetWithOrigin","getOrigin","relativePoints","relativePoint","__set_37","realX","realY","relativeX","relativeY","_len","snapTarget","range","inRange","optionsOrigin","__defaults_37","snap","___default_37","_$size_38","___extend_38","___interopRequireDefault_38","__is_38","___interopRequireWildcard_38","___pointer_38","___getRequireWildcardCache_38","___slicedToArray_38","___arrayWithHoles_38","___iterableToArrayLimit_38","___nonIterableRest_38","__start_38","targetFields","__set_38","relative","xField","yField","__defaults_38","snapSize","___default_38","_$edges_36","___clone_36","___interopRequireDefault_36","___extend_36","_size","__start_36","__set_36","snapEdges","___default_36","_$modifiers_31","___base_31","___interopRequireDefault_31","___edges_31","___pointer_31","___rect_31","___size_31","_edges2","_pointer2","_size2","__makeModifier_31","__snap_31","__snapSize_31","__snapEdges_31","__restrict_31","__restrictRect_31","__restrictEdges_31","__restrictSize_31","_$PointerEvent_39","___BaseEvent2_39","___interopRequireDefault_39","___pointerUtils_39","___typeof_39","___classCallCheck_39","___defineProperties_39","___createClass_39","___possibleConstructorReturn_39","___assertThisInitialized_39","___getPrototypeOf_39","___inherits_39","___setPrototypeOf_39","interval","tapTime","prevTap","originX","originY","_$base_40","__utils_40","___interopRequireWildcard_40","_PointerEvent","___interopRequireDefault_40","___getRequireWildcardCache_40","simpleSignals","simpleEvents","__defaults_40","holdDuration","pointerEvents","__install_40","collectEventTargets","createSignalListener","_arg$type","_arg$targets","_arg$pointerEvent","eventable","_subtractOrigin","_addOrigin","timer","minDuration","___default_40","_$holdRepeat_41","___base_41","___interopRequireDefault_41","__install_41","onNew","onFired","signal","endHoldRepeat","holdRepeatInterval","count","holdIntervalHandle","clearInterval","___default_41","_$interactableTargets_43","___extend_43","___interopRequireDefault_43","__install_43","pointerEventsMethod","__backCompatOption","___default_43","_$pointerEvents_42","__install_42","___base_42","_holdRepeat","_interactableTargets","___interopRequireDefault_42","__id_42","_$reflow_44","__install_44","Reflow","_reflowResolve","reflow","Promise","promises","runningInteraction","reflowPromise","_reflowPromise","resolve","xywh","startReflow","_ret","then","___default_44","_$interact_28","___scope_28","__utils_28","___interopRequireWildcard_28","___browser_28","___interopRequireDefault_28","___events_28","___getRequireWildcardCache_28","globalEvents","isSet","__stop_28","getPointerAverage","getTouchBBox","getTouchDistance","getTouchAngle","___default_28","_$interact_27","__init_27","_autoScroll","_interactablePreventDefault","_inertia","___base_27","_reflow","_interact","___interopRequireWildcard_27","___interopRequireDefault_27","__pointerEvents_27","___getRequireWildcardCache_27","_modifiers$type","___default_27","_$grid_64","___slicedToArray_64","___arrayWithHoles_64","___iterableToArrayLimit_64","___nonIterableRest_64","createGrid","grid","coordFields","_grid$limits","limits","_grid$offset","gridx","round","gridy","___default_64","_$snappers_65","_grid","___interopRequireDefault_65","_$index_29","__init_29","___interact_29","___interopRequireWildcard_29","__modifiers_29","___extend_29","___interopRequireDefault_29","snappers","___getRequireWildcardCache_29","___typeof_29","createSnapGrid","___default_29","_isFinite","isFinite"],"mappings":"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","file":"vue-grid-layout.umd.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"VueGridLayout\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"VueGridLayout\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","/**\n * interact.js 1.6.3\n *\n * Copyright (c) 2012-2019 Taye Adeyemi \n * Released under the MIT License.\n * https://raw.github.com/taye/interact.js/master/LICENSE\n */\n(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.interact = f()}})(function(){var define,module,exports;\nvar createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}};\nvar _$scope_24 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/* common-shake removed: exports.createScope = */ void createScope;\n/* common-shake removed: exports.initScope = */ void initScope;\nexports.Scope = exports.ActionName = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\nvar _defaultOptions = _interopRequireDefault(_$defaultOptions_20);\n\nvar _Eventable = _interopRequireDefault(_$Eventable_14);\n\nvar _Interactable = _interopRequireDefault(_$Interactable_16);\n\nvar _InteractableSet = _interopRequireDefault(_$InteractableSet_17);\n\nvar _InteractEvent = _interopRequireDefault(_$InteractEvent_15);\n\nvar _interactions = _interopRequireDefault(_$interactions_23({}));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar win = utils.win,\n browser = utils.browser,\n raf = utils.raf,\n Signals = utils.Signals,\n events = utils.events;\nvar ActionName;\nexports.ActionName = ActionName;\n\n(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {}));\n\nfunction createScope() {\n return new Scope();\n}\n\nvar Scope =\n/*#__PURE__*/\nfunction () {\n function Scope() {\n var _this = this;\n\n _classCallCheck(this, Scope);\n\n this.id = \"__interact_scope_\".concat(Math.floor(Math.random() * 100));\n this.signals = new Signals();\n this.browser = browser;\n this.events = events;\n this.utils = utils;\n this.defaults = utils.clone(_defaultOptions[\"default\"]);\n this.Eventable = _Eventable[\"default\"];\n this.actions = {\n names: [],\n methodDict: {},\n eventTypes: []\n };\n this.InteractEvent = _InteractEvent[\"default\"];\n this.interactables = new _InteractableSet[\"default\"](this); // all documents being listened to\n\n this.documents = [];\n this._plugins = [];\n this._pluginMap = {};\n\n this.onWindowUnload = function (event) {\n return _this.removeDocument(event.target);\n };\n\n var scope = this;\n\n this.Interactable =\n /*#__PURE__*/\n function (_InteractableBase) {\n _inherits(Interactable, _InteractableBase);\n\n function Interactable() {\n _classCallCheck(this, Interactable);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments));\n }\n\n _createClass(Interactable, [{\n key: \"set\",\n value: function set(options) {\n _get(_getPrototypeOf(Interactable.prototype), \"set\", this).call(this, options);\n\n scope.interactables.signals.fire('set', {\n options: options,\n interactable: this\n });\n return this;\n }\n }, {\n key: \"unset\",\n value: function unset() {\n _get(_getPrototypeOf(Interactable.prototype), \"unset\", this).call(this);\n\n for (var i = scope.interactions.list.length - 1; i >= 0; i--) {\n var interaction = scope.interactions.list[i];\n\n if (interaction.interactable === this) {\n interaction.stop();\n scope.interactions.signals.fire('destroy', {\n interaction: interaction\n });\n interaction.destroy();\n\n if (scope.interactions.list.length > 2) {\n scope.interactions.list.splice(i, 1);\n }\n }\n }\n\n scope.interactables.signals.fire('unset', {\n interactable: this\n });\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return scope.defaults;\n }\n }]);\n\n return Interactable;\n }(_Interactable[\"default\"]);\n }\n\n _createClass(Scope, [{\n key: \"init\",\n value: function init(window) {\n return initScope(this, window);\n }\n }, {\n key: \"pluginIsInstalled\",\n value: function pluginIsInstalled(plugin) {\n return this._pluginMap[plugin.id] || this._plugins.indexOf(plugin) !== -1;\n }\n }, {\n key: \"usePlugin\",\n value: function usePlugin(plugin, options) {\n if (this.pluginIsInstalled(plugin)) {\n return this;\n }\n\n if (plugin.id) {\n this._pluginMap[plugin.id] = plugin;\n }\n\n plugin.install(this, options);\n\n this._plugins.push(plugin);\n\n return this;\n }\n }, {\n key: \"addDocument\",\n value: function addDocument(doc, options) {\n // do nothing if document is already known\n if (this.getDocIndex(doc) !== -1) {\n return false;\n }\n\n var window = win.getWindow(doc);\n options = options ? utils.extend({}, options) : {};\n this.documents.push({\n doc: doc,\n options: options\n });\n events.documents.push(doc); // don't add an unload event for the main document\n // so that the page may be cached in browser history\n\n if (doc !== this.document) {\n events.add(window, 'unload', this.onWindowUnload);\n }\n\n this.signals.fire('add-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"removeDocument\",\n value: function removeDocument(doc) {\n var index = this.getDocIndex(doc);\n var window = win.getWindow(doc);\n var options = this.documents[index].options;\n events.remove(window, 'unload', this.onWindowUnload);\n this.documents.splice(index, 1);\n events.documents.splice(index, 1);\n this.signals.fire('remove-document', {\n doc: doc,\n window: window,\n scope: this,\n options: options\n });\n }\n }, {\n key: \"getDocIndex\",\n value: function getDocIndex(doc) {\n for (var i = 0; i < this.documents.length; i++) {\n if (this.documents[i].doc === doc) {\n return i;\n }\n }\n\n return -1;\n }\n }, {\n key: \"getDocOptions\",\n value: function getDocOptions(doc) {\n var docIndex = this.getDocIndex(doc);\n return docIndex === -1 ? null : this.documents[docIndex].options;\n }\n }, {\n key: \"now\",\n value: function now() {\n return (this.window.Date || Date).now();\n }\n }]);\n\n return Scope;\n}();\n\nexports.Scope = Scope;\n\nfunction initScope(scope, window) {\n win.init(window);\n\n _domObjects[\"default\"].init(window);\n\n browser.init(window);\n raf.init(window);\n events.init(window);\n scope.usePlugin(_interactions[\"default\"]);\n scope.document = window.document;\n scope.window = window;\n return scope;\n}\n\n});\nvar _$interactions_23 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _browser = _interopRequireDefault(_$browser_48);\n\nvar _domObjects = _interopRequireDefault(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar _events = _interopRequireDefault(_$events_52);\n\nvar _pointerUtils = _interopRequireDefault(_$pointerUtils_61);\n\nvar _Signals = _interopRequireDefault(_$Signals_46);\n\nvar _Interaction = _interopRequireDefault(_$Interaction_18({}));\n\nvar _interactionFinder = _interopRequireDefault(_$interactionFinder_22);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur'];\n\nfunction install(scope) {\n var signals = new _Signals[\"default\"]();\n var listeners = {};\n\n for (var _i = 0; _i < methodNames.length; _i++) {\n var _ref;\n\n _ref = methodNames[_i];\n var method = _ref;\n listeners[method] = doOnInteractions(method, scope);\n }\n\n var pEventTypes = _browser[\"default\"].pEventTypes;\n var docEvents;\n\n if (_domObjects[\"default\"].PointerEvent) {\n docEvents = [{\n type: pEventTypes.down,\n listener: releasePointersOnRemovedEls\n }, {\n type: pEventTypes.down,\n listener: listeners.pointerDown\n }, {\n type: pEventTypes.move,\n listener: listeners.pointerMove\n }, {\n type: pEventTypes.up,\n listener: listeners.pointerUp\n }, {\n type: pEventTypes.cancel,\n listener: listeners.pointerUp\n }];\n } else {\n docEvents = [{\n type: 'mousedown',\n listener: listeners.pointerDown\n }, {\n type: 'mousemove',\n listener: listeners.pointerMove\n }, {\n type: 'mouseup',\n listener: listeners.pointerUp\n }, {\n type: 'touchstart',\n listener: releasePointersOnRemovedEls\n }, {\n type: 'touchstart',\n listener: listeners.pointerDown\n }, {\n type: 'touchmove',\n listener: listeners.pointerMove\n }, {\n type: 'touchend',\n listener: listeners.pointerUp\n }, {\n type: 'touchcancel',\n listener: listeners.pointerUp\n }];\n }\n\n docEvents.push({\n type: 'blur',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n interaction.documentBlur(event);\n }\n }\n });\n scope.signals.on('add-document', onDocSignal);\n scope.signals.on('remove-document', onDocSignal); // for ignoring browser's simulated mouse events\n\n scope.prevTouchTime = 0;\n\n scope.Interaction =\n /*#__PURE__*/\n function (_InteractionBase) {\n _inherits(Interaction, _InteractionBase);\n\n function Interaction() {\n _classCallCheck(this, Interaction);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments));\n }\n\n _createClass(Interaction, [{\n key: \"_now\",\n value: function _now() {\n return scope.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return scope.interactions.pointerMoveTolerance;\n },\n set: function set(value) {\n scope.interactions.pointerMoveTolerance = value;\n }\n }]);\n\n return Interaction;\n }(_Interaction[\"default\"]);\n\n scope.interactions = {\n signals: signals,\n // all active and idle interactions\n list: [],\n \"new\": function _new(options) {\n options.signals = signals;\n var interaction = new scope.Interaction(options);\n scope.interactions.list.push(interaction);\n return interaction;\n },\n listeners: listeners,\n docEvents: docEvents,\n pointerMoveTolerance: 1\n };\n\n function releasePointersOnRemovedEls() {\n // for all inactive touch interactions with pointers down\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n\n if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) {\n continue;\n } // if a pointer is down on an element that is no longer in the DOM tree\n\n\n var _loop = function _loop() {\n _ref4 = interaction.pointers[_i4];\n var pointer = _ref4;\n\n if (!scope.documents.some(function (_ref5) {\n var doc = _ref5.doc;\n return (0, _$domUtils_51.nodeContains)(doc, pointer.downTarget);\n })) {\n // remove the pointer from the interaction\n interaction.removePointer(pointer.pointer, pointer.event);\n }\n };\n\n for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) {\n var _ref4;\n\n _loop();\n }\n }\n }\n}\n\nfunction doOnInteractions(method, scope) {\n return function (event) {\n var interactions = scope.interactions.list;\n\n var pointerType = _pointerUtils[\"default\"].getPointerType(event);\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2),\n eventTarget = _pointerUtils$getEven2[0],\n curEventTarget = _pointerUtils$getEven2[1];\n\n var matches = []; // [ [pointer, interaction], ...]\n\n if (/^touch/.test(event.type)) {\n scope.prevTouchTime = scope.now();\n\n for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) {\n var _ref6;\n\n _ref6 = event.changedTouches[_i5];\n var changedTouch = _ref6;\n var pointer = changedTouch;\n\n var pointerId = _pointerUtils[\"default\"].getPointerId(pointer);\n\n var searchDetails = {\n pointer: pointer,\n pointerId: pointerId,\n pointerType: pointerType,\n eventType: event.type,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n scope: scope\n };\n var interaction = getInteraction(searchDetails);\n matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]);\n }\n } else {\n var invalidPointer = false;\n\n if (!_browser[\"default\"].supportsPointerEvent && /mouse/.test(event.type)) {\n // ignore mouse events while touch interactions are active\n for (var i = 0; i < interactions.length && !invalidPointer; i++) {\n invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown;\n } // try to ignore mouse events that are simulated by the browser\n // after a touch event\n\n\n invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated\n event.timeStamp === 0;\n }\n\n if (!invalidPointer) {\n var _searchDetails = {\n pointer: event,\n pointerId: _pointerUtils[\"default\"].getPointerId(event),\n pointerType: pointerType,\n eventType: event.type,\n curEventTarget: curEventTarget,\n eventTarget: eventTarget,\n scope: scope\n };\n\n var _interaction = getInteraction(_searchDetails);\n\n matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]);\n }\n } // eslint-disable-next-line no-shadow\n\n\n for (var _i6 = 0; _i6 < matches.length; _i6++) {\n var _matches$_i = _slicedToArray(matches[_i6], 4),\n _pointer = _matches$_i[0],\n _eventTarget = _matches$_i[1],\n _curEventTarget = _matches$_i[2],\n _interaction2 = _matches$_i[3];\n\n _interaction2[method](_pointer, event, _eventTarget, _curEventTarget);\n }\n };\n}\n\nfunction getInteraction(searchDetails) {\n var pointerType = searchDetails.pointerType,\n scope = searchDetails.scope;\n\n var foundInteraction = _interactionFinder[\"default\"].search(searchDetails);\n\n var signalArg = {\n interaction: foundInteraction,\n searchDetails: searchDetails\n };\n scope.interactions.signals.fire('find', signalArg);\n return signalArg.interaction || scope.interactions[\"new\"]({\n pointerType: pointerType\n });\n}\n\nfunction onDocSignal(_ref7, signalName) {\n var doc = _ref7.doc,\n scope = _ref7.scope,\n options = _ref7.options;\n var docEvents = scope.interactions.docEvents;\n var eventMethod = signalName.indexOf('add') === 0 ? _events[\"default\"].add : _events[\"default\"].remove;\n\n if (scope.browser.isIOS && !options.events) {\n options.events = {\n passive: false\n };\n } // delegate event listener\n\n\n for (var eventType in _events[\"default\"].delegatedEvents) {\n eventMethod(doc, eventType, _events[\"default\"].delegateListener);\n eventMethod(doc, eventType, _events[\"default\"].delegateUseCapture, true);\n }\n\n var eventOptions = options && options.events;\n\n for (var _i7 = 0; _i7 < docEvents.length; _i7++) {\n var _ref8;\n\n _ref8 = docEvents[_i7];\n var _ref9 = _ref8,\n type = _ref9.type,\n listener = _ref9.listener;\n eventMethod(doc, type, listener, eventOptions);\n }\n}\n\nvar _default = {\n id: 'core/interactions',\n install: install,\n onDocSignal: onDocSignal,\n doOnInteractions: doOnInteractions,\n methodNames: methodNames\n};\nexports[\"default\"] = _default;\n\n});\nvar _$Interaction_18 = createModuleFactory(function (module, exports) {\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"PointerInfo\", {\n enumerable: true,\n get: function get() {\n return _PointerInfo[\"default\"];\n }\n});\nexports[\"default\"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0;\n\nvar utils = _interopRequireWildcard(_$utils_56);\n\nvar _InteractEvent = _interopRequireWildcard(_$InteractEvent_15);\n\nvar _PointerInfo = _interopRequireDefault(_$PointerInfo_19);\n\nvar _scope = _$scope_24({});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar _ProxyValues;\n\nexports._ProxyValues = _ProxyValues;\n\n(function (_ProxyValues) {\n _ProxyValues[\"interactable\"] = \"\";\n _ProxyValues[\"element\"] = \"\";\n _ProxyValues[\"prepared\"] = \"\";\n _ProxyValues[\"pointerIsDown\"] = \"\";\n _ProxyValues[\"pointerWasMoved\"] = \"\";\n _ProxyValues[\"_proxy\"] = \"\";\n})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {}));\n\nvar _ProxyMethods;\n\nexports._ProxyMethods = _ProxyMethods;\n\n(function (_ProxyMethods) {\n _ProxyMethods[\"start\"] = \"\";\n _ProxyMethods[\"move\"] = \"\";\n _ProxyMethods[\"end\"] = \"\";\n _ProxyMethods[\"stop\"] = \"\";\n _ProxyMethods[\"interacting\"] = \"\";\n})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {}));\n\nvar Interaction =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interaction(_ref) {\n var _this = this;\n\n var pointerType = _ref.pointerType,\n signals = _ref.signals;\n\n _classCallCheck(this, Interaction);\n\n // current interactable being interacted with\n this.interactable = null; // the target element of the interactable\n\n this.element = null; // action that's ready to be fired on next move event\n\n this.prepared = {\n name: null,\n axis: null,\n edges: null\n }; // keep track of added pointers\n\n this.pointers = []; // pointerdown/mousedown/touchstart event\n\n this.downEvent = null;\n this.downPointer = {};\n this._latestPointer = {\n pointer: null,\n event: null,\n eventTarget: null\n }; // previous action event\n\n this.prevEvent = null;\n this.pointerIsDown = false;\n this.pointerWasMoved = false;\n this._interacting = false;\n this._ending = false;\n this._stopped = true;\n this._proxy = null;\n this.simulation = null;\n /**\n * @alias Interaction.prototype.move\n */\n\n this.doMove = utils.warnOnce(function (signalArg) {\n this.move(signalArg);\n }, 'The interaction.doMove() method has been renamed to interaction.move()');\n this.coords = {\n // Starting InteractEvent pointer coordinates\n start: utils.pointer.newCoords(),\n // Previous native pointer move event coordinates\n prev: utils.pointer.newCoords(),\n // current native pointer move event coordinates\n cur: utils.pointer.newCoords(),\n // Change in coordinates and time of the pointer\n delta: utils.pointer.newCoords(),\n // pointer velocity\n velocity: utils.pointer.newCoords()\n };\n this._signals = signals;\n this.pointerType = pointerType;\n var that = this;\n this._proxy = {};\n\n var _loop = function _loop(key) {\n Object.defineProperty(_this._proxy, key, {\n get: function get() {\n return that[key];\n }\n });\n };\n\n for (var key in _ProxyValues) {\n _loop(key);\n }\n\n var _loop2 = function _loop2(_key) {\n Object.defineProperty(_this._proxy, _key, {\n value: function value() {\n return that[_key].apply(that, arguments);\n }\n });\n };\n\n for (var _key in _ProxyMethods) {\n _loop2(_key);\n }\n\n this._signals.fire('new', {\n interaction: this\n });\n }\n\n _createClass(Interaction, [{\n key: \"pointerDown\",\n value: function pointerDown(pointer, event, eventTarget) {\n var pointerIndex = this.updatePointer(pointer, event, eventTarget, true);\n\n this._signals.fire('down', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n pointerIndex: pointerIndex,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable({\n * // disable the default drag start by down->move\n * manualStart: true\n * })\n * // start dragging after the user holds the pointer down\n * .on('hold', function (event) {\n * var interaction = event.interaction\n *\n * if (!interaction.interacting()) {\n * interaction.start({ name: 'drag' },\n * event.interactable,\n * event.currentTarget)\n * }\n * })\n * ```\n *\n * Start an action with the given Interactable and Element as tartgets. The\n * action must be enabled for the target Interactable and an appropriate\n * number of pointers must be held down - 1 for drag/resize, 2 for gesture.\n *\n * Use it with `interactable.able({ manualStart: false })` to always\n * [start actions manually](https://github.com/taye/interact.js/issues/114)\n *\n * @param {object} action The action to be performed - drag, resize, etc.\n * @param {Interactable} target The Interactable to target\n * @param {Element} element The DOM Element to target\n * @return {object} interact\n */\n\n }, {\n key: \"start\",\n value: function start(action, interactable, element) {\n if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) {\n return false;\n }\n\n utils.copyAction(this.prepared, action);\n this.interactable = interactable;\n this.element = element;\n this.rect = interactable.getRect(element);\n this.edges = this.prepared.edges;\n this._stopped = false;\n this._interacting = this._doPhase({\n interaction: this,\n event: this.downEvent,\n phase: _InteractEvent.EventPhase.Start\n }) && !this._stopped;\n return this._interacting;\n }\n }, {\n key: \"pointerMove\",\n value: function pointerMove(pointer, event, eventTarget) {\n if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) {\n this.updatePointer(pointer, event, eventTarget, false);\n utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n }\n\n var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y;\n var dx;\n var dy; // register movement greater than pointerMoveTolerance\n\n if (this.pointerIsDown && !this.pointerWasMoved) {\n dx = this.coords.cur.client.x - this.coords.start.client.x;\n dy = this.coords.cur.client.y - this.coords.start.client.y;\n this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance;\n }\n\n var signalArg = {\n pointer: pointer,\n pointerIndex: this.getPointerIndex(pointer),\n event: event,\n eventTarget: eventTarget,\n dx: dx,\n dy: dy,\n duplicate: duplicateMove,\n interaction: this\n };\n\n if (!duplicateMove) {\n // set pointer coordinate, time changes and velocity\n utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur);\n utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta);\n }\n\n this._signals.fire('move', signalArg);\n\n if (!duplicateMove) {\n // if interacting, fire an 'action-move' signal etc\n if (this.interacting()) {\n this.move(signalArg);\n }\n\n if (this.pointerWasMoved) {\n utils.pointer.copyCoords(this.coords.prev, this.coords.cur);\n }\n }\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('dragmove', function (event) {\n * if (someCondition) {\n * // change the snap settings\n * event.interactable.draggable({ snap: { targets: [] }})\n * // fire another move event with re-calculated snap\n * event.interaction.move()\n * }\n * })\n * ```\n *\n * Force a move of the current action at the same coordinates. Useful if\n * snap/restrict has been changed and you want a movement with the new\n * settings.\n */\n\n }, {\n key: \"move\",\n value: function move(signalArg) {\n signalArg = utils.extend({\n pointer: this._latestPointer.pointer,\n event: this._latestPointer.event,\n eventTarget: this._latestPointer.eventTarget,\n interaction: this\n }, signalArg || {});\n signalArg.phase = _InteractEvent.EventPhase.Move;\n\n this._doPhase(signalArg);\n } // End interact move events and stop auto-scroll unless simulation is running\n\n }, {\n key: \"pointerUp\",\n value: function pointerUp(pointer, event, eventTarget, curEventTarget) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n pointerIndex = this.updatePointer(pointer, event, eventTarget, false);\n }\n\n this._signals.fire(/cancel$/i.test(event.type) ? 'cancel' : 'up', {\n pointer: pointer,\n pointerIndex: pointerIndex,\n event: event,\n eventTarget: eventTarget,\n curEventTarget: curEventTarget,\n interaction: this\n });\n\n if (!this.simulation) {\n this.end(event);\n }\n\n this.pointerIsDown = false;\n this.removePointer(pointer, event);\n }\n }, {\n key: \"documentBlur\",\n value: function documentBlur(event) {\n this.end(event);\n\n this._signals.fire('blur', {\n event: event,\n interaction: this\n });\n }\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('move', function (event) {\n * if (event.pageX > 1000) {\n * // end the current action\n * event.interaction.end()\n * // stop all further listeners from being called\n * event.stopImmediatePropagation()\n * }\n * })\n * ```\n *\n * @param {PointerEvent} [event]\n */\n\n }, {\n key: \"end\",\n value: function end(event) {\n this._ending = true;\n event = event || this._latestPointer.event;\n var endPhaseResult;\n\n if (this.interacting()) {\n endPhaseResult = this._doPhase({\n event: event,\n interaction: this,\n phase: _InteractEvent.EventPhase.End\n });\n }\n\n this._ending = false;\n\n if (endPhaseResult === true) {\n this.stop();\n }\n }\n }, {\n key: \"currentAction\",\n value: function currentAction() {\n return this._interacting ? this.prepared.name : null;\n }\n }, {\n key: \"interacting\",\n value: function interacting() {\n return this._interacting;\n }\n /** */\n\n }, {\n key: \"stop\",\n value: function stop() {\n this._signals.fire('stop', {\n interaction: this\n });\n\n this.interactable = this.element = null;\n this._interacting = false;\n this._stopped = true;\n this.prepared.name = this.prevEvent = null;\n }\n }, {\n key: \"getPointerIndex\",\n value: function getPointerIndex(pointer) {\n var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer\n\n return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) {\n return curPointer.id === pointerId;\n });\n }\n }, {\n key: \"getPointerInfo\",\n value: function getPointerInfo(pointer) {\n return this.pointers[this.getPointerIndex(pointer)];\n }\n }, {\n key: \"updatePointer\",\n value: function updatePointer(pointer, event, eventTarget, down) {\n var id = utils.pointer.getPointerId(pointer);\n var pointerIndex = this.getPointerIndex(pointer);\n var pointerInfo = this.pointers[pointerIndex];\n down = down === false ? false : down || /(down|start)$/i.test(event.type);\n\n if (!pointerInfo) {\n pointerInfo = new _PointerInfo[\"default\"](id, pointer, event, null, null);\n pointerIndex = this.pointers.length;\n this.pointers.push(pointerInfo);\n } else {\n pointerInfo.pointer = pointer;\n }\n\n if (down) {\n this.pointerIsDown = true;\n\n if (!this.interacting()) {\n utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) {\n return p.pointer;\n }), this._now());\n utils.pointer.copyCoords(this.coords.cur, this.coords.start);\n utils.pointer.copyCoords(this.coords.prev, this.coords.start);\n utils.pointer.pointerExtend(this.downPointer, pointer);\n this.downEvent = event;\n pointerInfo.downTime = this.coords.cur.timeStamp;\n pointerInfo.downTarget = eventTarget;\n this.pointerWasMoved = false;\n }\n }\n\n this._updateLatestPointer(pointer, event, eventTarget);\n\n this._signals.fire('update-pointer', {\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n down: down,\n pointerInfo: pointerInfo,\n pointerIndex: pointerIndex,\n interaction: this\n });\n\n return pointerIndex;\n }\n }, {\n key: \"removePointer\",\n value: function removePointer(pointer, event) {\n var pointerIndex = this.getPointerIndex(pointer);\n\n if (pointerIndex === -1) {\n return;\n }\n\n var pointerInfo = this.pointers[pointerIndex];\n\n this._signals.fire('remove-pointer', {\n pointer: pointer,\n event: event,\n pointerIndex: pointerIndex,\n pointerInfo: pointerInfo,\n interaction: this\n });\n\n this.pointers.splice(pointerIndex, 1);\n }\n }, {\n key: \"_updateLatestPointer\",\n value: function _updateLatestPointer(pointer, event, eventTarget) {\n this._latestPointer.pointer = pointer;\n this._latestPointer.event = event;\n this._latestPointer.eventTarget = eventTarget;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this._latestPointer.pointer = null;\n this._latestPointer.event = null;\n this._latestPointer.eventTarget = null;\n }\n }, {\n key: \"_createPreparedEvent\",\n value: function _createPreparedEvent(event, phase, preEnd, type) {\n var actionName = this.prepared.name;\n return new _InteractEvent[\"default\"](this, event, actionName, phase, this.element, null, preEnd, type);\n }\n }, {\n key: \"_fireEvent\",\n value: function _fireEvent(iEvent) {\n this.interactable.fire(iEvent);\n\n if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) {\n this.prevEvent = iEvent;\n }\n }\n }, {\n key: \"_doPhase\",\n value: function _doPhase(signalArg) {\n var event = signalArg.event,\n phase = signalArg.phase,\n preEnd = signalArg.preEnd,\n type = signalArg.type;\n\n var beforeResult = this._signals.fire(\"before-action-\".concat(phase), signalArg);\n\n if (beforeResult === false) {\n return false;\n }\n\n var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type);\n\n var rect = this.rect;\n\n if (rect) {\n // update the rect modifications\n var edges = this.edges || this.prepared.edges || {\n left: true,\n right: true,\n top: true,\n bottom: true\n };\n\n if (edges.top) {\n rect.top += iEvent.delta.y;\n }\n\n if (edges.bottom) {\n rect.bottom += iEvent.delta.y;\n }\n\n if (edges.left) {\n rect.left += iEvent.delta.x;\n }\n\n if (edges.right) {\n rect.right += iEvent.delta.x;\n }\n\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n }\n\n this._signals.fire(\"action-\".concat(phase), signalArg);\n\n this._fireEvent(iEvent);\n\n this._signals.fire(\"after-action-\".concat(phase), signalArg);\n\n return true;\n }\n }, {\n key: \"_now\",\n value: function _now() {\n return Date.now();\n }\n }, {\n key: \"pointerMoveTolerance\",\n get: function get() {\n return 1;\n }\n }]);\n\n return Interaction;\n}();\n\nexports.Interaction = Interaction;\nvar _default = Interaction;\nexports[\"default\"] = _default;\n\n});\nvar _$arr_47 = {};\n\"use strict\";\n\nObject.defineProperty(_$arr_47, \"__esModule\", {\n value: true\n});\n_$arr_47.contains = contains;\n_$arr_47.remove = remove;\n_$arr_47.merge = merge;\n_$arr_47.from = from;\n_$arr_47.findIndex = findIndex;\n_$arr_47.find = find;\n\nfunction contains(array, target) {\n return array.indexOf(target) !== -1;\n}\n\nfunction remove(array, target) {\n return array.splice(array.indexOf(target), 1);\n}\n\nfunction merge(target, source) {\n for (var _i = 0; _i < source.length; _i++) {\n var _ref;\n\n _ref = source[_i];\n var item = _ref;\n target.push(item);\n }\n\n return target;\n}\n\nfunction from(source) {\n return merge([], source);\n}\n\nfunction findIndex(array, func) {\n for (var i = 0; i < array.length; i++) {\n if (func(array[i], i, array)) {\n return i;\n }\n }\n\n return -1;\n}\n\nfunction find(array, func) {\n return array[findIndex(array, func)];\n}\n\nvar _$domObjects_50 = {};\n\"use strict\";\n\nObject.defineProperty(_$domObjects_50, \"__esModule\", {\n value: true\n});\n_$domObjects_50[\"default\"] = void 0;\nvar domObjects = {\n init: init,\n document: null,\n DocumentFragment: null,\n SVGElement: null,\n SVGSVGElement: null,\n // eslint-disable-next-line no-undef\n SVGElementInstance: null,\n Element: null,\n HTMLElement: null,\n Event: null,\n Touch: null,\n PointerEvent: null\n};\n\nfunction blank() {}\n\nvar _default = domObjects;\n_$domObjects_50[\"default\"] = _default;\n\nfunction init(window) {\n var win = window;\n domObjects.document = win.document;\n domObjects.DocumentFragment = win.DocumentFragment || blank;\n domObjects.SVGElement = win.SVGElement || blank;\n domObjects.SVGSVGElement = win.SVGSVGElement || blank;\n domObjects.SVGElementInstance = win.SVGElementInstance || blank;\n domObjects.Element = win.Element || blank;\n domObjects.HTMLElement = win.HTMLElement || domObjects.Element;\n domObjects.Event = win.Event;\n domObjects.Touch = win.Touch || blank;\n domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent;\n}\n\nvar _$isWindow_58 = {};\n\"use strict\";\n\nObject.defineProperty(_$isWindow_58, \"__esModule\", {\n value: true\n});\n_$isWindow_58[\"default\"] = void 0;\n\nvar ___default_58 = function _default(thing) {\n return !!(thing && thing.Window) && thing instanceof thing.Window;\n};\n\n_$isWindow_58[\"default\"] = ___default_58;\n\nvar _$window_66 = {};\n\"use strict\";\n\nObject.defineProperty(_$window_66, \"__esModule\", {\n value: true\n});\n_$window_66.init = __init_66;\n_$window_66.getWindow = getWindow;\n_$window_66[\"default\"] = void 0;\n\nvar _isWindow = _interopRequireDefault(_$isWindow_58);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar win = {\n realWindow: undefined,\n window: undefined,\n getWindow: getWindow,\n init: __init_66\n};\n\nfunction __init_66(window) {\n // get wrapped window if using Shadow DOM polyfill\n win.realWindow = window; // create a TextNode\n\n var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill\n\n if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) {\n // use wrapped window\n window = window.wrap(window);\n }\n\n win.window = window;\n}\n\nif (typeof window === 'undefined') {\n win.window = undefined;\n win.realWindow = undefined;\n} else {\n __init_66(window);\n}\n\nfunction getWindow(node) {\n if ((0, _isWindow[\"default\"])(node)) {\n return node;\n }\n\n var rootNode = node.ownerDocument || node;\n return rootNode.defaultView || win.window;\n}\n\nwin.init = __init_66;\nvar ___default_66 = win;\n_$window_66[\"default\"] = ___default_66;\n\nvar _$is_57 = {};\n\"use strict\";\n\nObject.defineProperty(_$is_57, \"__esModule\", {\n value: true\n});\n_$is_57.array = _$is_57.plainObject = _$is_57.element = _$is_57.string = _$is_57.bool = _$is_57.number = _$is_57.func = _$is_57.object = _$is_57.docFrag = _$is_57.window = void 0;\n\nvar ___isWindow_57 = ___interopRequireDefault_57(_$isWindow_58);\n\nvar _window2 = ___interopRequireDefault_57(_$window_66);\n\nfunction ___interopRequireDefault_57(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar __window_57 = function window(thing) {\n return thing === _window2[\"default\"].window || (0, ___isWindow_57[\"default\"])(thing);\n};\n\n_$is_57.window = __window_57;\n\nvar docFrag = function docFrag(thing) {\n return object(thing) && thing.nodeType === 11;\n};\n\n_$is_57.docFrag = docFrag;\n\nvar object = function object(thing) {\n return !!thing && _typeof(thing) === 'object';\n};\n\n_$is_57.object = object;\n\nvar func = function func(thing) {\n return typeof thing === 'function';\n};\n\n_$is_57.func = func;\n\nvar number = function number(thing) {\n return typeof thing === 'number';\n};\n\n_$is_57.number = number;\n\nvar bool = function bool(thing) {\n return typeof thing === 'boolean';\n};\n\n_$is_57.bool = bool;\n\nvar string = function string(thing) {\n return typeof thing === 'string';\n};\n\n_$is_57.string = string;\n\nvar element = function element(thing) {\n if (!thing || _typeof(thing) !== 'object') {\n return false;\n }\n\n var _window = _window2[\"default\"].getWindow(thing) || _window2[\"default\"].window;\n\n return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2\n : thing.nodeType === 1 && typeof thing.nodeName === 'string';\n};\n\n_$is_57.element = element;\n\nvar plainObject = function plainObject(thing) {\n return object(thing) && !!thing.constructor && /function Object\\b/.test(thing.constructor.toString());\n};\n\n_$is_57.plainObject = plainObject;\n\nvar array = function array(thing) {\n return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice);\n};\n\n_$is_57.array = array;\n\nvar _$browser_48 = {};\n\"use strict\";\n\nObject.defineProperty(_$browser_48, \"__esModule\", {\n value: true\n});\n_$browser_48[\"default\"] = void 0;\n\nvar _domObjects = ___interopRequireDefault_48(_$domObjects_50);\n\nvar is = _interopRequireWildcard(_$is_57);\n\nvar _window = ___interopRequireDefault_48(_$window_66);\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_48(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar browser = {\n init: __init_48,\n supportsTouch: null,\n supportsPointerEvent: null,\n isIOS7: null,\n isIOS: null,\n isIe9: null,\n isOperaMobile: null,\n prefixedMatchesSelector: null,\n pEventTypes: null,\n wheelEvent: null\n};\n\nfunction __init_48(window) {\n var Element = _domObjects[\"default\"].Element;\n var navigator = _window[\"default\"].window.navigator; // Does the browser support touch input?\n\n browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects[\"default\"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents\n\n browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects[\"default\"].PointerEvent;\n browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7\n\n browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\\d]/.test(navigator.appVersion);\n browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently\n\n browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector\n\n browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector';\n browser.pEventTypes = browser.supportsPointerEvent ? _domObjects[\"default\"].PointerEvent === window.MSPointerEvent ? {\n up: 'MSPointerUp',\n down: 'MSPointerDown',\n over: 'mouseover',\n out: 'mouseout',\n move: 'MSPointerMove',\n cancel: 'MSPointerCancel'\n } : {\n up: 'pointerup',\n down: 'pointerdown',\n over: 'pointerover',\n out: 'pointerout',\n move: 'pointermove',\n cancel: 'pointercancel'\n } : null; // because Webkit and Opera still use 'mousewheel' event type\n\n browser.wheelEvent = 'onmousewheel' in _domObjects[\"default\"].document ? 'mousewheel' : 'wheel';\n}\n\nvar ___default_48 = browser;\n_$browser_48[\"default\"] = ___default_48;\n\nvar _$domUtils_51 = {};\n\"use strict\";\n\nObject.defineProperty(_$domUtils_51, \"__esModule\", {\n value: true\n});\n_$domUtils_51.nodeContains = nodeContains;\n_$domUtils_51.closest = closest;\n_$domUtils_51.parentNode = parentNode;\n_$domUtils_51.matchesSelector = matchesSelector;\n_$domUtils_51.indexOfDeepestElement = indexOfDeepestElement;\n_$domUtils_51.matchesUpTo = matchesUpTo;\n_$domUtils_51.getActualElement = getActualElement;\n_$domUtils_51.getScrollXY = getScrollXY;\n_$domUtils_51.getElementClientRect = getElementClientRect;\n_$domUtils_51.getElementRect = getElementRect;\n_$domUtils_51.getPath = getPath;\n_$domUtils_51.trySelector = trySelector;\n\nvar _browser = ___interopRequireDefault_51(_$browser_48);\n\nvar ___domObjects_51 = ___interopRequireDefault_51(_$domObjects_50);\n\nvar __is_51 = ___interopRequireWildcard_51(_$is_57);\n\nvar ___window_51 = ___interopRequireWildcard_51(_$window_66);\n\nfunction ___getRequireWildcardCache_51() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction nodeContains(parent, child) {\n while (child) {\n if (child === parent) {\n return true;\n }\n\n child = child.parentNode;\n }\n\n return false;\n}\n\nfunction closest(element, selector) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return element;\n }\n\n element = parentNode(element);\n }\n\n return null;\n}\n\nfunction parentNode(node) {\n var parent = node.parentNode;\n\n if (__is_51.docFrag(parent)) {\n // skip past #shado-root fragments\n // tslint:disable-next-line\n while ((parent = parent.host) && __is_51.docFrag(parent)) {\n continue;\n }\n\n return parent;\n }\n\n return parent;\n}\n\nfunction matchesSelector(element, selector) {\n // remove /deep/ from selectors if shadowDOM polyfill is used\n if (___window_51[\"default\"].window !== ___window_51[\"default\"].realWindow) {\n selector = selector.replace(/\\/deep\\//g, ' ');\n }\n\n return element[_browser[\"default\"].prefixedMatchesSelector](selector);\n}\n\nvar getParent = function getParent(el) {\n return el.parentNode ? el.parentNode : el.host;\n}; // Test for the element that's \"above\" all other qualifiers\n\n\nfunction indexOfDeepestElement(elements) {\n var deepestZoneParents = [];\n var deepestZone = elements[0];\n var index = deepestZone ? 0 : -1;\n var i;\n var n;\n\n for (i = 1; i < elements.length; i++) {\n var dropzone = elements[i]; // an element might belong to multiple selector dropzones\n\n if (!dropzone || dropzone === deepestZone) {\n continue;\n }\n\n if (!deepestZone) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // check if the deepest or current are document.documentElement or document.rootElement\n // - if the current dropzone is, do nothing and continue\n\n\n if (dropzone.parentNode === dropzone.ownerDocument) {\n continue;\n } // - if deepest is, update with the current dropzone and continue to next\n else if (deepestZone.parentNode === dropzone.ownerDocument) {\n deepestZone = dropzone;\n index = i;\n continue;\n } // compare zIndex of siblings\n\n\n if (dropzone.parentNode === deepestZone.parentNode) {\n var deepestZIndex = parseInt((0, ___window_51.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0;\n var dropzoneZIndex = parseInt((0, ___window_51.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0;\n\n if (dropzoneZIndex >= deepestZIndex) {\n deepestZone = dropzone;\n index = i;\n }\n\n continue;\n } // populate the ancestry array for the latest deepest dropzone\n\n\n if (!deepestZoneParents.length) {\n var _parent = deepestZone;\n var parentParent = void 0;\n\n while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) {\n deepestZoneParents.unshift(_parent);\n _parent = parentParent;\n }\n }\n\n var parent = void 0; // if this element is an svg element and the current deepest is an\n // HTMLElement\n\n if (deepestZone instanceof ___domObjects_51[\"default\"].HTMLElement && dropzone instanceof ___domObjects_51[\"default\"].SVGElement && !(dropzone instanceof ___domObjects_51[\"default\"].SVGSVGElement)) {\n if (dropzone === deepestZone.parentNode) {\n continue;\n }\n\n parent = dropzone.ownerSVGElement;\n } else {\n parent = dropzone;\n }\n\n var dropzoneParents = [];\n\n while (parent.parentNode !== parent.ownerDocument) {\n dropzoneParents.unshift(parent);\n parent = getParent(parent);\n }\n\n n = 0; // get (position of last common ancestor) + 1\n\n while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) {\n n++;\n }\n\n var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]];\n var child = parents[0].lastChild;\n\n while (child) {\n if (child === parents[1]) {\n deepestZone = dropzone;\n index = i;\n deepestZoneParents = dropzoneParents;\n break;\n } else if (child === parents[2]) {\n break;\n }\n\n child = child.previousSibling;\n }\n }\n\n return index;\n}\n\nfunction matchesUpTo(element, selector, limit) {\n while (__is_51.element(element)) {\n if (matchesSelector(element, selector)) {\n return true;\n }\n\n element = parentNode(element);\n\n if (element === limit) {\n return matchesSelector(element, selector);\n }\n }\n\n return false;\n}\n\nfunction getActualElement(element) {\n return element instanceof ___domObjects_51[\"default\"].SVGElementInstance ? element.correspondingUseElement : element;\n}\n\nfunction getScrollXY(relevantWindow) {\n relevantWindow = relevantWindow || ___window_51[\"default\"].window;\n return {\n x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft,\n y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop\n };\n}\n\nfunction getElementClientRect(element) {\n var clientRect = element instanceof ___domObjects_51[\"default\"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0];\n return clientRect && {\n left: clientRect.left,\n right: clientRect.right,\n top: clientRect.top,\n bottom: clientRect.bottom,\n width: clientRect.width || clientRect.right - clientRect.left,\n height: clientRect.height || clientRect.bottom - clientRect.top\n };\n}\n\nfunction getElementRect(element) {\n var clientRect = getElementClientRect(element);\n\n if (!_browser[\"default\"].isIOS7 && clientRect) {\n var scroll = getScrollXY(___window_51[\"default\"].getWindow(element));\n clientRect.left += scroll.x;\n clientRect.right += scroll.x;\n clientRect.top += scroll.y;\n clientRect.bottom += scroll.y;\n }\n\n return clientRect;\n}\n\nfunction getPath(node) {\n var path = [];\n\n while (node) {\n path.push(node);\n node = parentNode(node);\n }\n\n return path;\n}\n\nfunction trySelector(value) {\n if (!__is_51.string(value)) {\n return false;\n } // an exception will be raised if it is invalid\n\n\n ___domObjects_51[\"default\"].document.querySelector(value);\n\n return true;\n}\n\nvar _$clone_49 = {};\n\"use strict\";\n\nObject.defineProperty(_$clone_49, \"__esModule\", {\n value: true\n});\n_$clone_49[\"default\"] = clone;\n\nvar arr = ___interopRequireWildcard_49(_$arr_47);\n\nvar __is_49 = ___interopRequireWildcard_49(_$is_57);\n\nfunction ___getRequireWildcardCache_49() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_49 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_49(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_49(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction clone(source) {\n var dest = {};\n\n for (var prop in source) {\n var value = source[prop];\n\n if (__is_49.plainObject(value)) {\n dest[prop] = clone(value);\n } else if (__is_49.array(value)) {\n dest[prop] = arr.from(value);\n } else {\n dest[prop] = value;\n }\n }\n\n return dest;\n}\n\nvar _$pointerExtend_60 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerExtend_60, \"__esModule\", {\n value: true\n});\n_$pointerExtend_60[\"default\"] = void 0;\n\nfunction pointerExtend(dest, source) {\n for (var prop in source) {\n var prefixedPropREs = pointerExtend.prefixedPropREs;\n var deprecated = false; // skip deprecated prefixed properties\n\n for (var vendor in prefixedPropREs) {\n if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) {\n deprecated = true;\n break;\n }\n }\n\n if (!deprecated && typeof source[prop] !== 'function') {\n dest[prop] = source[prop];\n }\n }\n\n return dest;\n}\n\npointerExtend.prefixedPropREs = {\n webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,\n moz: /(Pressure)$/\n};\nvar ___default_60 = pointerExtend;\n_$pointerExtend_60[\"default\"] = ___default_60;\n\nvar _$hypot_55 = {};\n\"use strict\";\n\nObject.defineProperty(_$hypot_55, \"__esModule\", {\n value: true\n});\n_$hypot_55[\"default\"] = void 0;\n\nvar ___default_55 = function _default(x, y) {\n return Math.sqrt(x * x + y * y);\n};\n\n_$hypot_55[\"default\"] = ___default_55;\n\nvar _$pointerUtils_61 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerUtils_61, \"__esModule\", {\n value: true\n});\n_$pointerUtils_61[\"default\"] = void 0;\n\nvar ___browser_61 = ___interopRequireDefault_61(_$browser_48);\n\nvar ___domObjects_61 = ___interopRequireDefault_61(_$domObjects_50);\n\nvar domUtils = ___interopRequireWildcard_61(_$domUtils_51);\n\nvar _hypot = ___interopRequireDefault_61(_$hypot_55);\n\nvar __is_61 = ___interopRequireWildcard_61(_$is_57);\n\nvar _pointerExtend = ___interopRequireDefault_61(_$pointerExtend_60);\n\nfunction ___getRequireWildcardCache_61() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_61 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_61(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_61(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_61(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar pointerUtils = {\n copyCoords: function copyCoords(dest, src) {\n dest.page = dest.page || {};\n dest.page.x = src.page.x;\n dest.page.y = src.page.y;\n dest.client = dest.client || {};\n dest.client.x = src.client.x;\n dest.client.y = src.client.y;\n dest.timeStamp = src.timeStamp;\n },\n setCoordDeltas: function setCoordDeltas(targetObj, prev, cur) {\n targetObj.page.x = cur.page.x - prev.page.x;\n targetObj.page.y = cur.page.y - prev.page.y;\n targetObj.client.x = cur.client.x - prev.client.x;\n targetObj.client.y = cur.client.y - prev.client.y;\n targetObj.timeStamp = cur.timeStamp - prev.timeStamp;\n },\n setCoordVelocity: function setCoordVelocity(targetObj, delta) {\n var dt = Math.max(delta.timeStamp / 1000, 0.001);\n targetObj.page.x = delta.page.x / dt;\n targetObj.page.y = delta.page.y / dt;\n targetObj.client.x = delta.client.x / dt;\n targetObj.client.y = delta.client.y / dt;\n targetObj.timeStamp = dt;\n },\n isNativePointer: function isNativePointer(pointer) {\n return pointer instanceof ___domObjects_61[\"default\"].Event || pointer instanceof ___domObjects_61[\"default\"].Touch;\n },\n // Get specified X/Y coords for mouse or event.touches[0]\n getXY: function getXY(type, pointer, xy) {\n xy = xy || {};\n type = type || 'page';\n xy.x = pointer[type + 'X'];\n xy.y = pointer[type + 'Y'];\n return xy;\n },\n getPageXY: function getPageXY(pointer, page) {\n page = page || {\n x: 0,\n y: 0\n }; // Opera Mobile handles the viewport and scrolling oddly\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n pointerUtils.getXY('screen', pointer, page);\n page.x += window.scrollX;\n page.y += window.scrollY;\n } else {\n pointerUtils.getXY('page', pointer, page);\n }\n\n return page;\n },\n getClientXY: function getClientXY(pointer, client) {\n client = client || {};\n\n if (___browser_61[\"default\"].isOperaMobile && pointerUtils.isNativePointer(pointer)) {\n // Opera Mobile handles the viewport and scrolling oddly\n pointerUtils.getXY('screen', pointer, client);\n } else {\n pointerUtils.getXY('client', pointer, client);\n }\n\n return client;\n },\n getPointerId: function getPointerId(pointer) {\n return __is_61.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier;\n },\n setCoords: function setCoords(targetObj, pointers, timeStamp) {\n var pointer = pointers.length > 1 ? pointerUtils.pointerAverage(pointers) : pointers[0];\n var tmpXY = {};\n pointerUtils.getPageXY(pointer, tmpXY);\n targetObj.page.x = tmpXY.x;\n targetObj.page.y = tmpXY.y;\n pointerUtils.getClientXY(pointer, tmpXY);\n targetObj.client.x = tmpXY.x;\n targetObj.client.y = tmpXY.y;\n targetObj.timeStamp = timeStamp;\n },\n pointerExtend: _pointerExtend[\"default\"],\n getTouchPair: function getTouchPair(event) {\n var touches = []; // array of touches is supplied\n\n if (__is_61.array(event)) {\n touches[0] = event[0];\n touches[1] = event[1];\n } // an event\n else {\n if (event.type === 'touchend') {\n if (event.touches.length === 1) {\n touches[0] = event.touches[0];\n touches[1] = event.changedTouches[0];\n } else if (event.touches.length === 0) {\n touches[0] = event.changedTouches[0];\n touches[1] = event.changedTouches[1];\n }\n } else {\n touches[0] = event.touches[0];\n touches[1] = event.touches[1];\n }\n }\n\n return touches;\n },\n pointerAverage: function pointerAverage(pointers) {\n var average = {\n pageX: 0,\n pageY: 0,\n clientX: 0,\n clientY: 0,\n screenX: 0,\n screenY: 0\n };\n\n for (var _i = 0; _i < pointers.length; _i++) {\n var _ref;\n\n _ref = pointers[_i];\n var pointer = _ref;\n\n for (var _prop in average) {\n average[_prop] += pointer[_prop];\n }\n }\n\n for (var prop in average) {\n average[prop] /= pointers.length;\n }\n\n return average;\n },\n touchBBox: function touchBBox(event) {\n if (!event.length && !(event.touches && event.touches.length > 1)) {\n return null;\n }\n\n var touches = pointerUtils.getTouchPair(event);\n var minX = Math.min(touches[0].pageX, touches[1].pageX);\n var minY = Math.min(touches[0].pageY, touches[1].pageY);\n var maxX = Math.max(touches[0].pageX, touches[1].pageX);\n var maxY = Math.max(touches[0].pageY, touches[1].pageY);\n return {\n x: minX,\n y: minY,\n left: minX,\n top: minY,\n right: maxX,\n bottom: maxY,\n width: maxX - minX,\n height: maxY - minY\n };\n },\n touchDistance: function touchDistance(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[0][sourceX] - touches[1][sourceX];\n var dy = touches[0][sourceY] - touches[1][sourceY];\n return (0, _hypot[\"default\"])(dx, dy);\n },\n touchAngle: function touchAngle(event, deltaSource) {\n var sourceX = deltaSource + 'X';\n var sourceY = deltaSource + 'Y';\n var touches = pointerUtils.getTouchPair(event);\n var dx = touches[1][sourceX] - touches[0][sourceX];\n var dy = touches[1][sourceY] - touches[0][sourceY];\n var angle = 180 * Math.atan2(dy, dx) / Math.PI;\n return angle;\n },\n getPointerType: function getPointerType(pointer) {\n return __is_61.string(pointer.pointerType) ? pointer.pointerType : __is_61.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the \"pointer\" must\n // be either a MouseEvent, TouchEvent, or Touch object\n : /touch/.test(pointer.type) || pointer instanceof ___domObjects_61[\"default\"].Touch ? 'touch' : 'mouse';\n },\n // [ event.target, event.currentTarget ]\n getEventTargets: function getEventTargets(event) {\n var path = __is_61.func(event.composedPath) ? event.composedPath() : event.path;\n return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)];\n },\n newCoords: function newCoords() {\n return {\n page: {\n x: 0,\n y: 0\n },\n client: {\n x: 0,\n y: 0\n },\n timeStamp: 0\n };\n },\n coordsToEvent: function coordsToEvent(coords) {\n var event = {\n coords: coords,\n\n get page() {\n return this.coords.page;\n },\n\n get client() {\n return this.coords.client;\n },\n\n get timeStamp() {\n return this.coords.timeStamp;\n },\n\n get pageX() {\n return this.coords.page.x;\n },\n\n get pageY() {\n return this.coords.page.y;\n },\n\n get clientX() {\n return this.coords.client.x;\n },\n\n get clientY() {\n return this.coords.client.y;\n },\n\n get pointerId() {\n return this.coords.pointerId;\n },\n\n get target() {\n return this.coords.target;\n },\n\n get type() {\n return this.coords.type;\n },\n\n get pointerType() {\n return this.coords.pointerType;\n },\n\n get buttons() {\n return this.coords.buttons;\n }\n\n };\n return event;\n }\n};\nvar ___default_61 = pointerUtils;\n_$pointerUtils_61[\"default\"] = ___default_61;\n\nvar _$events_52 = {};\n\"use strict\";\n\nObject.defineProperty(_$events_52, \"__esModule\", {\n value: true\n});\n_$events_52[\"default\"] = _$events_52.FakeEvent = void 0;\n\n/* removed: var _$arr_47 = require(\"./arr\"); */;\n\nvar __domUtils_52 = ___interopRequireWildcard_52(_$domUtils_51);\n\nvar __is_52 = ___interopRequireWildcard_52(_$is_57);\n\nvar ___pointerExtend_52 = ___interopRequireDefault_52(_$pointerExtend_60);\n\nvar _pointerUtils = ___interopRequireDefault_52(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_52(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_52() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_52 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_52(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_52(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar elements = [];\nvar targets = [];\nvar delegatedEvents = {};\nvar documents = [];\n\nfunction add(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target) {\n target = {\n events: {},\n typeCount: 0\n };\n elementIndex = elements.push(element) - 1;\n targets.push(target);\n }\n\n if (!target.events[type]) {\n target.events[type] = [];\n target.typeCount++;\n }\n\n if (!(0, _$arr_47.contains)(target.events[type], listener)) {\n element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].push(listener);\n }\n}\n\nfunction __remove_52(element, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var elementIndex = elements.indexOf(element);\n var target = targets[elementIndex];\n\n if (!target || !target.events) {\n return;\n }\n\n if (type === 'all') {\n for (type in target.events) {\n if (target.events.hasOwnProperty(type)) {\n __remove_52(element, type, 'all');\n }\n }\n\n return;\n }\n\n if (target.events[type]) {\n var len = target.events[type].length;\n\n if (listener === 'all') {\n for (var i = 0; i < len; i++) {\n __remove_52(element, type, target.events[type][i], options);\n }\n\n return;\n } else {\n for (var _i = 0; _i < len; _i++) {\n if (target.events[type][_i] === listener) {\n element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture);\n target.events[type].splice(_i, 1);\n break;\n }\n }\n }\n\n if (target.events[type] && target.events[type].length === 0) {\n target.events[type] = null;\n target.typeCount--;\n }\n }\n\n if (!target.typeCount) {\n targets.splice(elementIndex, 1);\n elements.splice(elementIndex, 1);\n }\n}\n\nfunction addDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n\n if (!delegatedEvents[type]) {\n delegatedEvents[type] = {\n contexts: [],\n listeners: [],\n selectors: []\n }; // add delegate listener functions\n\n for (var _i2 = 0; _i2 < documents.length; _i2++) {\n var _ref;\n\n _ref = documents[_i2];\n var doc = _ref;\n add(doc, type, delegateListener);\n add(doc, type, delegateUseCapture, true);\n }\n }\n\n var delegated = delegatedEvents[type];\n var index;\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n break;\n }\n }\n\n if (index === -1) {\n index = delegated.selectors.length;\n delegated.selectors.push(selector);\n delegated.contexts.push(context);\n delegated.listeners.push([]);\n } // keep listener and capture and passive flags\n\n\n delegated.listeners[index].push([listener, !!options.capture, options.passive]);\n}\n\nfunction removeDelegate(selector, context, type, listener, optionalArg) {\n var options = getOptions(optionalArg);\n var delegated = delegatedEvents[type];\n var matchFound = false;\n var index;\n\n if (!delegated) {\n return;\n } // count from last index of delegated to 0\n\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n // look for matching selector and context Node\n if (delegated.selectors[index] === selector && delegated.contexts[index] === context) {\n var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive]\n\n for (var i = listeners.length - 1; i >= 0; i--) {\n var _listeners$i = _slicedToArray(listeners[i], 3),\n fn = _listeners$i[0],\n capture = _listeners$i[1],\n passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match\n\n\n if (fn === listener && capture === !!options.capture && passive === options.passive) {\n // remove the listener from the array of listeners\n listeners.splice(i, 1); // if all listeners for this interactable have been removed\n // remove the interactable from the delegated arrays\n\n if (!listeners.length) {\n delegated.selectors.splice(index, 1);\n delegated.contexts.splice(index, 1);\n delegated.listeners.splice(index, 1); // remove delegate function from context\n\n __remove_52(context, type, delegateListener);\n __remove_52(context, type, delegateUseCapture, true); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegatedEvents[type] = null;\n }\n } // only remove one listener\n\n\n matchFound = true;\n break;\n }\n }\n\n if (matchFound) {\n break;\n }\n }\n }\n} // bound to the interactable context when a DOM event\n// listener is added to a selector interactable\n\n\nfunction delegateListener(event, optionalArg) {\n var options = getOptions(optionalArg);\n var fakeEvent = new FakeEvent(event);\n var delegated = delegatedEvents[event.type];\n\n var _pointerUtils$getEven = _pointerUtils[\"default\"].getEventTargets(event),\n _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1),\n eventTarget = _pointerUtils$getEven2[0];\n\n var element = eventTarget; // climb up document tree looking for selector matches\n\n while (__is_52.element(element)) {\n for (var i = 0; i < delegated.selectors.length; i++) {\n var selector = delegated.selectors[i];\n var context = delegated.contexts[i];\n\n if (__domUtils_52.matchesSelector(element, selector) && __domUtils_52.nodeContains(context, eventTarget) && __domUtils_52.nodeContains(context, element)) {\n var listeners = delegated.listeners[i];\n fakeEvent.currentTarget = element;\n\n for (var _i3 = 0; _i3 < listeners.length; _i3++) {\n var _ref2;\n\n _ref2 = listeners[_i3];\n\n var _ref3 = _ref2,\n _ref4 = _slicedToArray(_ref3, 3),\n fn = _ref4[0],\n capture = _ref4[1],\n passive = _ref4[2];\n\n if (capture === !!options.capture && passive === options.passive) {\n fn(fakeEvent);\n }\n }\n }\n }\n\n element = __domUtils_52.parentNode(element);\n }\n}\n\nfunction delegateUseCapture(event) {\n return delegateListener.call(this, event, true);\n}\n\nfunction getOptions(param) {\n return __is_52.object(param) ? param : {\n capture: param\n };\n}\n\nvar FakeEvent =\n/*#__PURE__*/\nfunction () {\n function FakeEvent(originalEvent) {\n _classCallCheck(this, FakeEvent);\n\n this.originalEvent = originalEvent; // duplicate the event so that currentTarget can be changed\n\n (0, ___pointerExtend_52[\"default\"])(this, originalEvent);\n }\n\n _createClass(FakeEvent, [{\n key: \"preventOriginalDefault\",\n value: function preventOriginalDefault() {\n this.originalEvent.preventDefault();\n }\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.originalEvent.stopPropagation();\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.originalEvent.stopImmediatePropagation();\n }\n }]);\n\n return FakeEvent;\n}();\n\n_$events_52.FakeEvent = FakeEvent;\nvar events = {\n add: add,\n remove: __remove_52,\n addDelegate: addDelegate,\n removeDelegate: removeDelegate,\n delegateListener: delegateListener,\n delegateUseCapture: delegateUseCapture,\n delegatedEvents: delegatedEvents,\n documents: documents,\n supportsOptions: false,\n supportsPassive: false,\n _elements: elements,\n _targets: targets,\n init: function init(window) {\n window.document.createElement('div').addEventListener('test', null, {\n get capture() {\n return events.supportsOptions = true;\n },\n\n get passive() {\n return events.supportsPassive = true;\n }\n\n });\n }\n};\nvar ___default_52 = events;\n_$events_52[\"default\"] = ___default_52;\n\nvar _$extend_53 = {};\n\"use strict\";\n\nObject.defineProperty(_$extend_53, \"__esModule\", {\n value: true\n});\n_$extend_53[\"default\"] = extend;\n\nfunction extend(dest, source) {\n for (var prop in source) {\n dest[prop] = source[prop];\n }\n\n return dest;\n}\n\nvar _$rect_63 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_63, \"__esModule\", {\n value: true\n});\n_$rect_63.getStringOptionResult = getStringOptionResult;\n_$rect_63.resolveRectLike = resolveRectLike;\n_$rect_63.rectToXY = rectToXY;\n_$rect_63.xywhToTlbr = xywhToTlbr;\n_$rect_63.tlbrToXywh = tlbrToXywh;\n_$rect_63[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"./domUtils\"); */;\n\nvar _extend = ___interopRequireDefault_63(_$extend_53);\n\nvar __is_63 = ___interopRequireWildcard_63(_$is_57);\n\nfunction ___getRequireWildcardCache_63() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_63 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_63(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_63(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_63(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction getStringOptionResult(value, target, element) {\n if (value === 'parent') {\n return (0, _$domUtils_51.parentNode)(element);\n }\n\n if (value === 'self') {\n return target.getRect(element);\n }\n\n return (0, _$domUtils_51.closest)(element, value);\n}\n\nfunction resolveRectLike(value, target, element, functionArgs) {\n if (__is_63.string(value)) {\n value = getStringOptionResult(value, target, element);\n } else if (__is_63.func(value)) {\n value = value.apply(void 0, _toConsumableArray(functionArgs));\n }\n\n if (__is_63.element(value)) {\n value = (0, _$domUtils_51.getElementRect)(value);\n }\n\n return value;\n}\n\nfunction rectToXY(rect) {\n return rect && {\n x: 'x' in rect ? rect.x : rect.left,\n y: 'y' in rect ? rect.y : rect.top\n };\n}\n\nfunction xywhToTlbr(rect) {\n if (rect && !('left' in rect && 'top' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.left = rect.x || 0;\n rect.top = rect.y || 0;\n rect.right = rect.right || rect.left + rect.width;\n rect.bottom = rect.bottom || rect.top + rect.height;\n }\n\n return rect;\n}\n\nfunction tlbrToXywh(rect) {\n if (rect && !('x' in rect && 'y' in rect)) {\n rect = (0, _extend[\"default\"])({}, rect);\n rect.x = rect.left || 0;\n rect.y = rect.top || 0;\n rect.width = rect.width || rect.right - rect.x;\n rect.height = rect.height || rect.bottom - rect.y;\n }\n\n return rect;\n}\n\nvar ___default_63 = {\n getStringOptionResult: getStringOptionResult,\n resolveRectLike: resolveRectLike,\n rectToXY: rectToXY,\n xywhToTlbr: xywhToTlbr,\n tlbrToXywh: tlbrToXywh\n};\n_$rect_63[\"default\"] = ___default_63;\n\nvar _$getOriginXY_54 = {};\n\"use strict\";\n\nObject.defineProperty(_$getOriginXY_54, \"__esModule\", {\n value: true\n});\n_$getOriginXY_54[\"default\"] = ___default_54;\n\n/* removed: var _$rect_63 = require(\"./rect\"); */;\n\nfunction ___default_54(target, element, action) {\n var actionOptions = target.options[action];\n var actionOrigin = actionOptions && actionOptions.origin;\n var origin = actionOrigin || target.options.origin;\n var originRect = (0, _$rect_63.resolveRectLike)(origin, target, element, [target && element]);\n return (0, _$rect_63.rectToXY)(originRect) || {\n x: 0,\n y: 0\n };\n}\n\nvar _$normalizeListeners_59 = {};\n\"use strict\";\n\nObject.defineProperty(_$normalizeListeners_59, \"__esModule\", {\n value: true\n});\n_$normalizeListeners_59[\"default\"] = normalize;\n\nvar ___extend_59 = ___interopRequireDefault_59(_$extend_53);\n\nvar __is_59 = ___interopRequireWildcard_59(_$is_57);\n\nfunction ___getRequireWildcardCache_59() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_59 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_59(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_59(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_59(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction normalize(type, listeners, result) {\n result = result || {};\n\n if (__is_59.string(type) && type.search(' ') !== -1) {\n type = split(type);\n }\n\n if (__is_59.array(type)) {\n return type.reduce(function (acc, t) {\n return (0, ___extend_59[\"default\"])(acc, normalize(t, listeners, result));\n }, result);\n } // ({ type: fn }) -> ('', { type: fn })\n\n\n if (__is_59.object(type)) {\n listeners = type;\n type = '';\n }\n\n if (__is_59.func(listeners)) {\n result[type] = result[type] || [];\n result[type].push(listeners);\n } else if (__is_59.array(listeners)) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var l = _ref;\n normalize(type, l, result);\n }\n } else if (__is_59.object(listeners)) {\n for (var prefix in listeners) {\n var combinedTypes = split(prefix).map(function (p) {\n return \"\".concat(type).concat(p);\n });\n normalize(combinedTypes, listeners[prefix], result);\n }\n }\n\n return result;\n}\n\nfunction split(type) {\n return type.trim().split(/ +/);\n}\n\nvar _$raf_62 = {};\n\"use strict\";\n\nObject.defineProperty(_$raf_62, \"__esModule\", {\n value: true\n});\n_$raf_62[\"default\"] = void 0;\nvar lastTime = 0;\n\nvar _request;\n\nvar _cancel;\n\nfunction __init_62(window) {\n _request = window.requestAnimationFrame;\n _cancel = window.cancelAnimationFrame;\n\n if (!_request) {\n var vendors = ['ms', 'moz', 'webkit', 'o'];\n\n for (var _i = 0; _i < vendors.length; _i++) {\n var vendor = vendors[_i];\n _request = window[\"\".concat(vendor, \"RequestAnimationFrame\")];\n _cancel = window[\"\".concat(vendor, \"CancelAnimationFrame\")] || window[\"\".concat(vendor, \"CancelRequestAnimationFrame\")];\n }\n }\n\n if (!_request) {\n _request = function request(callback) {\n var currTime = Date.now();\n var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal\n\n var token = setTimeout(function () {\n callback(currTime + timeToCall);\n }, timeToCall);\n lastTime = currTime + timeToCall;\n return token;\n };\n\n _cancel = function cancel(token) {\n return clearTimeout(token);\n };\n }\n}\n\nvar ___default_62 = {\n request: function request(callback) {\n return _request(callback);\n },\n cancel: function cancel(token) {\n return _cancel(token);\n },\n init: __init_62\n};\n_$raf_62[\"default\"] = ___default_62;\n\nvar _$Signals_46 = {};\n\"use strict\";\n\nObject.defineProperty(_$Signals_46, \"__esModule\", {\n value: true\n});\n_$Signals_46[\"default\"] = void 0;\n\nfunction ___classCallCheck_46(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_46(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_46(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_46(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_46(Constructor, staticProps); return Constructor; }\n\nvar Signals =\n/*#__PURE__*/\nfunction () {\n function Signals() {\n ___classCallCheck_46(this, Signals);\n\n this.listeners = {};\n }\n\n ___createClass_46(Signals, [{\n key: \"on\",\n value: function on(name, listener) {\n if (!this.listeners[name]) {\n this.listeners[name] = [listener];\n return;\n }\n\n this.listeners[name].push(listener);\n }\n }, {\n key: \"off\",\n value: function off(name, listener) {\n if (!this.listeners[name]) {\n return;\n }\n\n var index = this.listeners[name].indexOf(listener);\n\n if (index !== -1) {\n this.listeners[name].splice(index, 1);\n }\n }\n }, {\n key: \"fire\",\n value: function fire(name, arg) {\n var targetListeners = this.listeners[name];\n\n if (!targetListeners) {\n return;\n }\n\n for (var _i = 0; _i < targetListeners.length; _i++) {\n var _ref;\n\n _ref = targetListeners[_i];\n var listener = _ref;\n\n if (listener(arg, name) === false) {\n return false;\n }\n }\n }\n }]);\n\n return Signals;\n}();\n\nvar ___default_46 = Signals;\n_$Signals_46[\"default\"] = ___default_46;\n\nvar _$utils_56 = {};\n\"use strict\";\n\nObject.defineProperty(_$utils_56, \"__esModule\", {\n value: true\n});\n_$utils_56.warnOnce = warnOnce;\n_$utils_56._getQBezierValue = _getQBezierValue;\n_$utils_56.getQuadraticCurvePoint = getQuadraticCurvePoint;\n_$utils_56.easeOutQuad = easeOutQuad;\n_$utils_56.copyAction = copyAction;\nObject.defineProperty(_$utils_56, \"win\", {\n enumerable: true,\n get: function get() {\n return ___window_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"browser\", {\n enumerable: true,\n get: function get() {\n return ___browser_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"clone\", {\n enumerable: true,\n get: function get() {\n return _clone[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"events\", {\n enumerable: true,\n get: function get() {\n return _events[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"extend\", {\n enumerable: true,\n get: function get() {\n return ___extend_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"getOriginXY\", {\n enumerable: true,\n get: function get() {\n return _getOriginXY[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"hypot\", {\n enumerable: true,\n get: function get() {\n return ___hypot_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"normalizeListeners\", {\n enumerable: true,\n get: function get() {\n return _normalizeListeners[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"pointer\", {\n enumerable: true,\n get: function get() {\n return ___pointerUtils_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"raf\", {\n enumerable: true,\n get: function get() {\n return _raf[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"rect\", {\n enumerable: true,\n get: function get() {\n return ___rect_56[\"default\"];\n }\n});\nObject.defineProperty(_$utils_56, \"Signals\", {\n enumerable: true,\n get: function get() {\n return _Signals[\"default\"];\n }\n});\n_$utils_56.is = _$utils_56.dom = _$utils_56.arr = void 0;\n\nvar __arr_56 = ___interopRequireWildcard_56(_$arr_47);\n\n_$utils_56.arr = __arr_56;\n\nvar dom = ___interopRequireWildcard_56(_$domUtils_51);\n\n_$utils_56.dom = dom;\n\nvar __is_56 = ___interopRequireWildcard_56(_$is_57);\n\n_$utils_56.is = __is_56;\n\nvar ___window_56 = ___interopRequireDefault_56(_$window_66);\n\nvar ___browser_56 = ___interopRequireDefault_56(_$browser_48);\n\nvar _clone = ___interopRequireDefault_56(_$clone_49);\n\nvar _events = ___interopRequireDefault_56(_$events_52);\n\nvar ___extend_56 = ___interopRequireDefault_56(_$extend_53);\n\nvar _getOriginXY = ___interopRequireDefault_56(_$getOriginXY_54);\n\nvar ___hypot_56 = ___interopRequireDefault_56(_$hypot_55);\n\nvar _normalizeListeners = ___interopRequireDefault_56(_$normalizeListeners_59);\n\nvar ___pointerUtils_56 = ___interopRequireDefault_56(_$pointerUtils_61);\n\nvar _raf = ___interopRequireDefault_56(_$raf_62);\n\nvar ___rect_56 = ___interopRequireDefault_56(_$rect_63);\n\nvar _Signals = ___interopRequireDefault_56(_$Signals_46);\n\nfunction ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_56() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_56 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_56(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_56(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction warnOnce(method, message) {\n var warned = false; // eslint-disable-next-line no-shadow\n\n return function () {\n if (!warned) {\n ___window_56[\"default\"].window.console.warn(message);\n\n warned = true;\n }\n\n return method.apply(this, arguments);\n };\n} // http://stackoverflow.com/a/5634528/2280888\n\n\nfunction _getQBezierValue(t, p1, p2, p3) {\n var iT = 1 - t;\n return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3;\n}\n\nfunction getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) {\n return {\n x: _getQBezierValue(position, startX, cpX, endX),\n y: _getQBezierValue(position, startY, cpY, endY)\n };\n} // http://gizma.com/easing/\n\n\nfunction easeOutQuad(t, b, c, d) {\n t /= d;\n return -c * t * (t - 2) + b;\n}\n\nfunction copyAction(dest, src) {\n dest.name = src.name;\n dest.axis = src.axis;\n dest.edges = src.edges;\n return dest;\n}\n\nvar _$defaultOptions_20 = {};\n\"use strict\";\n\nObject.defineProperty(_$defaultOptions_20, \"__esModule\", {\n value: true\n});\n_$defaultOptions_20[\"default\"] = _$defaultOptions_20.defaults = void 0;\n// tslint:disable no-empty-interface\nvar defaults = {\n base: {\n preventDefault: 'auto',\n deltaSource: 'page'\n },\n perAction: {\n enabled: false,\n origin: {\n x: 0,\n y: 0\n }\n },\n actions: {}\n};\n_$defaultOptions_20.defaults = defaults;\nvar ___default_20 = defaults;\n_$defaultOptions_20[\"default\"] = ___default_20;\n\nvar _$Eventable_14 = {};\n\"use strict\";\n\nObject.defineProperty(_$Eventable_14, \"__esModule\", {\n value: true\n});\n_$Eventable_14[\"default\"] = void 0;\n\nvar __arr_14 = ___interopRequireWildcard_14(_$arr_47);\n\nvar ___extend_14 = ___interopRequireDefault_14(_$extend_53);\n\nvar ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_59);\n\nfunction ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_14() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; }\n\nfunction fireUntilImmediateStopped(event, listeners) {\n for (var _i = 0; _i < listeners.length; _i++) {\n var _ref;\n\n _ref = listeners[_i];\n var listener = _ref;\n\n if (event.immediatePropagationStopped) {\n break;\n }\n\n listener(event);\n }\n}\n\nvar Eventable =\n/*#__PURE__*/\nfunction () {\n function Eventable(options) {\n ___classCallCheck_14(this, Eventable);\n\n this.types = {};\n this.propagationStopped = false;\n this.immediatePropagationStopped = false;\n this.options = (0, ___extend_14[\"default\"])({}, options || {});\n }\n\n ___createClass_14(Eventable, [{\n key: \"fire\",\n value: function fire(event) {\n var listeners;\n var global = this.global; // Interactable#on() listeners\n // tslint:disable no-conditional-assignment\n\n if (listeners = this.types[event.type]) {\n fireUntilImmediateStopped(event, listeners);\n } // interact.on() listeners\n\n\n if (!event.propagationStopped && global && (listeners = global[event.type])) {\n fireUntilImmediateStopped(event, listeners);\n }\n }\n }, {\n key: \"on\",\n value: function on(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]);\n }\n }\n }, {\n key: \"off\",\n value: function off(type, listener) {\n var listeners = (0, ___normalizeListeners_14[\"default\"])(type, listener);\n\n for (type in listeners) {\n var eventList = this.types[type];\n\n if (!eventList || !eventList.length) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var subListener = _ref2;\n var index = eventList.indexOf(subListener);\n\n if (index !== -1) {\n eventList.splice(index, 1);\n }\n }\n }\n }\n }, {\n key: \"getRect\",\n value: function getRect(_element) {\n return null;\n }\n }]);\n\n return Eventable;\n}();\n\nvar ___default_14 = Eventable;\n_$Eventable_14[\"default\"] = ___default_14;\n\nvar _$Interactable_16 = {};\n\"use strict\";\n\nObject.defineProperty(_$Interactable_16, \"__esModule\", {\n value: true\n});\n_$Interactable_16[\"default\"] = _$Interactable_16.Interactable = void 0;\n\nvar __arr_16 = ___interopRequireWildcard_16(_$arr_47);\n\nvar ___browser_16 = ___interopRequireDefault_16(_$browser_48);\n\nvar ___clone_16 = ___interopRequireDefault_16(_$clone_49);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_16 = ___interopRequireDefault_16(_$events_52);\n\nvar ___extend_16 = ___interopRequireDefault_16(_$extend_53);\n\nvar __is_16 = ___interopRequireWildcard_16(_$is_57);\n\nvar ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_59);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nvar _Eventable = ___interopRequireDefault_16(_$Eventable_14);\n\nfunction ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_16() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; }\n\n/** */\nvar Interactable =\n/*#__PURE__*/\nfunction () {\n /** */\n function Interactable(target, options, defaultContext) {\n ___classCallCheck_16(this, Interactable);\n\n this.events = new _Eventable[\"default\"]();\n this._actions = options.actions;\n this.target = target;\n this._context = options.context || defaultContext;\n this._win = (0, _$window_66.getWindow)((0, _$domUtils_51.trySelector)(target) ? this._context : target);\n this._doc = this._win.document;\n this.set(options);\n }\n\n ___createClass_16(Interactable, [{\n key: \"setOnEvents\",\n value: function setOnEvents(actionName, phases) {\n if (__is_16.func(phases.onstart)) {\n this.on(\"\".concat(actionName, \"start\"), phases.onstart);\n }\n\n if (__is_16.func(phases.onmove)) {\n this.on(\"\".concat(actionName, \"move\"), phases.onmove);\n }\n\n if (__is_16.func(phases.onend)) {\n this.on(\"\".concat(actionName, \"end\"), phases.onend);\n }\n\n if (__is_16.func(phases.oninertiastart)) {\n this.on(\"\".concat(actionName, \"inertiastart\"), phases.oninertiastart);\n }\n\n return this;\n }\n }, {\n key: \"updatePerActionListeners\",\n value: function updatePerActionListeners(actionName, prev, cur) {\n if (__is_16.array(prev) || __is_16.object(prev)) {\n this.off(actionName, prev);\n }\n\n if (__is_16.array(cur) || __is_16.object(cur)) {\n this.on(actionName, cur);\n }\n }\n }, {\n key: \"setPerAction\",\n value: function setPerAction(actionName, options) {\n var defaults = this._defaults; // for all the default per-action options\n\n for (var optionName in options) {\n var actionOptions = this.options[actionName];\n var optionValue = options[optionName];\n var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones\n\n if (optionName === 'listeners') {\n this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue);\n } // if the option value is an array\n\n\n if (isArray) {\n actionOptions[optionName] = __arr_16.from(optionValue);\n } // if the option value is an object\n else if (!isArray && __is_16.plainObject(optionValue)) {\n // copy the object\n actionOptions[optionName] = (0, ___extend_16[\"default\"])(actionOptions[optionName] || {}, (0, ___clone_16[\"default\"])(optionValue)); // set anabled field to true if it exists in the defaults\n\n if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) {\n actionOptions[optionName].enabled = optionValue.enabled !== false;\n }\n } // if the option value is a boolean and the default is an object\n else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) {\n actionOptions[optionName].enabled = optionValue;\n } // if it's anything else, do a plain assignment\n else {\n actionOptions[optionName] = optionValue;\n }\n }\n }\n /**\n * The default function to get an Interactables bounding rect. Can be\n * overridden using {@link Interactable.rectChecker}.\n *\n * @param {Element} [element] The element to measure.\n * @return {object} The object's bounding rectangle.\n */\n\n }, {\n key: \"getRect\",\n value: function getRect(element) {\n element = element || (__is_16.element(this.target) ? this.target : null);\n\n if (__is_16.string(this.target)) {\n element = element || this._context.querySelector(this.target);\n }\n\n return (0, _$domUtils_51.getElementRect)(element);\n }\n /**\n * Returns or sets the function used to calculate the interactable's\n * element's rectangle\n *\n * @param {function} [checker] A function which returns this Interactable's\n * bounding rectangle. See {@link Interactable.getRect}\n * @return {function | object} The checker function or this Interactable\n */\n\n }, {\n key: \"rectChecker\",\n value: function rectChecker(checker) {\n if (__is_16.func(checker)) {\n this.getRect = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.getRect;\n return this;\n }\n\n return this.getRect;\n }\n }, {\n key: \"_backCompatOption\",\n value: function _backCompatOption(optionName, newValue) {\n if ((0, _$domUtils_51.trySelector)(newValue) || __is_16.object(newValue)) {\n this.options[optionName] = newValue;\n\n for (var _i = 0; _i < this._actions.names.length; _i++) {\n var _ref;\n\n _ref = this._actions.names[_i];\n var action = _ref;\n this.options[action][optionName] = newValue;\n }\n\n return this;\n }\n\n return this.options[optionName];\n }\n /**\n * Gets or sets the origin of the Interactable's element. The x and y\n * of the origin will be subtracted from action event coordinates.\n *\n * @param {Element | object | string} [origin] An HTML or SVG Element whose\n * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\n * or any CSS selector\n *\n * @return {object} The current origin or this Interactable\n */\n\n }, {\n key: \"origin\",\n value: function origin(newValue) {\n return this._backCompatOption('origin', newValue);\n }\n /**\n * Returns or sets the mouse coordinate types used to calculate the\n * movement of the pointer.\n *\n * @param {string} [newValue] Use 'client' if you will be scrolling while\n * interacting; Use 'page' if you want autoScroll to work\n * @return {string | object} The current deltaSource or this Interactable\n */\n\n }, {\n key: \"deltaSource\",\n value: function deltaSource(newValue) {\n if (newValue === 'page' || newValue === 'client') {\n this.options.deltaSource = newValue;\n return this;\n }\n\n return this.options.deltaSource;\n }\n /**\n * Gets the selector context Node of the Interactable. The default is\n * `window.document`.\n *\n * @return {Node} The context Node of this Interactable\n */\n\n }, {\n key: \"context\",\n value: function context() {\n return this._context;\n }\n }, {\n key: \"inContext\",\n value: function inContext(element) {\n return this._context === element.ownerDocument || (0, _$domUtils_51.nodeContains)(this._context, element);\n }\n }, {\n key: \"testIgnoreAllow\",\n value: function testIgnoreAllow(options, targetNode, eventTarget) {\n return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget);\n }\n }, {\n key: \"testAllow\",\n value: function testAllow(allowFrom, targetNode, element) {\n if (!allowFrom) {\n return true;\n }\n\n if (!__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(allowFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, allowFrom, targetNode);\n } else if (__is_16.element(allowFrom)) {\n return (0, _$domUtils_51.nodeContains)(allowFrom, element);\n }\n\n return false;\n }\n }, {\n key: \"testIgnore\",\n value: function testIgnore(ignoreFrom, targetNode, element) {\n if (!ignoreFrom || !__is_16.element(element)) {\n return false;\n }\n\n if (__is_16.string(ignoreFrom)) {\n return (0, _$domUtils_51.matchesUpTo)(element, ignoreFrom, targetNode);\n } else if (__is_16.element(ignoreFrom)) {\n return (0, _$domUtils_51.nodeContains)(ignoreFrom, element);\n }\n\n return false;\n }\n /**\n * Calls listeners for the given InteractEvent type bound globally\n * and directly to this Interactable\n *\n * @param {InteractEvent} iEvent The InteractEvent object to be fired on this\n * Interactable\n * @return {Interactable} this Interactable\n */\n\n }, {\n key: \"fire\",\n value: function fire(iEvent) {\n this.events.fire(iEvent);\n return this;\n }\n }, {\n key: \"_onOff\",\n value: function _onOff(method, typeArg, listenerArg, options) {\n if (__is_16.object(typeArg) && !__is_16.array(typeArg)) {\n options = listenerArg;\n listenerArg = null;\n }\n\n var addRemove = method === 'on' ? 'add' : 'remove';\n var listeners = (0, ___normalizeListeners_16[\"default\"])(typeArg, listenerArg);\n\n for (var type in listeners) {\n if (type === 'wheel') {\n type = ___browser_16[\"default\"].wheelEvent;\n }\n\n for (var _i2 = 0; _i2 < listeners[type].length; _i2++) {\n var _ref2;\n\n _ref2 = listeners[type][_i2];\n var listener = _ref2;\n\n // if it is an action event type\n if (__arr_16.contains(this._actions.eventTypes, type)) {\n this.events[method](type, listener);\n } // delegated event\n else if (__is_16.string(this.target)) {\n ___events_16[\"default\"][\"\".concat(addRemove, \"Delegate\")](this.target, this._context, type, listener, options);\n } // remove listener from this Interactable's element\n else {\n ___events_16[\"default\"][addRemove](this.target, type, listener, options);\n }\n }\n }\n\n return this;\n }\n /**\n * Binds a listener for an InteractEvent, pointerEvent or DOM event.\n *\n * @param {string | array | object} types The types of events to listen\n * for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * addEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"on\",\n value: function on(types, listener, options) {\n return this._onOff('on', types, listener, options);\n }\n /**\n * Removes an InteractEvent, pointerEvent or DOM event listener.\n *\n * @param {string | array | object} types The types of events that were\n * listened for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * removeEventListener\n * @return {Interactable} This Interactable\n */\n\n }, {\n key: \"off\",\n value: function off(types, listener, options) {\n return this._onOff('off', types, listener, options);\n }\n /**\n * Reset the options of this Interactable\n *\n * @param {object} options The new settings to apply\n * @return {object} This Interactable\n */\n\n }, {\n key: \"set\",\n value: function set(options) {\n var defaults = this._defaults;\n\n if (!__is_16.object(options)) {\n options = {};\n }\n\n this.options = (0, ___clone_16[\"default\"])(defaults.base);\n\n for (var actionName in this._actions.methodDict) {\n var methodName = this._actions.methodDict[actionName];\n this.options[actionName] = {};\n this.setPerAction(actionName, (0, ___extend_16[\"default\"])((0, ___extend_16[\"default\"])({}, defaults.perAction), defaults.actions[actionName]));\n this[methodName](options[actionName]);\n }\n\n for (var setting in options) {\n if (__is_16.func(this[setting])) {\n this[setting](options[setting]);\n }\n }\n\n return this;\n }\n /**\n * Remove this interactable from the list of interactables and remove it's\n * action capabilities and event listeners\n *\n * @return {interact}\n */\n\n }, {\n key: \"unset\",\n value: function unset() {\n ___events_16[\"default\"].remove(this.target, 'all');\n\n if (__is_16.string(this.target)) {\n // remove delegated events\n for (var type in ___events_16[\"default\"].delegatedEvents) {\n var delegated = ___events_16[\"default\"].delegatedEvents[type];\n\n if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) {\n delegated.selectors.splice(0, 1);\n delegated.contexts.splice(0, 1);\n delegated.listeners.splice(0, 1); // remove the arrays if they are empty\n\n if (!delegated.selectors.length) {\n delegated[type] = null;\n }\n }\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateListener);\n\n ___events_16[\"default\"].remove(this._context, type, ___events_16[\"default\"].delegateUseCapture, true);\n }\n } else {\n ___events_16[\"default\"].remove(this.target, 'all');\n }\n }\n }, {\n key: \"_defaults\",\n get: function get() {\n return {\n base: {},\n perAction: {},\n actions: {}\n };\n }\n }]);\n\n return Interactable;\n}();\n\n_$Interactable_16.Interactable = Interactable;\nvar ___default_16 = Interactable;\n_$Interactable_16[\"default\"] = ___default_16;\n\nvar _$InteractableSet_17 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableSet_17, \"__esModule\", {\n value: true\n});\n_$InteractableSet_17[\"default\"] = void 0;\n\nvar __arr_17 = ___interopRequireWildcard_17(_$arr_47);\n\nvar __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_51);\n\nvar ___extend_17 = ___interopRequireDefault_17(_$extend_53);\n\nvar __is_17 = ___interopRequireWildcard_17(_$is_57);\n\nvar ___Signals_17 = ___interopRequireDefault_17(_$Signals_46);\n\nfunction ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_17() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; }\n\nvar InteractableSet =\n/*#__PURE__*/\nfunction () {\n function InteractableSet(scope) {\n var _this = this;\n\n ___classCallCheck_17(this, InteractableSet);\n\n this.scope = scope;\n this.signals = new ___Signals_17[\"default\"](); // all set interactables\n\n this.list = [];\n this.selectorMap = {};\n this.signals.on('unset', function (_ref) {\n var interactable = _ref.interactable;\n var target = interactable.target,\n context = interactable._context;\n var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id];\n var targetIndex = targetMappings.findIndex(function (m) {\n return m.context === context;\n });\n\n if (targetMappings[targetIndex]) {\n // Destroying mappingInfo's context and interactable\n targetMappings[targetIndex].context = null;\n targetMappings[targetIndex].interactable = null;\n }\n\n targetMappings.splice(targetIndex, 1);\n });\n }\n\n ___createClass_17(InteractableSet, [{\n key: \"new\",\n value: function _new(target, options) {\n options = (0, ___extend_17[\"default\"])(options || {}, {\n actions: this.scope.actions\n });\n var interactable = new this.scope.Interactable(target, options, this.scope.document);\n var mappingInfo = {\n context: interactable._context,\n interactable: interactable\n };\n this.scope.addDocument(interactable._doc);\n this.list.push(interactable);\n\n if (__is_17.string(target)) {\n if (!this.selectorMap[target]) {\n this.selectorMap[target] = [];\n }\n\n this.selectorMap[target].push(mappingInfo);\n } else {\n if (!interactable.target[this.scope.id]) {\n Object.defineProperty(target, this.scope.id, {\n value: [],\n configurable: true\n });\n }\n\n target[this.scope.id].push(mappingInfo);\n }\n\n this.signals.fire('new', {\n target: target,\n options: options,\n interactable: interactable,\n win: this.scope._win\n });\n return interactable;\n }\n }, {\n key: \"get\",\n value: function get(target, options) {\n var context = options && options.context || this.scope.document;\n var isSelector = __is_17.string(target);\n var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id];\n\n if (!targetMappings) {\n return null;\n }\n\n var found = __arr_17.find(targetMappings, function (m) {\n return m.context === context && (isSelector || m.interactable.inContext(target));\n });\n return found && found.interactable;\n }\n }, {\n key: \"forEachMatch\",\n value: function forEachMatch(node, callback) {\n for (var _i = 0; _i < this.list.length; _i++) {\n var _ref2;\n\n _ref2 = this.list[_i];\n var interactable = _ref2;\n var ret = void 0;\n\n if ((__is_17.string(interactable.target) // target is a selector and the element matches\n ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element\n node === interactable.target) && // the element is in context\n interactable.inContext(node)) {\n ret = callback(interactable);\n }\n\n if (ret !== undefined) {\n return ret;\n }\n }\n }\n }]);\n\n return InteractableSet;\n}();\n\n_$InteractableSet_17[\"default\"] = InteractableSet;\n\nvar _$BaseEvent_13 = {};\n\"use strict\";\n\nObject.defineProperty(_$BaseEvent_13, \"__esModule\", {\n value: true\n});\n_$BaseEvent_13[\"default\"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0;\n\nfunction ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; }\n\nvar EventPhase;\n_$BaseEvent_13.EventPhase = EventPhase;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {}));\n\nvar BaseEvent =\n/*#__PURE__*/\nfunction () {\n function BaseEvent(interaction) {\n ___classCallCheck_13(this, BaseEvent);\n\n this.immediatePropagationStopped = false;\n this.propagationStopped = false;\n this._interaction = interaction;\n }\n\n ___createClass_13(BaseEvent, [{\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }, {\n key: \"interaction\",\n get: function get() {\n return this._interaction._proxy;\n }\n }]);\n\n return BaseEvent;\n}();\n\n_$BaseEvent_13.BaseEvent = BaseEvent;\nvar ___default_13 = BaseEvent;\n_$BaseEvent_13[\"default\"] = ___default_13;\n\nvar _$InteractEvent_15 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractEvent_15, \"__esModule\", {\n value: true\n});\n_$InteractEvent_15[\"default\"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0;\n\nvar ___extend_15 = ___interopRequireDefault_15(_$extend_53);\n\nvar ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_54);\n\nvar ___hypot_15 = ___interopRequireDefault_15(_$hypot_55);\n\nvar _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13);\n\nvar _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20);\n\nfunction ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_15(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_15(obj); }\n\nfunction ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar __EventPhase_15;\n_$InteractEvent_15.EventPhase = __EventPhase_15;\n\n(function (EventPhase) {\n EventPhase[\"Start\"] = \"start\";\n EventPhase[\"Move\"] = \"move\";\n EventPhase[\"End\"] = \"end\";\n EventPhase[\"_NONE\"] = \"\";\n})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {}));\n\nvar InteractEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n _inherits(InteractEvent, _BaseEvent);\n\n /** */\n function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) {\n var _this;\n\n ___classCallCheck_15(this, InteractEvent);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction));\n element = element || interaction.element;\n var target = interaction.interactable;\n var deltaSource = (target && target.options || _defaultOptions[\"default\"]).deltaSource;\n var origin = (0, ___getOriginXY_15[\"default\"])(target, element, actionName);\n var starting = phase === 'start';\n var ending = phase === 'end';\n var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent;\n var coords = starting ? interaction.coords.start : ending ? {\n page: prevEvent.page,\n client: prevEvent.client,\n timeStamp: interaction.coords.cur.timeStamp\n } : interaction.coords.cur;\n _this.page = (0, ___extend_15[\"default\"])({}, coords.page);\n _this.client = (0, ___extend_15[\"default\"])({}, coords.client);\n _this.rect = (0, ___extend_15[\"default\"])({}, interaction.rect);\n _this.timeStamp = coords.timeStamp;\n\n if (!ending) {\n _this.page.x -= origin.x;\n _this.page.y -= origin.y;\n _this.client.x -= origin.x;\n _this.client.y -= origin.y;\n }\n\n _this.ctrlKey = event.ctrlKey;\n _this.altKey = event.altKey;\n _this.shiftKey = event.shiftKey;\n _this.metaKey = event.metaKey;\n _this.button = event.button;\n _this.buttons = event.buttons;\n _this.target = element;\n _this.currentTarget = element;\n _this.relatedTarget = related || null;\n _this.preEnd = preEnd;\n _this.type = type || actionName + (phase || '');\n _this.interactable = target;\n _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0;\n _this.x0 = interaction.coords.start.page.x - origin.x;\n _this.y0 = interaction.coords.start.page.y - origin.y;\n _this.clientX0 = interaction.coords.start.client.x - origin.x;\n _this.clientY0 = interaction.coords.start.client.y - origin.y;\n\n if (starting || ending) {\n _this.delta = {\n x: 0,\n y: 0\n };\n } else {\n _this.delta = {\n x: _this[deltaSource].x - prevEvent[deltaSource].x,\n y: _this[deltaSource].y - prevEvent[deltaSource].y\n };\n }\n\n _this.dt = interaction.coords.delta.timeStamp;\n _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second\n\n _this.velocity = (0, ___extend_15[\"default\"])({}, interaction.coords.velocity[deltaSource]);\n _this.speed = (0, ___hypot_15[\"default\"])(_this.velocity.x, _this.velocity.y);\n _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null;\n return _this;\n }\n\n ___createClass_15(InteractEvent, [{\n key: \"getSwipe\",\n value: function getSwipe() {\n var interaction = this._interaction;\n\n if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) {\n return null;\n }\n\n var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI;\n var overlap = 22.5;\n\n if (angle < 0) {\n angle += 360;\n }\n\n var left = 135 - overlap <= angle && angle < 225 + overlap;\n var up = 225 - overlap <= angle && angle < 315 + overlap;\n var right = !left && (315 - overlap <= angle || angle < 45 + overlap);\n var down = !up && 45 - overlap <= angle && angle < 135 + overlap;\n return {\n up: up,\n down: down,\n left: left,\n right: right,\n angle: angle,\n speed: interaction.prevEvent.speed,\n velocity: {\n x: interaction.prevEvent.velocityX,\n y: interaction.prevEvent.velocityY\n }\n };\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n /**\n * Don't call listeners on the remaining targets\n */\n\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n /**\n * Don't call any other listeners (even on the current target)\n */\n\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"pageX\",\n get: function get() {\n return this.page.x;\n },\n set: function set(value) {\n this.page.x = value;\n }\n }, {\n key: \"pageY\",\n get: function get() {\n return this.page.y;\n },\n set: function set(value) {\n this.page.y = value;\n }\n }, {\n key: \"clientX\",\n get: function get() {\n return this.client.x;\n },\n set: function set(value) {\n this.client.x = value;\n }\n }, {\n key: \"clientY\",\n get: function get() {\n return this.client.y;\n },\n set: function set(value) {\n this.client.y = value;\n }\n }, {\n key: \"dx\",\n get: function get() {\n return this.delta.x;\n },\n set: function set(value) {\n this.delta.x = value;\n }\n }, {\n key: \"dy\",\n get: function get() {\n return this.delta.y;\n },\n set: function set(value) {\n this.delta.y = value;\n }\n }, {\n key: \"velocityX\",\n get: function get() {\n return this.velocity.x;\n },\n set: function set(value) {\n this.velocity.x = value;\n }\n }, {\n key: \"velocityY\",\n get: function get() {\n return this.velocity.y;\n },\n set: function set(value) {\n this.velocity.y = value;\n }\n }]);\n\n return InteractEvent;\n}(_BaseEvent2[\"default\"]);\n\n_$InteractEvent_15.InteractEvent = InteractEvent;\nvar ___default_15 = InteractEvent;\n_$InteractEvent_15[\"default\"] = ___default_15;\n\nvar _$PointerInfo_19 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerInfo_19, \"__esModule\", {\n value: true\n});\n_$PointerInfo_19[\"default\"] = _$PointerInfo_19.PointerInfo = void 0;\n\nfunction ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* eslint-disable @typescript-eslint/no-parameter-properties */\nvar PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) {\n ___classCallCheck_19(this, PointerInfo);\n\n this.id = id;\n this.pointer = pointer;\n this.event = event;\n this.downTime = downTime;\n this.downTarget = downTarget;\n};\n\n_$PointerInfo_19.PointerInfo = PointerInfo;\nvar ___default_19 = PointerInfo;\n_$PointerInfo_19[\"default\"] = ___default_19;\n\nvar _$interactionFinder_22 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactionFinder_22, \"__esModule\", {\n value: true\n});\n_$interactionFinder_22[\"default\"] = void 0;\n\nvar __dom_22 = ___interopRequireWildcard_22(_$domUtils_51);\n\nfunction ___getRequireWildcardCache_22() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar finder = {\n methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'],\n search: function search(details) {\n for (var _i = 0; _i < finder.methodOrder.length; _i++) {\n var _ref;\n\n _ref = finder.methodOrder[_i];\n var method = _ref;\n var interaction = finder[method](details);\n\n if (interaction) {\n return interaction;\n }\n }\n },\n // try to resume simulation with a new pointer\n simulationResume: function simulationResume(_ref2) {\n var pointerType = _ref2.pointerType,\n eventType = _ref2.eventType,\n eventTarget = _ref2.eventTarget,\n scope = _ref2.scope;\n\n if (!/down|start/i.test(eventType)) {\n return null;\n }\n\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i2];\n var interaction = _ref3;\n var element = eventTarget;\n\n if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) {\n while (element) {\n // if the element is the interaction element\n if (element === interaction.element) {\n return interaction;\n }\n\n element = __dom_22.parentNode(element);\n }\n }\n }\n\n return null;\n },\n // if it's a mouse or pen interaction\n mouseOrPen: function mouseOrPen(_ref4) {\n var pointerId = _ref4.pointerId,\n pointerType = _ref4.pointerType,\n eventType = _ref4.eventType,\n scope = _ref4.scope;\n\n if (pointerType !== 'mouse' && pointerType !== 'pen') {\n return null;\n }\n\n var firstNonActive;\n\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i3];\n var interaction = _ref5;\n\n if (interaction.pointerType === pointerType) {\n // if it's a down event, skip interactions with running simulations\n if (interaction.simulation && !hasPointerId(interaction, pointerId)) {\n continue;\n } // if the interaction is active, return it immediately\n\n\n if (interaction.interacting()) {\n return interaction;\n } // otherwise save it and look for another active interaction\n else if (!firstNonActive) {\n firstNonActive = interaction;\n }\n }\n } // if no active mouse interaction was found use the first inactive mouse\n // interaction\n\n\n if (firstNonActive) {\n return firstNonActive;\n } // find any mouse or pen interaction.\n // ignore the interaction if the eventType is a *down, and a simulation\n // is active\n\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref6;\n\n _ref6 = scope.interactions.list[_i4];\n var _interaction = _ref6;\n\n if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) {\n return _interaction;\n }\n }\n\n return null;\n },\n // get interaction that has this pointer\n hasPointer: function hasPointer(_ref7) {\n var pointerId = _ref7.pointerId,\n scope = _ref7.scope;\n\n for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) {\n var _ref8;\n\n _ref8 = scope.interactions.list[_i5];\n var interaction = _ref8;\n\n if (hasPointerId(interaction, pointerId)) {\n return interaction;\n }\n }\n\n return null;\n },\n // get first idle interaction with a matching pointerType\n idle: function idle(_ref9) {\n var pointerType = _ref9.pointerType,\n scope = _ref9.scope;\n\n for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) {\n var _ref10;\n\n _ref10 = scope.interactions.list[_i6];\n var interaction = _ref10;\n\n // if there's already a pointer held down\n if (interaction.pointers.length === 1) {\n var target = interaction.interactable; // don't add this pointer if there is a target interactable and it\n // isn't gesturable\n\n if (target && !(target.options.gesture && target.options.gesture.enabled)) {\n continue;\n }\n } // maximum of 2 pointers per interaction\n else if (interaction.pointers.length >= 2) {\n continue;\n }\n\n if (!interaction.interacting() && pointerType === interaction.pointerType) {\n return interaction;\n }\n }\n\n return null;\n }\n};\n\nfunction hasPointerId(interaction, pointerId) {\n return interaction.pointers.some(function (_ref11) {\n var id = _ref11.id;\n return id === pointerId;\n });\n}\n\nvar ___default_22 = finder;\n_$interactionFinder_22[\"default\"] = ___default_22;\n\nvar _$drag_1 = {};\n\"use strict\";\n\nObject.defineProperty(_$drag_1, \"__esModule\", {\n value: true\n});\n_$drag_1[\"default\"] = void 0;\n\nvar ___scope_1 = _$scope_24({});\n\nvar __arr_1 = ___interopRequireWildcard_1(_$arr_47);\n\nvar __is_1 = ___interopRequireWildcard_1(_$is_57);\n\nfunction ___getRequireWildcardCache_1() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_1.ActionName.Drag = 'drag';\n\nfunction __install_1(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('before-action-move', beforeMove);\n interactions.signals.on('action-resume', beforeMove); // dragmove\n\n interactions.signals.on('action-move', move);\n Interactable.prototype.draggable = drag.draggable;\n actions[___scope_1.ActionName.Drag] = drag;\n actions.names.push(___scope_1.ActionName.Drag);\n __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']);\n actions.methodDict.drag = 'draggable';\n defaults.actions.drag = drag.defaults;\n}\n\nfunction beforeMove(_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x') {\n interaction.coords.cur.page.y = interaction.coords.start.page.y;\n interaction.coords.cur.client.y = interaction.coords.start.client.y;\n interaction.coords.velocity.client.y = 0;\n interaction.coords.velocity.page.y = 0;\n } else if (axis === 'y') {\n interaction.coords.cur.page.x = interaction.coords.start.page.x;\n interaction.coords.cur.client.x = interaction.coords.start.client.x;\n interaction.coords.velocity.client.x = 0;\n interaction.coords.velocity.page.x = 0;\n }\n}\n\nfunction move(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var axis = interaction.prepared.axis;\n\n if (axis === 'x' || axis === 'y') {\n var opposite = axis === 'x' ? 'y' : 'x';\n iEvent.page[opposite] = interaction.coords.start.page[opposite];\n iEvent.client[opposite] = interaction.coords.start.client[opposite];\n iEvent.delta[opposite] = 0;\n }\n}\n/**\n * ```js\n * interact(element).draggable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // the axis in which the first movement must be\n * // for the drag sequence to start\n * // 'xy' by default - any direction\n * startAxis: 'x' || 'y' || 'xy',\n *\n * // 'xy' by default - don't restrict to one axis (move in any direction)\n * // 'x' or 'y' to restrict movement to either axis\n * // 'start' to restrict movement to the axis the drag started in\n * lockAxis: 'x' || 'y' || 'xy' || 'start',\n *\n * // max number of drags that can happen concurrently\n * // with elements of this Interactable. Infinity by default\n * max: Infinity,\n *\n * // max number of drags that can target the same element+Interactable\n * // 1 by default\n * maxPerElement: 2\n * })\n *\n * var isDraggable = interact('element').draggable(); // true\n * ```\n *\n * Get or set whether drag actions can be performed on the target\n *\n * @alias Interactable.prototype.draggable\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on drag events (object makes the Interactable\n * draggable)\n * @return {boolean | Interactable} boolean indicating if this can be the\n * target of drag events, or this Interctable\n */\n\n\nvar draggable = function draggable(options) {\n if (__is_1.object(options)) {\n this.options.drag.enabled = options.enabled !== false;\n this.setPerAction('drag', options);\n this.setOnEvents('drag', options);\n\n if (/^(xy|x|y|start)$/.test(options.lockAxis)) {\n this.options.drag.lockAxis = options.lockAxis;\n }\n\n if (/^(xy|x|y)$/.test(options.startAxis)) {\n this.options.drag.startAxis = options.startAxis;\n }\n\n return this;\n }\n\n if (__is_1.bool(options)) {\n this.options.drag.enabled = options;\n return this;\n }\n\n return this.options.drag;\n};\n\nvar drag = {\n id: 'actions/drag',\n install: __install_1,\n draggable: draggable,\n beforeMove: beforeMove,\n move: move,\n defaults: {\n startAxis: 'xy',\n lockAxis: 'xy'\n },\n checker: function checker(_pointer, _event, interactable) {\n var dragOptions = interactable.options.drag;\n return dragOptions.enabled ? {\n name: 'drag',\n axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis\n } : null;\n },\n getCursor: function getCursor() {\n return 'move';\n }\n};\nvar ___default_1 = drag;\n_$drag_1[\"default\"] = ___default_1;\n\nvar _$DropEvent_2 = {};\n\"use strict\";\n\nObject.defineProperty(_$DropEvent_2, \"__esModule\", {\n value: true\n});\n_$DropEvent_2[\"default\"] = void 0;\n\nvar ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13);\n\nvar __arr_2 = ___interopRequireWildcard_2(_$arr_47);\n\nfunction ___getRequireWildcardCache_2() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_2(obj); }\n\nfunction ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); }\n\nfunction ___nonIterableSpread_2() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_2(self); }\n\nfunction ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); }\n\nfunction ___inherits_2(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); }\n\nfunction ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); }\n\nvar DropEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_2(DropEvent, _BaseEvent);\n\n /**\n * Class of events fired on dropzones during drags with acceptable targets.\n */\n function DropEvent(dropState, dragEvent, type) {\n var _this;\n\n ___classCallCheck_2(this, DropEvent);\n\n _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction));\n _this.propagationStopped = false;\n _this.immediatePropagationStopped = false;\n\n var _ref = type === 'dragleave' ? dropState.prev : dropState.cur,\n element = _ref.element,\n dropzone = _ref.dropzone;\n\n _this.type = type;\n _this.target = element;\n _this.currentTarget = element;\n _this.dropzone = dropzone;\n _this.dragEvent = dragEvent;\n _this.relatedTarget = dragEvent.target;\n _this.draggable = dragEvent.interactable;\n _this.timeStamp = dragEvent.timeStamp;\n return _this;\n }\n /**\n * If this is a `dropactivate` event, the dropzone element will be\n * deactivated.\n *\n * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the\n * dropzone element and more.\n */\n\n\n ___createClass_2(DropEvent, [{\n key: \"reject\",\n value: function reject() {\n var _this2 = this;\n\n var dropState = this._interaction.dropState;\n\n if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) {\n return;\n }\n\n dropState.prev.dropzone = this.dropzone;\n dropState.prev.element = this.target;\n dropState.rejected = true;\n dropState.events.enter = null;\n this.stopImmediatePropagation();\n\n if (this.type === 'dropactivate') {\n var activeDrops = dropState.activeDrops;\n var index = __arr_2.findIndex(activeDrops, function (_ref2) {\n var dropzone = _ref2.dropzone,\n element = _ref2.element;\n return dropzone === _this2.dropzone && element === _this2.target;\n });\n dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1)));\n var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate');\n deactivateEvent.dropzone = this.dropzone;\n deactivateEvent.target = this.target;\n this.dropzone.fire(deactivateEvent);\n } else {\n this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave'));\n }\n }\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {}\n }, {\n key: \"stopPropagation\",\n value: function stopPropagation() {\n this.propagationStopped = true;\n }\n }, {\n key: \"stopImmediatePropagation\",\n value: function stopImmediatePropagation() {\n this.immediatePropagationStopped = this.propagationStopped = true;\n }\n }]);\n\n return DropEvent;\n}(___BaseEvent2_2[\"default\"]);\n\nvar ___default_2 = DropEvent;\n_$DropEvent_2[\"default\"] = ___default_2;\n\nvar _$drop_3 = {};\n\"use strict\";\n\nObject.defineProperty(_$drop_3, \"__esModule\", {\n value: true\n});\n_$drop_3[\"default\"] = void 0;\n\nvar __utils_3 = ___interopRequireWildcard_3(_$utils_56);\n\nvar _drag = ___interopRequireDefault_3(_$drag_1);\n\nvar _DropEvent = ___interopRequireDefault_3(_$DropEvent_2);\n\nfunction ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_3() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_3(scope) {\n var actions = scope.actions,\n interact = scope.interact,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_drag[\"default\"]);\n interactions.signals.on('before-action-start', function (_ref) {\n var interaction = _ref.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n interaction.dropState = {\n cur: {\n dropzone: null,\n element: null\n },\n prev: {\n dropzone: null,\n element: null\n },\n rejected: null,\n events: null,\n activeDrops: null\n };\n });\n interactions.signals.on('after-action-start', function (_ref2) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n dragEvent = _ref2.iEvent;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState; // reset active dropzones\n\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n dropState.events = getDropEvents(interaction, event, dragEvent);\n\n if (dropState.events.activate) {\n fireActivationEvents(dropState.activeDrops, dropState.events.activate);\n }\n }); // FIXME proper signal types\n\n interactions.signals.on('action-move', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('action-end', function (arg) {\n return onEventCreated(arg, scope);\n });\n interactions.signals.on('after-action-move', function (_ref3) {\n var interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n interaction.dropState.events = {};\n });\n interactions.signals.on('after-action-end', function (_ref4) {\n var interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n fireDropEvents(interaction, interaction.dropState.events);\n });\n interactions.signals.on('stop', function (_ref5) {\n var interaction = _ref5.interaction;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (dropState) {\n dropState.activeDrops = null;\n dropState.events = null;\n dropState.cur.dropzone = null;\n dropState.cur.element = null;\n dropState.prev.dropzone = null;\n dropState.prev.element = null;\n dropState.rejected = false;\n }\n });\n /**\n *\n * ```js\n * interact('.drop').dropzone({\n * accept: '.can-drop' || document.getElementById('single-drop'),\n * overlap: 'pointer' || 'center' || zeroToOne\n * }\n * ```\n *\n * Returns or sets whether draggables can be dropped onto this target to\n * trigger drop events\n *\n * Dropzones can receive the following events:\n * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends\n * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone\n * - `dragmove` when a draggable that has entered the dropzone is moved\n * - `drop` when a draggable is dropped into this dropzone\n *\n * Use the `accept` option to allow only elements that match the given CSS\n * selector or element. The value can be:\n *\n * - **an Element** - only that element can be dropped into this dropzone.\n * - **a string**, - the element being dragged must match it as a CSS selector.\n * - **`null`** - accept options is cleared - it accepts any element.\n *\n * Use the `overlap` option to set how drops are checked for. The allowed\n * values are:\n *\n * - `'pointer'`, the pointer must be over the dropzone (default)\n * - `'center'`, the draggable element's center must be over the dropzone\n * - a number from 0-1 which is the `(intersection area) / (draggable area)`.\n * e.g. `0.5` for drop to happen when half of the area of the draggable is\n * over the dropzone\n *\n * Use the `checker` option to specify a function to check if a dragged element\n * is over this Interactable.\n *\n * @param {boolean | object | null} [options] The new options to be set.\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.dropzone = function (options) {\n return dropzoneMethod(this, options);\n };\n /**\n * ```js\n * interact(target)\n * .dropChecker(function(dragEvent, // related dragmove or dragend event\n * event, // TouchEvent/PointerEvent/MouseEvent\n * dropped, // bool result of the default checker\n * dropzone, // dropzone Interactable\n * dropElement, // dropzone elemnt\n * draggable, // draggable Interactable\n * draggableElement) {// draggable element\n *\n * return dropped && event.target.hasAttribute('allow-drop')\n * }\n * ```\n */\n\n\n Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) {\n return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect);\n };\n /**\n * Returns or sets whether the dimensions of dropzone elements are calculated\n * on every dragmove or only on dragstart for the default dropChecker\n *\n * @param {boolean} [newValue] True to check on each move. False to check only\n * before start\n * @return {boolean | interact} The current setting or interact\n */\n\n\n interact.dynamicDrop = function (newValue) {\n if (__utils_3.is.bool(newValue)) {\n // if (dragging && scope.dynamicDrop !== newValue && !newValue) {\n // calcRects(dropzones)\n // }\n scope.dynamicDrop = newValue;\n return interact;\n }\n\n return scope.dynamicDrop;\n };\n\n __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']);\n actions.methodDict.drop = 'dropzone';\n scope.dynamicDrop = false;\n defaults.actions.drop = drop.defaults;\n}\n\nfunction collectDrops(_ref6, draggableElement) {\n var interactables = _ref6.interactables;\n var drops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i = 0; _i < interactables.list.length; _i++) {\n var _ref7;\n\n _ref7 = interactables.list[_i];\n var dropzone = _ref7;\n\n if (!dropzone.options.drop.enabled) {\n continue;\n }\n\n var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting\n\n if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({\n dropzone: dropzone,\n draggableElement: draggableElement\n })) {\n continue;\n } // query for new elements if necessary\n\n\n var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target];\n\n for (var _i2 = 0; _i2 < dropElements.length; _i2++) {\n var _ref8;\n\n _ref8 = dropElements[_i2];\n var dropzoneElement = _ref8;\n\n if (dropzoneElement !== draggableElement) {\n drops.push({\n dropzone: dropzone,\n element: dropzoneElement\n });\n }\n }\n }\n\n return drops;\n}\n\nfunction fireActivationEvents(activeDrops, event) {\n // loop through all active dropzones and trigger event\n for (var _i3 = 0; _i3 < activeDrops.length; _i3++) {\n var _ref9;\n\n _ref9 = activeDrops[_i3];\n var _ref10 = _ref9,\n dropzone = _ref10.dropzone,\n element = _ref10.element;\n event.dropzone = dropzone; // set current element as event target\n\n event.target = element;\n dropzone.fire(event);\n event.propagationStopped = event.immediatePropagationStopped = false;\n }\n} // return a new array of possible drops. getActiveDrops should always be\n// called when a drag has just started or a drag event happens while\n// dynamicDrop is true\n\n\nfunction getActiveDrops(scope, dragElement) {\n // get dropzones and their elements that could receive the draggable\n var activeDrops = collectDrops(scope, dragElement);\n\n for (var _i4 = 0; _i4 < activeDrops.length; _i4++) {\n var _ref11;\n\n _ref11 = activeDrops[_i4];\n var activeDrop = _ref11;\n activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element);\n }\n\n return activeDrops;\n}\n\nfunction getDrop(_ref12, dragEvent, pointerEvent) {\n var dropState = _ref12.dropState,\n draggable = _ref12.interactable,\n dragElement = _ref12.element;\n var validDrops = []; // collect all dropzones and their elements which qualify for a drop\n\n for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) {\n var _ref13;\n\n _ref13 = dropState.activeDrops[_i5];\n var _ref14 = _ref13,\n dropzone = _ref14.dropzone,\n dropzoneElement = _ref14.element,\n rect = _ref14.rect;\n validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null);\n } // get the most appropriate dropzone based on DOM depth and order\n\n\n var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops);\n return dropState.activeDrops[dropIndex] || null;\n}\n\nfunction getDropEvents(interaction, _pointerEvent, dragEvent) {\n var dropState = interaction.dropState;\n var dropEvents = {\n enter: null,\n leave: null,\n activate: null,\n deactivate: null,\n move: null,\n drop: null\n };\n\n if (dragEvent.type === 'dragstart') {\n dropEvents.activate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropactivate');\n dropEvents.activate.target = null;\n dropEvents.activate.dropzone = null;\n }\n\n if (dragEvent.type === 'dragend') {\n dropEvents.deactivate = new _DropEvent[\"default\"](dropState, dragEvent, 'dropdeactivate');\n dropEvents.deactivate.target = null;\n dropEvents.deactivate.dropzone = null;\n }\n\n if (dropState.rejected) {\n return dropEvents;\n }\n\n if (dropState.cur.element !== dropState.prev.element) {\n // if there was a previous dropzone, create a dragleave event\n if (dropState.prev.dropzone) {\n dropEvents.leave = new _DropEvent[\"default\"](dropState, dragEvent, 'dragleave');\n dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element;\n dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone;\n } // if dropzone is not null, create a dragenter event\n\n\n if (dropState.cur.dropzone) {\n dropEvents.enter = new _DropEvent[\"default\"](dropState, dragEvent, 'dragenter');\n dragEvent.dragEnter = dropState.cur.element;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n }\n\n if (dragEvent.type === 'dragend' && dropState.cur.dropzone) {\n dropEvents.drop = new _DropEvent[\"default\"](dropState, dragEvent, 'drop');\n dragEvent.dropzone = dropState.cur.dropzone;\n dragEvent.relatedTarget = dropState.cur.element;\n }\n\n if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) {\n dropEvents.move = new _DropEvent[\"default\"](dropState, dragEvent, 'dropmove');\n dropEvents.move.dragmove = dragEvent;\n dragEvent.dropzone = dropState.cur.dropzone;\n }\n\n return dropEvents;\n}\n\nfunction fireDropEvents(interaction, events) {\n var dropState = interaction.dropState;\n var activeDrops = dropState.activeDrops,\n cur = dropState.cur,\n prev = dropState.prev;\n\n if (events.leave) {\n prev.dropzone.fire(events.leave);\n }\n\n if (events.move) {\n cur.dropzone.fire(events.move);\n }\n\n if (events.enter) {\n cur.dropzone.fire(events.enter);\n }\n\n if (events.drop) {\n cur.dropzone.fire(events.drop);\n }\n\n if (events.deactivate) {\n fireActivationEvents(activeDrops, events.deactivate);\n }\n\n dropState.prev.dropzone = cur.dropzone;\n dropState.prev.element = cur.element;\n}\n\nfunction onEventCreated(_ref15, scope) {\n var interaction = _ref15.interaction,\n iEvent = _ref15.iEvent,\n event = _ref15.event;\n\n if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') {\n return;\n }\n\n var dropState = interaction.dropState;\n\n if (scope.dynamicDrop) {\n dropState.activeDrops = getActiveDrops(scope, interaction.element);\n }\n\n var dragEvent = iEvent;\n var dropResult = getDrop(interaction, dragEvent, event); // update rejected status\n\n dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element;\n dropState.cur.dropzone = dropResult && dropResult.dropzone;\n dropState.cur.element = dropResult && dropResult.element;\n dropState.events = getDropEvents(interaction, event, dragEvent);\n}\n\nfunction dropzoneMethod(interactable, options) {\n if (__utils_3.is.object(options)) {\n interactable.options.drop.enabled = options.enabled !== false;\n\n if (options.listeners) {\n var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop'\n\n var corrected = Object.keys(normalized).reduce(function (acc, type) {\n var correctedType = /^(enter|leave)/.test(type) ? \"drag\".concat(type) : /^(activate|deactivate|move)/.test(type) ? \"drop\".concat(type) : type;\n acc[correctedType] = normalized[type];\n return acc;\n }, {});\n interactable.off(interactable.options.drop.listeners);\n interactable.on(corrected);\n interactable.options.drop.listeners = corrected;\n }\n\n if (__utils_3.is.func(options.ondrop)) {\n interactable.on('drop', options.ondrop);\n }\n\n if (__utils_3.is.func(options.ondropactivate)) {\n interactable.on('dropactivate', options.ondropactivate);\n }\n\n if (__utils_3.is.func(options.ondropdeactivate)) {\n interactable.on('dropdeactivate', options.ondropdeactivate);\n }\n\n if (__utils_3.is.func(options.ondragenter)) {\n interactable.on('dragenter', options.ondragenter);\n }\n\n if (__utils_3.is.func(options.ondragleave)) {\n interactable.on('dragleave', options.ondragleave);\n }\n\n if (__utils_3.is.func(options.ondropmove)) {\n interactable.on('dropmove', options.ondropmove);\n }\n\n if (/^(pointer|center)$/.test(options.overlap)) {\n interactable.options.drop.overlap = options.overlap;\n } else if (__utils_3.is.number(options.overlap)) {\n interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0);\n }\n\n if ('accept' in options) {\n interactable.options.drop.accept = options.accept;\n }\n\n if ('checker' in options) {\n interactable.options.drop.checker = options.checker;\n }\n\n return interactable;\n }\n\n if (__utils_3.is.bool(options)) {\n interactable.options.drop.enabled = options;\n return interactable;\n }\n\n return interactable.options.drop;\n}\n\nfunction dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) {\n var dropped = false; // if the dropzone has no rect (eg. display: none)\n // call the custom dropChecker or just return false\n\n if (!(rect = rect || interactable.getRect(dropElement))) {\n return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false;\n }\n\n var dropOverlap = interactable.options.drop.overlap;\n\n if (dropOverlap === 'pointer') {\n var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag');\n var page = __utils_3.pointer.getPageXY(dragEvent);\n page.x += origin.x;\n page.y += origin.y;\n var horizontal = page.x > rect.left && page.x < rect.right;\n var vertical = page.y > rect.top && page.y < rect.bottom;\n dropped = horizontal && vertical;\n }\n\n var dragRect = draggable.getRect(draggableElement);\n\n if (dragRect && dropOverlap === 'center') {\n var cx = dragRect.left + dragRect.width / 2;\n var cy = dragRect.top + dragRect.height / 2;\n dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom;\n }\n\n if (dragRect && __utils_3.is.number(dropOverlap)) {\n var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top));\n var overlapRatio = overlapArea / (dragRect.width * dragRect.height);\n dropped = overlapRatio >= dropOverlap;\n }\n\n if (interactable.options.drop.checker) {\n dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement);\n }\n\n return dropped;\n}\n\nvar drop = {\n id: 'actions/drop',\n install: __install_3,\n getActiveDrops: getActiveDrops,\n getDrop: getDrop,\n getDropEvents: getDropEvents,\n fireDropEvents: fireDropEvents,\n defaults: {\n enabled: false,\n accept: null,\n overlap: 'pointer'\n }\n};\nvar ___default_3 = drop;\n_$drop_3[\"default\"] = ___default_3;\n\nvar _$gesture_4 = {};\n\"use strict\";\n\nObject.defineProperty(_$gesture_4, \"__esModule\", {\n value: true\n});\n_$gesture_4[\"default\"] = void 0;\n\nvar ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15);\n\nvar ___scope_4 = _$scope_24({});\n\nvar __utils_4 = ___interopRequireWildcard_4(_$utils_56);\n\nfunction ___getRequireWildcardCache_4() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n___scope_4.ActionName.Gesture = 'gesture';\n\nfunction __install_4(scope) {\n var actions = scope.actions,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults;\n /**\n * ```js\n * interact(element).gesturable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // limit multiple gestures.\n * // See the explanation in {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isGestureable = interact(element).gesturable()\n * ```\n *\n * Gets or sets whether multitouch gestures can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on gesture events (makes the Interactable gesturable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of gesture events, or this Interactable\n */\n\n Interactable.prototype.gesturable = function (options) {\n if (__utils_4.is.object(options)) {\n this.options.gesture.enabled = options.enabled !== false;\n this.setPerAction('gesture', options);\n this.setOnEvents('gesture', options);\n return this;\n }\n\n if (__utils_4.is.bool(options)) {\n this.options.gesture.enabled = options;\n return this;\n }\n\n return this.options.gesture;\n };\n\n interactions.signals.on('action-start', updateGestureProps);\n interactions.signals.on('action-move', updateGestureProps);\n interactions.signals.on('action-end', updateGestureProps);\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.gesture = {\n angle: 0,\n distance: 0,\n scale: 1,\n startAngle: 0,\n startDistance: 0\n };\n });\n actions[___scope_4.ActionName.Gesture] = gesture;\n actions.names.push(___scope_4.ActionName.Gesture);\n __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']);\n actions.methodDict.gesture = 'gesturable';\n defaults.actions.gesture = gesture.defaults;\n}\n\nvar gesture = {\n id: 'actions/gesture',\n install: __install_4,\n defaults: {},\n checker: function checker(_pointer, _event, _interactable, _element, interaction) {\n if (interaction.pointers.length >= 2) {\n return {\n name: 'gesture'\n };\n }\n\n return null;\n },\n getCursor: function getCursor() {\n return '';\n }\n};\n\nfunction updateGestureProps(_ref2) {\n var interaction = _ref2.interaction,\n iEvent = _ref2.iEvent,\n event = _ref2.event,\n phase = _ref2.phase;\n\n if (interaction.prepared.name !== 'gesture') {\n return;\n }\n\n var pointers = interaction.pointers.map(function (p) {\n return p.pointer;\n });\n var starting = phase === 'start';\n var ending = phase === 'end';\n var deltaSource = interaction.interactable.options.deltaSource;\n iEvent.touches = [pointers[0], pointers[1]];\n\n if (starting) {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = 1;\n iEvent.ds = 0;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.da = 0;\n interaction.gesture.startDistance = iEvent.distance;\n interaction.gesture.startAngle = iEvent.angle;\n } else if (ending || event instanceof ___InteractEvent_4[\"default\"]) {\n var prevEvent = interaction.prevEvent;\n iEvent.distance = prevEvent.distance;\n iEvent.box = prevEvent.box;\n iEvent.scale = prevEvent.scale;\n iEvent.ds = 0;\n iEvent.angle = prevEvent.angle;\n iEvent.da = 0;\n } else {\n iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource);\n iEvent.box = __utils_4.pointer.touchBBox(pointers);\n iEvent.scale = iEvent.distance / interaction.gesture.startDistance;\n iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource);\n iEvent.ds = iEvent.scale - interaction.gesture.scale;\n iEvent.da = iEvent.angle - interaction.gesture.angle;\n }\n\n interaction.gesture.distance = iEvent.distance;\n interaction.gesture.angle = iEvent.angle;\n\n if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) {\n interaction.gesture.scale = iEvent.scale;\n }\n}\n\nvar ___default_4 = gesture;\n_$gesture_4[\"default\"] = ___default_4;\n\nvar _$resize_6 = {};\n\"use strict\";\n\nObject.defineProperty(_$resize_6, \"__esModule\", {\n value: true\n});\n_$resize_6[\"default\"] = void 0;\n\nvar ___scope_6 = _$scope_24({});\n\nvar __arr_6 = ___interopRequireWildcard_6(_$arr_47);\n\nvar __dom_6 = ___interopRequireWildcard_6(_$domUtils_51);\n\nvar ___extend_6 = ___interopRequireDefault_6(_$extend_53);\n\nvar __is_6 = ___interopRequireWildcard_6(_$is_57);\n\nfunction ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_6() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n___scope_6.ActionName.Resize = 'resize';\n\nfunction __install_6(scope) {\n var actions = scope.actions,\n browser = scope.browser,\n Interactable = scope.Interactable,\n interactions = scope.interactions,\n defaults = scope.defaults; // Less Precision with touch input\n\n interactions.signals.on('new', function (interaction) {\n interaction.resizeAxes = 'xy';\n });\n interactions.signals.on('action-start', start);\n interactions.signals.on('action-move', __move_6);\n interactions.signals.on('action-end', end);\n interactions.signals.on('action-start', updateEventAxes);\n interactions.signals.on('action-move', updateEventAxes);\n resize.cursors = initCursors(browser);\n resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10;\n /**\n * ```js\n * interact(element).resizable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * edges: {\n * top : true, // Use pointer coords to check for resize.\n * left : false, // Disable resizing from left edge.\n * bottom: '.resize-s',// Resize if pointer target matches selector\n * right : handleEl // Resize if pointer target is the given Element\n * },\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height are adjusted at a 1:1 ratio.\n * square: false,\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height maintain the aspect ratio they had when resizing started.\n * preserveAspectRatio: false,\n *\n * // a value of 'none' will limit the resize rect to a minimum of 0x0\n * // 'negate' will allow the rect to have negative width/height\n * // 'reposition' will keep the width/height positive by swapping\n * // the top and bottom edges and/or swapping the left and right edges\n * invert: 'none' || 'negate' || 'reposition'\n *\n * // limit multiple resizes.\n * // See the explanation in the {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isResizeable = interact(element).resizable()\n * ```\n *\n * Gets or sets whether resize actions can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on resize events (object makes the Interactable\n * resizable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of resize elements, or this Interactable\n */\n\n Interactable.prototype.resizable = function (options) {\n return resizable(this, options, scope);\n };\n\n actions[___scope_6.ActionName.Resize] = resize;\n actions.names.push(___scope_6.ActionName.Resize);\n __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']);\n actions.methodDict.resize = 'resizable';\n defaults.actions.resize = resize.defaults;\n}\n\nvar resize = {\n id: 'actions/resize',\n install: __install_6,\n defaults: {\n square: false,\n preserveAspectRatio: false,\n axis: 'xy',\n // use default margin\n margin: NaN,\n // object with props left, right, top, bottom which are\n // true/false values to resize when the pointer is over that edge,\n // CSS selectors to match the handles for each direction\n // or the Elements for each handle\n edges: null,\n // a value of 'none' will limit the resize rect to a minimum of 0x0\n // 'negate' will alow the rect to have negative width/height\n // 'reposition' will keep the width/height positive by swapping\n // the top and bottom edges and/or swapping the left and right edges\n invert: 'none'\n },\n checker: function checker(_pointer, _event, interactable, element, interaction, rect) {\n if (!rect) {\n return null;\n }\n\n var page = (0, ___extend_6[\"default\"])({}, interaction.coords.cur.page);\n var options = interactable.options;\n\n if (options.resize.enabled) {\n var resizeOptions = options.resize;\n var resizeEdges = {\n left: false,\n right: false,\n top: false,\n bottom: false\n }; // if using resize.edges\n\n if (__is_6.object(resizeOptions.edges)) {\n for (var edge in resizeEdges) {\n resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin);\n }\n\n resizeEdges.left = resizeEdges.left && !resizeEdges.right;\n resizeEdges.top = resizeEdges.top && !resizeEdges.bottom;\n\n if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) {\n return {\n name: 'resize',\n edges: resizeEdges\n };\n }\n } else {\n var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin;\n var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin;\n\n if (right || bottom) {\n return {\n name: 'resize',\n axes: (right ? 'x' : '') + (bottom ? 'y' : '')\n };\n }\n }\n }\n\n return null;\n },\n cursors: null,\n getCursor: function getCursor(_ref) {\n var edges = _ref.edges,\n axis = _ref.axis,\n name = _ref.name;\n var cursors = resize.cursors;\n var result = null;\n\n if (axis) {\n result = cursors[name + axis];\n } else if (edges) {\n var cursorKey = '';\n var _arr = ['top', 'bottom', 'left', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (edges[edge]) {\n cursorKey += edge;\n }\n }\n\n result = cursors[cursorKey];\n }\n\n return result;\n },\n defaultMargin: null\n};\n\nfunction resizable(interactable, options, scope) {\n if (__is_6.object(options)) {\n interactable.options.resize.enabled = options.enabled !== false;\n interactable.setPerAction('resize', options);\n interactable.setOnEvents('resize', options);\n\n if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) {\n interactable.options.resize.axis = options.axis;\n } else if (options.axis === null) {\n interactable.options.resize.axis = scope.defaults.actions.resize.axis;\n }\n\n if (__is_6.bool(options.preserveAspectRatio)) {\n interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio;\n } else if (__is_6.bool(options.square)) {\n interactable.options.resize.square = options.square;\n }\n\n return interactable;\n }\n\n if (__is_6.bool(options)) {\n interactable.options.resize.enabled = options;\n return interactable;\n }\n\n return interactable.options.resize;\n}\n\nfunction checkResizeEdge(name, value, page, element, interactableElement, rect, margin) {\n // false, '', undefined, null\n if (!value) {\n return false;\n } // true value, use pointer coords and element rect\n\n\n if (value === true) {\n // if dimensions are negative, \"switch\" edges\n var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left;\n var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension\n\n margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2);\n\n if (width < 0) {\n if (name === 'left') {\n name = 'right';\n } else if (name === 'right') {\n name = 'left';\n }\n }\n\n if (height < 0) {\n if (name === 'top') {\n name = 'bottom';\n } else if (name === 'bottom') {\n name = 'top';\n }\n }\n\n if (name === 'left') {\n return page.x < (width >= 0 ? rect.left : rect.right) + margin;\n }\n\n if (name === 'top') {\n return page.y < (height >= 0 ? rect.top : rect.bottom) + margin;\n }\n\n if (name === 'right') {\n return page.x > (width >= 0 ? rect.right : rect.left) - margin;\n }\n\n if (name === 'bottom') {\n return page.y > (height >= 0 ? rect.bottom : rect.top) - margin;\n }\n } // the remaining checks require an element\n\n\n if (!__is_6.element(element)) {\n return false;\n }\n\n return __is_6.element(value) // the value is an element to use as a resize handle\n ? value === element // otherwise check if element matches value as selector\n : __dom_6.matchesUpTo(element, value, interactableElement);\n}\n\nfunction initCursors(browser) {\n return browser.isIe9 ? {\n x: 'e-resize',\n y: 's-resize',\n xy: 'se-resize',\n top: 'n-resize',\n left: 'w-resize',\n bottom: 's-resize',\n right: 'e-resize',\n topleft: 'se-resize',\n bottomright: 'se-resize',\n topright: 'ne-resize',\n bottomleft: 'ne-resize'\n } : {\n x: 'ew-resize',\n y: 'ns-resize',\n xy: 'nwse-resize',\n top: 'ns-resize',\n left: 'ew-resize',\n bottom: 'ns-resize',\n right: 'ew-resize',\n topleft: 'nwse-resize',\n bottomright: 'nwse-resize',\n topright: 'nesw-resize',\n bottomleft: 'nesw-resize'\n };\n}\n\nfunction start(_ref2) {\n var iEvent = _ref2.iEvent,\n interaction = _ref2.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var startRect = (0, ___extend_6[\"default\"])({}, interaction.rect);\n var resizeOptions = interaction.interactable.options.resize;\n /*\n * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge\n * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make\n * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend\n * on the active edges and the edge being interacted with.\n */\n\n if (resizeOptions.square || resizeOptions.preserveAspectRatio) {\n var linkedEdges = (0, ___extend_6[\"default\"])({}, interaction.prepared.edges);\n linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom;\n linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right;\n linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top;\n linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left;\n interaction.prepared._linkedEdges = linkedEdges;\n } else {\n interaction.prepared._linkedEdges = null;\n } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize\n\n\n if (resizeOptions.preserveAspectRatio) {\n interaction.resizeStartAspectRatio = startRect.width / startRect.height;\n }\n\n interaction.resizeRects = {\n start: startRect,\n current: {\n left: startRect.left,\n right: startRect.right,\n top: startRect.top,\n bottom: startRect.bottom\n },\n inverted: (0, ___extend_6[\"default\"])({}, startRect),\n previous: (0, ___extend_6[\"default\"])({}, startRect),\n delta: {\n left: 0,\n right: 0,\n width: 0,\n top: 0,\n bottom: 0,\n height: 0\n }\n };\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction __move_6(_ref3) {\n var iEvent = _ref3.iEvent,\n interaction = _ref3.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n var resizeOptions = interaction.interactable.options.resize;\n var invert = resizeOptions.invert;\n var invertible = invert === 'reposition' || invert === 'negate';\n var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow\n\n var start = interaction.resizeRects.start;\n var current = interaction.resizeRects.current;\n var inverted = interaction.resizeRects.inverted;\n var deltaRect = interaction.resizeRects.delta;\n var previous = (0, ___extend_6[\"default\"])(interaction.resizeRects.previous, inverted);\n var originalEdges = edges;\n var eventDelta = (0, ___extend_6[\"default\"])({}, iEvent.delta);\n\n if (resizeOptions.preserveAspectRatio || resizeOptions.square) {\n // `resize.preserveAspectRatio` takes precedence over `resize.square`\n var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1;\n edges = interaction.prepared._linkedEdges;\n\n if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) {\n eventDelta.y = -eventDelta.x / startAspectRatio;\n } else if (originalEdges.left || originalEdges.right) {\n eventDelta.y = eventDelta.x / startAspectRatio;\n } else if (originalEdges.top || originalEdges.bottom) {\n eventDelta.x = eventDelta.y * startAspectRatio;\n }\n } // update the 'current' rect without modifications\n\n\n if (edges.top) {\n current.top += eventDelta.y;\n }\n\n if (edges.bottom) {\n current.bottom += eventDelta.y;\n }\n\n if (edges.left) {\n current.left += eventDelta.x;\n }\n\n if (edges.right) {\n current.right += eventDelta.x;\n }\n\n if (invertible) {\n // if invertible, copy the current rect\n (0, ___extend_6[\"default\"])(inverted, current);\n\n if (invert === 'reposition') {\n // swap edge values if necessary to keep width/height positive\n var swap;\n\n if (inverted.top > inverted.bottom) {\n swap = inverted.top;\n inverted.top = inverted.bottom;\n inverted.bottom = swap;\n }\n\n if (inverted.left > inverted.right) {\n swap = inverted.left;\n inverted.left = inverted.right;\n inverted.right = swap;\n }\n }\n } else {\n // if not invertible, restrict to minimum of 0x0 rect\n inverted.top = Math.min(current.top, start.bottom);\n inverted.bottom = Math.max(current.bottom, start.top);\n inverted.left = Math.min(current.left, start.right);\n inverted.right = Math.max(current.right, start.left);\n }\n\n inverted.width = inverted.right - inverted.left;\n inverted.height = inverted.bottom - inverted.top;\n\n for (var edge in inverted) {\n deltaRect[edge] = inverted[edge] - previous[edge];\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = inverted;\n iEvent.deltaRect = deltaRect;\n}\n\nfunction end(_ref4) {\n var iEvent = _ref4.iEvent,\n interaction = _ref4.interaction;\n\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return;\n }\n\n iEvent.edges = interaction.prepared.edges;\n iEvent.rect = interaction.resizeRects.inverted;\n iEvent.deltaRect = interaction.resizeRects.delta;\n}\n\nfunction updateEventAxes(_ref5) {\n var iEvent = _ref5.iEvent,\n interaction = _ref5.interaction,\n action = _ref5.action;\n\n if (action !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) {\n return;\n }\n\n var options = interaction.interactable.options;\n\n if (options.resize.square) {\n if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = iEvent.delta.y;\n } else {\n iEvent.delta.y = iEvent.delta.x;\n }\n\n iEvent.axes = 'xy';\n } else {\n iEvent.axes = interaction.resizeAxes;\n\n if (interaction.resizeAxes === 'x') {\n iEvent.delta.y = 0;\n } else if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = 0;\n }\n }\n}\n\nvar ___default_6 = resize;\n_$resize_6[\"default\"] = ___default_6;\n\nvar _$actions_5 = {};\n\"use strict\";\n\nObject.defineProperty(_$actions_5, \"__esModule\", {\n value: true\n});\n_$actions_5.install = __install_5;\nObject.defineProperty(_$actions_5, \"drag\", {\n enumerable: true,\n get: function get() {\n return ___drag_5[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"drop\", {\n enumerable: true,\n get: function get() {\n return _drop[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"gesture\", {\n enumerable: true,\n get: function get() {\n return _gesture[\"default\"];\n }\n});\nObject.defineProperty(_$actions_5, \"resize\", {\n enumerable: true,\n get: function get() {\n return _resize[\"default\"];\n }\n});\n_$actions_5.id = void 0;\n\nvar ___drag_5 = ___interopRequireDefault_5(_$drag_1);\n\nvar _drop = ___interopRequireDefault_5(_$drop_3);\n\nvar _gesture = ___interopRequireDefault_5(_$gesture_4);\n\nvar _resize = ___interopRequireDefault_5(_$resize_6);\n\nfunction ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_5(scope) {\n scope.usePlugin(_gesture[\"default\"]);\n scope.usePlugin(_resize[\"default\"]);\n scope.usePlugin(___drag_5[\"default\"]);\n scope.usePlugin(_drop[\"default\"]);\n}\n\nvar id = 'actions';\n_$actions_5.id = id;\n\nvar _$autoScroll_7 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoScroll_7, \"__esModule\", {\n value: true\n});\n_$autoScroll_7.getContainer = getContainer;\n_$autoScroll_7.getScroll = getScroll;\n_$autoScroll_7.getScrollSize = getScrollSize;\n_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta;\n_$autoScroll_7[\"default\"] = void 0;\n\nvar __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_51);\n\nvar __is_7 = ___interopRequireWildcard_7(_$is_57);\n\nvar ___raf_7 = ___interopRequireDefault_7(_$raf_62);\n\n/* removed: var _$rect_63 = require(\"@interactjs/utils/rect\"); */;\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_7() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_7(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults,\n actions = scope.actions;\n scope.autoScroll = autoScroll;\n\n autoScroll.now = function () {\n return scope.now();\n };\n\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.autoScroll = null;\n });\n interactions.signals.on('destroy', function (_ref2) {\n var interaction = _ref2.interaction;\n interaction.autoScroll = null;\n autoScroll.stop();\n\n if (autoScroll.interaction) {\n autoScroll.interaction = null;\n }\n });\n interactions.signals.on('stop', autoScroll.stop);\n interactions.signals.on('action-move', function (arg) {\n return autoScroll.onInteractionMove(arg);\n });\n actions.eventTypes.push('autoscroll');\n defaults.perAction.autoScroll = autoScroll.defaults;\n}\n\nvar autoScroll = {\n defaults: {\n enabled: false,\n margin: 60,\n // the item that is scrolled (Window or HTMLElement)\n container: null,\n // the scroll speed in pixels per second\n speed: 300\n },\n now: Date.now,\n interaction: null,\n i: null,\n x: 0,\n y: 0,\n isScrolling: false,\n prevTime: 0,\n margin: 0,\n speed: 0,\n start: function start(interaction) {\n autoScroll.isScrolling = true;\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n interaction.autoScroll = autoScroll;\n autoScroll.interaction = interaction;\n autoScroll.prevTime = autoScroll.now();\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n },\n stop: function stop() {\n autoScroll.isScrolling = false;\n\n if (autoScroll.interaction) {\n autoScroll.interaction.autoScroll = null;\n }\n\n ___raf_7[\"default\"].cancel(autoScroll.i);\n },\n // scroll the window by the values in scroll.x/y\n scroll: function scroll() {\n var interaction = autoScroll.interaction;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n var now = autoScroll.now(); // change in time in seconds\n\n var dt = (now - autoScroll.prevTime) / 1000; // displacement\n\n var s = options.speed * dt;\n\n if (s >= 1) {\n var scrollBy = {\n x: autoScroll.x * s,\n y: autoScroll.y * s\n };\n\n if (scrollBy.x || scrollBy.y) {\n var prevScroll = getScroll(container);\n\n if (__is_7.window(container)) {\n container.scrollBy(scrollBy.x, scrollBy.y);\n } else if (container) {\n container.scrollLeft += scrollBy.x;\n container.scrollTop += scrollBy.y;\n }\n\n var curScroll = getScroll(container);\n var delta = {\n x: curScroll.x - prevScroll.x,\n y: curScroll.y - prevScroll.y\n };\n\n if (delta.x || delta.y) {\n interactable.fire({\n type: 'autoscroll',\n target: element,\n interactable: interactable,\n delta: delta,\n interaction: interaction,\n container: container\n });\n }\n }\n\n autoScroll.prevTime = now;\n }\n\n if (autoScroll.isScrolling) {\n ___raf_7[\"default\"].cancel(autoScroll.i);\n\n autoScroll.i = ___raf_7[\"default\"].request(autoScroll.scroll);\n }\n },\n check: function check(interactable, actionName) {\n var options = interactable.options;\n return options[actionName].autoScroll && options[actionName].autoScroll.enabled;\n },\n onInteractionMove: function onInteractionMove(_ref3) {\n var interaction = _ref3.interaction,\n pointer = _ref3.pointer;\n\n if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) {\n return;\n }\n\n if (interaction.simulation) {\n autoScroll.x = autoScroll.y = 0;\n return;\n }\n\n var top;\n var right;\n var bottom;\n var left;\n var interactable = interaction.interactable,\n element = interaction.element;\n var options = interactable.options[interaction.prepared.name].autoScroll;\n var container = getContainer(options.container, interactable, element);\n\n if (__is_7.window(container)) {\n left = pointer.clientX < autoScroll.margin;\n top = pointer.clientY < autoScroll.margin;\n right = pointer.clientX > container.innerWidth - autoScroll.margin;\n bottom = pointer.clientY > container.innerHeight - autoScroll.margin;\n } else {\n var rect = __domUtils_7.getElementClientRect(container);\n left = pointer.clientX < rect.left + autoScroll.margin;\n top = pointer.clientY < rect.top + autoScroll.margin;\n right = pointer.clientX > rect.right - autoScroll.margin;\n bottom = pointer.clientY > rect.bottom - autoScroll.margin;\n }\n\n autoScroll.x = right ? 1 : left ? -1 : 0;\n autoScroll.y = bottom ? 1 : top ? -1 : 0;\n\n if (!autoScroll.isScrolling) {\n // set the autoScroll properties to those of the target\n autoScroll.margin = options.margin;\n autoScroll.speed = options.speed;\n autoScroll.start(interaction);\n }\n }\n};\n\nfunction getContainer(value, interactable, element) {\n return (__is_7.string(value) ? (0, _$rect_63.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_66.getWindow)(element);\n}\n\nfunction getScroll(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollLeft,\n y: container.scrollTop\n };\n}\n\nfunction getScrollSize(container) {\n if (__is_7.window(container)) {\n container = window.document.body;\n }\n\n return {\n x: container.scrollWidth,\n y: container.scrollHeight\n };\n}\n\nfunction getScrollSizeDelta(_ref4, func) {\n var interaction = _ref4.interaction,\n element = _ref4.element;\n var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll;\n\n if (!scrollOptions || !scrollOptions.enabled) {\n func();\n return {\n x: 0,\n y: 0\n };\n }\n\n var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element);\n var prevSize = getScroll(scrollContainer);\n func();\n var curSize = getScroll(scrollContainer);\n return {\n x: curSize.x - prevSize.x,\n y: curSize.y - prevSize.y\n };\n}\n\nvar ___default_7 = {\n id: 'auto-scroll',\n install: __install_7\n};\n_$autoScroll_7[\"default\"] = ___default_7;\n\nvar _$InteractableMethods_8 = {};\n\"use strict\";\n\nObject.defineProperty(_$InteractableMethods_8, \"__esModule\", {\n value: true\n});\n_$InteractableMethods_8[\"default\"] = void 0;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\nvar __is_8 = ___interopRequireWildcard_8(_$is_57);\n\nfunction ___getRequireWildcardCache_8() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_8(scope) {\n var Interactable = scope.Interactable,\n actions = scope.actions;\n Interactable.prototype.getAction = getAction;\n /**\n * ```js\n * interact(element, { ignoreFrom: document.getElementById('no-action') })\n * // or\n * interact(element).ignoreFrom('input, textarea, a')\n * ```\n * @deprecated\n * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any\n * of it's parents match the given CSS selector or Element, no\n * drag/resize/gesture is started.\n *\n * Don't use this method. Instead set the `ignoreFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .draggable({\n * ignoreFrom: 'input, textarea, a[href]'',\n * })\n * .pointerEvents({\n * ignoreFrom: '[no-pointer]',\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to not ignore any elements\n * @return {string | Element | object} The current ignoreFrom value or this\n * Interactable\n */\n\n Interactable.prototype.ignoreFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('ignoreFrom', newValue);\n }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).');\n /**\n * @deprecated\n *\n * A drag/resize/gesture is started only If the target of the `mousedown`,\n * `pointerdown` or `touchstart` event or any of it's parents match the given\n * CSS selector or Element.\n *\n * Don't use this method. Instead set the `allowFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .resizable({\n * allowFrom: '.resize-handle',\n * .pointerEvents({\n * allowFrom: '.handle',,\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to allow from any element\n * @return {string | Element | object} The current allowFrom value or this\n * Interactable\n */\n\n Interactable.prototype.allowFrom = (0, _$utils_56.warnOnce)(function (newValue) {\n return this._backCompatOption('allowFrom', newValue);\n }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).');\n /**\n * ```js\n * interact('.resize-drag')\n * .resizable(true)\n * .draggable(true)\n * .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n *\n * if (interact.matchesSelector(event.target, '.drag-handle')) {\n * // force drag with handle target\n * action.name = drag\n * }\n * else {\n * // resize from the top and right edges\n * action.name = 'resize'\n * action.edges = { top: true, right: true }\n * }\n *\n * return action\n * })\n * ```\n *\n * Returns or sets the function used to check action to be performed on\n * pointerDown\n *\n * @param {function | null} [checker] A function which takes a pointer event,\n * defaultAction string, interactable, element and interaction as parameters\n * and returns an object with name property 'drag' 'resize' or 'gesture' and\n * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right\n * props.\n * @return {Function | Interactable} The checker function or this Interactable\n */\n\n Interactable.prototype.actionChecker = actionChecker;\n /**\n * Returns or sets whether the the cursor should be changed depending on the\n * action that would be performed if the mouse were pressed and dragged.\n *\n * @param {boolean} [newValue]\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.styleCursor = styleCursor;\n\n Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) {\n return defaultActionChecker(this, pointer, event, interaction, element, actions);\n };\n}\n\nfunction getAction(pointer, event, interaction, element) {\n var action = this.defaultActionChecker(pointer, event, interaction, element);\n\n if (this.options.actionChecker) {\n return this.options.actionChecker(pointer, event, action, this, element, interaction);\n }\n\n return action;\n}\n\nfunction defaultActionChecker(interactable, pointer, event, interaction, element, actions) {\n var rect = interactable.getRect(element);\n var buttons = event.buttons || {\n 0: 1,\n 1: 4,\n 3: 8,\n 4: 16\n }[event.button];\n var action = null;\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n\n // check mouseButton setting if the pointer is down\n if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) {\n continue;\n }\n\n action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect);\n\n if (action) {\n return action;\n }\n }\n}\n\nfunction styleCursor(newValue) {\n if (__is_8.bool(newValue)) {\n this.options.styleCursor = newValue;\n return this;\n }\n\n if (newValue === null) {\n delete this.options.styleCursor;\n return this;\n }\n\n return this.options.styleCursor;\n}\n\nfunction actionChecker(checker) {\n if (__is_8.func(checker)) {\n this.options.actionChecker = checker;\n return this;\n }\n\n if (checker === null) {\n delete this.options.actionChecker;\n return this;\n }\n\n return this.options.actionChecker;\n}\n\nvar ___default_8 = {\n id: 'auto-start/interactableMethods',\n install: __install_8\n};\n_$InteractableMethods_8[\"default\"] = ___default_8;\n\nvar _$base_9 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_9, \"__esModule\", {\n value: true\n});\n_$base_9[\"default\"] = void 0;\n\nvar __utils_9 = ___interopRequireWildcard_9(_$utils_56);\n\nvar _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8);\n\nfunction ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_9() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_9(scope) {\n var interact = scope.interact,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(_InteractableMethods[\"default\"]); // set cursor style on mousedown\n\n interactions.signals.on('down', function (_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget;\n\n if (interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n }); // set cursor style on mousemove\n\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n pointer = _ref2.pointer,\n event = _ref2.event,\n eventTarget = _ref2.eventTarget;\n\n if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) {\n return;\n }\n\n var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope);\n prepare(interaction, actionInfo, scope);\n });\n interactions.signals.on('move', function (arg) {\n var interaction = arg.interaction;\n\n if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) {\n return;\n }\n\n scope.autoStart.signals.fire('before-start', arg);\n var interactable = interaction.interactable;\n\n if (interaction.prepared.name && interactable) {\n // check manualStart and interaction limit\n if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) {\n interaction.stop();\n } else {\n interaction.start(interaction.prepared, interactable, interaction.element);\n setInteractionCursor(interaction, scope);\n }\n }\n });\n interactions.signals.on('stop', function (_ref3) {\n var interaction = _ref3.interaction;\n var interactable = interaction.interactable;\n\n if (interactable && interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n });\n defaults.base.actionChecker = null;\n defaults.base.styleCursor = true;\n __utils_9.extend(defaults.perAction, {\n manualStart: false,\n max: Infinity,\n maxPerElement: 1,\n allowFrom: null,\n ignoreFrom: null,\n // only allow left button by default\n // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value\n mouseButtons: 1\n });\n /**\n * Returns or sets the maximum number of concurrent interactions allowed. By\n * default only 1 interaction is allowed at a time (for backwards\n * compatibility). To allow multiple interactions on the same Interactables and\n * elements, you need to enable it in the draggable, resizable and gesturable\n * `'max'` and `'maxPerElement'` options.\n *\n * @alias module:interact.maxInteractions\n *\n * @param {number} [newValue] Any number. newValue <= 0 means no interactions.\n */\n\n interact.maxInteractions = function (newValue) {\n return maxInteractions(newValue, scope);\n };\n\n scope.autoStart = {\n // Allow this many interactions to happen simultaneously\n maxInteractions: Infinity,\n withinInteractionLimit: withinInteractionLimit,\n cursorElement: null,\n signals: new __utils_9.Signals()\n };\n} // Check if the current interactable supports the action.\n// If so, return the validated action. Otherwise, return null\n\n\nfunction validateAction(action, interactable, element, eventTarget, scope) {\n if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) {\n return action;\n }\n\n return null;\n}\n\nfunction validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) {\n for (var i = 0, len = matches.length; i < len; i++) {\n var match = matches[i];\n var matchElement = matchElements[i];\n var matchAction = match.getAction(pointer, event, interaction, matchElement);\n\n if (!matchAction) {\n continue;\n }\n\n var action = validateAction(matchAction, match, matchElement, eventTarget, scope);\n\n if (action) {\n return {\n action: action,\n interactable: match,\n element: matchElement\n };\n }\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction getActionInfo(interaction, pointer, event, eventTarget, scope) {\n var matches = [];\n var matchElements = [];\n var element = eventTarget;\n\n function pushMatches(interactable) {\n matches.push(interactable);\n matchElements.push(element);\n }\n\n while (__utils_9.is.element(element)) {\n matches = [];\n matchElements = [];\n scope.interactables.forEachMatch(element, pushMatches);\n var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope);\n\n if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) {\n return actionInfo;\n }\n\n element = __utils_9.dom.parentNode(element);\n }\n\n return {\n action: null,\n interactable: null,\n element: null\n };\n}\n\nfunction prepare(interaction, _ref4, scope) {\n var action = _ref4.action,\n interactable = _ref4.interactable,\n element = _ref4.element;\n action = action || {\n name: null\n }; // clear previous target element cursor\n\n if (interaction.interactable && interaction.interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope);\n }\n\n interaction.interactable = interactable;\n interaction.element = element;\n __utils_9.copyAction(interaction.prepared, action);\n interaction.rect = interactable && action.name ? interactable.getRect(element) : null;\n setInteractionCursor(interaction, scope);\n scope.autoStart.signals.fire('prepared', {\n interaction: interaction\n });\n}\n\nfunction withinInteractionLimit(interactable, element, action, scope) {\n var options = interactable.options;\n var maxActions = options[action.name].max;\n var maxPerElement = options[action.name].maxPerElement;\n var autoStartMax = scope.autoStart.maxInteractions;\n var activeInteractions = 0;\n var interactableCount = 0;\n var elementCount = 0; // no actions if any of these values == 0\n\n if (!(maxActions && maxPerElement && autoStartMax)) {\n return false;\n }\n\n for (var _i = 0; _i < scope.interactions.list.length; _i++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i];\n var interaction = _ref5;\n var otherAction = interaction.prepared.name;\n\n if (!interaction.interacting()) {\n continue;\n }\n\n activeInteractions++;\n\n if (activeInteractions >= autoStartMax) {\n return false;\n }\n\n if (interaction.interactable !== interactable) {\n continue;\n }\n\n interactableCount += otherAction === action.name ? 1 : 0;\n\n if (interactableCount >= maxActions) {\n return false;\n }\n\n if (interaction.element === element) {\n elementCount++;\n\n if (otherAction === action.name && elementCount >= maxPerElement) {\n return false;\n }\n }\n }\n\n return autoStartMax > 0;\n}\n\nfunction maxInteractions(newValue, scope) {\n if (__utils_9.is.number(newValue)) {\n scope.autoStart.maxInteractions = newValue;\n return this;\n }\n\n return scope.autoStart.maxInteractions;\n}\n\nfunction setCursor(element, cursor, scope) {\n if (scope.autoStart.cursorElement) {\n scope.autoStart.cursorElement.style.cursor = '';\n }\n\n element.ownerDocument.documentElement.style.cursor = cursor;\n element.style.cursor = cursor;\n scope.autoStart.cursorElement = cursor ? element : null;\n}\n\nfunction setInteractionCursor(interaction, scope) {\n var interactable = interaction.interactable,\n element = interaction.element,\n prepared = interaction.prepared;\n\n if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) {\n return;\n }\n\n var cursor = '';\n\n if (prepared.name) {\n var cursorChecker = interactable.options[prepared.name].cursorChecker;\n\n if (__utils_9.is.func(cursorChecker)) {\n cursor = cursorChecker(prepared, interactable, element, interaction._interacting);\n } else {\n cursor = scope.actions[prepared.name].getCursor(prepared);\n }\n }\n\n setCursor(interaction.element, cursor || '', scope);\n}\n\nvar ___default_9 = {\n id: 'auto-start/base',\n install: __install_9,\n maxInteractions: maxInteractions,\n withinInteractionLimit: withinInteractionLimit,\n validateAction: validateAction\n};\n_$base_9[\"default\"] = ___default_9;\n\nvar _$dragAxis_10 = {};\n\"use strict\";\n\nObject.defineProperty(_$dragAxis_10, \"__esModule\", {\n value: true\n});\n_$dragAxis_10[\"default\"] = void 0;\n\nvar ___scope_10 = _$scope_24({});\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar __is_10 = ___interopRequireWildcard_10(_$is_57);\n\nvar _base = ___interopRequireDefault_10(_$base_9);\n\nfunction ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_10() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __install_10(scope) {\n scope.autoStart.signals.on('before-start', function (_ref) {\n var interaction = _ref.interaction,\n eventTarget = _ref.eventTarget,\n dx = _ref.dx,\n dy = _ref.dy;\n\n if (interaction.prepared.name !== 'drag') {\n return;\n } // check if a drag is in the correct axis\n\n\n var absX = Math.abs(dx);\n var absY = Math.abs(dy);\n var targetOptions = interaction.interactable.options.drag;\n var startAxis = targetOptions.startAxis;\n var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy';\n interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy'\n : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable\n\n if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) {\n // cancel the prepared action\n interaction.prepared.name = null; // then try to get a drag from another ineractable\n\n var element = eventTarget;\n\n var getDraggable = function getDraggable(interactable) {\n if (interactable === interaction.interactable) {\n return;\n }\n\n var options = interaction.interactable.options.drag;\n\n if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) {\n var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element);\n\n if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base[\"default\"].validateAction(action, interactable, element, eventTarget, scope)) {\n return interactable;\n }\n }\n }; // check all interactables\n\n\n while (__is_10.element(element)) {\n var interactable = scope.interactables.forEachMatch(element, getDraggable);\n\n if (interactable) {\n interaction.prepared.name = ___scope_10.ActionName.Drag;\n interaction.interactable = interactable;\n interaction.element = element;\n break;\n }\n\n element = (0, _$domUtils_51.parentNode)(element);\n }\n }\n });\n\n function checkStartAxis(startAxis, interactable) {\n if (!interactable) {\n return false;\n }\n\n var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis;\n return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis;\n }\n}\n\nvar ___default_10 = {\n id: 'auto-start/dragAxis',\n install: __install_10\n};\n_$dragAxis_10[\"default\"] = ___default_10;\n\nvar _$hold_11 = {};\n\"use strict\";\n\nObject.defineProperty(_$hold_11, \"__esModule\", {\n value: true\n});\n_$hold_11[\"default\"] = void 0;\n\nvar ___base_11 = ___interopRequireDefault_11(_$base_9);\n\nfunction ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_11(scope) {\n var autoStart = scope.autoStart,\n interactions = scope.interactions,\n defaults = scope.defaults;\n scope.usePlugin(___base_11[\"default\"]);\n defaults.perAction.hold = 0;\n defaults.perAction.delay = 0;\n interactions.signals.on('new', function (interaction) {\n interaction.autoStartHoldTimer = null;\n });\n autoStart.signals.on('prepared', function (_ref) {\n var interaction = _ref.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.autoStartHoldTimer = setTimeout(function () {\n interaction.start(interaction.prepared, interaction.interactable, interaction.element);\n }, hold);\n }\n });\n interactions.signals.on('move', function (_ref2) {\n var interaction = _ref2.interaction,\n duplicate = _ref2.duplicate;\n\n if (interaction.pointerWasMoved && !duplicate) {\n clearTimeout(interaction.autoStartHoldTimer);\n }\n }); // prevent regular down->move autoStart\n\n autoStart.signals.on('before-start', function (_ref3) {\n var interaction = _ref3.interaction;\n var hold = getHoldDuration(interaction);\n\n if (hold > 0) {\n interaction.prepared.name = null;\n }\n });\n}\n\nfunction getHoldDuration(interaction) {\n var actionName = interaction.prepared && interaction.prepared.name;\n\n if (!actionName) {\n return null;\n }\n\n var options = interaction.interactable.options;\n return options[actionName].hold || options[actionName].delay;\n}\n\nvar ___default_11 = {\n id: 'auto-start/hold',\n install: __install_11,\n getHoldDuration: getHoldDuration\n};\n_$hold_11[\"default\"] = ___default_11;\n\nvar _$autoStart_12 = {};\n\"use strict\";\n\nObject.defineProperty(_$autoStart_12, \"__esModule\", {\n value: true\n});\n_$autoStart_12.install = __install_12;\nObject.defineProperty(_$autoStart_12, \"autoStart\", {\n enumerable: true,\n get: function get() {\n return ___base_12[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"dragAxis\", {\n enumerable: true,\n get: function get() {\n return _dragAxis[\"default\"];\n }\n});\nObject.defineProperty(_$autoStart_12, \"hold\", {\n enumerable: true,\n get: function get() {\n return _hold[\"default\"];\n }\n});\n_$autoStart_12.id = void 0;\n\nvar ___base_12 = ___interopRequireDefault_12(_$base_9);\n\nvar _dragAxis = ___interopRequireDefault_12(_$dragAxis_10);\n\nvar _hold = ___interopRequireDefault_12(_$hold_11);\n\nfunction ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_12(scope) {\n scope.usePlugin(___base_12[\"default\"]);\n scope.usePlugin(_hold[\"default\"]);\n scope.usePlugin(_dragAxis[\"default\"]);\n}\n\nvar __id_12 = 'auto-start';\n_$autoStart_12.id = __id_12;\n\nvar _$interactablePreventDefault_21 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactablePreventDefault_21, \"__esModule\", {\n value: true\n});\n_$interactablePreventDefault_21.install = __install_21;\n_$interactablePreventDefault_21[\"default\"] = void 0;\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___events_21 = ___interopRequireDefault_21(_$events_52);\n\nvar __is_21 = ___interopRequireWildcard_21(_$is_57);\n\n/* removed: var _$window_66 = require(\"@interactjs/utils/window\"); */;\n\nfunction ___getRequireWildcardCache_21() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction preventDefault(newValue) {\n if (/^(always|never|auto)$/.test(newValue)) {\n this.options.preventDefault = newValue;\n return this;\n }\n\n if (__is_21.bool(newValue)) {\n this.options.preventDefault = newValue ? 'always' : 'never';\n return this;\n }\n\n return this.options.preventDefault;\n}\n\nfunction checkAndPreventDefault(interactable, scope, event) {\n var setting = interactable.options.preventDefault;\n\n if (setting === 'never') {\n return;\n }\n\n if (setting === 'always') {\n event.preventDefault();\n return;\n } // setting === 'auto'\n // if the browser supports passive event listeners and isn't running on iOS,\n // don't preventDefault of touch{start,move} events. CSS touch-action and\n // user-select should be used instead of calling event.preventDefault().\n\n\n if (___events_21[\"default\"].supportsPassive && /^touch(start|move)$/.test(event.type)) {\n var doc = (0, _$window_66.getWindow)(event.target).document;\n var docOptions = scope.getDocOptions(doc);\n\n if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) {\n return;\n }\n } // don't preventDefault of pointerdown events\n\n\n if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) {\n return;\n } // don't preventDefault on editable elements\n\n\n if (__is_21.element(event.target) && (0, _$domUtils_51.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) {\n return;\n }\n\n event.preventDefault();\n}\n\nfunction onInteractionEvent(_ref) {\n var interaction = _ref.interaction,\n event = _ref.event;\n\n if (interaction.interactable) {\n interaction.interactable.checkAndPreventDefault(event);\n }\n}\n\nfunction __install_21(scope) {\n /** @lends Interactable */\n var Interactable = scope.Interactable;\n /**\n * Returns or sets whether to prevent the browser's default behaviour in\n * response to pointer events. Can be set to:\n * - `'always'` to always prevent\n * - `'never'` to never prevent\n * - `'auto'` to let interact.js try to determine what would be best\n *\n * @param {string} [newValue] `'always'`, `'never'` or `'auto'`\n * @return {string | Interactable} The current setting or this Interactable\n */\n\n Interactable.prototype.preventDefault = preventDefault;\n\n Interactable.prototype.checkAndPreventDefault = function (event) {\n return checkAndPreventDefault(this, scope, event);\n };\n\n var _arr = ['down', 'move', 'up', 'cancel'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var eventSignal = _arr[_i];\n scope.interactions.signals.on(eventSignal, onInteractionEvent);\n } // prevent native HTML5 drag on interact.js target elements\n\n\n scope.interactions.docEvents.push({\n type: 'dragstart',\n listener: function listener(event) {\n for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) {\n var _ref2;\n\n _ref2 = scope.interactions.list[_i2];\n var interaction = _ref2;\n\n if (interaction.element && (interaction.element === event.target || (0, _$domUtils_51.nodeContains)(interaction.element, event.target))) {\n interaction.interactable.checkAndPreventDefault(event);\n return;\n }\n }\n }\n });\n}\n\nvar ___default_21 = {\n id: 'core/interactablePreventDefault',\n install: __install_21\n};\n_$interactablePreventDefault_21[\"default\"] = ___default_21;\n\nvar _$devTools_25 = {};\n\"use strict\";\n\nObject.defineProperty(_$devTools_25, \"__esModule\", {\n value: true\n});\n_$devTools_25[\"default\"] = void 0;\n\nvar ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_50);\n\n/* removed: var _$domUtils_51 = require(\"@interactjs/utils/domUtils\"); */;\n\nvar ___extend_25 = ___interopRequireDefault_25(_$extend_53);\n\nvar __is_25 = ___interopRequireWildcard_25(_$is_57);\n\nvar ___window_25 = ___interopRequireDefault_25(_$window_66);\n\nfunction ___getRequireWildcardCache_25() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); }\n\nfunction ___nonIterableSpread_25() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nvar CheckName;\n\n(function (CheckName) {\n CheckName[\"touchAction\"] = \"\";\n CheckName[\"boxSizing\"] = \"\";\n CheckName[\"noListeners\"] = \"\";\n})(CheckName || (CheckName = {}));\n\nvar prefix = '[interact.js] ';\nvar links = {\n touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action',\n boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing'\n};\nvar isProduction = \"production\" === 'production'; // eslint-disable-next-line no-restricted-syntax\n\nfunction __install_25(scope) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n logger = _ref.logger;\n\n var interactions = scope.interactions,\n Interactable = scope.Interactable,\n defaults = scope.defaults;\n logger = logger || console;\n interactions.signals.on('action-start', function (_ref2) {\n var interaction = _ref2.interaction;\n\n for (var _i = 0; _i < checks.length; _i++) {\n var _ref3;\n\n _ref3 = checks[_i];\n var check = _ref3;\n var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name];\n\n if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) {\n var _logger;\n\n (_logger = logger).warn.apply(_logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction))));\n }\n }\n });\n defaults.base.devTools = {\n ignore: {}\n };\n\n Interactable.prototype.devTools = function (options) {\n if (options) {\n (0, ___extend_25[\"default\"])(this.options.devTools, options);\n return this;\n }\n\n return this.options.devTools;\n };\n}\n\nvar checks = [{\n name: 'touchAction',\n perform: function perform(_ref4) {\n var element = _ref4.element;\n return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/);\n },\n getInfo: function getInfo(_ref5) {\n var element = _ref5.element;\n return [element, links.touchAction];\n },\n text: 'Consider adding CSS \"touch-action: none\" to this element\\n'\n}, {\n name: 'boxSizing',\n perform: function perform(interaction) {\n var element = interaction.element;\n return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25[\"default\"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/);\n },\n text: 'Consider adding CSS \"box-sizing: border-box\" to this resizable element',\n getInfo: function getInfo(_ref6) {\n var element = _ref6.element;\n return [element, links.boxSizing];\n }\n}, {\n name: 'noListeners',\n perform: function perform(interaction) {\n var actionName = interaction.prepared.name;\n var moveListeners = interaction.interactable.events.types[\"\".concat(actionName, \"move\")] || [];\n return !moveListeners.length;\n },\n getInfo: function getInfo(interaction) {\n return [interaction.prepared.name, interaction.interactable];\n },\n text: 'There are no listeners set for this action'\n}];\n\nfunction hasStyle(element, prop, styleRe) {\n return styleRe.test(element.style[prop] || ___window_25[\"default\"].window.getComputedStyle(element)[prop]);\n}\n\nfunction parentHasStyle(element, prop, styleRe) {\n var parent = element;\n\n while (__is_25.element(parent)) {\n if (hasStyle(parent, prop, styleRe)) {\n return true;\n }\n\n parent = (0, _$domUtils_51.parentNode)(parent);\n }\n\n return false;\n}\n\nvar __id_25 = 'dev-tools';\nvar defaultExport = isProduction ? {\n id: __id_25,\n install: function install() {}\n} : {\n id: __id_25,\n install: __install_25,\n checks: checks,\n CheckName: CheckName,\n links: links,\n prefix: prefix\n};\nvar ___default_25 = defaultExport;\n_$devTools_25[\"default\"] = ___default_25;\n\nvar _$base_30 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_30, \"__esModule\", {\n value: true\n});\n_$base_30.startAll = startAll;\n_$base_30.setAll = setAll;\n_$base_30.prepareStates = prepareStates;\n_$base_30.setCoords = setCoords;\n_$base_30.restoreCoords = restoreCoords;\n_$base_30.makeModifier = makeModifier;\n_$base_30[\"default\"] = void 0;\n\nvar ___extend_30 = ___interopRequireDefault_30(_$extend_53);\n\nfunction ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); }\n\nfunction ___nonIterableRest_30() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __install_30(scope) {\n var interactions = scope.interactions;\n scope.defaults.perAction.modifiers = [];\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.modifiers = {\n startOffset: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n offsets: {},\n states: null,\n result: null,\n endPrevented: false,\n startDelta: null\n };\n });\n interactions.signals.on('before-action-start', function (arg) {\n __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page);\n });\n interactions.signals.on('action-resume', function (arg) {\n stop(arg);\n __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords);\n __beforeMove_30(arg);\n });\n interactions.signals.on('after-action-move', restoreCoords);\n interactions.signals.on('before-action-move', __beforeMove_30);\n interactions.signals.on('before-action-start', setCoords);\n interactions.signals.on('after-action-start', restoreCoords);\n interactions.signals.on('before-action-end', beforeEnd);\n interactions.signals.on('stop', stop);\n}\n\nfunction __start_30(_ref2, pageCoords, prevCoords) {\n var interaction = _ref2.interaction,\n phase = _ref2.phase;\n var interactable = interaction.interactable,\n element = interaction.element;\n var modifierList = getModifierList(interaction);\n var states = prepareStates(modifierList);\n var rect = (0, ___extend_30[\"default\"])({}, interaction.rect);\n\n if (!('width' in rect)) {\n rect.width = rect.right - rect.left;\n }\n\n if (!('height' in rect)) {\n rect.height = rect.bottom - rect.top;\n }\n\n var startOffset = getRectOffset(rect, pageCoords);\n interaction.modifiers.startOffset = startOffset;\n interaction.modifiers.startDelta = {\n x: 0,\n y: 0\n };\n var arg = {\n interaction: interaction,\n interactable: interactable,\n element: element,\n pageCoords: pageCoords,\n phase: phase,\n rect: rect,\n startOffset: startOffset,\n states: states,\n preEnd: false,\n requireEndOnly: false,\n prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page)\n };\n interaction.modifiers.states = states;\n interaction.modifiers.result = null;\n startAll(arg);\n var result = interaction.modifiers.result = setAll(arg);\n return result;\n}\n\nfunction startAll(arg) {\n var states = arg.states;\n\n for (var _i = 0; _i < states.length; _i++) {\n var _ref3;\n\n _ref3 = states[_i];\n var state = _ref3;\n\n if (state.methods.start) {\n arg.state = state;\n state.methods.start(arg);\n }\n }\n}\n\nfunction setAll(arg) {\n var prevCoords = arg.prevCoords,\n phase = arg.phase,\n preEnd = arg.preEnd,\n requireEndOnly = arg.requireEndOnly,\n rect = arg.rect,\n states = arg.states;\n arg.coords = (0, ___extend_30[\"default\"])({}, arg.pageCoords);\n arg.rect = (0, ___extend_30[\"default\"])({}, rect);\n var result = {\n delta: {\n x: 0,\n y: 0\n },\n rectDelta: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n coords: arg.coords,\n changed: true\n };\n\n for (var _i2 = 0; _i2 < states.length; _i2++) {\n var _ref4;\n\n _ref4 = states[_i2];\n var state = _ref4;\n var options = state.options;\n\n if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) {\n continue;\n }\n\n arg.state = state;\n state.methods.set(arg);\n }\n\n result.delta.x = arg.coords.x - arg.pageCoords.x;\n result.delta.y = arg.coords.y - arg.pageCoords.y;\n var rectChanged = false;\n\n if (rect) {\n result.rectDelta.left = arg.rect.left - rect.left;\n result.rectDelta.right = arg.rect.right - rect.right;\n result.rectDelta.top = arg.rect.top - rect.top;\n result.rectDelta.bottom = arg.rect.bottom - rect.bottom;\n rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0;\n }\n\n result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged;\n return result;\n}\n\nfunction __beforeMove_30(arg) {\n var interaction = arg.interaction,\n phase = arg.phase,\n preEnd = arg.preEnd,\n skipModifiers = arg.skipModifiers;\n var interactable = interaction.interactable,\n element = interaction.element;\n var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states;\n var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page);\n var modifierResult = setAll({\n interaction: interaction,\n interactable: interactable,\n element: element,\n preEnd: preEnd,\n phase: phase,\n pageCoords: arg.modifiedCoords || interaction.coords.cur.page,\n prevCoords: prevCoords,\n rect: interaction.rect,\n states: states,\n requireEndOnly: false\n });\n interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same\n // cordinates as before\n\n if (!modifierResult.changed && interaction.interacting()) {\n return false;\n }\n\n if (arg.modifiedCoords) {\n var page = interaction.coords.cur.page;\n var adjustment = {\n x: arg.modifiedCoords.x - page.x,\n y: arg.modifiedCoords.y - page.y\n };\n modifierResult.coords.x += adjustment.x;\n modifierResult.coords.y += adjustment.y;\n modifierResult.delta.x += adjustment.x;\n modifierResult.delta.y += adjustment.y;\n }\n\n setCoords(arg);\n}\n\nfunction beforeEnd(arg) {\n var interaction = arg.interaction,\n event = arg.event,\n noPreEnd = arg.noPreEnd;\n var states = interaction.modifiers.states;\n\n if (noPreEnd || !states || !states.length) {\n return;\n }\n\n var didPreEnd = false;\n\n for (var _i3 = 0; _i3 < states.length; _i3++) {\n var _ref5;\n\n _ref5 = states[_i3];\n var state = _ref5;\n arg.state = state;\n var options = state.options,\n methods = state.methods;\n var endResult = methods.beforeEnd && methods.beforeEnd(arg);\n\n if (endResult === false) {\n interaction.modifiers.endPrevented = true;\n return false;\n } // if the endOnly option is true for any modifier\n\n\n if (!didPreEnd && shouldDo(options, true, true)) {\n // fire a move event at the modified coordinates\n interaction.move({\n event: event,\n preEnd: true\n });\n didPreEnd = true;\n }\n }\n}\n\nfunction stop(arg) {\n var interaction = arg.interaction;\n var states = interaction.modifiers.states;\n\n if (!states || !states.length) {\n return;\n }\n\n var modifierArg = (0, ___extend_30[\"default\"])({\n states: states,\n interactable: interaction.interactable,\n element: interaction.element,\n rect: null\n }, arg);\n\n for (var _i4 = 0; _i4 < states.length; _i4++) {\n var _ref6;\n\n _ref6 = states[_i4];\n var state = _ref6;\n modifierArg.state = state;\n\n if (state.methods.stop) {\n state.methods.stop(modifierArg);\n }\n }\n\n arg.interaction.modifiers.states = null;\n arg.interaction.modifiers.endPrevented = false;\n}\n\nfunction getModifierList(interaction) {\n var actionOptions = interaction.interactable.options[interaction.prepared.name];\n var actionModifiers = actionOptions.modifiers;\n\n if (actionModifiers && actionModifiers.length) {\n return actionModifiers.filter(function (modifier) {\n return !modifier.options || modifier.options.enabled !== false;\n });\n }\n\n return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) {\n var options = actionOptions[type];\n return options && options.enabled && {\n options: options,\n methods: options._methods\n };\n }).filter(function (m) {\n return !!m;\n });\n}\n\nfunction prepareStates(modifierList) {\n var states = [];\n\n for (var index = 0; index < modifierList.length; index++) {\n var _modifierList$index = modifierList[index],\n options = _modifierList$index.options,\n methods = _modifierList$index.methods,\n name = _modifierList$index.name;\n\n if (options && options.enabled === false) {\n continue;\n }\n\n states.push({\n options: options,\n methods: methods,\n index: index,\n name: name\n });\n }\n\n return states;\n}\n\nfunction setCoords(arg) {\n var interaction = arg.interaction,\n phase = arg.phase;\n var curCoords = interaction.coords.cur;\n var startCoords = interaction.coords.start;\n var _interaction$modifier = interaction.modifiers,\n result = _interaction$modifier.result,\n startDelta = _interaction$modifier.startDelta;\n var curDelta = result.delta;\n\n if (phase === 'start') {\n (0, ___extend_30[\"default\"])(interaction.modifiers.startDelta, result.delta);\n }\n\n var _arr = [[startCoords, startDelta], [curCoords, curDelta]];\n\n for (var _i5 = 0; _i5 < _arr.length; _i5++) {\n var _arr$_i = ___slicedToArray_30(_arr[_i5], 2),\n coordsSet = _arr$_i[0],\n delta = _arr$_i[1];\n\n coordsSet.page.x += delta.x;\n coordsSet.page.y += delta.y;\n coordsSet.client.x += delta.x;\n coordsSet.client.y += delta.y;\n }\n\n var rectDelta = interaction.modifiers.result.rectDelta;\n var rect = arg.rect || interaction.rect;\n rect.left += rectDelta.left;\n rect.right += rectDelta.right;\n rect.top += rectDelta.top;\n rect.bottom += rectDelta.bottom;\n rect.width = rect.right - rect.left;\n rect.height = rect.bottom - rect.top;\n}\n\nfunction restoreCoords(_ref7) {\n var _ref7$interaction = _ref7.interaction,\n coords = _ref7$interaction.coords,\n rect = _ref7$interaction.rect,\n modifiers = _ref7$interaction.modifiers;\n\n if (!modifiers.result) {\n return;\n }\n\n var startDelta = modifiers.startDelta;\n var _modifiers$result = modifiers.result,\n curDelta = _modifiers$result.delta,\n rectDelta = _modifiers$result.rectDelta;\n var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]];\n\n for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) {\n var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2),\n coordsSet = _coordsAndDeltas$_i[0],\n delta = _coordsAndDeltas$_i[1];\n\n coordsSet.page.x -= delta.x;\n coordsSet.page.y -= delta.y;\n coordsSet.client.x -= delta.x;\n coordsSet.client.y -= delta.y;\n }\n\n rect.left -= rectDelta.left;\n rect.right -= rectDelta.right;\n rect.top -= rectDelta.top;\n rect.bottom -= rectDelta.bottom;\n}\n\nfunction shouldDo(options, preEnd, requireEndOnly, phase) {\n return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly;\n}\n\nfunction getRectOffset(rect, coords) {\n return rect ? {\n left: coords.x - rect.left,\n top: coords.y - rect.top,\n right: rect.right - coords.x,\n bottom: rect.bottom - coords.y\n } : {\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n };\n}\n\nfunction makeModifier(module, name) {\n var defaults = module.defaults;\n var methods = {\n start: module.start,\n set: module.set,\n beforeEnd: module.beforeEnd,\n stop: module.stop\n };\n\n var modifier = function modifier(_options) {\n var options = _options || {};\n options.enabled = options.enabled !== false; // add missing defaults to options\n\n for (var prop in defaults) {\n if (!(prop in options)) {\n options[prop] = defaults[prop];\n }\n }\n\n var m = {\n options: options,\n methods: methods,\n name: name\n };\n return m;\n };\n\n if (name && typeof name === 'string') {\n // for backwrads compatibility\n modifier._defaults = defaults;\n modifier._methods = methods;\n }\n\n return modifier;\n}\n\nvar ___default_30 = {\n id: 'modifiers/base',\n install: __install_30,\n startAll: startAll,\n setAll: setAll,\n prepareStates: prepareStates,\n start: __start_30,\n beforeMove: __beforeMove_30,\n beforeEnd: beforeEnd,\n stop: stop,\n shouldDo: shouldDo,\n getModifierList: getModifierList,\n getRectOffset: getRectOffset,\n makeModifier: makeModifier\n};\n_$base_30[\"default\"] = ___default_30;\n\nvar _$inertia_26 = {};\n\"use strict\";\n\nObject.defineProperty(_$inertia_26, \"__esModule\", {\n value: true\n});\n_$inertia_26[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\nvar ___base_26 = ___interopRequireWildcard_26(_$base_30);\n\nvar __utils_26 = ___interopRequireWildcard_26(_$utils_56);\n\nvar ___raf_26 = ___interopRequireDefault_26(_$raf_62);\n\nfunction ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_26() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n_$InteractEvent_15.EventPhase.Resume = 'resume';\n_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart';\n\nfunction __install_26(scope) {\n var interactions = scope.interactions,\n defaults = scope.defaults;\n interactions.signals.on('new', function (_ref) {\n var interaction = _ref.interaction;\n interaction.inertia = {\n active: false,\n smoothEnd: false,\n allowResume: false,\n upCoords: {},\n timeout: null\n };\n });\n interactions.signals.on('before-action-end', function (arg) {\n return release(arg, scope);\n });\n interactions.signals.on('down', function (arg) {\n return resume(arg, scope);\n });\n interactions.signals.on('stop', __stop_26);\n defaults.perAction.inertia = {\n enabled: false,\n resistance: 10,\n minSpeed: 100,\n endSpeed: 10,\n allowResume: true,\n smoothEndDuration: 300\n };\n scope.usePlugin(___base_26[\"default\"]);\n}\n\nfunction resume(_ref2, scope) {\n var interaction = _ref2.interaction,\n event = _ref2.event,\n pointer = _ref2.pointer,\n eventTarget = _ref2.eventTarget;\n var state = interaction.inertia; // Check if the down event hits the current inertia target\n\n if (state.active) {\n var element = eventTarget; // climb up the DOM tree from the event target\n\n while (__utils_26.is.element(element)) {\n // if interaction element is the current inertia target element\n if (element === interaction.element) {\n // stop inertia\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null; // update pointers to the down event's coordinates\n\n interaction.updatePointer(pointer, event, eventTarget, true);\n __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) {\n return p.pointer;\n }), interaction._now()); // fire appropriate signals\n\n var signalArg = {\n interaction: interaction,\n phase: _$InteractEvent_15.EventPhase.Resume\n };\n scope.interactions.signals.fire('action-resume', signalArg); // fire a reume event\n\n var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element);\n\n interaction._fireEvent(resumeEvent);\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n break;\n }\n\n element = __utils_26.dom.parentNode(element);\n }\n }\n}\n\nfunction release(_ref3, scope) {\n var interaction = _ref3.interaction,\n event = _ref3.event,\n noPreEnd = _ref3.noPreEnd;\n var state = interaction.inertia;\n\n if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) {\n return null;\n }\n\n var options = __getOptions_26(interaction);\n\n var now = interaction._now();\n\n var velocityClient = interaction.coords.velocity.client;\n var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y);\n var smoothEnd = false;\n var modifierResult; // check if inertia should be started\n\n var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent;\n var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed;\n var modifierArg = {\n interaction: interaction,\n pageCoords: interaction.coords.cur.page,\n states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) {\n return __utils_26.extend({}, modifierStatus);\n }),\n preEnd: true,\n prevCoords: null,\n requireEndOnly: null,\n phase: _$InteractEvent_15.EventPhase.InertiaStart\n }; // smoothEnd\n\n if (inertiaPossible && !inertia) {\n modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page;\n modifierArg.requireEndOnly = false;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n\n if (modifierResult.changed) {\n smoothEnd = true;\n }\n }\n\n if (!(inertia || smoothEnd)) {\n return null;\n }\n\n __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur);\n (0, ___base_26.setCoords)(modifierArg);\n interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name\n interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element);\n (0, ___base_26.restoreCoords)(modifierArg);\n state.t0 = now;\n state.active = true;\n state.allowResume = options.allowResume;\n interaction.simulation = state;\n interaction.interactable.fire(state.startEvent);\n\n if (inertia) {\n state.vx0 = interaction.coords.velocity.client.x;\n state.vy0 = interaction.coords.velocity.client.y;\n state.v0 = pointerSpeed;\n calcInertia(interaction, state);\n __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page);\n modifierArg.pageCoords.x += state.xe;\n modifierArg.pageCoords.y += state.ye;\n modifierArg.prevCoords = null;\n modifierArg.requireEndOnly = true;\n modifierResult = ___base_26[\"default\"].setAll(modifierArg);\n state.modifiedXe += modifierResult.delta.x;\n state.modifiedYe += modifierResult.delta.y;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.smoothEnd = true;\n state.xe = modifierResult.delta.x;\n state.ye = modifierResult.delta.y;\n state.sx = state.sy = 0;\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n }\n\n return false;\n}\n\nfunction __stop_26(_ref4) {\n var interaction = _ref4.interaction;\n var state = interaction.inertia;\n\n if (state.active) {\n ___raf_26[\"default\"].cancel(state.timeout);\n\n state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction calcInertia(interaction, state) {\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda;\n state.x0 = interaction.prevEvent.page.x;\n state.y0 = interaction.prevEvent.page.y;\n state.t0 = state.startEvent.timeStamp / 1000;\n state.sx = state.sy = 0;\n state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda;\n state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda;\n state.te = inertiaDur;\n state.lambda_v0 = lambda / state.v0;\n state.one_ve_v0 = 1 - options.endSpeed / state.v0;\n}\n\nfunction inertiaTick(interaction) {\n updateInertiaCoords(interaction);\n __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur);\n __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta);\n var state = interaction.inertia;\n var options = __getOptions_26(interaction);\n var lambda = options.resistance;\n var t = interaction._now() / 1000 - state.t0;\n\n if (t < state.te) {\n var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0;\n\n if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) {\n state.sx = state.xe * progress;\n state.sy = state.ye * progress;\n } else {\n var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress);\n state.sx = quadPoint.x;\n state.sy = quadPoint.y;\n }\n\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return inertiaTick(interaction);\n });\n } else {\n state.sx = state.modifiedXe;\n state.sy = state.modifiedYe;\n interaction.move();\n interaction.end(state.startEvent);\n state.active = false;\n interaction.simulation = null;\n }\n\n __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur);\n}\n\nfunction smothEndTick(interaction) {\n updateInertiaCoords(interaction);\n var state = interaction.inertia;\n var t = interaction._now() - state.t0;\n\n var _getOptions = __getOptions_26(interaction),\n duration = _getOptions.smoothEndDuration;\n\n if (t < duration) {\n state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration);\n state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration);\n interaction.move();\n state.timeout = ___raf_26[\"default\"].request(function () {\n return smothEndTick(interaction);\n });\n } else {\n state.sx = state.xe;\n state.sy = state.ye;\n interaction.move();\n interaction.end(state.startEvent);\n state.smoothEnd = state.active = false;\n interaction.simulation = null;\n }\n}\n\nfunction updateInertiaCoords(interaction) {\n var state = interaction.inertia; // return if inertia isn't running\n\n if (!state.active) {\n return;\n }\n\n var pageUp = state.upCoords.page;\n var clientUp = state.upCoords.client;\n __utils_26.pointer.setCoords(interaction.coords.cur, [{\n pageX: pageUp.x + state.sx,\n pageY: pageUp.y + state.sy,\n clientX: clientUp.x + state.sx,\n clientY: clientUp.y + state.sy\n }], interaction._now());\n}\n\nfunction __getOptions_26(_ref5) {\n var interactable = _ref5.interactable,\n prepared = _ref5.prepared;\n return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia;\n}\n\nvar ___default_26 = {\n id: 'inertia',\n install: __install_26,\n calcInertia: calcInertia,\n inertiaTick: inertiaTick,\n smothEndTick: smothEndTick,\n updateInertiaCoords: updateInertiaCoords\n};\n_$inertia_26[\"default\"] = ___default_26;\n\nvar _$pointer_33 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_33, \"__esModule\", {\n value: true\n});\n_$pointer_33[\"default\"] = void 0;\n\nvar ___extend_33 = ___interopRequireDefault_33(_$extend_53);\n\nvar __is_33 = ___interopRequireWildcard_33(_$is_57);\n\nvar ___rect_33 = ___interopRequireDefault_33(_$rect_63);\n\nfunction ___getRequireWildcardCache_33() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __start_33(_ref) {\n var rect = _ref.rect,\n startOffset = _ref.startOffset,\n state = _ref.state,\n interaction = _ref.interaction,\n pageCoords = _ref.pageCoords;\n var options = state.options;\n var elementRect = options.elementRect;\n var offset = (0, ___extend_33[\"default\"])({\n left: 0,\n top: 0,\n right: 0,\n bottom: 0\n }, options.offset || {});\n\n if (rect && elementRect) {\n var restriction = getRestrictionRect(options.restriction, interaction, pageCoords);\n\n if (restriction) {\n var widthDiff = restriction.right - restriction.left - rect.width;\n var heightDiff = restriction.bottom - restriction.top - rect.height;\n\n if (widthDiff < 0) {\n offset.left += widthDiff;\n offset.right += widthDiff;\n }\n\n if (heightDiff < 0) {\n offset.top += heightDiff;\n offset.bottom += heightDiff;\n }\n }\n\n offset.left += startOffset.left - rect.width * elementRect.left;\n offset.top += startOffset.top - rect.height * elementRect.top;\n offset.right += startOffset.right - rect.width * (1 - elementRect.right);\n offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom);\n }\n\n state.offset = offset;\n}\n\nfunction set(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var options = state.options,\n offset = state.offset;\n var restriction = getRestrictionRect(options.restriction, interaction, coords);\n\n if (!restriction) {\n return;\n }\n\n var rect = ___rect_33[\"default\"].xywhToTlbr(restriction);\n\n coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left);\n coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top);\n}\n\nfunction getRestrictionRect(value, interaction, coords) {\n if (__is_33.func(value)) {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]);\n } else {\n return ___rect_33[\"default\"].resolveRectLike(value, interaction.interactable, interaction.element);\n }\n}\n\nvar __defaults_33 = {\n restriction: null,\n elementRect: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrict = {\n start: __start_33,\n set: set,\n getRestrictionRect: getRestrictionRect,\n defaults: __defaults_33\n};\nvar ___default_33 = restrict;\n_$pointer_33[\"default\"] = ___default_33;\n\nvar _$edges_32 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_32, \"__esModule\", {\n value: true\n});\n_$edges_32[\"default\"] = void 0;\n\nvar ___extend_32 = ___interopRequireDefault_32(_$extend_53);\n\nvar ___rect_32 = ___interopRequireDefault_32(_$rect_63);\n\nvar _pointer = ___interopRequireDefault_32(_$pointer_33);\n\nfunction ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n// This module adds the options.resize.restrictEdges setting which sets min and\n// max for the top, left, bottom and right edges of the target being resized.\n//\n// interact(target).resize({\n// edges: { top: true, left: true },\n// restrictEdges: {\n// inner: { top: 200, left: 200, right: 400, bottom: 400 },\n// outer: { top: 0, left: 0, right: 600, bottom: 600 },\n// },\n// })\nvar __getRestrictionRect_32 = _pointer[\"default\"].getRestrictionRect;\nvar noInner = {\n top: +Infinity,\n left: +Infinity,\n bottom: -Infinity,\n right: -Infinity\n};\nvar noOuter = {\n top: -Infinity,\n left: -Infinity,\n bottom: +Infinity,\n right: +Infinity\n};\n\nfunction __start_32(_ref) {\n var interaction = _ref.interaction,\n state = _ref.state;\n var options = state.options;\n var startOffset = interaction.modifiers.startOffset;\n var offset;\n\n if (options) {\n var offsetRect = __getRestrictionRect_32(options.offset, interaction, interaction.coords.start.page);\n offset = ___rect_32[\"default\"].rectToXY(offsetRect);\n }\n\n offset = offset || {\n x: 0,\n y: 0\n };\n state.offset = {\n top: offset.y + startOffset.top,\n left: offset.x + startOffset.left,\n bottom: offset.y - startOffset.bottom,\n right: offset.x - startOffset.right\n };\n}\n\nfunction __set_32(_ref2) {\n var coords = _ref2.coords,\n interaction = _ref2.interaction,\n state = _ref2.state;\n var offset = state.offset,\n options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var page = (0, ___extend_32[\"default\"])({}, coords);\n var inner = __getRestrictionRect_32(options.inner, interaction, page) || {};\n var outer = __getRestrictionRect_32(options.outer, interaction, page) || {};\n fixRect(inner, noInner);\n fixRect(outer, noOuter);\n\n if (edges.top) {\n coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top);\n } else if (edges.bottom) {\n coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom);\n }\n\n if (edges.left) {\n coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left);\n } else if (edges.right) {\n coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right);\n }\n}\n\nfunction fixRect(rect, defaults) {\n var _arr = ['top', 'left', 'bottom', 'right'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var edge = _arr[_i];\n\n if (!(edge in rect)) {\n rect[edge] = defaults[edge];\n }\n }\n\n return rect;\n}\n\nvar __defaults_32 = {\n inner: null,\n outer: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar restrictEdges = {\n noInner: noInner,\n noOuter: noOuter,\n getRestrictionRect: __getRestrictionRect_32,\n start: __start_32,\n set: __set_32,\n defaults: __defaults_32\n};\nvar ___default_32 = restrictEdges;\n_$edges_32[\"default\"] = ___default_32;\n\nvar _$rect_34 = {};\n\"use strict\";\n\nObject.defineProperty(_$rect_34, \"__esModule\", {\n value: true\n});\n_$rect_34[\"default\"] = void 0;\n\nvar ___extend_34 = ___interopRequireDefault_34(_$extend_53);\n\nvar ___pointer_34 = ___interopRequireDefault_34(_$pointer_33);\n\nfunction ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __defaults_34 = (0, ___extend_34[\"default\"])({\n get elementRect() {\n return {\n top: 0,\n left: 0,\n bottom: 1,\n right: 1\n };\n },\n\n set elementRect(_) {}\n\n}, ___pointer_34[\"default\"].defaults);\nvar restrictRect = {\n start: ___pointer_34[\"default\"].start,\n set: ___pointer_34[\"default\"].set,\n defaults: __defaults_34\n};\nvar ___default_34 = restrictRect;\n_$rect_34[\"default\"] = ___default_34;\n\nvar _$size_35 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_35, \"__esModule\", {\n value: true\n});\n_$size_35[\"default\"] = void 0;\n\nvar ___extend_35 = ___interopRequireDefault_35(_$extend_53);\n\nvar ___rect_35 = ___interopRequireDefault_35(_$rect_63);\n\nvar _edges = ___interopRequireDefault_35(_$edges_32);\n\nfunction ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar noMin = {\n width: -Infinity,\n height: -Infinity\n};\nvar noMax = {\n width: +Infinity,\n height: +Infinity\n};\n\nfunction __start_35(arg) {\n return _edges[\"default\"].start(arg);\n}\n\nfunction __set_35(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared._linkedEdges || interaction.prepared.edges;\n\n if (!edges) {\n return;\n }\n\n var rect = ___rect_35[\"default\"].xywhToTlbr(interaction.resizeRects.inverted);\n\n var minSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.min, interaction, arg.coords)) || noMin;\n var maxSize = ___rect_35[\"default\"].tlbrToXywh(_edges[\"default\"].getRestrictionRect(options.max, interaction, arg.coords)) || noMax;\n state.options = {\n endOnly: options.endOnly,\n inner: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noInner),\n outer: (0, ___extend_35[\"default\"])({}, _edges[\"default\"].noOuter)\n };\n\n if (edges.top) {\n state.options.inner.top = rect.bottom - minSize.height;\n state.options.outer.top = rect.bottom - maxSize.height;\n } else if (edges.bottom) {\n state.options.inner.bottom = rect.top + minSize.height;\n state.options.outer.bottom = rect.top + maxSize.height;\n }\n\n if (edges.left) {\n state.options.inner.left = rect.right - minSize.width;\n state.options.outer.left = rect.right - maxSize.width;\n } else if (edges.right) {\n state.options.inner.right = rect.left + minSize.width;\n state.options.outer.right = rect.left + maxSize.width;\n }\n\n _edges[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_35 = {\n min: null,\n max: null,\n endOnly: false,\n enabled: false\n};\nvar restrictSize = {\n start: __start_35,\n set: __set_35,\n defaults: __defaults_35\n};\nvar ___default_35 = restrictSize;\n_$size_35[\"default\"] = ___default_35;\n\nvar _$pointer_37 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointer_37, \"__esModule\", {\n value: true\n});\n_$pointer_37[\"default\"] = void 0;\n\nvar __utils_37 = ___interopRequireWildcard_37(_$utils_56);\n\nfunction ___getRequireWildcardCache_37() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __start_37(arg) {\n var interaction = arg.interaction,\n interactable = arg.interactable,\n element = arg.element,\n rect = arg.rect,\n state = arg.state,\n startOffset = arg.startOffset;\n var options = state.options;\n var offsets = [];\n var origin = options.offsetWithOrigin ? getOrigin(arg) : {\n x: 0,\n y: 0\n };\n var snapOffset;\n\n if (options.offset === 'startCoords') {\n snapOffset = {\n x: interaction.coords.start.page.x,\n y: interaction.coords.start.page.y\n };\n } else {\n var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]);\n snapOffset = __utils_37.rect.rectToXY(offsetRect) || {\n x: 0,\n y: 0\n };\n snapOffset.x += origin.x;\n snapOffset.y += origin.y;\n }\n\n var relativePoints = options.relativePoints || [];\n\n if (rect && options.relativePoints && options.relativePoints.length) {\n for (var index = 0; index < relativePoints.length; index++) {\n var relativePoint = relativePoints[index];\n offsets.push({\n index: index,\n relativePoint: relativePoint,\n x: startOffset.left - rect.width * relativePoint.x + snapOffset.x,\n y: startOffset.top - rect.height * relativePoint.y + snapOffset.y\n });\n }\n } else {\n offsets.push(__utils_37.extend({\n index: 0,\n relativePoint: null\n }, snapOffset));\n }\n\n state.offsets = offsets;\n}\n\nfunction __set_37(arg) {\n var interaction = arg.interaction,\n coords = arg.coords,\n state = arg.state;\n var options = state.options,\n offsets = state.offsets;\n var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name);\n var page = __utils_37.extend({}, coords);\n var targets = [];\n var target;\n\n if (!options.offsetWithOrigin) {\n page.x -= origin.x;\n page.y -= origin.y;\n }\n\n state.realX = page.x;\n state.realY = page.y;\n\n for (var _i = 0; _i < offsets.length; _i++) {\n var _ref;\n\n _ref = offsets[_i];\n var offset = _ref;\n var relativeX = page.x - offset.x;\n var relativeY = page.y - offset.y;\n\n for (var index = 0, _len = options.targets.length; index < _len; index++) {\n var snapTarget = options.targets[index];\n\n if (__utils_37.is.func(snapTarget)) {\n target = snapTarget(relativeX, relativeY, interaction, offset, index);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n targets.push({\n x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x,\n y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y,\n range: __utils_37.is.number(target.range) ? target.range : options.range\n });\n }\n }\n\n var closest = {\n target: null,\n inRange: false,\n distance: 0,\n range: 0,\n dx: 0,\n dy: 0\n };\n\n for (var i = 0, len = targets.length; i < len; i++) {\n target = targets[i];\n var range = target.range;\n var dx = target.x - page.x;\n var dy = target.y - page.y;\n var distance = __utils_37.hypot(dx, dy);\n var inRange = distance <= range; // Infinite targets count as being out of range\n // compared to non infinite ones that are in range\n\n if (range === Infinity && closest.inRange && closest.range !== Infinity) {\n inRange = false;\n }\n\n if (!closest.target || (inRange // is the closest target in range?\n ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target\n ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't\n : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest\n distance < closest.distance : // The other is not in range and the pointer is closer to this target\n !closest.inRange && distance < closest.distance)) {\n closest.target = target;\n closest.distance = distance;\n closest.range = range;\n closest.inRange = inRange;\n closest.dx = dx;\n closest.dy = dy;\n state.range = range;\n }\n }\n\n if (closest.inRange) {\n coords.x = closest.target.x;\n coords.y = closest.target.y;\n }\n\n state.closest = closest;\n}\n\nfunction getOrigin(arg) {\n var element = arg.interaction.element;\n var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element]));\n var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name);\n return origin;\n}\n\nvar __defaults_37 = {\n range: Infinity,\n targets: null,\n offset: null,\n offsetWithOrigin: true,\n origin: null,\n relativePoints: null,\n endOnly: false,\n enabled: false\n};\nvar snap = {\n start: __start_37,\n set: __set_37,\n defaults: __defaults_37\n};\nvar ___default_37 = snap;\n_$pointer_37[\"default\"] = ___default_37;\n\nvar _$size_38 = {};\n\"use strict\";\n\nObject.defineProperty(_$size_38, \"__esModule\", {\n value: true\n});\n_$size_38[\"default\"] = void 0;\n\nvar ___extend_38 = ___interopRequireDefault_38(_$extend_53);\n\nvar __is_38 = ___interopRequireWildcard_38(_$is_57);\n\nvar ___pointer_38 = ___interopRequireDefault_38(_$pointer_37);\n\nfunction ___getRequireWildcardCache_38() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); }\n\nfunction ___nonIterableRest_38() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction __start_38(arg) {\n var interaction = arg.interaction,\n state = arg.state;\n var options = state.options;\n var edges = interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state = {\n options: {\n targets: null,\n relativePoints: [{\n x: edges.left ? 0 : 1,\n y: edges.top ? 0 : 1\n }],\n offset: options.offset || 'self',\n origin: {\n x: 0,\n y: 0\n },\n range: options.range\n }\n };\n state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']];\n\n ___pointer_38[\"default\"].start(arg);\n\n state.offsets = arg.state.offsets;\n arg.state = state;\n}\n\nfunction __set_38(arg) {\n var interaction = arg.interaction,\n state = arg.state,\n coords = arg.coords;\n var options = state.options,\n offsets = state.offsets;\n var relative = {\n x: coords.x - offsets[0].x,\n y: coords.y - offsets[0].y\n };\n state.options = (0, ___extend_38[\"default\"])({}, options);\n state.options.targets = [];\n\n for (var _i = 0; _i < (options.targets || []).length; _i++) {\n var _ref;\n\n _ref = (options.targets || [])[_i];\n var snapTarget = _ref;\n var target = void 0;\n\n if (__is_38.func(snapTarget)) {\n target = snapTarget(relative.x, relative.y, interaction);\n } else {\n target = snapTarget;\n }\n\n if (!target) {\n continue;\n }\n\n for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) {\n var _ref2;\n\n _ref2 = state.targetFields[_i2];\n\n var _ref3 = _ref2,\n _ref4 = ___slicedToArray_38(_ref3, 2),\n xField = _ref4[0],\n yField = _ref4[1];\n\n if (xField in target || yField in target) {\n target.x = target[xField];\n target.y = target[yField];\n break;\n }\n }\n\n state.options.targets.push(target);\n }\n\n ___pointer_38[\"default\"].set(arg);\n\n state.options = options;\n}\n\nvar __defaults_38 = {\n range: Infinity,\n targets: null,\n offset: null,\n endOnly: false,\n enabled: false\n};\nvar snapSize = {\n start: __start_38,\n set: __set_38,\n defaults: __defaults_38\n};\nvar ___default_38 = snapSize;\n_$size_38[\"default\"] = ___default_38;\n\nvar _$edges_36 = {};\n\"use strict\";\n\nObject.defineProperty(_$edges_36, \"__esModule\", {\n value: true\n});\n_$edges_36[\"default\"] = void 0;\n\nvar ___clone_36 = ___interopRequireDefault_36(_$clone_49);\n\nvar ___extend_36 = ___interopRequireDefault_36(_$extend_53);\n\nvar _size = ___interopRequireDefault_36(_$size_38);\n\nfunction ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @module modifiers/snapEdges\n *\n * @description\n * This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * @example\n * interact(target).resizable({\n * snapEdges: {\n * targets: [interact.snappers.grid({ x: 100, y: 50 })],\n * },\n * })\n *\n * interact(target).resizable({\n * snapEdges: {\n * targets: [\n * interact.snappers.grid({\n * top: 50,\n * left: 50,\n * bottom: 100,\n * right: 100,\n * }),\n * ],\n * },\n * })\n */\nfunction __start_36(arg) {\n var edges = arg.interaction.prepared.edges;\n\n if (!edges) {\n return null;\n }\n\n arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']];\n return _size[\"default\"].start(arg);\n}\n\nfunction __set_36(arg) {\n return _size[\"default\"].set(arg);\n}\n\nvar snapEdges = {\n start: __start_36,\n set: __set_36,\n defaults: (0, ___extend_36[\"default\"])((0, ___clone_36[\"default\"])(_size[\"default\"].defaults), {\n offset: {\n x: 0,\n y: 0\n }\n })\n};\nvar ___default_36 = snapEdges;\n_$edges_36[\"default\"] = ___default_36;\n\nvar _$modifiers_31 = {};\n\"use strict\";\n\nObject.defineProperty(_$modifiers_31, \"__esModule\", {\n value: true\n});\n_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0;\n\nvar ___base_31 = ___interopRequireDefault_31(_$base_30);\n\nvar ___edges_31 = ___interopRequireDefault_31(_$edges_32);\n\nvar ___pointer_31 = ___interopRequireDefault_31(_$pointer_33);\n\nvar ___rect_31 = ___interopRequireDefault_31(_$rect_34);\n\nvar ___size_31 = ___interopRequireDefault_31(_$size_35);\n\nvar _edges2 = ___interopRequireDefault_31(_$edges_36);\n\nvar _pointer2 = ___interopRequireDefault_31(_$pointer_37);\n\nvar _size2 = ___interopRequireDefault_31(_$size_38);\n\nfunction ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar __makeModifier_31 = ___base_31[\"default\"].makeModifier;\nvar __snap_31 = __makeModifier_31(_pointer2[\"default\"], 'snap');\n_$modifiers_31.snap = __snap_31;\nvar __snapSize_31 = __makeModifier_31(_size2[\"default\"], 'snapSize');\n_$modifiers_31.snapSize = __snapSize_31;\nvar __snapEdges_31 = __makeModifier_31(_edges2[\"default\"], 'snapEdges');\n_$modifiers_31.snapEdges = __snapEdges_31;\nvar __restrict_31 = __makeModifier_31(___pointer_31[\"default\"], 'restrict');\n_$modifiers_31.restrict = __restrict_31;\nvar __restrictRect_31 = __makeModifier_31(___rect_31[\"default\"], 'restrictRect');\n_$modifiers_31.restrictRect = __restrictRect_31;\nvar __restrictEdges_31 = __makeModifier_31(___edges_31[\"default\"], 'restrictEdges');\n_$modifiers_31.restrictEdges = __restrictEdges_31;\nvar __restrictSize_31 = __makeModifier_31(___size_31[\"default\"], 'restrictSize');\n_$modifiers_31.restrictSize = __restrictSize_31;\n\nvar _$PointerEvent_39 = {};\n\"use strict\";\n\nObject.defineProperty(_$PointerEvent_39, \"__esModule\", {\n value: true\n});\n_$PointerEvent_39[\"default\"] = void 0;\n\nvar ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13);\n\nvar ___pointerUtils_39 = ___interopRequireDefault_39(_$pointerUtils_61);\n\nfunction ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___typeof_39(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_39(obj); }\n\nfunction ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; }\n\nfunction ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === \"object\" || typeof call === \"function\")) { return call; } return ___assertThisInitialized_39(self); }\n\nfunction ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); }\n\nfunction ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction ___inherits_39(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); }\n\nfunction ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); }\n\n/** */\nvar PointerEvent =\n/*#__PURE__*/\nfunction (_BaseEvent) {\n ___inherits_39(PointerEvent, _BaseEvent);\n\n /** */\n function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) {\n var _this;\n\n ___classCallCheck_39(this, PointerEvent);\n\n _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction));\n\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), event);\n\n if (event !== pointer) {\n ___pointerUtils_39[\"default\"].pointerExtend(___assertThisInitialized_39(_this), pointer);\n }\n\n _this.timeStamp = timeStamp;\n _this.originalEvent = event;\n _this.type = type;\n _this.pointerId = ___pointerUtils_39[\"default\"].getPointerId(pointer);\n _this.pointerType = ___pointerUtils_39[\"default\"].getPointerType(pointer);\n _this.target = eventTarget;\n _this.currentTarget = null;\n\n if (type === 'tap') {\n var pointerIndex = interaction.getPointerIndex(pointer);\n _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime;\n var interval = _this.timeStamp - interaction.tapTime;\n _this[\"double\"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500);\n } else if (type === 'doubletap') {\n _this.dt = pointer.timeStamp - interaction.tapTime;\n }\n\n return _this;\n }\n\n ___createClass_39(PointerEvent, [{\n key: \"_subtractOrigin\",\n value: function _subtractOrigin(_ref) {\n var originX = _ref.x,\n originY = _ref.y;\n this.pageX -= originX;\n this.pageY -= originY;\n this.clientX -= originX;\n this.clientY -= originY;\n return this;\n }\n }, {\n key: \"_addOrigin\",\n value: function _addOrigin(_ref2) {\n var originX = _ref2.x,\n originY = _ref2.y;\n this.pageX += originX;\n this.pageY += originY;\n this.clientX += originX;\n this.clientY += originY;\n return this;\n }\n /**\n * Prevent the default behaviour of the original Event\n */\n\n }, {\n key: \"preventDefault\",\n value: function preventDefault() {\n this.originalEvent.preventDefault();\n }\n }]);\n\n return PointerEvent;\n}(___BaseEvent2_39[\"default\"]);\n\n_$PointerEvent_39[\"default\"] = PointerEvent;\n\nvar _$base_40 = {};\n\"use strict\";\n\nObject.defineProperty(_$base_40, \"__esModule\", {\n value: true\n});\n_$base_40[\"default\"] = void 0;\n\nvar __utils_40 = ___interopRequireWildcard_40(_$utils_56);\n\nvar _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39);\n\nfunction ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_40() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar signals = new __utils_40.Signals();\nvar simpleSignals = ['down', 'up', 'cancel'];\nvar simpleEvents = ['down', 'up', 'cancel'];\nvar __defaults_40 = {\n holdDuration: 600,\n ignoreFrom: null,\n allowFrom: null,\n origin: {\n x: 0,\n y: 0\n }\n};\nvar pointerEvents = {\n id: 'pointer-events/base',\n install: __install_40,\n signals: signals,\n PointerEvent: _PointerEvent[\"default\"],\n fire: fire,\n collectEventTargets: collectEventTargets,\n createSignalListener: createSignalListener,\n defaults: __defaults_40,\n types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold']\n};\n\nfunction fire(arg, scope) {\n var interaction = arg.interaction,\n pointer = arg.pointer,\n event = arg.event,\n eventTarget = arg.eventTarget,\n _arg$type = arg.type,\n type = _arg$type === void 0 ? arg.pointerEvent.type : _arg$type,\n _arg$targets = arg.targets,\n targets = _arg$targets === void 0 ? collectEventTargets(arg) : _arg$targets;\n var _arg$pointerEvent = arg.pointerEvent,\n pointerEvent = _arg$pointerEvent === void 0 ? new _PointerEvent[\"default\"](type, pointer, event, eventTarget, interaction, scope.now()) : _arg$pointerEvent;\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n targets: targets,\n type: type,\n pointerEvent: pointerEvent\n };\n\n for (var i = 0; i < targets.length; i++) {\n var target = targets[i];\n\n for (var prop in target.props || {}) {\n pointerEvent[prop] = target.props[prop];\n }\n\n var origin = __utils_40.getOriginXY(target.eventable, target.node);\n\n pointerEvent._subtractOrigin(origin);\n\n pointerEvent.eventable = target.eventable;\n pointerEvent.currentTarget = target.node;\n target.eventable.fire(pointerEvent);\n\n pointerEvent._addOrigin(origin);\n\n if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) {\n break;\n }\n }\n\n signals.fire('fired', signalArg);\n\n if (type === 'tap') {\n // if pointerEvent should make a double tap, create and fire a doubletap\n // PointerEvent and use that as the prevTap\n var prevTap = pointerEvent[\"double\"] ? fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'doubletap'\n }, scope) : pointerEvent;\n interaction.prevTap = prevTap;\n interaction.tapTime = prevTap.timeStamp;\n }\n\n return pointerEvent;\n}\n\nfunction collectEventTargets(_ref) {\n var interaction = _ref.interaction,\n pointer = _ref.pointer,\n event = _ref.event,\n eventTarget = _ref.eventTarget,\n type = _ref.type;\n var pointerIndex = interaction.getPointerIndex(pointer);\n var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted\n\n if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target\n !(pointerInfo && pointerInfo.downTarget === eventTarget))) {\n return [];\n }\n\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: type,\n path: path,\n targets: [],\n node: null\n };\n\n for (var _i = 0; _i < path.length; _i++) {\n var _ref2;\n\n _ref2 = path[_i];\n var node = _ref2;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (type === 'hold') {\n signalArg.targets = signalArg.targets.filter(function (target) {\n return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration;\n });\n }\n\n return signalArg.targets;\n}\n\nfunction __install_40(scope) {\n var interactions = scope.interactions;\n scope.pointerEvents = pointerEvents;\n scope.defaults.actions.pointerEvents = pointerEvents.defaults;\n interactions.signals.on('new', function (_ref3) {\n var interaction = _ref3.interaction;\n interaction.prevTap = null; // the most recent tap event on this interaction\n\n interaction.tapTime = 0; // time of the most recent tap event\n });\n interactions.signals.on('update-pointer', function (_ref4) {\n var down = _ref4.down,\n pointerInfo = _ref4.pointerInfo;\n\n if (!down && pointerInfo.hold) {\n return;\n }\n\n pointerInfo.hold = {\n duration: Infinity,\n timeout: null\n };\n });\n interactions.signals.on('move', function (_ref5) {\n var interaction = _ref5.interaction,\n pointer = _ref5.pointer,\n event = _ref5.event,\n eventTarget = _ref5.eventTarget,\n duplicateMove = _ref5.duplicateMove;\n var pointerIndex = interaction.getPointerIndex(pointer);\n\n if (!duplicateMove && (!interaction.pointerIsDown || interaction.pointerWasMoved)) {\n if (interaction.pointerIsDown) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n\n fire({\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'move'\n }, scope);\n }\n });\n interactions.signals.on('down', function (_ref6) {\n var interaction = _ref6.interaction,\n pointer = _ref6.pointer,\n event = _ref6.event,\n eventTarget = _ref6.eventTarget,\n pointerIndex = _ref6.pointerIndex;\n var timer = interaction.pointers[pointerIndex].hold;\n var path = __utils_40.dom.getPath(eventTarget);\n var signalArg = {\n interaction: interaction,\n pointer: pointer,\n event: event,\n eventTarget: eventTarget,\n type: 'hold',\n targets: [],\n path: path,\n node: null\n };\n\n for (var _i2 = 0; _i2 < path.length; _i2++) {\n var _ref7;\n\n _ref7 = path[_i2];\n var node = _ref7;\n signalArg.node = node;\n signals.fire('collect-targets', signalArg);\n }\n\n if (!signalArg.targets.length) {\n return;\n }\n\n var minDuration = Infinity;\n\n for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) {\n var _ref8;\n\n _ref8 = signalArg.targets[_i3];\n var target = _ref8;\n var holdDuration = target.eventable.options.holdDuration;\n\n if (holdDuration < minDuration) {\n minDuration = holdDuration;\n }\n }\n\n timer.duration = minDuration;\n timer.timeout = setTimeout(function () {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'hold'\n }, scope);\n }, minDuration);\n });\n var _arr = ['up', 'cancel'];\n\n for (var _i4 = 0; _i4 < _arr.length; _i4++) {\n var signalName = _arr[_i4];\n interactions.signals.on(signalName, function (_ref10) {\n var interaction = _ref10.interaction,\n pointerIndex = _ref10.pointerIndex;\n\n if (interaction.pointers[pointerIndex].hold) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout);\n }\n });\n }\n\n for (var i = 0; i < simpleSignals.length; i++) {\n interactions.signals.on(simpleSignals[i], createSignalListener(simpleEvents[i], scope));\n }\n\n interactions.signals.on('up', function (_ref9) {\n var interaction = _ref9.interaction,\n pointer = _ref9.pointer,\n event = _ref9.event,\n eventTarget = _ref9.eventTarget;\n\n if (!interaction.pointerWasMoved) {\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: 'tap'\n }, scope);\n }\n });\n}\n\nfunction createSignalListener(type, scope) {\n return function (_ref11) {\n var interaction = _ref11.interaction,\n pointer = _ref11.pointer,\n event = _ref11.event,\n eventTarget = _ref11.eventTarget;\n fire({\n interaction: interaction,\n eventTarget: eventTarget,\n pointer: pointer,\n event: event,\n type: type\n }, scope);\n };\n}\n\nvar ___default_40 = pointerEvents;\n_$base_40[\"default\"] = ___default_40;\n\nvar _$holdRepeat_41 = {};\n\"use strict\";\n\nObject.defineProperty(_$holdRepeat_41, \"__esModule\", {\n value: true\n});\n_$holdRepeat_41[\"default\"] = void 0;\n\nvar ___base_41 = ___interopRequireDefault_41(_$base_40);\n\nfunction ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_41(scope) {\n var pointerEvents = scope.pointerEvents,\n interactions = scope.interactions;\n scope.usePlugin(___base_41[\"default\"]);\n pointerEvents.signals.on('new', onNew);\n pointerEvents.signals.on('fired', function (arg) {\n return onFired(arg, scope);\n });\n var _arr = ['move', 'up', 'cancel', 'endall'];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var signal = _arr[_i];\n interactions.signals.on(signal, endHoldRepeat);\n } // don't repeat by default\n\n\n pointerEvents.defaults.holdRepeatInterval = 0;\n pointerEvents.types.push('holdrepeat');\n}\n\nfunction onNew(_ref) {\n var pointerEvent = _ref.pointerEvent;\n\n if (pointerEvent.type !== 'hold') {\n return;\n }\n\n pointerEvent.count = (pointerEvent.count || 0) + 1;\n}\n\nfunction onFired(_ref2, scope) {\n var interaction = _ref2.interaction,\n pointerEvent = _ref2.pointerEvent,\n eventTarget = _ref2.eventTarget,\n targets = _ref2.targets;\n\n if (pointerEvent.type !== 'hold' || !targets.length) {\n return;\n } // get the repeat interval from the first eventable\n\n\n var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less\n\n if (interval <= 0) {\n return;\n } // set a timeout to fire the holdrepeat event\n\n\n interaction.holdIntervalHandle = setTimeout(function () {\n scope.pointerEvents.fire({\n interaction: interaction,\n eventTarget: eventTarget,\n type: 'hold',\n pointer: pointerEvent,\n event: pointerEvent\n }, scope);\n }, interval);\n}\n\nfunction endHoldRepeat(_ref3) {\n var interaction = _ref3.interaction;\n\n // set the interaction's holdStopTime property\n // to stop further holdRepeat events\n if (interaction.holdIntervalHandle) {\n clearInterval(interaction.holdIntervalHandle);\n interaction.holdIntervalHandle = null;\n }\n}\n\nvar ___default_41 = {\n id: 'pointer-events/holdRepeat',\n install: __install_41\n};\n_$holdRepeat_41[\"default\"] = ___default_41;\n\nvar _$interactableTargets_43 = {};\n\"use strict\";\n\nObject.defineProperty(_$interactableTargets_43, \"__esModule\", {\n value: true\n});\n_$interactableTargets_43[\"default\"] = void 0;\n\n/* removed: var _$arr_47 = require(\"@interactjs/utils/arr\"); */;\n\nvar ___extend_43 = ___interopRequireDefault_43(_$extend_53);\n\nfunction ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_43(scope) {\n var pointerEvents = scope.pointerEvents,\n actions = scope.actions,\n Interactable = scope.Interactable,\n interactables = scope.interactables;\n pointerEvents.signals.on('collect-targets', function (_ref) {\n var targets = _ref.targets,\n node = _ref.node,\n type = _ref.type,\n eventTarget = _ref.eventTarget;\n scope.interactables.forEachMatch(node, function (interactable) {\n var eventable = interactable.events;\n var options = eventable.options;\n\n if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) {\n targets.push({\n node: node,\n eventable: eventable,\n props: {\n interactable: interactable\n }\n });\n }\n });\n });\n interactables.signals.on('new', function (_ref2) {\n var interactable = _ref2.interactable;\n\n interactable.events.getRect = function (element) {\n return interactable.getRect(element);\n };\n });\n interactables.signals.on('set', function (_ref3) {\n var interactable = _ref3.interactable,\n options = _ref3.options;\n (0, ___extend_43[\"default\"])(interactable.events.options, pointerEvents.defaults);\n (0, ___extend_43[\"default\"])(interactable.events.options, options.pointerEvents || {});\n });\n (0, _$arr_47.merge)(actions.eventTypes, pointerEvents.types);\n Interactable.prototype.pointerEvents = pointerEventsMethod;\n var __backCompatOption = Interactable.prototype._backCompatOption;\n\n Interactable.prototype._backCompatOption = function (optionName, newValue) {\n var ret = __backCompatOption.call(this, optionName, newValue);\n\n if (ret === this) {\n this.events.options[optionName] = newValue;\n }\n\n return ret;\n };\n}\n\nfunction pointerEventsMethod(options) {\n (0, ___extend_43[\"default\"])(this.events.options, options);\n return this;\n}\n\nvar ___default_43 = {\n id: 'pointer-events/interactableTargets',\n install: __install_43\n};\n_$interactableTargets_43[\"default\"] = ___default_43;\n\nvar _$pointerEvents_42 = {};\n\"use strict\";\n\nObject.defineProperty(_$pointerEvents_42, \"__esModule\", {\n value: true\n});\n_$pointerEvents_42.install = __install_42;\nObject.defineProperty(_$pointerEvents_42, \"pointerEvents\", {\n enumerable: true,\n get: function get() {\n return ___base_42[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"holdRepeat\", {\n enumerable: true,\n get: function get() {\n return _holdRepeat[\"default\"];\n }\n});\nObject.defineProperty(_$pointerEvents_42, \"interactableTargets\", {\n enumerable: true,\n get: function get() {\n return _interactableTargets[\"default\"];\n }\n});\n_$pointerEvents_42.id = void 0;\n\nvar ___base_42 = ___interopRequireDefault_42(_$base_40);\n\nvar _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41);\n\nvar _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43);\n\nfunction ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction __install_42(scope) {\n scope.usePlugin(___base_42[\"default\"]);\n scope.usePlugin(_holdRepeat[\"default\"]);\n scope.usePlugin(_interactableTargets[\"default\"]);\n}\n\nvar __id_42 = 'pointer-events';\n_$pointerEvents_42.id = __id_42;\n\nvar _$reflow_44 = {};\n\"use strict\";\n\nObject.defineProperty(_$reflow_44, \"__esModule\", {\n value: true\n});\n_$reflow_44.install = __install_44;\n_$reflow_44[\"default\"] = void 0;\n\n/* removed: var _$InteractEvent_15 = require(\"@interactjs/core/InteractEvent\"); */;\n\n/* removed: var _$utils_56 = require(\"@interactjs/utils\"); */;\n\n_$InteractEvent_15.EventPhase.Reflow = 'reflow';\n\nfunction __install_44(scope) {\n var actions = scope.actions,\n interactions = scope.interactions,\n Interactable = scope.Interactable; // add action reflow event types\n\n for (var _i = 0; _i < actions.names.length; _i++) {\n var _ref;\n\n _ref = actions.names[_i];\n var actionName = _ref;\n actions.eventTypes.push(\"\".concat(actionName, \"reflow\"));\n } // remove completed reflow interactions\n\n\n interactions.signals.on('stop', function (_ref2) {\n var interaction = _ref2.interaction;\n\n if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) {\n if (interaction._reflowResolve) {\n interaction._reflowResolve();\n }\n\n _$utils_56.arr.remove(scope.interactions.list, interaction);\n }\n });\n /**\n * ```js\n * const interactable = interact(target)\n * const drag = { name: drag, axis: 'x' }\n * const resize = { name: resize, edges: { left: true, bottom: true }\n *\n * interactable.reflow(drag)\n * interactable.reflow(resize)\n * ```\n *\n * Start an action sequence to re-apply modifiers, check drops, etc.\n *\n * @param { Object } action The action to begin\n * @param { string } action.name The name of the action\n * @returns { Promise }\n */\n\n Interactable.prototype.reflow = function (action) {\n return reflow(this, action, scope);\n };\n}\n\nfunction reflow(interactable, action, scope) {\n var elements = _$utils_56.is.string(interactable.target) ? _$utils_56.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name\n\n var Promise = _$utils_56.win.window.Promise;\n var promises = Promise ? [] : null;\n\n var _loop = function _loop() {\n _ref3 = elements[_i2];\n var element = _ref3;\n var rect = interactable.getRect(element);\n\n if (!rect) {\n return \"break\";\n }\n\n var runningInteraction = _$utils_56.arr.find(scope.interactions.list, function (interaction) {\n return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name;\n });\n\n var reflowPromise = void 0;\n\n if (runningInteraction) {\n runningInteraction.move();\n\n if (promises) {\n reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) {\n runningInteraction._reflowResolve = resolve;\n });\n }\n } else {\n var xywh = _$utils_56.rect.tlbrToXywh(rect);\n\n var coords = {\n page: {\n x: xywh.x,\n y: xywh.y\n },\n client: {\n x: xywh.x,\n y: xywh.y\n },\n timeStamp: scope.now()\n };\n\n var event = _$utils_56.pointer.coordsToEvent(coords);\n\n reflowPromise = startReflow(scope, interactable, element, action, event);\n }\n\n if (promises) {\n promises.push(reflowPromise);\n }\n };\n\n for (var _i2 = 0; _i2 < elements.length; _i2++) {\n var _ref3;\n\n var _ret = _loop();\n\n if (_ret === \"break\") break;\n }\n\n return promises && Promise.all(promises).then(function () {\n return interactable;\n });\n}\n\nfunction startReflow(scope, interactable, element, action, event) {\n var interaction = scope.interactions[\"new\"]({\n pointerType: 'reflow'\n });\n var signalArg = {\n interaction: interaction,\n event: event,\n pointer: event,\n eventTarget: element,\n phase: _$InteractEvent_15.EventPhase.Reflow\n };\n interaction.interactable = interactable;\n interaction.element = element;\n interaction.prepared = (0, _$utils_56.extend)({}, action);\n interaction.prevEvent = event;\n interaction.updatePointer(event, event, element, true);\n\n interaction._doPhase(signalArg);\n\n var reflowPromise = _$utils_56.win.window.Promise ? new _$utils_56.win.window.Promise(function (resolve) {\n interaction._reflowResolve = resolve;\n }) : null;\n interaction._reflowPromise = reflowPromise;\n interaction.start(action, interactable, element);\n\n if (interaction._interacting) {\n interaction.move(signalArg);\n interaction.end(event);\n } else {\n interaction.stop();\n }\n\n interaction.removePointer(event, event);\n interaction.pointerIsDown = false;\n return reflowPromise;\n}\n\nvar ___default_44 = {\n id: 'reflow',\n install: __install_44\n};\n_$reflow_44[\"default\"] = ___default_44;\n\nvar _$interact_28 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_28, \"__esModule\", {\n value: true\n});\n_$interact_28[\"default\"] = _$interact_28.scope = _$interact_28.interact = void 0;\n\nvar ___scope_28 = _$scope_24({});\n\nvar __utils_28 = ___interopRequireWildcard_28(_$utils_56);\n\nvar ___browser_28 = ___interopRequireDefault_28(_$browser_48);\n\nvar ___events_28 = ___interopRequireDefault_28(_$events_52);\n\nfunction ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_28() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/** @module interact */\nvar globalEvents = {};\nvar scope = new ___scope_28.Scope();\n/**\n * ```js\n * interact('#draggable').draggable(true)\n *\n * var rectables = interact('rect')\n * rectables\n * .gesturable(true)\n * .on('gesturemove', function (event) {\n * // ...\n * })\n * ```\n *\n * The methods of this variable can be used to set elements as interactables\n * and also to change various default settings.\n *\n * Calling it as a function and passing an element or a valid CSS selector\n * string returns an Interactable object which has various methods to configure\n * it.\n *\n * @global\n *\n * @param {Element | string} target The HTML or SVG Element to interact with\n * or CSS selector\n * @return {Interactable}\n */\n\n_$interact_28.scope = scope;\n\nvar interact = function interact(target, options) {\n var interactable = scope.interactables.get(target, options);\n\n if (!interactable) {\n interactable = scope.interactables[\"new\"](target, options);\n interactable.events.global = globalEvents;\n }\n\n return interactable;\n};\n/**\n * Use a plugin\n *\n * @alias module:interact.use\n *\n * @param {Object} plugin\n * @param {function} plugin.install\n * @return {interact}\n */\n\n\n_$interact_28.interact = interact;\ninteract.use = use;\n\nfunction use(plugin, options) {\n scope.usePlugin(plugin, options);\n return interact;\n}\n/**\n * Check if an element or selector has been set with the {@link interact}\n * function\n *\n * @alias module:interact.isSet\n *\n * @param {Element} element The Element being searched for\n * @return {boolean} Indicates if the element or CSS selector was previously\n * passed to interact\n */\n\n\ninteract.isSet = isSet;\n\nfunction isSet(target, options) {\n return !!scope.interactables.get(target, options && options.context);\n}\n/**\n * Add a global listener for an InteractEvent or adds a DOM event to `document`\n *\n * @alias module:interact.on\n *\n * @param {string | array | object} type The types of events to listen for\n * @param {function} listener The function event (s)\n * @param {object | boolean} [options] object or useCapture flag for\n * addEventListener\n * @return {object} interact\n */\n\n\ninteract.on = on;\n\nfunction on(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i = 0; _i < type.length; _i++) {\n var _ref;\n\n _ref = type[_i];\n var eventType = _ref;\n interact.on(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.on(prop, type[prop], listener);\n }\n\n return interact;\n } // if it is an InteractEvent type, add listener to globalEvents\n\n\n if (__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n // if this type of event was never bound\n if (!globalEvents[type]) {\n globalEvents[type] = [listener];\n } else {\n globalEvents[type].push(listener);\n }\n } // If non InteractEvent type, addEventListener to document\n else {\n ___events_28[\"default\"].add(scope.document, type, listener, {\n options: options\n });\n }\n\n return interact;\n}\n/**\n * Removes a global InteractEvent listener or DOM event from `document`\n *\n * @alias module:interact.off\n *\n * @param {string | array | object} type The types of events that were listened\n * for\n * @param {function} listener The listener function to be removed\n * @param {object | boolean} options [options] object or useCapture flag for\n * removeEventListener\n * @return {object} interact\n */\n\n\ninteract.off = off;\n\nfunction off(type, listener, options) {\n if (__utils_28.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/);\n }\n\n if (__utils_28.is.array(type)) {\n for (var _i2 = 0; _i2 < type.length; _i2++) {\n var _ref2;\n\n _ref2 = type[_i2];\n var eventType = _ref2;\n interact.off(eventType, listener, options);\n }\n\n return interact;\n }\n\n if (__utils_28.is.object(type)) {\n for (var prop in type) {\n interact.off(prop, type[prop], listener);\n }\n\n return interact;\n }\n\n if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) {\n ___events_28[\"default\"].remove(scope.document, type, listener, options);\n } else {\n var index;\n\n if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) {\n globalEvents[type].splice(index, 1);\n }\n }\n\n return interact;\n}\n/**\n * Returns an object which exposes internal data\n * @alias module:interact.debug\n *\n * @return {object} An object with properties that outline the current state\n * and expose internal functions and variables\n */\n\n\ninteract.debug = debug;\n\nfunction debug() {\n return scope;\n} // expose the functions used to calculate multi-touch properties\n\n\ninteract.getPointerAverage = __utils_28.pointer.pointerAverage;\ninteract.getTouchBBox = __utils_28.pointer.touchBBox;\ninteract.getTouchDistance = __utils_28.pointer.touchDistance;\ninteract.getTouchAngle = __utils_28.pointer.touchAngle;\ninteract.getElementRect = __utils_28.dom.getElementRect;\ninteract.getElementClientRect = __utils_28.dom.getElementClientRect;\ninteract.matchesSelector = __utils_28.dom.matchesSelector;\ninteract.closest = __utils_28.dom.closest;\n/**\n * @alias module:interact.supportsTouch\n *\n * @return {boolean} Whether or not the browser supports touch input\n */\n\ninteract.supportsTouch = supportsTouch;\n\nfunction supportsTouch() {\n return ___browser_28[\"default\"].supportsTouch;\n}\n/**\n * @alias module:interact.supportsPointerEvent\n *\n * @return {boolean} Whether or not the browser supports PointerEvents\n */\n\n\ninteract.supportsPointerEvent = supportsPointerEvent;\n\nfunction supportsPointerEvent() {\n return ___browser_28[\"default\"].supportsPointerEvent;\n}\n/**\n * Cancels all interactions (end events are not fired)\n *\n * @alias module:interact.stop\n *\n * @return {object} interact\n */\n\n\ninteract.stop = __stop_28;\n\nfunction __stop_28() {\n for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) {\n var _ref3;\n\n _ref3 = scope.interactions.list[_i3];\n var interaction = _ref3;\n interaction.stop();\n }\n\n return interact;\n}\n/**\n * Returns or sets the distance the pointer must be moved before an action\n * sequence occurs. This also affects tolerance for tap events.\n *\n * @alias module:interact.pointerMoveTolerance\n *\n * @param {number} [newValue] The movement from the start position must be greater than this value\n * @return {interact | number}\n */\n\n\ninteract.pointerMoveTolerance = pointerMoveTolerance;\n\nfunction pointerMoveTolerance(newValue) {\n if (__utils_28.is.number(newValue)) {\n scope.interactions.pointerMoveTolerance = newValue;\n return interact;\n }\n\n return scope.interactions.pointerMoveTolerance;\n}\n\nscope.interactables.signals.on('unset', function (_ref4) {\n var interactable = _ref4.interactable;\n scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset\n\n for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) {\n var _ref5;\n\n _ref5 = scope.interactions.list[_i4];\n var interaction = _ref5;\n\n if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) {\n interaction.stop();\n }\n }\n});\n\ninteract.addDocument = function (doc, options) {\n return scope.addDocument(doc, options);\n};\n\ninteract.removeDocument = function (doc) {\n return scope.removeDocument(doc);\n};\n\nscope.interact = interact;\nvar ___default_28 = interact;\n_$interact_28[\"default\"] = ___default_28;\n\nvar _$interact_27 = {};\n\"use strict\";\n\nObject.defineProperty(_$interact_27, \"__esModule\", {\n value: true\n});\n_$interact_27.init = __init_27;\nObject.defineProperty(_$interact_27, \"autoScroll\", {\n enumerable: true,\n get: function get() {\n return _autoScroll[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interactablePreventDefault\", {\n enumerable: true,\n get: function get() {\n return _interactablePreventDefault[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"inertia\", {\n enumerable: true,\n get: function get() {\n return _inertia[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"modifiers\", {\n enumerable: true,\n get: function get() {\n return ___base_27[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"reflow\", {\n enumerable: true,\n get: function get() {\n return _reflow[\"default\"];\n }\n});\nObject.defineProperty(_$interact_27, \"interact\", {\n enumerable: true,\n get: function get() {\n return _interact[\"default\"];\n }\n});\n_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27[\"default\"] = void 0;\n\nvar actions = ___interopRequireWildcard_27(_$actions_5);\n\n_$interact_27.actions = actions;\n\nvar _autoScroll = ___interopRequireDefault_27(_$autoScroll_7);\n\nvar autoStart = ___interopRequireWildcard_27(_$autoStart_12);\n\nvar _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21);\n\nvar _devTools = ___interopRequireDefault_27(_$devTools_25);\n\nvar _inertia = ___interopRequireDefault_27(_$inertia_26);\n\nvar modifiers = ___interopRequireWildcard_27(_$modifiers_31);\n\nvar ___base_27 = ___interopRequireDefault_27(_$base_30);\n\nvar __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42);\n\n_$interact_27.pointerEvents = __pointerEvents_27;\n\nvar _reflow = ___interopRequireDefault_27(_$reflow_44);\n\nvar _interact = ___interopRequireWildcard_27(_$interact_28);\n\nfunction ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_27() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction __init_27(window) {\n _interact.scope.init(window);\n\n _interact[\"default\"].use(_interactablePreventDefault[\"default\"]); // pointerEvents\n\n\n _interact[\"default\"].use(__pointerEvents_27); // inertia\n\n\n _interact[\"default\"].use(_inertia[\"default\"]); // autoStart, hold\n\n\n _interact[\"default\"].use(autoStart); // drag and drop, resize, gesture\n\n\n _interact[\"default\"].use(actions); // snap, resize, etc.\n\n\n _interact[\"default\"].use(___base_27[\"default\"]); // for backwrads compatibility\n\n\n for (var type in modifiers) {\n var _modifiers$type = modifiers[type],\n _defaults = _modifiers$type._defaults,\n _methods = _modifiers$type._methods;\n _defaults._methods = _methods;\n _interact.scope.defaults.perAction[type] = _defaults;\n } // autoScroll\n\n\n _interact[\"default\"].use(_autoScroll[\"default\"]); // reflow\n\n\n _interact[\"default\"].use(_reflow[\"default\"]); // eslint-disable-next-line no-undef\n\n\n if (\"production\" !== 'production') {\n _interact[\"default\"].use(_devTools[\"default\"]);\n }\n\n return _interact[\"default\"];\n} // eslint-disable-next-line no-undef\n\n\n_interact[\"default\"].version = \"1.6.3\";\nvar ___default_27 = _interact[\"default\"];\n_$interact_27[\"default\"] = ___default_27;\n\nvar _$types_45 = {};\n/// \n\"use strict\";\n\nvar _$grid_64 = {};\n\"use strict\";\n\nObject.defineProperty(_$grid_64, \"__esModule\", {\n value: true\n});\n_$grid_64[\"default\"] = void 0;\n\nfunction ___slicedToArray_64(arr, i) { return ___arrayWithHoles_64(arr) || ___iterableToArrayLimit_64(arr, i) || ___nonIterableRest_64(); }\n\nfunction ___nonIterableRest_64() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction ___iterableToArrayLimit_64(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction ___arrayWithHoles_64(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction createGrid(grid) {\n var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) {\n var _ref2 = ___slicedToArray_64(_ref, 2),\n xField = _ref2[0],\n yField = _ref2[1];\n\n return xField in grid || yField in grid;\n });\n return function (x, y) {\n var range = grid.range,\n _grid$limits = grid.limits,\n limits = _grid$limits === void 0 ? {\n left: -Infinity,\n right: Infinity,\n top: -Infinity,\n bottom: Infinity\n } : _grid$limits,\n _grid$offset = grid.offset,\n offset = _grid$offset === void 0 ? {\n x: 0,\n y: 0\n } : _grid$offset;\n var result = {\n range: range\n };\n\n for (var _i2 = 0; _i2 < coordFields.length; _i2++) {\n var _ref3;\n\n _ref3 = coordFields[_i2];\n\n var _ref4 = _ref3,\n _ref5 = ___slicedToArray_64(_ref4, 2),\n xField = _ref5[0],\n yField = _ref5[1];\n\n var gridx = Math.round((x - offset.x) / grid[xField]);\n var gridy = Math.round((y - offset.y) / grid[yField]);\n result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x));\n result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y));\n }\n\n return result;\n };\n}\n\nvar ___default_64 = createGrid;\n_$grid_64[\"default\"] = ___default_64;\n\nvar _$snappers_65 = {};\n\"use strict\";\n\nObject.defineProperty(_$snappers_65, \"__esModule\", {\n value: true\n});\nObject.defineProperty(_$snappers_65, \"grid\", {\n enumerable: true,\n get: function get() {\n return _grid[\"default\"];\n }\n});\n\nvar _grid = ___interopRequireDefault_65(_$grid_64);\n\nfunction ___interopRequireDefault_65(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar _$index_29 = { exports: {} };\n\"use strict\";\n\nObject.defineProperty(_$index_29.exports, \"__esModule\", {\n value: true\n});\n_$index_29.exports.init = __init_29;\n_$index_29.exports[\"default\"] = void 0;\n\nvar ___interact_29 = ___interopRequireWildcard_29(_$interact_27);\n\nvar __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31);\n\n_$types_45;\n\nvar ___extend_29 = ___interopRequireDefault_29(_$extend_53);\n\nvar snappers = ___interopRequireWildcard_29(_$snappers_65);\n\nfunction ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ___getRequireWildcardCache_29() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ___typeof_29(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return ___typeof_29(obj); }\n\nif ((typeof window === \"undefined\" ? \"undefined\" : ___typeof_29(window)) === 'object' && !!window) {\n __init_29(window);\n}\n\nfunction __init_29(win) {\n (0, ___interact_29.init)(win);\n return ___interact_29[\"default\"].use({\n id: 'interactjs',\n install: function install() {\n ___interact_29[\"default\"].modifiers = (0, ___extend_29[\"default\"])({}, __modifiers_29);\n ___interact_29[\"default\"].snappers = snappers;\n ___interact_29[\"default\"].createSnapGrid = ___interact_29[\"default\"].snappers.grid;\n }\n });\n}\n\nvar ___default_29 = ___interact_29[\"default\"];\n_$index_29.exports[\"default\"] = ___default_29;\n___interact_29[\"default\"][\"default\"] = ___interact_29[\"default\"] // tslint:disable-line no-string-literal\n;\n___interact_29[\"default\"].init = __init_29; // tslint:disable-line no-string-literal\n\nif ((\"object\" === \"undefined\" ? \"undefined\" : ___typeof_29(_$index_29)) === 'object' && !!_$index_29) {\n _$index_29.exports = ___interact_29[\"default\"];\n}\n\n_$index_29 = _$index_29.exports\nreturn _$index_29;\n\n});\n\n\n//# sourceMappingURL=interact.js.map\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://VueGridLayout/webpack/universalModuleDefinition","webpack://VueGridLayout/webpack/bootstrap","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-define.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-at.js","webpack://VueGridLayout/./node_modules/core-js/modules/_advance-string-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_flags.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?43b0","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopd.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dps.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/browser-detector.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_to-primitive.js","webpack://VueGridLayout/./src/helpers/DOM.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fix-re-wks.js","webpack://VueGridLayout/./node_modules/core-js/modules/_dom-create.js","webpack://VueGridLayout/./node_modules/css-loader/lib/css-base.js","webpack://VueGridLayout/./node_modules/core-js/modules/_classof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gops.js","webpack://VueGridLayout/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_redefine.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-create.js","webpack://VueGridLayout/./src/components/index.js","webpack://VueGridLayout/./node_modules/core-js/modules/_wks.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-generator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_library.js","webpack://VueGridLayout/./node_modules/core-js/modules/_cof.js","webpack://VueGridLayout/./node_modules/core-js/modules/_strict-method.js","webpack://VueGridLayout/./node_modules/core-js/modules/_hide.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_hide.js","webpack://VueGridLayout/./src/components/GridLayout.vue?0c71","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/helpers/esm/defineProperty.js","webpack://VueGridLayout/./src/helpers/responsiveUtils.js","webpack://VueGridLayout/src/components/GridLayout.vue","webpack://VueGridLayout/./src/components/GridLayout.vue?2dea","webpack://VueGridLayout/./src/components/GridLayout.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gpo.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-create.js","webpack://VueGridLayout/./node_modules/core-js/library/fn/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-integer.js","webpack://VueGridLayout/./node_modules/core-js/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/es6.object.define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.match.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/listToStyles.js","webpack://VueGridLayout/./node_modules/vue-style-loader/lib/addStylesClient.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/listener-handler.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-object.js","webpack://VueGridLayout/./node_modules/interactjs/dist/interact.min.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/id-handler.js","webpack://VueGridLayout/./node_modules/batch-processor/src/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-pie.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.sort.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_core.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_inherit-if-required.js","webpack://VueGridLayout/./src/components/GridItem.vue?70f1","webpack://VueGridLayout/./node_modules/core-js/modules/_object-sap.js","webpack://VueGridLayout/./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack://VueGridLayout/./node_modules/core-js/modules/_shared-key.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iobject.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_export.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-iobject.js","webpack://VueGridLayout/./node_modules/core-js/modules/_has.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-primitive.js","webpack://VueGridLayout/./src/components/GridItem.vue?73c4","webpack://VueGridLayout/./node_modules/core-js/modules/_object-assign.js","webpack://VueGridLayout/./node_modules/core-js/modules/_global.js","webpack://VueGridLayout/./node_modules/core-js/modules/_to-absolute-index.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/modules/_fails.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-to-string-tag.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.function.name.js","webpack://VueGridLayout/./node_modules/core-js/modules/_core.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iterators.js","webpack://VueGridLayout/./node_modules/@babel/runtime-corejs2/core-js/object/define-property.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_set-proto.js","webpack://VueGridLayout/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://VueGridLayout/./node_modules/core-js/library/modules/_descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-gopn.js","webpack://VueGridLayout/./node_modules/core-js/modules/_own-keys.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_add-to-unscopables.js","webpack://VueGridLayout/./src/components/GridItem.vue?b235","webpack://VueGridLayout/./node_modules/core-js/modules/_to-length.js","webpack://VueGridLayout/./node_modules/core-js/modules/_descriptors.js","webpack://VueGridLayout/./src/helpers/utils.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.replace.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-trim.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/reporter.js","webpack://VueGridLayout/./node_modules/core-js/modules/web.dom.iterable.js","webpack://VueGridLayout/./src/components/GridLayout.vue?af6b","webpack://VueGridLayout/./node_modules/core-js/library/modules/_property-desc.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.regexp.exec.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/collection-utils.js","webpack://VueGridLayout/./src/components/GridItem.vue?d9a3","webpack://VueGridLayout/./src/helpers/draggableUtils.js","webpack://VueGridLayout/src/components/GridItem.vue","webpack://VueGridLayout/./src/components/GridItem.vue?2537","webpack://VueGridLayout/./src/components/GridItem.vue","webpack://VueGridLayout/./node_modules/core-js/modules/_defined.js","webpack://VueGridLayout/./node_modules/batch-processor/src/batch-processor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_array-includes.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.constructor.js","webpack://VueGridLayout/./node_modules/core-js/modules/_ie8-dom-define.js","webpack://VueGridLayout/(webpack)/buildin/global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://VueGridLayout/./node_modules/core-js/modules/_uid.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.array.iterator.js","webpack://VueGridLayout/./node_modules/core-js/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_object-keys-internal.js","webpack://VueGridLayout/./node_modules/core-js/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_iter-step.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/state-handler.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_ctx.js","webpack://VueGridLayout/./node_modules/core-js/modules/_a-function.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_object-dp.js","webpack://VueGridLayout/./node_modules/core-js/modules/_enum-bug-keys.js","webpack://VueGridLayout/./src/components/GridLayout.vue?2bdf","webpack://VueGridLayout/./node_modules/core-js/library/modules/_an-object.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_global.js","webpack://VueGridLayout/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://VueGridLayout/./node_modules/core-js/modules/_create-property.js","webpack://VueGridLayout/./node_modules/current-script-polyfill/currentScript.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.object.assign.js","webpack://VueGridLayout/./node_modules/core-js/library/modules/_is-object.js","webpack://VueGridLayout/./node_modules/core-js/modules/_function-to-string.js","webpack://VueGridLayout/./node_modules/core-js/modules/_html.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://VueGridLayout/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://VueGridLayout/./node_modules/core-js/modules/es6.number.is-finite.js","webpack://VueGridLayout/./node_modules/core-js/modules/_string-ws.js"],"names":["root","factory","exports","module","require","define","amd","self","this","__WEBPACK_EXTERNAL_MODULE__8bbf__","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","LIBRARY","$export","redefine","hide","Iterators","$iterCreate","setToStringTag","getPrototypeOf","ITERATOR","BUGGY","keys","FF_ITERATOR","KEYS","VALUES","returnThis","Base","NAME","Constructor","next","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","proto","TAG","DEF_VALUES","VALUES_BUG","$native","$default","$entries","undefined","$anyNative","entries","values","P","F","toInteger","defined","TO_STRING","that","pos","a","b","String","length","charCodeAt","charAt","slice","at","S","index","unicode","it","anObject","result","global","ignoreCase","multiline","sticky","$keys","enumBugKeys","O","content","locals","add","default","pIE","createDesc","toIObject","toPrimitive","has","IE8_DOM_DEFINE","gOPD","getOwnPropertyDescriptor","f","e","dP","getKeys","defineProperties","Properties","browserDetector","options","reporter","batchProcessor","getState","stateHandler","Error","addListener","element","listener","getObject","listenerProxy","isIE","proxy","attachEvent","contentDocument","defaultView","addEventListener","makeDetectable","callback","debug","injectObject","OBJECT_STYLE","positionCheckPerformed","style","window","getComputedStyle","width","offsetWidth","height","offsetHeight","mutateDom","alterPositionStyles","position","removeRelativeStyles","getNumericalValue","replace","warn","onObjectLoad","getDocument","setTimeout","objectElement","objectDocument","document","createElement","cssText","tabIndex","type","setAttribute","onload","data","appendChild","startSize","uninstall","detachEvent","removeChild","detector","version","isAnyIeVersion","agent","navigator","userAgent","toLowerCase","indexOf","ieVersion","undef","v","div","all","getElementsByTagName","innerHTML","isLegacyOpera","opera","isObject","fn","val","toString","valueOf","TypeError","currentDir","hasDocument","hasWindow","getDocumentDir","direction","dir","getAttribute","addWindowEventListener","event","removeWindowEventListener","removeEventListener","is","fails","wks","regexpExec","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","re","exec","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","apply","arguments","split","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","constructor","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","done","strfn","rxfn","RegExp","string","arg","cssWithMappingToString","item","useSourceMap","cssMapping","btoa","sourceMapping","toComment","sourceURLs","sources","map","source","sourceRoot","concat","join","sourceMap","base64","unescape","encodeURIComponent","JSON","stringify","list","mediaQuery","alreadyImportedModules","id","push","cof","ARG","tryGet","T","B","callee","getOwnPropertySymbols","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","context","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","SRC","$toString","TPL","inspectSource","safe","isFunction","Function","dPs","IE_PROTO","Empty","PROTOTYPE","createDict","iframeDocument","iframe","lt","gt","display","src","contentWindow","open","write","close","VueGridLayout","GridLayout","GridItem","install","Vue","installed","forEach","component","plugin","GlobalVue","use","store","uid","USE_SYMBOL","$exports","idCount","generate","method","_vm","_h","$createElement","_c","_self","ref","staticClass","_t","directives","rawName","expression","attrs","placeholder","x","y","w","_defineProperty","obj","configurable","writable","getBreakpointFromWidth","breakpoints","sorted","sortBreakpoints","matching","len","breakpointName","getColsFromBreakpoint","breakpoint","cols","findOrGenerateResponsiveLayout","orgLayout","layouts","lastBreakpoint","verticalCompact","cloneLayout","layout","breakpointsSorted","breakpointsAbove","compact","correctBounds","sort","toObject","ObjectProto","descriptor","$Object","desc","ceil","Math","floor","isNaN","bitmap","toLength","advanceStringIndex","regExpExec","MATCH","$match","maybeCallNative","res","rx","fullUnicode","lastIndex","A","matchStr","listToStyles","parentId","styles","newStyles","css","media","part","parts","DEBUG","stylesInDom","head","singletonElement","singletonCounter","isProduction","noop","ssrIdKey","isOldIE","test","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","j","addStyle","createStyleElement","styleElement","update","remove","querySelector","parentNode","styleIndex","applyToSingletonTag","applyToTag","newObj","replaceText","textStore","replacement","filter","Boolean","styleSheet","cssNode","createTextNode","childNodes","insertBefore","ssrId","firstChild","idHandler","eventListeners","getListeners","removeListener","listeners","splice","removeAllListeners","Window","init","getWindow","ownerDocument","realWindow","wrap","iterator","u","docFrag","nodeType","func","number","bool","Element","nodeName","plainObject","array","interaction","prepared","axis","coords","cur","page","start","client","velocity","iEvent","delta","actions","Interactable","defaults","draggable","drag","methodDict","interactable","buttons","enabled","pointerIsDown","pointerType","mouseButtons","action","lockAxis","startAxis","setPerAction","setOnEvents","beforeMove","move","getCursor","g","DocumentFragment","SVGElement","SVGSVGElement","SVGElementInstance","HTMLElement","Event","Touch","PointerEvent","MSPointerEvent","supportsTouch","DocumentTouch","supportsPointerEvent","pointerEnabled","isIOS","platform","isIOS7","appVersion","isIe9","isOperaMobile","appName","prefixedMatchesSelector","pEventTypes","up","down","over","out","cancel","wheelEvent","_","host","nodeContains","contains","closest","matchesSelector","indexOfDeepestElement","E","ownerSVGElement","lastChild","previousSibling","parseInt","zIndex","matchesUpTo","getActualElement","correspondingUseElement","getScrollXY","getElementClientRect","M","getElementRect","left","right","top","bottom","getPath","trySelector","unshift","scrollX","documentElement","scrollLeft","scrollY","scrollTop","getBoundingClientRect","getClientRects","k","I","Array","D","getRect","getStringOptionResult","resolveRectLike","isArray","from","rectToXY","xywhToTlbr","tlbrToXywh","addEdges","origin","z","C","trim","search","reduce","R","sqrt","X","prefixedPropREs","webkit","moz","Y","W","L","U","N","V","touches","changedTouches","q","pageX","pageY","clientX","clientY","screenX","screenY","copyCoords","timeStamp","setCoordDeltas","setCoordVelocity","max","setZeroCoords","isNativePointer","getXY","getPageXY","getClientXY","getPointerId","pointerId","identifier","setCoords","getTouchPair","pointerAverage","touchBBox","min","touchDistance","touchAngle","atan2","PI","getPointerType","getEventTargets","composedPath","path","target","currentTarget","newCoords","coordsToEvent","preventDefault","$","G","BaseEvent","H","_interaction","immediatePropagationStopped","propagationStopped","_proxy","set","K","find","findIndex","merge","Z","J","Q","tt","et","nt","setPrototypeOf","__proto__","rt","Reflect","construct","sham","Proxy","Date","ot","ReferenceError","DropEvent","dropzone","dragEvent","relatedTarget","prev","dropState","rejected","events","enter","stopImmediatePropagation","activeDrops","fire","st","ut","interactables","drop","accept","draggableElement","_context","querySelectorAll","rect","ct","dropCheck","ft","leave","activate","deactivate","dragLeave","prevDropzone","dragEnter","dragmove","dt","pt","dynamicDrop","vt","interactStatic","usePlugin","off","on","ondrop","ondropactivate","ondropdeactivate","ondragenter","ondragleave","ondropmove","overlap","checker","phaselessTypes","dragenter","dragleave","dropactivate","dropdeactivate","dropmove","getActiveDrops","getDrop","getDropEvents","fireDropEvents","ht","yt","phase","pointers","pointer","deltaSource","distance","box","scale","ds","angle","da","gesture","startDistance","startAngle","prevEvent","mt","before","gesturable","bt","xt","wt","abs","resizeAxes","resize","square","axes","St","browser","cursors","xy","topleft","bottomright","topright","bottomleft","defaultMargin","resizable","preserveAspectRatio","edges","_rects","corrected","previous","deltaRect","invert","_latestPointer","eventTarget","margin","NaN","Pt","Ot","Et","Tt","Mt","jt","kt","It","Dt","request","requestAnimationFrame","cancelAnimationFrame","now","clearTimeout","At","getContainer","Ct","getScroll","Rt","getScrollSize","body","scrollWidth","scrollHeight","getScrollSizeDelta","autoScroll","container","zt","speed","isScrolling","prevTime","scroll","stop","scrollBy","check","onInteractionMove","interacting","simulation","innerWidth","innerHeight","Ft","autoscroll","perAction","Xt","warnOnce","console","copyAction","Yt","Wt","styleCursor","Lt","actionChecker","Bt","getAction","0","1","3","4","button","ignoreFrom","_backCompatOption","allowFrom","Ut","Nt","testIgnoreAllow","Gt","Vt","qt","forEachMatch","manualStart","$t","Zt","maxPerElement","autoStart","maxInteractions","interactions","Ht","Kt","cursorElement","cursor","cursorChecker","_interacting","Jt","base","withinInteractionLimit","pointerWasMoved","validateAction","Qt","te","dx","dy","downPointer","downEvent","ee","ne","hold","delay","autoStartHoldTimer","duplicate","getHoldDuration","oe","ie","ae","se","le","ue","checkAndPreventDefault","ce","supportsPassive","getDocOptions","passive","docEvents","fe","de","pe","ve","he","touchAction","boxSizing","noListeners","ge","ye","perform","me","getInfo","text","types","be","xe","logger","devTools","ignore","checks","CheckName","links","prefix","we","_e","Se","Pe","return","Oe","Ee","getRectOffset","je","Te","states","startOffset","startDelta","endResult","Me","modifiers","_methods","prepareStates","pageCoords","preEnd","startAll","setAll","fillArg","state","skipModifiers","shouldDo","eventProps","rectDelta","changed","modifiedCoords","applyToInteraction","beforeEnd","modification","endOnly","setStart","ke","Ie","makeModifier","enable","disable","_defaults","addEventModifiers","De","setAndApply","restoreInteractionCoords","Ae","ze","Ce","Re","Fe","Xe","Le","Ye","We","InteractEvent","Be","ctrlKey","shiftKey","altKey","metaKey","x0","y0","t0","duration","clientX0","clientY0","swipe","downTime","getSwipe","velocityY","velocityX","Ue","PointerInfo","downTarget","Ne","Ve","qe","$e","Ge","Interaction","_ProxyMethods","_ProxyValues","end","He","Ke","scopeFire","_scopeFire","_ending","_stopped","doMove","_id","updatePointer","pointerIndex","pointerInfo","_doPhase","pointerMoveTolerance","getPointerIndex","curEventTarget","removePointer","_now","pointerExtend","_updateLatestPointer","_createPreparedEvent","_fireEvent","Ze","Je","Qe","rn","offset","total","pending","tn","en","nn","addTotal","applyPending","offsetBy","an","sn","InertiaState","ln","active","isModified","smoothEnd","allowResume","modifierCount","modifierArg","startCoords","v0","targetOffset","modifiedOffset","currentOffset","lambda_v0","one_ve_v0","timeout","un","copyFrom","minSpeed","endSpeed","startInertia","startSmoothEnd","resistance","log","onNextFrame","inertiaTick","smoothEndTick","exp","cn","smoothEndDuration","inertia","dn","phases","inertiastart","resume","pn","vn","hn","Eventable","gn","yn","substr","mn","bn","xn","wn","_actions","_win","_doc","_scopeEvents","_rectChecker","onstart","onmove","onend","oninertiastart","updatePerActionListeners","testIgnore","testAllow","_onOff","delegatedEvents","selector","removeDelegate","_n","Sn","InteractableSet","Pn","selectorMap","scope","addListeners","addDocument","win","inContext","On","En","Tn","Mn","jn","originalEvent","stopPropagation","kn","capture","In","addDelegate","delegateListener","delegateUseCapture","documents","targets","supportsOptions","Dn","createInteractStatic","new","globalEvents","getPointerAverage","getTouchBBox","getTouchDistance","getTouchAngle","isSet","removeDocument","An","zn","methodOrder","simulationResume","eventType","mouseOrPen","Cn","hasPointer","idle","some","Rn","Fn","Xn","Yn","Wn","Ln","Bn","Un","Nn","qn","Vn","$n","Gn","prevTouchTime","Hn","searchDetails","Kn","doc","Zn","pointerDown","pointerMove","pointerUp","documentBlur","destroy","onDocSignal","doOnInteractions","methodNames","Jn","Qn","tr","or","er","nr","rr","ir","ar","sr","initScope","ur","Scope","lr","random","isInitialized","listenerMaps","_plugins","onWindowUnload","pluginIsInstalled","cr","getDocIndex","fr","dr","pr","vr","hr","gr","yr","mr","br","xr","range","limits","grid","round","coordFields","wr","_r","Sr","snappers","createSnapGrid","Pr","Or","Er","Tr","getOwnPropertyDescriptors","aspectRatio","Mr","ratio","equalDelta","startRect","linkedEdges","xIsPrimaryAxis","edgeSign","subModification","jr","kr","prevCoords","prevRect","Ir","Dr","Ar","zr","Cr","Rr","Fr","getRestrictionRect","restrict","Xr","elementRect","restriction","Yr","Wr","restrictEdges","Lr","Br","Ur","Nr","noInner","noOuter","inner","outer","Vr","qr","restrictRect","$r","Gr","Hr","Kr","restrictSize","Zr","Jr","Qr","to","eo","no","snap","ro","offsetWithOrigin","relativePoints","offsets","relativePoint","inRange","oo","io","ao","so","snapSize","lo","targetFields","uo","co","snapEdges","fo","po","vo","ho","go","yo","spring","avoid","transform","rubberband","mo","bo","xo","wo","_o","So","Po","Oo","Mo","Eo","To","jo","double","eventable","tapTime","prevTap","ko","Io","pointerEvents","zo","Do","node","holdDuration","collectEventTargets","Ao","tap","doubletap","pointerEvent","props","_subtractOrigin","_addOrigin","Co","Ro","Fo","holdIntervalHandle","clearInterval","Xo","holdRepeatInterval","holdrepeat","count","Yo","Wo","Lo","Bo","Uo","No","Vo","qo","reflow","Promise","_reflowPromise","_reflowResolve","then","$o","Go","Ho","exchange","Ko","Zo","Jo","__utils","displace","Qo","ti","ei","ni","idGenerator","getId","setId","utils","getOption","defaultValue","regexpFlags","nativeExec","nativeReplace","patchedExec","LAST_INDEX","UPDATES_LAST_INDEX_WRONG","re1","re2","NPCG_INCLUDED","PATCH","reCopy","match","propertyIsEnumerable","core","SHARED","copyright","aFunction","$sort","comparefn","__e","isDetectable","markAsDetectable","isBusy","busy","markBusy","ctx","own","IS_FORCED","IS_GLOBAL","IS_STATIC","IS_PROTO","IS_BIND","expProto","classof","builtinExec","shared","IS_WRAP","virtual","IObject","DESCRIPTORS","gOPS","$assign","assign","aLen","getSymbols","isEnum","__g","def","tag","stat","FProto","nameRE","Attributes","buggy","ownKeys","createProperty","getDesc","hiddenKeys","getOwnPropertyNames","gOPN","UNSCOPABLES","ArrayProto","bottomY","newLayout","cloneLayoutItem","layoutItem","parse","collides","l1","l2","compareWith","getStatics","sortLayoutItemsByRowCol","static","compactItem","moved","getFirstCollision","bounds","collidesWith","getLayoutItem","getAllCollisions","moveElement","isUserAction","preventCollision","oldX","oldY","movingUp","reverse","collisions","collision","moveElementAwayFromCollision","itemToMove","fakeItem","setTransform","translate","WebkitTransform","MozTransform","msTransform","OTransform","setTransformRtl","setTopLeft","setTopRight","validateLayout","contextName","subProps","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","spaces","space","non","ltrim","rtrim","exporter","ALIAS","FORCE","TYPE","quiet","error","attachFunction","$iterators","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","forced","collection","class","classObj","resizableHandleClass","getControlPosition","offsetXYFromParentOf","evt","offsetParent","offsetParentRect","createCoreData","lastX","lastY","isStart","isNum","deltaX","deltaY","num","Batch","batch","size","topLevel","bottomLevel","level","process","getSize","asyncProcess","autoProcess","asyncFrameHandler","isProcessing","addFunction","processBatchAsync","processBatch","processingBatch","forceProcessBatch","localAsyncProcess","cancelFrame","requestFrame","raf","force","toAbsoluteIndex","IS_INCLUDES","$this","el","fromIndex","inheritIfRequired","$trim","NUMBER","$Number","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","code","digits","hasState","scrollbarSizes","getScrollbarSizes","styleId","detectionContainerClass","child","widthSize","clientWidth","heightSize","clientHeight","injectScrollStyle","containerClass","injectStyle","getElementById","containerAnimationClass","containerAnimationActiveClass","addAnimationClass","className","addEvent","cb","removeEvent","getExpandElement","getShrinkElement","args","isDetached","isInDocument","isUnrendered","getStyle","elementStyle","widthCSS","heightCSS","storeStartSize","initListeners","storeStyle","storeCurrentSize","lastWidth","lastHeight","getExpandChildElement","getWidthOffset","getHeightOffset","getExpandWidth","getExpandHeight","getShrinkWidth","getShrinkHeight","positionScrollbars","expand","shrink","expandWidth","expandHeight","shrinkWidth","shrinkHeight","injectContainerElement","onAnimationStart","onRendered","injectScrollElements","getLeftTopBottomRightCssText","rootContainer","scrollbarWidth","scrollbarHeight","containerContainerStyle","containerStyle","expandStyle","shrinkStyle","expandChildStyle","shrinkChildStyle","containerContainer","expandChild","shrinkChild","onExpandScroll","onShrinkScroll","onExpand","onShrink","registerListenersAndPositionElements","updateChildSizes","updateDetectorElements","areElementsInjected","notifyListenersIfNeeded","isFirstNotify","lastNotifiedWidth","lastNotifiedHeight","handleRender","handleScroll","finalizeDomMutation","ready","px","addToUnscopables","step","iterated","_i","_k","Arguments","arrayIndexOf","names","prop","initState","cleanState","elementUtilsMaker","listenerHandlerMaker","idGeneratorMaker","idHandlerMaker","reporterMaker","batchProcessorMaker","objectStrategyMaker","scrollStrategyMaker","isCollection","toArray","isElement","defaultIdHandler","globalOptions","callOnAdd","detectionStrategy","eventListenerHandler","elementUtils","desiredStrategy","strategyOptions","onReadyCallbacks","listenTo","elements","onResizeCallback","elementsReady","onReadyCallback","$defineProperty","currentScript","scripts","err","stack","readyState","_isFinite","isFinite"],"mappings":"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","file":"vue-grid-layout.umd.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"VueGridLayout\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"VueGridLayout\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","// style-loader: Adds some css to the DOM by adding a \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridLayout.vue?vue&type=template&id=6594d2a5&\"\nimport script from \"./GridLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./GridLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridItem.vue?vue&type=template&id=58da2a1f&\"\nimport script from \"./GridItem.vue?vue&type=script&lang=js&\"\nexport * from \"./GridItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GridItem.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n injectScrollStyle(styleId, detectionContainerClass);\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = \"position: absolute; width: \" + width*2 + \"px; height: \" + height*2 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n var container = document.createElement(\"div\");\n container.style.cssText = \"position: absolute; width: \" + width + \"px; height: \" + height + \"px; overflow: scroll; visibility: none; top: \" + -width*3 + \"px; left: \" + -height*3 + \"px; visibility: hidden; margin: 0; padding: 0;\";\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n document.head.appendChild(element);\n };\n\n var styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!document.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { display: none; }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: \" + containerAnimationClass + \"; animation-name: \" + containerAnimationClass + \"; }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = \"visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0; padding: 0;\";\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.position = \"relative\";\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return \"left: \" + left + \"; top: \" + top + \"; right: \" + right + \"; bottom: \" + bottom + \";\";\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;\";\n var containerStyle = \"position: absolute; flex: none; overflow: hidden; z-index: -1; visibility: hidden; \" + getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth);\n var expandStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var shrinkStyle = \"position: absolute; flex: none; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;\";\n var expandChildStyle = \"position: absolute; left: 0; top: 0;\";\n var shrinkChildStyle = \"position: absolute; width: 200%; height: 200%;\";\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n getState(element).onExpand && getState(element).onExpand();\n }\n\n function onShrinkScroll() {\n getState(element).onShrink && getState(element).onShrink();\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.width = expandWidth + \"px\";\n expandChild.style.height = expandHeight + \"px\";\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify the if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (width !== getState(element).lastWidth || height !== getState(element).lastHeight) {\n debug(\"Element size changed.\");\n updateDetectorElements(notifyListenersIfNeeded);\n } else {\n debug(\"Element size has not changed (\" + width + \"x\" + height + \").\");\n }\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","import mod from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridLayout.vue?vue&type=style&index=0&lang=css&\"","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n require('current-script-polyfill')\n }\n\n var i\n if ((i = window.document.currentScript) && (i = i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_public_path__ = i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n"],"sourceRoot":""} \ No newline at end of file diff --git a/package.json b/package.json index 0c5628bb..4e5314c8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vue-grid-layout", - "version": "2.3.8", + "version": "2.3.9", "description": "A draggable and resizable grid layout, as a Vue component.", "keywords": [ "grid", @@ -27,7 +27,7 @@ }, "dependencies": { "element-resize-detector": "^1.1.15", - "interactjs": "^1.6.3" + "interactjs": "^1.9.22" }, "devDependencies": { "@vue/cli-plugin-babel": "^3.4.1",