n.maxHeight||n.height=t.width&&n.height>=t.height?b:v),ke(this.cropBox,Ce({width:n.width,height:n.height},We({translateX:n.left,translateY:n.top}))),this.cropped&&this.limited&&this.limitCanvas(!0,!0),this.disabled||this.output()},output:function(){this.preview(),Re(this.element,j,this.getData())}},At={initPreview:function(){var e=this.element,t=this.crossOrigin,n=this.options.preview,i=t?this.crossOriginUrl:this.url,r=e.alt||"The image to preview",o=document.createElement("img");if(t&&(o.crossOrigin=t),o.src=i,o.alt=r,this.viewBox.appendChild(o),this.viewBoxImage=o,n){var a=n;"string"===typeof n?a=e.ownerDocument.querySelectorAll(n):n.querySelector&&(a=[n]),this.previews=a,Be(a,(function(e){var n=document.createElement("img");Te(e,H,{width:e.offsetWidth,height:e.offsetHeight,html:e.innerHTML}),t&&(n.crossOrigin=t),n.src=i,n.alt=r,n.style.cssText='display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"',e.innerHTML="",e.appendChild(n)}))}},resetPreview:function(){Be(this.previews,(function(e){var t=De(e,H);ke(e,{width:t.width,height:t.height}),e.innerHTML=t.html,Pe(e,H)}))},preview:function(){var e=this.imageData,t=this.canvasData,n=this.cropBoxData,i=n.width,r=n.height,o=e.width,a=e.height,s=n.left-t.left-e.left,A=n.top-t.top-e.top;this.cropped&&!this.disabled&&(ke(this.viewBoxImage,Ce({width:o,height:a},We(Ce({translateX:-s,translateY:-A},e)))),Be(this.previews,(function(t){var n=De(t,H),l=n.width,c=n.height,u=l,h=c,d=1;i&&(d=l/i,h=r*d),r&&h>c&&(d=c/r,u=i*d,h=c),ke(t,{width:u,height:h}),ke(t.getElementsByTagName("img")[0],Ce({width:o*d,height:a*d},We(Ce({translateX:-s*d,translateY:-A*d},e))))})))}},lt={bind:function(){var e=this.element,t=this.options,n=this.cropper;ye(t.cropstart)&&Ne(e,K,t.cropstart),ye(t.cropmove)&&Ne(e,V,t.cropmove),ye(t.cropend)&&Ne(e,$,t.cropend),ye(t.crop)&&Ne(e,j,t.crop),ye(t.zoom)&&Ne(e,ne,t.zoom),Ne(n,X,this.onCropStart=this.cropStart.bind(this)),t.zoomable&&t.zoomOnWheel&&Ne(n,te,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Ne(n,z,this.onDblclick=this.dblclick.bind(this)),Ne(e.ownerDocument,J,this.onCropMove=this.cropMove.bind(this)),Ne(e.ownerDocument,q,this.onCropEnd=this.cropEnd.bind(this)),t.responsive&&Ne(window,ee,this.onResize=this.resize.bind(this))},unbind:function(){var e=this.element,t=this.options,n=this.cropper;ye(t.cropstart)&&Le(e,K,t.cropstart),ye(t.cropmove)&&Le(e,V,t.cropmove),ye(t.cropend)&&Le(e,$,t.cropend),ye(t.crop)&&Le(e,j,t.crop),ye(t.zoom)&&Le(e,ne,t.zoom),Le(n,X,this.onCropStart),t.zoomable&&t.zoomOnWheel&&Le(n,te,this.onWheel,{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Le(n,z,this.onDblclick),Le(e.ownerDocument,J,this.onCropMove),Le(e.ownerDocument,q,this.onCropEnd),t.responsive&&Le(window,ee,this.onResize)}},ct={resize:function(){if(!this.disabled){var e,t,n=this.options,i=this.container,r=this.containerData,o=i.offsetWidth/r.width,a=i.offsetHeight/r.height,s=Math.abs(o-1)>Math.abs(a-1)?o:a;if(1!==s)n.restore&&(e=this.getCanvasData(),t=this.getCropBoxData()),this.render(),n.restore&&(this.setCanvasData(Be(e,(function(t,n){e[n]=t*s}))),this.setCropBoxData(Be(t,(function(e,n){t[n]=e*s}))))}},dblclick:function(){this.disabled||this.options.dragMode===R||this.setDragMode(Ee(this.dragBox,Q)?N:L)},wheel:function(e){var t=this,n=Number(this.options.wheelZoomRatio)||.1,i=1;this.disabled||(e.preventDefault(),this.wheeling||(this.wheeling=!0,setTimeout((function(){t.wheeling=!1}),50),e.deltaY?i=e.deltaY>0?1:-1:e.wheelDelta?i=-e.wheelDelta/120:e.detail&&(i=e.detail>0?1:-1),this.zoom(-i*n,e)))},cropStart:function(e){var t=e.buttons,n=e.button;if(!(this.disabled||("mousedown"===e.type||"pointerdown"===e.type&&"mouse"===e.pointerType)&&(de(t)&&1!==t||de(n)&&0!==n||e.ctrlKey))){var i,r=this.options,o=this.pointers;e.changedTouches?Be(e.changedTouches,(function(e){o[e.identifier]=Ye(e)})):o[e.pointerId||0]=Ye(e),i=Object.keys(o).length>1&&r.zoomable&&r.zoomOnTouch?w:De(e.target,M),re.test(i)&&!1!==Re(this.element,K,{originalEvent:e,action:i})&&(e.preventDefault(),this.action=i,this.cropping=!1,i===y&&(this.cropping=!0,Fe(this.dragBox,T)))}},cropMove:function(e){var t=this.action;if(!this.disabled&&t){var n=this.pointers;e.preventDefault(),!1!==Re(this.element,V,{originalEvent:e,action:t})&&(e.changedTouches?Be(e.changedTouches,(function(e){Ce(n[e.identifier]||{},Ye(e,!0))})):Ce(n[e.pointerId||0]||{},Ye(e,!0)),this.change(e))}},cropEnd:function(e){if(!this.disabled){var t=this.action,n=this.pointers;e.changedTouches?Be(e.changedTouches,(function(e){delete n[e.identifier]})):delete n[e.pointerId||0],t&&(e.preventDefault(),Object.keys(n).length||(this.action=""),this.cropping&&(this.cropping=!1,Ue(this.dragBox,T,this.cropped&&this.options.modal)),Re(this.element,$,{originalEvent:e,action:t}))}}},ut={change:function(e){var t,n=this.options,i=this.canvasData,r=this.containerData,o=this.cropBoxData,a=this.pointers,s=this.action,A=n.aspectRatio,l=o.left,c=o.top,u=o.width,h=o.height,d=l+u,f=c+h,p=0,g=0,m=r.width,Q=r.height,U=!0;!A&&e.shiftKey&&(A=u&&h?u/h:1),this.limited&&(p=o.minLeft,g=o.minTop,m=p+Math.min(r.width,i.width,i.left+i.width),Q=g+Math.min(r.height,i.height,i.top+i.height));var I=a[Object.keys(a)[0]],D={x:I.endX-I.startX,y:I.endY-I.startY},T=function(e){switch(e){case B:d+D.x>m&&(D.x=m-d);break;case C:l+D.xQ&&(D.y=Q-f);break}};switch(s){case v:l+=D.x,c+=D.y;break;case B:if(D.x>=0&&(d>=m||A&&(c<=g||f>=Q))){U=!1;break}T(B),u+=D.x,u<0&&(s=C,u=-u,l-=u),A&&(h=u/A,c+=(o.height-h)/2);break;case _:if(D.y<=0&&(c<=g||A&&(l<=p||d>=m))){U=!1;break}T(_),h-=D.y,c+=D.y,h<0&&(s=x,h=-h,c-=h),A&&(u=h*A,l+=(o.width-u)/2);break;case C:if(D.x<=0&&(l<=p||A&&(c<=g||f>=Q))){U=!1;break}T(C),u-=D.x,l+=D.x,u<0&&(s=B,u=-u,l-=u),A&&(h=u/A,c+=(o.height-h)/2);break;case x:if(D.y>=0&&(f>=Q||A&&(l<=p||d>=m))){U=!1;break}T(x),h+=D.y,h<0&&(s=_,h=-h,c-=h),A&&(u=h*A,l+=(o.width-u)/2);break;case S:if(A){if(D.y<=0&&(c<=g||d>=m)){U=!1;break}T(_),h-=D.y,c+=D.y,u=h*A}else T(_),T(B),D.x>=0?dg&&(h-=D.y,c+=D.y):(h-=D.y,c+=D.y);u<0&&h<0?(s=F,h=-h,u=-u,c-=h,l-=u):u<0?(s=k,u=-u,l-=u):h<0&&(s=E,h=-h,c-=h);break;case k:if(A){if(D.y<=0&&(c<=g||l<=p)){U=!1;break}T(_),h-=D.y,c+=D.y,u=h*A,l+=o.width-u}else T(_),T(C),D.x<=0?l>p?(u-=D.x,l+=D.x):D.y<=0&&c<=g&&(U=!1):(u-=D.x,l+=D.x),D.y<=0?c>g&&(h-=D.y,c+=D.y):(h-=D.y,c+=D.y);u<0&&h<0?(s=E,h=-h,u=-u,c-=h,l-=u):u<0?(s=S,u=-u,l-=u):h<0&&(s=F,h=-h,c-=h);break;case F:if(A){if(D.x<=0&&(l<=p||f>=Q)){U=!1;break}T(C),u-=D.x,l+=D.x,h=u/A}else T(x),T(C),D.x<=0?l>p?(u-=D.x,l+=D.x):D.y>=0&&f>=Q&&(U=!1):(u-=D.x,l+=D.x),D.y>=0?f=0&&(d>=m||f>=Q)){U=!1;break}T(B),u+=D.x,h=u/A}else T(x),T(B),D.x>=0?d=0&&f>=Q&&(U=!1):u+=D.x,D.y>=0?f0?s=D.y>0?E:S:D.x<0&&(l-=u,s=D.y>0?F:k),D.y<0&&(c-=h),this.cropped||(Qe(this.cropBox,O),this.cropped=!0,this.limited&&this.limitCropBox(!0,!0));break}U&&(o.width=u,o.height=h,o.left=l,o.top=c,this.action=s,this.renderCropBox()),Be(a,(function(e){e.startX=e.endX,e.startY=e.endY}))}},ht={crop:function(){return!this.ready||this.cropped||this.disabled||(this.cropped=!0,this.limitCropBox(!0,!0),this.options.modal&&Fe(this.dragBox,T),Qe(this.cropBox,O),this.setCropBoxData(this.initialCropBoxData)),this},reset:function(){return this.ready&&!this.disabled&&(this.imageData=Ce({},this.initialImageData),this.canvasData=Ce({},this.initialCanvasData),this.cropBoxData=Ce({},this.initialCropBoxData),this.renderCanvas(),this.cropped&&this.renderCropBox()),this},clear:function(){return this.cropped&&!this.disabled&&(Ce(this.cropBoxData,{left:0,top:0,width:0,height:0}),this.cropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),Qe(this.dragBox,T),Fe(this.cropBox,O)),this},replace:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return!this.disabled&&e&&(this.isImg&&(this.element.src=e),t?(this.url=e,this.image.src=e,this.ready&&(this.viewBoxImage.src=e,Be(this.previews,(function(t){t.getElementsByTagName("img")[0].src=e})))):(this.isImg&&(this.replaced=!0),this.options.data=null,this.uncreate(),this.load(e))),this},enable:function(){return this.ready&&this.disabled&&(this.disabled=!1,Qe(this.cropper,U)),this},disable:function(){return this.ready&&!this.disabled&&(this.disabled=!0,Fe(this.cropper,U)),this},destroy:function(){var e=this.element;return e[m]?(e[m]=void 0,this.isImg&&this.replaced&&(e.src=this.originalUrl),this.uncreate(),this):this},move:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=n.left,r=n.top;return this.moveTo(pe(e)?e:i+Number(e),pe(t)?t:r+Number(t))},moveTo:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.movable&&(de(e)&&(n.left=e,i=!0),de(t)&&(n.top=t,i=!0),i&&this.renderCanvas(!0)),this},zoom:function(e,t){var n=this.canvasData;return e=Number(e),e=e<0?1/(1-e):1+e,this.zoomTo(n.width*e/n.naturalWidth,null,t)},zoomTo:function(e,t,n){var i=this.options,r=this.canvasData,o=r.width,a=r.height,s=r.naturalWidth,A=r.naturalHeight;if(e=Number(e),e>=0&&this.ready&&!this.disabled&&i.zoomable){var l=s*e,c=A*e;if(!1===Re(this.element,ne,{ratio:e,oldRatio:o/s,originalEvent:n}))return this;if(n){var u=this.pointers,h=je(this.cropper),d=u&&Object.keys(u).length?Xe(u):{pageX:n.pageX,pageY:n.pageY};r.left-=(l-o)*((d.pageX-h.left-r.left)/o),r.top-=(c-a)*((d.pageY-h.top-r.top)/a)}else ve(t)&&de(t.x)&&de(t.y)?(r.left-=(l-o)*((t.x-r.left)/o),r.top-=(c-a)*((t.y-r.top)/a)):(r.left-=(l-o)/2,r.top-=(c-a)/2);r.width=l,r.height=c,this.renderCanvas(!0)}return this},rotate:function(e){return this.rotateTo((this.imageData.rotate||0)+Number(e))},rotateTo:function(e){return e=Number(e),de(e)&&this.ready&&!this.disabled&&this.options.rotatable&&(this.imageData.rotate=e%360,this.renderCanvas(!0,!0)),this},scaleX:function(e){var t=this.imageData.scaleY;return this.scale(e,de(t)?t:1)},scaleY:function(e){var t=this.imageData.scaleX;return this.scale(de(t)?t:1,e)},scale:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.imageData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.scalable&&(de(e)&&(n.scaleX=e,i=!0),de(t)&&(n.scaleY=t,i=!0),i&&this.renderCanvas(!0,!0)),this},getData:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.options,i=this.imageData,r=this.canvasData,o=this.cropBoxData;if(this.ready&&this.cropped){e={x:o.left-r.left,y:o.top-r.top,width:o.width,height:o.height};var a=i.width/i.naturalWidth;if(Be(e,(function(t,n){e[n]=t/a})),t){var s=Math.round(e.y+e.height),A=Math.round(e.x+e.width);e.x=Math.round(e.x),e.y=Math.round(e.y),e.width=A-e.x,e.height=s-e.y}}else e={x:0,y:0,width:0,height:0};return n.rotatable&&(e.rotate=i.rotate||0),n.scalable&&(e.scaleX=i.scaleX||1,e.scaleY=i.scaleY||1),e},setData:function(e){var t=this.options,n=this.imageData,i=this.canvasData,r={};if(this.ready&&!this.disabled&&ve(e)){var o=!1;t.rotatable&&de(e.rotate)&&e.rotate!==n.rotate&&(n.rotate=e.rotate,o=!0),t.scalable&&(de(e.scaleX)&&e.scaleX!==n.scaleX&&(n.scaleX=e.scaleX,o=!0),de(e.scaleY)&&e.scaleY!==n.scaleY&&(n.scaleY=e.scaleY,o=!0)),o&&this.renderCanvas(!0,!0);var a=n.width/n.naturalWidth;de(e.x)&&(r.left=e.x*a+i.left),de(e.y)&&(r.top=e.y*a+i.top),de(e.width)&&(r.width=e.width*a),de(e.height)&&(r.height=e.height*a),this.setCropBoxData(r)}return this},getContainerData:function(){return this.ready?Ce({},this.containerData):{}},getImageData:function(){return this.sized?Ce({},this.imageData):{}},getCanvasData:function(){var e=this.canvasData,t={};return this.ready&&Be(["left","top","width","height","naturalWidth","naturalHeight"],(function(n){t[n]=e[n]})),t},setCanvasData:function(e){var t=this.canvasData,n=t.aspectRatio;return this.ready&&!this.disabled&&ve(e)&&(de(e.left)&&(t.left=e.left),de(e.top)&&(t.top=e.top),de(e.width)?(t.width=e.width,t.height=e.width/n):de(e.height)&&(t.height=e.height,t.width=e.height*n),this.renderCanvas(!0)),this},getCropBoxData:function(){var e,t=this.cropBoxData;return this.ready&&this.cropped&&(e={left:t.left,top:t.top,width:t.width,height:t.height}),e||{}},setCropBoxData:function(e){var t,n,i=this.cropBoxData,r=this.options.aspectRatio;return this.ready&&this.cropped&&!this.disabled&&ve(e)&&(de(e.left)&&(i.left=e.left),de(e.top)&&(i.top=e.top),de(e.width)&&e.width!==i.width&&(t=!0,i.width=e.width),de(e.height)&&e.height!==i.height&&(n=!0,i.height=e.height),r&&(t?i.height=i.width/r:n&&(i.width=i.height*r)),this.renderCropBox()),this},getCroppedCanvas:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.ready||!window.HTMLCanvasElement)return null;var t=this.canvasData,n=Ze(this.image,this.imageData,t,e);if(!this.cropped)return n;var i=this.getData(),r=i.x,o=i.y,a=i.width,A=i.height,l=n.width/Math.floor(t.naturalWidth);1!==l&&(r*=l,o*=l,a*=l,A*=l);var c=a/A,u=Je({aspectRatio:c,width:e.maxWidth||1/0,height:e.maxHeight||1/0}),h=Je({aspectRatio:c,width:e.minWidth||0,height:e.minHeight||0},"cover"),d=Je({aspectRatio:c,width:e.width||(1!==l?n.width:a),height:e.height||(1!==l?n.height:A)}),f=d.width,p=d.height;f=Math.min(u.width,Math.max(h.width,f)),p=Math.min(u.height,Math.max(h.height,p));var g=document.createElement("canvas"),m=g.getContext("2d");g.width=_e(f),g.height=_e(p),m.fillStyle=e.fillColor||"transparent",m.fillRect(0,0,f,p);var v=e.imageSmoothingEnabled,y=void 0===v||v,b=e.imageSmoothingQuality;m.imageSmoothingEnabled=y,b&&(m.imageSmoothingQuality=b);var w,B,C,x,_,S,k=n.width,E=n.height,F=r,Q=o;F<=-a||F>k?(F=0,w=0,C=0,_=0):F<=0?(C=-F,F=0,w=Math.min(k,a+F),_=w):F<=k&&(C=0,w=Math.min(a,k-F),_=w),w<=0||Q<=-A||Q>E?(Q=0,B=0,x=0,S=0):Q<=0?(x=-Q,Q=0,B=Math.min(E,A+Q),S=B):Q<=E&&(x=0,B=Math.min(A,E-Q),S=B);var U=[F,Q,w,B];if(_>0&&S>0){var O=f/a;U.push(C*O,x*O,_*O,S*O)}return m.drawImage.apply(m,[n].concat(s(U.map((function(e){return Math.floor(_e(e))}))))),g},setAspectRatio:function(e){var t=this.options;return this.disabled||pe(e)||(t.aspectRatio=Math.max(0,e)||NaN,this.ready&&(this.initCropBox(),this.cropped&&this.renderCropBox())),this},setDragMode:function(e){var t=this.options,n=this.dragBox,i=this.face;if(this.ready&&!this.disabled){var r=e===L,o=t.movable&&e===N;e=r||o?e:R,t.dragMode=e,Te(n,M,e),Ue(n,Q,r),Ue(n,P,o),t.cropBoxMovable||(Te(i,M,e),Ue(i,Q,r),Ue(i,P,o))}return this}},dt=f.Cropper,ft=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(i(this,e),!t||!se.test(t.tagName))throw new Error("The first argument is required and must be an
or