(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1193],{57966:function(a){function c(a){var d,e,b="";if("string"==typeof a||"number"==typeof a)b+=a;else if("object"==typeof a){if(Array.isArray(a)){var f=a.length;for(d=0;d{(0,n.default)("Draggable: onDragStart: %j",a);let c=this.props.onStart(b,(0,m.createDraggableData)(this,a));if(!1===c)return!1;this.setState({dragging:!0,dragged:!0})}),f(this,"onDrag",(d,c)=>{if(!this.state.dragging)return!1;(0,n.default)("Draggable: onDrag: %j",c);let b=(0,m.createDraggableData)(this,c),a={x:b.x,y:b.y,slackX:0,slackY:0};if(this.props.bounds){let{x:e,y:f}=a;a.x+=this.state.slackX,a.y+=this.state.slackY;let[g,h]=(0,m.getBoundPosition)(this,a.x,a.y);a.x=g,a.y=h,a.slackX=this.state.slackX+(e-a.x),a.slackY=this.state.slackY+(f-a.y),b.x=a.x,b.y=a.y,b.deltaX=a.x-this.state.x,b.deltaY=a.y-this.state.y}let i=this.props.onDrag(d,b);if(!1===i)return!1;this.setState(a)}),f(this,"onDragStop",(c,b)=>{if(!this.state.dragging)return!1;let d=this.props.onStop(c,(0,m.createDraggableData)(this,b));if(!1===d)return!1;(0,n.default)("Draggable: onDragStop: %j",b);let a={dragging:!1,slackX:0,slackY:0},e=Boolean(this.props.position);if(e){let{x:f,y:g}=this.props.position;a.x=f,a.y=g}this.setState(a)}),this.state={dragging:!1,dragged:!1,x:a.position?a.position.x:a.defaultPosition.x,y:a.position?a.position.y:a.defaultPosition.y,prevPropsPosition:{...a.position},slackX:0,slackY:0,isElementSVG:!1},a.position&&!(a.onDrag||a.onStop)&&console.warn("A `position` was applied to this , without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}componentDidMount(){void 0!==window.SVGElement&&this.findDOMNode() instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.state.dragging&&this.setState({dragging:!1})}findDOMNode(){return this.props?.nodeRef?.current??j.default.findDOMNode(this)}render(){let{axis:v,bounds:w,children:a,defaultPosition:n,defaultClassName:o,defaultClassNameDragging:p,defaultClassNameDragged:r,position:b,positionOffset:c,scale:x,...s}=this.props,d={},e=null,t=Boolean(b),f=!t||this.state.dragging,i=b||n,j={x:(0,m.canDragX)(this)&&f?this.state.x:i.x,y:(0,m.canDragY)(this)&&f?this.state.y:i.y};this.state.isElementSVG?e=(0,l.createSVGTransform)(j,c):d=(0,l.createCSSTransform)(j,c);let u=(0,k.clsx)(a.props.className||"",o,{[p]:this.state.dragging,[r]:this.state.dragged});return h.createElement(g.default,q({},s,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),h.cloneElement(h.Children.only(a),{className:u,style:{...a.props.style,...d},transform:e}))}}c.default=d,f(d,"displayName","Draggable"),f(d,"propTypes",{...g.default.propTypes,axis:a.default.oneOf(["both","x","y","none"]),bounds:a.default.oneOfType([a.default.shape({left:a.default.number,right:a.default.number,top:a.default.number,bottom:a.default.number}),a.default.string,a.default.oneOf([!1])]),defaultClassName:a.default.string,defaultClassNameDragging:a.default.string,defaultClassNameDragged:a.default.string,defaultPosition:a.default.shape({x:a.default.number,y:a.default.number}),positionOffset:a.default.shape({x:a.default.oneOfType([a.default.number,a.default.string]),y:a.default.oneOfType([a.default.number,a.default.string])}),position:a.default.shape({x:a.default.number,y:a.default.number}),className:e.dontSetMe,style:e.dontSetMe,transform:e.dontSetMe}),f(d,"defaultProps",{...g.default.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1})},80783:function(i,d,b){"use strict";Object.defineProperty(d,"__esModule",{value:!0}),d.default=void 0;var g=o(b(67294)),a=n(b(45697)),j=n(b(73935)),k=b(81825),l=b(2849),e=b(9280),m=n(b(55904));function n(a){return a&&a.__esModule?a:{default:a}}function o(a,b){if("function"==typeof WeakMap)var c=new WeakMap,d=new WeakMap;return(o=function(a,h){if(!h&&a&&a.__esModule)return a;var b,g,f={__proto__:null,default:a};if(null===a||"object"!=typeof a&&"function"!=typeof a)return f;if(b=h?d:c){if(b.has(a))return b.get(a);b.set(a,f)}for(let e in a)"default"!==e&&({}).hasOwnProperty.call(a,e)&&((g=(b=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,e))&&(g.get||g.set)?b(f,e,g):f[e]=a[e]);return f})(a,b)}function f(a,b,c){return(b=p(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function p(b){var a=q(b,"string");return"symbol"==typeof a?a:a+""}function q(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}let h={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}},r=h.mouse;class c extends g.Component{constructor(){super(...arguments),f(this,"dragging",!1),f(this,"lastX",NaN),f(this,"lastY",NaN),f(this,"touchIdentifier",null),f(this,"mounted",!1),f(this,"handleDragStart",a=>{if(this.props.onMouseDown(a),!this.props.allowAnyClick&&"number"==typeof a.button&&0!==a.button)return!1;let b=this.findDOMNode();if(!b||!b.ownerDocument||!b.ownerDocument.body)throw new Error(" not mounted on DragStart!");let{ownerDocument:c}=b;if(this.props.disabled||!(a.target instanceof c.defaultView.Node)||this.props.handle&&!(0,k.matchesSelectorAndParentsTo)(a.target,this.props.handle,b)||this.props.cancel&&(0,k.matchesSelectorAndParentsTo)(a.target,this.props.cancel,b))return;"touchstart"!==a.type||this.props.allowMobileScroll||a.preventDefault();let d=(0,k.getTouchIdentifier)(a);this.touchIdentifier=d;let e=(0,l.getControlPosition)(a,d,this);if(null==e)return;let{x:f,y:g}=e,h=(0,l.createCoreData)(this,f,g);(0,m.default)("DraggableCore: handleDragStart: %j",h),(0,m.default)("calling",this.props.onStart);let i=this.props.onStart(a,h);!1!==i&& !1!==this.mounted&&(this.props.enableUserSelectHack&&(0,k.addUserSelectStyles)(c),this.dragging=!0,this.lastX=f,this.lastY=g,(0,k.addEvent)(c,r.move,this.handleDrag),(0,k.addEvent)(c,r.stop,this.handleDragStop))}),f(this,"handleDrag",e=>{let f=(0,l.getControlPosition)(e,this.touchIdentifier,this);if(null==f)return;let{x:a,y:b}=f;if(Array.isArray(this.props.grid)){let c=a-this.lastX,d=b-this.lastY;if([c,d]=(0,l.snapToGrid)(this.props.grid,c,d),!c&&!d)return;a=this.lastX+c,b=this.lastY+d}let g=(0,l.createCoreData)(this,a,b);(0,m.default)("DraggableCore: handleDrag: %j",g);let i=this.props.onDrag(e,g);if(!1===i|| !1===this.mounted){try{this.handleDragStop(new MouseEvent("mouseup"))}catch(j){let h=document.createEvent("MouseEvents");h.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(h)}return}this.lastX=a,this.lastY=b}),f(this,"handleDragStop",f=>{if(!this.dragging)return;let g=(0,l.getControlPosition)(f,this.touchIdentifier,this);if(null==g)return;let{x:b,y:c}=g;if(Array.isArray(this.props.grid)){let d=b-this.lastX||0,e=c-this.lastY||0;[d,e]=(0,l.snapToGrid)(this.props.grid,d,e),b=this.lastX+d,c=this.lastY+e}let h=(0,l.createCoreData)(this,b,c),i=this.props.onStop(f,h);if(!1===i|| !1===this.mounted)return!1;let a=this.findDOMNode();a&&this.props.enableUserSelectHack&&(0,k.scheduleRemoveUserSelectStyles)(a.ownerDocument),(0,m.default)("DraggableCore: handleDragStop: %j",h),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,a&&((0,m.default)("DraggableCore: Removing handlers"),(0,k.removeEvent)(a.ownerDocument,r.move,this.handleDrag),(0,k.removeEvent)(a.ownerDocument,r.stop,this.handleDragStop))}),f(this,"onMouseDown",a=>(r=h.mouse,this.handleDragStart(a))),f(this,"onMouseUp",a=>(r=h.mouse,this.handleDragStop(a))),f(this,"onTouchStart",a=>(r=h.touch,this.handleDragStart(a))),f(this,"onTouchEnd",a=>(r=h.touch,this.handleDragStop(a)))}componentDidMount(){this.mounted=!0;let a=this.findDOMNode();a&&(0,k.addEvent)(a,h.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;let b=this.findDOMNode();if(b){let{ownerDocument:a}=b;(0,k.removeEvent)(a,h.mouse.move,this.handleDrag),(0,k.removeEvent)(a,h.touch.move,this.handleDrag),(0,k.removeEvent)(a,h.mouse.stop,this.handleDragStop),(0,k.removeEvent)(a,h.touch.stop,this.handleDragStop),(0,k.removeEvent)(b,h.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&(0,k.scheduleRemoveUserSelectStyles)(a)}}findDOMNode(){return this.props?.nodeRef?this.props?.nodeRef?.current:j.default.findDOMNode(this)}render(){return g.cloneElement(g.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}}d.default=c,f(c,"displayName","DraggableCore"),f(c,"propTypes",{allowAnyClick:a.default.bool,allowMobileScroll:a.default.bool,children:a.default.node.isRequired,disabled:a.default.bool,enableUserSelectHack:a.default.bool,offsetParent:function(a,b){if(a[b]&&1!==a[b].nodeType)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:a.default.arrayOf(a.default.number),handle:a.default.string,cancel:a.default.string,nodeRef:a.default.object,onStart:a.default.func,onDrag:a.default.func,onStop:a.default.func,onMouseDown:a.default.func,scale:a.default.number,className:e.dontSetMe,style:e.dontSetMe,transform:e.dontSetMe}),f(c,"defaultProps",{allowAnyClick:!1,allowMobileScroll:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1})},61193:function(a,e,c){"use strict";let{default:b,DraggableCore:d}=c(75668);a.exports=b,a.exports.default=b,a.exports.DraggableCore=d},81825:function(c,a,b){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a.addClassName=k,a.addEvent=function(a,b,c,d){if(!a)return;let e={capture:!0,...d};a.addEventListener?a.addEventListener(b,c,e):a.attachEvent?a.attachEvent("on"+b,c):a["on"+b]=c},a.addUserSelectStyles=function(a){if(!a)return;let b=a.getElementById("react-draggable-style-el");b||((b=a.createElement("style")).type="text/css",b.id="react-draggable-style-el",b.innerHTML=".react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n",b.innerHTML+=".react-draggable-transparent-selection *::selection {all: inherit;}\n",a.getElementsByTagName("head")[0].appendChild(b)),a.body&&k(a.body,"react-draggable-transparent-selection")},a.createCSSTransform=function(a,b){let c=i(a,b,"px");return{[(0,e.browserPrefixToKey)("transform",e.default)]:c}},a.createSVGTransform=function(a,b){let c=i(a,b,"");return c},a.getTouch=function(a,b){return a.targetTouches&&(0,d.findInArray)(a.targetTouches,a=>b===a.identifier)||a.changedTouches&&(0,d.findInArray)(a.changedTouches,a=>b===a.identifier)},a.getTouchIdentifier=function(a){return a.targetTouches&&a.targetTouches[0]?a.targetTouches[0].identifier:a.changedTouches&&a.changedTouches[0]?a.changedTouches[0].identifier:void 0},a.getTranslation=i,a.innerHeight=function(a){let b=a.clientHeight,c=a.ownerDocument.defaultView.getComputedStyle(a);return b-=(0,d.int)(c.paddingTop),b-=(0,d.int)(c.paddingBottom),b},a.innerWidth=function(a){let b=a.clientWidth,c=a.ownerDocument.defaultView.getComputedStyle(a);return b-=(0,d.int)(c.paddingLeft),b-=(0,d.int)(c.paddingRight),b},a.matchesSelector=h,a.matchesSelectorAndParentsTo=function(b,c,d){let a=b;do{if(h(a,c))return!0;if(a===d)return!1;a=a.parentNode}while(a)return!1},a.offsetXYFromParent=function(b,a,c){let e=a===a.ownerDocument.body,d=e?{left:0,top:0}:a.getBoundingClientRect(),f=(b.clientX+a.scrollLeft-d.left)/c,g=(b.clientY+a.scrollTop-d.top)/c;return{x:f,y:g}},a.outerHeight=function(a){let b=a.clientHeight,c=a.ownerDocument.defaultView.getComputedStyle(a);return b+=(0,d.int)(c.borderTopWidth),b+=(0,d.int)(c.borderBottomWidth),b},a.outerWidth=function(a){let b=a.clientWidth,c=a.ownerDocument.defaultView.getComputedStyle(a);return b+=(0,d.int)(c.borderLeftWidth),b+=(0,d.int)(c.borderRightWidth),b},a.removeClassName=l,a.removeEvent=function(a,b,c,d){if(!a)return;let e={capture:!0,...d};a.removeEventListener?a.removeEventListener(b,c,e):a.detachEvent?a.detachEvent("on"+b,c):a["on"+b]=null},a.scheduleRemoveUserSelectStyles=function(a){window.requestAnimationFrame?window.requestAnimationFrame(()=>{j(a)}):j(a)};var d=b(9280),e=f(b(38650));function f(a,b){if("function"==typeof WeakMap)var c=new WeakMap,d=new WeakMap;return(f=function(a,h){if(!h&&a&&a.__esModule)return a;var b,g,f={__proto__:null,default:a};if(null===a||"object"!=typeof a&&"function"!=typeof a)return f;if(b=h?d:c){if(b.has(a))return b.get(a);b.set(a,f)}for(let e in a)"default"!==e&&({}).hasOwnProperty.call(a,e)&&((g=(b=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,e))&&(g.get||g.set)?b(f,e,g):f[e]=a[e]);return f})(a,b)}let g="";function h(a,b){return g||(g=(0,d.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(b){return(0,d.isFunction)(a[b])})),!!(0,d.isFunction)(a[g])&&a[g](b)}function i(d,a,b){let{x:e,y:f}=d,c=`translate(${e}${b},${f}${b})`;if(a){let g=`${"string"==typeof a.x?a.x:a.x+b}`,h=`${"string"==typeof a.y?a.y:a.y+b}`;c=`translate(${g}, ${h})`+c}return c}function j(a){if(a)try{if(a.body&&l(a.body,"react-draggable-transparent-selection"),a.selection)a.selection.empty();else{let b=(a.defaultView||window).getSelection();b&&"Caret"!==b.type&&b.removeAllRanges()}}catch(c){}}function k(a,b){a.classList?a.classList.add(b):a.className.match(new RegExp(`(?:^|\\s)${b}(?!\\S)`))||(a.className+=` ${b}`)}function l(a,b){a.classList?a.classList.remove(b):a.className=a.className.replace(new RegExp(`(?:^|\\s)${b}(?!\\S)`,"g"),"")}},38650:function(c,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a.browserPrefixToKey=e,a.browserPrefixToStyle=function(a,b){return b?`-${b.toLowerCase()}-${a}`:a},a.default=void 0,a.getPrefix=b;let d=["Moz","Webkit","O","ms"];function b(){let c=arguments.length>0&& void 0!==arguments[0]?arguments[0]:"transform";if("undefined"==typeof window)return"";let b=window.document?.documentElement?.style;if(!b)return"";if(c in b)return"";for(let a=0;a: Unmounted during event!");return a}},9280:function(b,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a.dontSetMe=function(b,a,c){if(b[a])return new Error(`Invalid prop ${a} passed to ${c} - do not set this, set it on the child.`)},a.findInArray=function(b,c){for(let a=0,d=b.length;a