E:
/
home
/
kbcomunicacao1
/
Web
/
adm
/
img-perfil
/
dist
/
Upload File
HOME
/*! * Cropper v2.2.2 * https://github.com/fengyuanchen/cropper * * Copyright (c) 2014-2015 Fengyuan Chen and contributors * Released under the MIT license * * Date: 2015-12-24T08:58:54.511Z */ !function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t("object"==typeof exports?require("jquery"):jQuery)}(function(t){"use strict";function i(t){return"number"==typeof t&&!isNaN(t)}function e(t){return"undefined"==typeof t}function s(t,e){var s=[];return i(e)&&s.push(e),s.slice.apply(t,s)}function o(t,i){var e=s(arguments,2);return function(){return t.apply(i,e.concat(s(arguments)))}}function a(t){var i=t.match(/^(https?:)\/\/([^\:\/\?#]+):?(\d*)/i);return i&&(i[1]!==x.protocol||i[2]!==x.hostname||i[3]!==x.port)}function h(t){var i="timestamp="+(new Date).getTime();return t+(-1===t.indexOf("?")?"?":"&")+i}function n(t){return t?' crossOrigin="'+t+'"':""}function r(t,i){var e;return t.naturalWidth?i(t.naturalWidth,t.naturalHeight):(e=document.createElement("img"),e.onload=function(){i(this.width,this.height)},void(e.src=t.src))}function p(t){var e=[],s=t.rotate,o=t.scaleX,a=t.scaleY;return i(s)&&e.push("rotate("+s+"deg)"),i(o)&&i(a)&&e.push("scale("+o+","+a+")"),e.length?e.join(" "):"none"}function l(t,i){var e,s,o=vt(t.degree)%180,a=(o>90?180-o:o)*Math.PI/180,h=wt(a),n=xt(a),r=t.width,p=t.height,l=t.aspectRatio;return i?(e=r/(n+h/l),s=e/l):(e=r*n+p*h,s=r*h+p*n),{width:e,height:s}}function c(e,s){var o,a,h,n=t("<canvas>")[0],r=n.getContext("2d"),p=0,c=0,d=s.naturalWidth,g=s.naturalHeight,u=s.rotate,f=s.scaleX,m=s.scaleY,v=i(f)&&i(m)&&(1!==f||1!==m),w=i(u)&&0!==u,x=w||v,C=d,b=g;return v&&(o=d/2,a=g/2),w&&(h=l({width:d,height:g,degree:u}),C=h.width,b=h.height,o=h.width/2,a=h.height/2),n.width=C,n.height=b,x&&(p=-d/2,c=-g/2,r.save(),r.translate(o,a)),w&&r.rotate(u*Math.PI/180),v&&r.scale(f,m),r.drawImage(e,Bt(p),Bt(c),Bt(d),Bt(g)),x&&r.restore(),n}function d(t,i,e){var s,o="";for(s=i,e+=i;e>s;s++)o+=yt(t.getUint8(s));return o}function g(t){var i,e,s,o,a,h,n,r,p,l,c=new B(t),g=c.byteLength;if(255===c.getUint8(0)&&216===c.getUint8(1))for(p=2;g>p;){if(255===c.getUint8(p)&&225===c.getUint8(p+1)){n=p;break}p++}if(n&&(e=n+4,s=n+10,"Exif"===d(c,e,4)&&(h=c.getUint16(s),a=18761===h,(a||19789===h)&&42===c.getUint16(s+2,a)&&(o=c.getUint32(s+4,a),o>=8&&(r=s+o)))),r)for(g=c.getUint16(r,a),l=0;g>l;l++)if(p=r+12*l+2,274===c.getUint16(p,a)){p+=8,i=c.getUint16(p,a),c.setUint16(p,1,a);break}return i}function u(t){var i,e=t.replace(Q,""),s=atob(e),o=s.length,a=new C(o),h=new b(a);for(i=0;o>i;i++)h[i]=s.charCodeAt(i);return a}function f(t){var i,e=new b(t),s=e.length,o="";for(i=0;s>i;i++)o+=yt(e[i]);return"data:image/jpeg;base64,"+y(o)}function m(i,e){this.$element=t(i),this.options=t.extend({},m.DEFAULTS,t.isPlainObject(e)&&e),this.isLoaded=!1,this.isBuilt=!1,this.isCompleted=!1,this.isRotated=!1,this.isCropped=!1,this.isDisabled=!1,this.isReplaced=!1,this.isLimited=!1,this.wheeling=!1,this.isImg=!1,this.originalUrl="",this.canvas=null,this.cropBox=null,this.init()}var v=t(window),w=t(document),x=window.location,C=window.ArrayBuffer,b=window.Uint8Array,B=window.DataView,y=window.btoa,D="cropper",$="cropper-modal",L="cropper-hide",T="cropper-hidden",k="cropper-invisible",M="cropper-move",W="cropper-crop",X="cropper-disabled",Y="cropper-bg",R="mousedown touchstart pointerdown MSPointerDown",H="mousemove touchmove pointermove MSPointerMove",z="mouseup touchend touchcancel pointerup pointercancel MSPointerUp MSPointerCancel",O="wheel mousewheel DOMMouseScroll",P="dblclick",U="load."+D,E="error."+D,I="resize."+D,F="build."+D,j="built."+D,S="cropstart."+D,A="cropmove."+D,N="cropend."+D,_="crop."+D,q="zoom."+D,Z=/e|w|s|n|se|sw|ne|nw|all|crop|move|zoom/,K=/^data\:/,Q=/^data\:([^\;]+)\;base64,/,V=/^data\:image\/jpeg.*;base64,/,G="preview",J="action",tt="e",it="w",et="s",st="n",ot="se",at="sw",ht="ne",nt="nw",rt="all",pt="crop",lt="move",ct="zoom",dt="none",gt=t.isFunction(t("<canvas>")[0].getContext),ut=Number,ft=Math.min,mt=Math.max,vt=Math.abs,wt=Math.sin,xt=Math.cos,Ct=Math.sqrt,bt=Math.round,Bt=Math.floor,yt=String.fromCharCode;m.prototype={constructor:m,init:function(){var t,i=this.$element;if(i.is("img")){if(this.isImg=!0,this.originalUrl=t=i.attr("src"),!t)return;t=i.prop("src")}else i.is("canvas")&>&&(t=i[0].toDataURL());this.load(t)},trigger:function(i,e){var s=t.Event(i,e);return this.$element.trigger(s),s},load:function(i){var e,s,o=this.options,a=this.$element;if(i&&(a.one(F,o.build),!this.trigger(F).isDefaultPrevented())){if(this.url=i,this.image={},!o.checkOrientation||!C)return this.clone();if(e=t.proxy(this.read,this),K.test(i))return V.test(i)?e(u(i)):this.clone();s=new XMLHttpRequest,s.onerror=s.onabort=t.proxy(function(){this.clone()},this),s.onload=function(){e(this.response)},s.open("get",i),s.responseType="arraybuffer",s.send()}},read:function(t){var i,e,s,o=this.options,a=g(t),h=this.image;if(a>1)switch(this.url=f(t),a){case 2:e=-1;break;case 3:i=-180;break;case 4:s=-1;break;case 5:i=90,s=-1;break;case 6:i=90;break;case 7:i=90,e=-1;break;case 8:i=-90}o.rotatable&&(h.rotate=i),o.scalable&&(h.scaleX=e,h.scaleY=s),this.clone()},clone:function(){var i,e,s=this.options,o=this.$element,r=this.url,p="";s.checkCrossOrigin&&a(r)&&(p=o.prop("crossOrigin"),p||(p="anonymous",i=h(r))),this.crossOrigin=p,this.crossOriginUrl=i,this.$clone=e=t("<img"+n(p)+' src="'+(i||r)+'">'),this.isImg?o[0].complete?this.start():o.one(U,t.proxy(this.start,this)):e.one(U,t.proxy(this.start,this)).one(E,t.proxy(this.stop,this)).addClass(L).insertAfter(o)},start:function(){var i=this.$element,e=this.$clone;this.isImg||(e.off(E,this.stop),i=e),r(i[0],t.proxy(function(i,e){t.extend(this.image,{naturalWidth:i,naturalHeight:e,aspectRatio:i/e}),this.isLoaded=!0,this.build()},this))},stop:function(){this.$clone.remove(),this.$clone=null},build:function(){var i,e,s,o=this.options,a=this.$element,h=this.$clone;this.isLoaded&&(this.isBuilt&&this.unbuild(),this.$container=a.parent(),this.$cropper=i=t(m.TEMPLATE),this.$canvas=i.find(".cropper-canvas").append(h),this.$dragBox=i.find(".cropper-drag-box"),this.$cropBox=e=i.find(".cropper-crop-box"),this.$viewBox=i.find(".cropper-view-box"),this.$face=s=e.find(".cropper-face"),a.addClass(T).after(i),this.isImg||h.removeClass(L),this.initPreview(),this.bind(),o.aspectRatio=mt(0,o.aspectRatio)||NaN,o.viewMode=mt(0,ft(3,bt(o.viewMode)))||0,o.autoCrop?(this.isCropped=!0,o.modal&&this.$dragBox.addClass($)):e.addClass(T),o.guides||e.find(".cropper-dashed").addClass(T),o.center||e.find(".cropper-center").addClass(T),o.cropBoxMovable&&s.addClass(M).data(J,rt),o.highlight||s.addClass(k),o.background&&i.addClass(Y),o.cropBoxResizable||e.find(".cropper-line, .cropper-point").addClass(T),this.setDragMode(o.dragMode),this.render(),this.isBuilt=!0,this.setData(o.data),a.one(j,o.built),setTimeout(t.proxy(function(){this.trigger(j),this.isCompleted=!0},this),0))},unbuild:function(){this.isBuilt&&(this.isBuilt=!1,this.isCompleted=!1,this.initialImage=null,this.initialCanvas=null,this.initialCropBox=null,this.container=null,this.canvas=null,this.cropBox=null,this.unbind(),this.resetPreview(),this.$preview=null,this.$viewBox=null,this.$cropBox=null,this.$dragBox=null,this.$canvas=null,this.$container=null,this.$cropper.remove(),this.$cropper=null)},render:function(){this.initContainer(),this.initCanvas(),this.initCropBox(),this.renderCanvas(),this.isCropped&&this.renderCropBox()},initContainer:function(){var t=this.options,i=this.$element,e=this.$container,s=this.$cropper;s.addClass(T),i.removeClass(T),s.css(this.container={width:mt(e.width(),ut(t.minContainerWidth)||200),height:mt(e.height(),ut(t.minContainerHeight)||100)}),i.addClass(T),s.removeClass(T)},initCanvas:function(){var i,e=this.options.viewMode,s=this.container,o=s.width,a=s.height,h=this.image,n=h.naturalWidth,r=h.naturalHeight,p=90===vt(h.rotate),l=p?r:n,c=p?n:r,d=l/c,g=o,u=a;a*d>o?3===e?g=a*d:u=o/d:3===e?u=o/d:g=a*d,i={naturalWidth:l,naturalHeight:c,aspectRatio:d,width:g,height:u},i.oldLeft=i.left=(o-g)/2,i.oldTop=i.top=(a-u)/2,this.canvas=i,this.isLimited=1===e||2===e,this.limitCanvas(!0,!0),this.initialImage=t.extend({},h),this.initialCanvas=t.extend({},i)},limitCanvas:function(t,i){var e,s,o,a,h=this.options,n=h.viewMode,r=this.container,p=r.width,l=r.height,c=this.canvas,d=c.aspectRatio,g=this.cropBox,u=this.isCropped&&g;t&&(e=ut(h.minCanvasWidth)||0,s=ut(h.minCanvasHeight)||0,n&&(n>1?(e=mt(e,p),s=mt(s,l),3===n&&(s*d>e?e=s*d:s=e/d)):e?e=mt(e,u?g.width:0):s?s=mt(s,u?g.height:0):u&&(e=g.width,s=g.height,s*d>e?e=s*d:s=e/d)),e&&s?s*d>e?s=e/d:e=s*d:e?s=e/d:s&&(e=s*d),c.minWidth=e,c.minHeight=s,c.maxWidth=1/0,c.maxHeight=1/0),i&&(n?(o=p-c.width,a=l-c.height,c.minLeft=ft(0,o),c.minTop=ft(0,a),c.maxLeft=mt(0,o),c.maxTop=mt(0,a),u&&this.isLimited&&(c.minLeft=ft(g.left,g.left+g.width-c.width),c.minTop=ft(g.top,g.top+g.height-c.height),c.maxLeft=g.left,c.maxTop=g.top,2===n&&(c.width>=p&&(c.minLeft=ft(0,o),c.maxLeft=mt(0,o)),c.height>=l&&(c.minTop=ft(0,a),c.maxTop=mt(0,a))))):(c.minLeft=-c.width,c.minTop=-c.height,c.maxLeft=p,c.maxTop=l))},renderCanvas:function(t){var i,e,s=this.canvas,o=this.image,a=o.rotate,h=o.naturalWidth,n=o.naturalHeight;this.isRotated&&(this.isRotated=!1,e=l({width:o.width,height:o.height,degree:a}),i=e.width/e.height,i!==s.aspectRatio&&(s.left-=(e.width-s.width)/2,s.top-=(e.height-s.height)/2,s.width=e.width,s.height=e.height,s.aspectRatio=i,s.naturalWidth=h,s.naturalHeight=n,a%180&&(e=l({width:h,height:n,degree:a}),s.naturalWidth=e.width,s.naturalHeight=e.height),this.limitCanvas(!0,!1))),(s.width>s.maxWidth||s.width<s.minWidth)&&(s.left=s.oldLeft),(s.height>s.maxHeight||s.height<s.minHeight)&&(s.top=s.oldTop),s.width=ft(mt(s.width,s.minWidth),s.maxWidth),s.height=ft(mt(s.height,s.minHeight),s.maxHeight),this.limitCanvas(!1,!0),s.oldLeft=s.left=ft(mt(s.left,s.minLeft),s.maxLeft),s.oldTop=s.top=ft(mt(s.top,s.minTop),s.maxTop),this.$canvas.css({width:s.width,height:s.height,left:s.left,top:s.top}),this.renderImage(),this.isCropped&&this.isLimited&&this.limitCropBox(!0,!0),t&&this.output()},renderImage:function(i){var e,s=this.canvas,o=this.image;o.rotate&&(e=l({width:s.width,height:s.height,degree:o.rotate,aspectRatio:o.aspectRatio},!0)),t.extend(o,e?{width:e.width,height:e.height,left:(s.width-e.width)/2,top:(s.height-e.height)/2}:{width:s.width,height:s.height,left:0,top:0}),this.$clone.css({width:o.width,height:o.height,marginLeft:o.left,marginTop:o.top,transform:p(o)}),i&&this.output()},initCropBox:function(){var i=this.options,e=this.canvas,s=i.aspectRatio,o=ut(i.autoCropArea)||.8,a={width:e.width,height:e.height};s&&(e.height*s>e.width?a.height=a.width/s:a.width=a.height*s),this.cropBox=a,this.limitCropBox(!0,!0),a.width=ft(mt(a.width,a.minWidth),a.maxWidth),a.height=ft(mt(a.height,a.minHeight),a.maxHeight),a.width=mt(a.minWidth,a.width*o),a.height=mt(a.minHeight,a.height*o),a.oldLeft=a.left=e.left+(e.width-a.width)/2,a.oldTop=a.top=e.top+(e.height-a.height)/2,this.initialCropBox=t.extend({},a)},limitCropBox:function(t,i){var e,s,o,a,h=this.options,n=h.aspectRatio,r=this.container,p=r.width,l=r.height,c=this.canvas,d=this.cropBox,g=this.isLimited;t&&(e=ut(h.minCropBoxWidth)||0,s=ut(h.minCropBoxHeight)||0,e=ft(e,p),s=ft(s,l),o=ft(p,g?c.width:p),a=ft(l,g?c.height:l),n&&(e&&s?s*n>e?s=e/n:e=s*n:e?s=e/n:s&&(e=s*n),a*n>o?a=o/n:o=a*n),d.minWidth=ft(e,o),d.minHeight=ft(s,a),d.maxWidth=o,d.maxHeight=a),i&&(g?(d.minLeft=mt(0,c.left),d.minTop=mt(0,c.top),d.maxLeft=ft(p,c.left+c.width)-d.width,d.maxTop=ft(l,c.top+c.height)-d.height):(d.minLeft=0,d.minTop=0,d.maxLeft=p-d.width,d.maxTop=l-d.height))},renderCropBox:function(){var t=this.options,i=this.container,e=i.width,s=i.height,o=this.cropBox;(o.width>o.maxWidth||o.width<o.minWidth)&&(o.left=o.oldLeft),(o.height>o.maxHeight||o.height<o.minHeight)&&(o.top=o.oldTop),o.width=ft(mt(o.width,o.minWidth),o.maxWidth),o.height=ft(mt(o.height,o.minHeight),o.maxHeight),this.limitCropBox(!1,!0),o.oldLeft=o.left=ft(mt(o.left,o.minLeft),o.maxLeft),o.oldTop=o.top=ft(mt(o.top,o.minTop),o.maxTop),t.movable&&t.cropBoxMovable&&this.$face.data(J,o.width===e&&o.height===s?lt:rt),this.$cropBox.css({width:o.width,height:o.height,left:o.left,top:o.top}),this.isCropped&&this.isLimited&&this.limitCanvas(!0,!0),this.isDisabled||this.output()},output:function(){this.preview(),this.isCompleted?this.trigger(_,this.getData()):this.isBuilt||this.$element.one(j,t.proxy(function(){this.trigger(_,this.getData())},this))},initPreview:function(){var i=n(this.crossOrigin),e=i?this.crossOriginUrl:this.url;this.$preview=t(this.options.preview),this.$viewBox.html("<img"+i+' src="'+e+'">'),this.$preview.each(function(){var s=t(this);s.data(G,{width:s.width(),height:s.height(),html:s.html()}),s.html("<img"+i+' src="'+e+'" style="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;">')})},resetPreview:function(){this.$preview.each(function(){var i=t(this),e=i.data(G);i.css({width:e.width,height:e.height}).html(e.html).removeData(G)})},preview:function(){var i=this.image,e=this.canvas,s=this.cropBox,o=s.width,a=s.height,h=i.width,n=i.height,r=s.left-e.left-i.left,l=s.top-e.top-i.top;this.isCropped&&!this.isDisabled&&(this.$viewBox.find("img").css({width:h,height:n,marginLeft:-r,marginTop:-l,transform:p(i)}),this.$preview.each(function(){var e=t(this),s=e.data(G),c=s.width,d=s.height,g=c,u=d,f=1;o&&(f=c/o,u=a*f),a&&u>d&&(f=d/a,g=o*f,u=d),e.css({width:g,height:u}).find("img").css({width:h*f,height:n*f,marginLeft:-r*f,marginTop:-l*f,transform:p(i)})}))},bind:function(){var i=this.options,e=this.$element,s=this.$cropper;t.isFunction(i.cropstart)&&e.on(S,i.cropstart),t.isFunction(i.cropmove)&&e.on(A,i.cropmove),t.isFunction(i.cropend)&&e.on(N,i.cropend),t.isFunction(i.crop)&&e.on(_,i.crop),t.isFunction(i.zoom)&&e.on(q,i.zoom),s.on(R,t.proxy(this.cropStart,this)),i.zoomable&&i.zoomOnWheel&&s.on(O,t.proxy(this.wheel,this)),i.toggleDragModeOnDblclick&&s.on(P,t.proxy(this.dblclick,this)),w.on(H,this._cropMove=o(this.cropMove,this)).on(z,this._cropEnd=o(this.cropEnd,this)),i.responsive&&v.on(I,this._resize=o(this.resize,this))},unbind:function(){var i=this.options,e=this.$element,s=this.$cropper;t.isFunction(i.cropstart)&&e.off(S,i.cropstart),t.isFunction(i.cropmove)&&e.off(A,i.cropmove),t.isFunction(i.cropend)&&e.off(N,i.cropend),t.isFunction(i.crop)&&e.off(_,i.crop),t.isFunction(i.zoom)&&e.off(q,i.zoom),s.off(R,this.cropStart),i.zoomable&&i.zoomOnWheel&&s.off(O,this.wheel),i.toggleDragModeOnDblclick&&s.off(P,this.dblclick),w.off(H,this._cropMove).off(z,this._cropEnd),i.responsive&&v.off(I,this._resize)},resize:function(){var i,e,s,o=this.options.restore,a=this.$container,h=this.container;!this.isDisabled&&h&&(s=a.width()/h.width,(1!==s||a.height()!==h.height)&&(o&&(i=this.getCanvasData(),e=this.getCropBoxData()),this.render(),o&&(this.setCanvasData(t.each(i,function(t,e){i[t]=e*s})),this.setCropBoxData(t.each(e,function(t,i){e[t]=i*s})))))},dblclick:function(){this.isDisabled||(this.$dragBox.hasClass(W)?this.setDragMode(lt):this.setDragMode(pt))},wheel:function(i){var e=i.originalEvent,s=e||i,o=ut(this.options.wheelZoomRatio)||.1,a=1;this.isDisabled||(i.preventDefault(),this.wheeling||(this.wheeling=!0,setTimeout(t.proxy(function(){this.wheeling=!1},this),50),s.deltaY?a=s.deltaY>0?1:-1:s.wheelDelta?a=-s.wheelDelta/120:s.detail&&(a=s.detail>0?1:-1),this.zoom(-a*o,e)))},cropStart:function(i){var e,s,o=this.options,a=i.originalEvent,h=a&&a.touches,n=i;if(!this.isDisabled){if(h){if(e=h.length,e>1){if(!o.zoomable||!o.zoomOnTouch||2!==e)return;n=h[1],this.startX2=n.pageX,this.startY2=n.pageY,s=ct}n=h[0]}if(s=s||t(n.target).data(J),Z.test(s)){if(this.trigger(S,{originalEvent:a,action:s}).isDefaultPrevented())return;i.preventDefault(),this.action=s,this.cropping=!1,this.startX=n.pageX||a&&a.pageX,this.startY=n.pageY||a&&a.pageY,s===pt&&(this.cropping=!0,this.$dragBox.addClass($))}}},cropMove:function(t){var i,e=this.options,s=t.originalEvent,o=s&&s.touches,a=t,h=this.action;if(!this.isDisabled){if(o){if(i=o.length,i>1){if(!e.zoomable||!e.zoomOnTouch||2!==i)return;a=o[1],this.endX2=a.pageX,this.endY2=a.pageY}a=o[0]}if(h){if(this.trigger(A,{originalEvent:s,action:h}).isDefaultPrevented())return;t.preventDefault(),this.endX=a.pageX||s&&s.pageX,this.endY=a.pageY||s&&s.pageY,this.change(a.shiftKey,h===ct?s:null)}}},cropEnd:function(t){var i=t.originalEvent,e=this.action;this.isDisabled||e&&(t.preventDefault(),this.cropping&&(this.cropping=!1,this.$dragBox.toggleClass($,this.isCropped&&this.options.modal)),this.action="",this.trigger(N,{originalEvent:i,action:e}))},change:function(t,i){var e,s,o=this.options,a=o.aspectRatio,h=this.action,n=this.container,r=this.canvas,p=this.cropBox,l=p.width,c=p.height,d=p.left,g=p.top,u=d+l,f=g+c,m=0,v=0,w=n.width,x=n.height,C=!0;switch(!a&&t&&(a=l&&c?l/c:1),this.limited&&(m=p.minLeft,v=p.minTop,w=m+ft(n.width,r.width),x=v+ft(n.height,r.height)),s={x:this.endX-this.startX,y:this.endY-this.startY},a&&(s.X=s.y*a,s.Y=s.x/a),h){case rt:d+=s.x,g+=s.y;break;case tt:if(s.x>=0&&(u>=w||a&&(v>=g||f>=x))){C=!1;break}l+=s.x,a&&(c=l/a,g-=s.Y/2),0>l&&(h=it,l=0);break;case st:if(s.y<=0&&(v>=g||a&&(m>=d||u>=w))){C=!1;break}c-=s.y,g+=s.y,a&&(l=c*a,d+=s.X/2),0>c&&(h=et,c=0);break;case it:if(s.x<=0&&(m>=d||a&&(v>=g||f>=x))){C=!1;break}l-=s.x,d+=s.x,a&&(c=l/a,g+=s.Y/2),0>l&&(h=tt,l=0);break;case et:if(s.y>=0&&(f>=x||a&&(m>=d||u>=w))){C=!1;break}c+=s.y,a&&(l=c*a,d-=s.X/2),0>c&&(h=st,c=0);break;case ht:if(a){if(s.y<=0&&(v>=g||u>=w)){C=!1;break}c-=s.y,g+=s.y,l=c*a}else s.x>=0?w>u?l+=s.x:s.y<=0&&v>=g&&(C=!1):l+=s.x,s.y<=0?g>v&&(c-=s.y,g+=s.y):(c-=s.y,g+=s.y);0>l&&0>c?(h=at,c=0,l=0):0>l?(h=nt,l=0):0>c&&(h=ot,c=0);break;case nt:if(a){if(s.y<=0&&(v>=g||m>=d)){C=!1;break}c-=s.y,g+=s.y,l=c*a,d+=s.X}else s.x<=0?d>m?(l-=s.x,d+=s.x):s.y<=0&&v>=g&&(C=!1):(l-=s.x,d+=s.x),s.y<=0?g>v&&(c-=s.y,g+=s.y):(c-=s.y,g+=s.y);0>l&&0>c?(h=ot,c=0,l=0):0>l?(h=ht,l=0):0>c&&(h=at,c=0);break;case at:if(a){if(s.x<=0&&(m>=d||f>=x)){C=!1;break}l-=s.x,d+=s.x,c=l/a}else s.x<=0?d>m?(l-=s.x,d+=s.x):s.y>=0&&f>=x&&(C=!1):(l-=s.x,d+=s.x),s.y>=0?x>f&&(c+=s.y):c+=s.y;0>l&&0>c?(h=ht,c=0,l=0):0>l?(h=ot,l=0):0>c&&(h=nt,c=0);break;case ot:if(a){if(s.x>=0&&(u>=w||f>=x)){C=!1;break}l+=s.x,c=l/a}else s.x>=0?w>u?l+=s.x:s.y>=0&&f>=x&&(C=!1):l+=s.x,s.y>=0?x>f&&(c+=s.y):c+=s.y;0>l&&0>c?(h=nt,c=0,l=0):0>l?(h=at,l=0):0>c&&(h=ht,c=0);break;case lt:this.move(s.x,s.y),C=!1;break;case ct:this.zoom(function(t,i,e,s){var o=Ct(t*t+i*i),a=Ct(e*e+s*s);return(a-o)/o}(vt(this.startX-this.startX2),vt(this.startY-this.startY2),vt(this.endX-this.endX2),vt(this.endY-this.endY2)),i),this.startX2=this.endX2,this.startY2=this.endY2,C=!1;break;case pt:if(!s.x||!s.y){C=!1;break}e=this.$cropper.offset(),d=this.startX-e.left,g=this.startY-e.top,l=p.minWidth,c=p.minHeight,s.x>0?h=s.y>0?ot:ht:s.x<0&&(d-=l,h=s.y>0?at:nt),s.y<0&&(g-=c),this.isCropped||(this.$cropBox.removeClass(T),this.isCropped=!0,this.limited&&this.limitCropBox(!0,!0))}C&&(p.width=l,p.height=c,p.left=d,p.top=g,this.action=h,this.renderCropBox()),this.startX=this.endX,this.startY=this.endY},crop:function(){this.isBuilt&&!this.isDisabled&&(this.isCropped||(this.isCropped=!0,this.limitCropBox(!0,!0),this.options.modal&&this.$dragBox.addClass($),this.$cropBox.removeClass(T)),this.setCropBoxData(this.initialCropBox))},reset:function(){this.isBuilt&&!this.isDisabled&&(this.image=t.extend({},this.initialImage),this.canvas=t.extend({},this.initialCanvas),this.cropBox=t.extend({},this.initialCropBox),this.renderCanvas(),this.isCropped&&this.renderCropBox())},clear:function(){this.isCropped&&!this.isDisabled&&(t.extend(this.cropBox,{left:0,top:0,width:0,height:0}),this.isCropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),this.$dragBox.removeClass($),this.$cropBox.addClass(T))},replace:function(t){!this.isDisabled&&t&&(this.isImg&&(this.isReplaced=!0,this.$element.attr("src",t)),this.options.data=null,this.load(t))},enable:function(){this.isBuilt&&(this.isDisabled=!1,this.$cropper.removeClass(X))},disable:function(){this.isBuilt&&(this.isDisabled=!0,this.$cropper.addClass(X))},destroy:function(){var t=this.$element;this.isLoaded?(this.isImg&&this.isReplaced&&t.attr("src",this.originalUrl),this.unbuild(),t.removeClass(T)):this.isImg?t.off(U,this.start):this.$clone&&this.$clone.remove(),t.removeData(D)},move:function(t,i){var s=this.canvas;this.moveTo(e(t)?t:s.left+ut(t),e(i)?i:s.top+ut(i))},moveTo:function(t,s){var o=this.canvas,a=!1;e(s)&&(s=t),t=ut(t),s=ut(s),this.isBuilt&&!this.isDisabled&&this.options.movable&&(i(t)&&(o.left=t,a=!0),i(s)&&(o.top=s,a=!0),a&&this.renderCanvas(!0))},zoom:function(t,i){var e=this.canvas;t=ut(t),t=0>t?1/(1-t):1+t,this.zoomTo(e.width*t/e.naturalWidth,i)},zoomTo:function(t,i){var e,s,o=this.options,a=this.canvas,h=a.width,n=a.height,r=a.naturalWidth,p=a.naturalHeight;if(t=ut(t),t>=0&&this.isBuilt&&!this.isDisabled&&o.zoomable){if(e=r*t,s=p*t,this.trigger(q,{originalEvent:i,oldRatio:h/r,ratio:e/r}).isDefaultPrevented())return;a.left-=(e-h)/2,a.top-=(s-n)/2,a.width=e,a.height=s,this.renderCanvas(!0)}},rotate:function(t){this.rotateTo((this.image.rotate||0)+ut(t))},rotateTo:function(t){t=ut(t),i(t)&&this.isBuilt&&!this.isDisabled&&this.options.rotatable&&(this.image.rotate=t%360,this.isRotated=!0,this.renderCanvas(!0))},scale:function(t,s){var o=this.image,a=!1;e(s)&&(s=t),t=ut(t),s=ut(s),this.isBuilt&&!this.isDisabled&&this.options.scalable&&(i(t)&&(o.scaleX=t,a=!0),i(s)&&(o.scaleY=s,a=!0),a&&this.renderImage(!0))},scaleX:function(t){var e=this.image.scaleY;this.scale(t,i(e)?e:1)},scaleY:function(t){var e=this.image.scaleX;this.scale(i(e)?e:1,t)},getData:function(i){var e,s,o=this.options,a=this.image,h=this.canvas,n=this.cropBox;return this.isBuilt&&this.isCropped?(s={x:n.left-h.left,y:n.top-h.top,width:n.width,height:n.height},e=a.width/a.naturalWidth,t.each(s,function(t,o){o/=e,s[t]=i?bt(o):o})):s={x:0,y:0,width:0,height:0},o.rotatable&&(s.rotate=a.rotate||0),o.scalable&&(s.scaleX=a.scaleX||1,s.scaleY=a.scaleY||1),s},setData:function(e){var s,o,a,h=this.options,n=this.image,r=this.canvas,p={};t.isFunction(e)&&(e=e.call(this.element)),this.isBuilt&&!this.isDisabled&&t.isPlainObject(e)&&(h.rotatable&&i(e.rotate)&&e.rotate!==n.rotate&&(n.rotate=e.rotate,this.isRotated=s=!0),h.scalable&&(i(e.scaleX)&&e.scaleX!==n.scaleX&&(n.scaleX=e.scaleX,o=!0),i(e.scaleY)&&e.scaleY!==n.scaleY&&(n.scaleY=e.scaleY,o=!0)),s?this.renderCanvas():o&&this.renderImage(),a=n.width/n.naturalWidth,i(e.x)&&(p.left=e.x*a+r.left),i(e.y)&&(p.top=e.y*a+r.top),i(e.width)&&(p.width=e.width*a),i(e.height)&&(p.height=e.height*a),this.setCropBoxData(p))},getContainerData:function(){return this.isBuilt?this.container:{}},getImageData:function(){return this.isLoaded?this.image:{}},getCanvasData:function(){var i=this.canvas,e={};return this.isBuilt&&t.each(["left","top","width","height","naturalWidth","naturalHeight"],function(t,s){e[s]=i[s]}),e},setCanvasData:function(e){var s=this.canvas,o=s.aspectRatio;t.isFunction(e)&&(e=e.call(this.$element)),this.isBuilt&&!this.isDisabled&&t.isPlainObject(e)&&(i(e.left)&&(s.left=e.left),i(e.top)&&(s.top=e.top),i(e.width)?(s.width=e.width,s.height=e.width/o):i(e.height)&&(s.height=e.height,s.width=e.height*o),this.renderCanvas(!0))},getCropBoxData:function(){var t,i=this.cropBox;return this.isBuilt&&this.isCropped&&(t={left:i.left,top:i.top,width:i.width,height:i.height}),t||{}},setCropBoxData:function(e){var s,o,a=this.cropBox,h=this.options.aspectRatio;t.isFunction(e)&&(e=e.call(this.$element)),this.isBuilt&&this.isCropped&&!this.isDisabled&&t.isPlainObject(e)&&(i(e.left)&&(a.left=e.left),i(e.top)&&(a.top=e.top),i(e.width)&&(s=!0,a.width=e.width),i(e.height)&&(o=!0,a.height=e.height),h&&(s?a.height=a.width/h:o&&(a.width=a.height*h)),this.renderCropBox())},getCroppedCanvas:function(i){var e,s,o,a,h,n,r,p,l,d,g;return this.isBuilt&&this.isCropped&>?(t.isPlainObject(i)||(i={}),g=this.getData(),e=g.width,s=g.height,p=e/s,t.isPlainObject(i)&&(h=i.width,n=i.height,h?(n=h/p,r=h/e):n&&(h=n*p,r=n/s)),o=bt(h||e),a=bt(n||s),l=t("<canvas>")[0],l.width=o,l.height=a,d=l.getContext("2d"),i.fillColor&&(d.fillStyle=i.fillColor,d.fillRect(0,0,o,a)),d.drawImage.apply(d,function(){var t,i,o,a,h,n,p=c(this.$clone[0],this.image),l=p.width,d=p.height,u=[p],f=g.x,m=g.y;return-e>=f||f>l?f=t=o=h=0:0>=f?(o=-f,f=0,t=h=ft(l,e+f)):l>=f&&(o=0,t=h=ft(e,l-f)),0>=t||-s>=m||m>d?m=i=a=n=0:0>=m?(a=-m,m=0,i=n=ft(d,s+m)):d>=m&&(a=0,i=n=ft(s,d-m)),u.push(Bt(f),Bt(m),Bt(t),Bt(i)),r&&(o*=r,a*=r,h*=r,n*=r),h>0&&n>0&&u.push(Bt(o),Bt(a),Bt(h),Bt(n)),u}.call(this)),l):void 0},setAspectRatio:function(t){var i=this.options;this.isDisabled||e(t)||(i.aspectRatio=mt(0,t)||NaN,this.isBuilt&&(this.initCropBox(),this.isCropped&&this.renderCropBox()))},setDragMode:function(t){var i,e,s=this.options;this.isLoaded&&!this.isDisabled&&(i=t===pt,e=s.movable&&t===lt,t=i||e?t:dt,this.$dragBox.data(J,t).toggleClass(W,i).toggleClass(M,e),s.cropBoxMovable||this.$face.data(J,t).toggleClass(W,i).toggleClass(M,e))}},m.DEFAULTS={viewMode:0,dragMode:"crop",aspectRatio:NaN,data:null,preview:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,autoCropArea:.8,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,wheelZoomRatio:.1,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0,minCanvasWidth:0,minCanvasHeight:0,minCropBoxWidth:0,minCropBoxHeight:0,minContainerWidth:200,minContainerHeight:100,build:null,built:null,cropstart:null,cropmove:null,cropend:null,crop:null,zoom:null},m.setDefaults=function(i){t.extend(m.DEFAULTS,i)},m.TEMPLATE='<div class="cropper-container"><div class="cropper-wrap-box"><div class="cropper-canvas"></div></div><div class="cropper-drag-box"></div><div class="cropper-crop-box"><span class="cropper-view-box"></span><span class="cropper-dashed dashed-h"></span><span class="cropper-dashed dashed-v"></span><span class="cropper-center"></span><span class="cropper-face"></span><span class="cropper-line line-e" data-action="e"></span><span class="cropper-line line-n" data-action="n"></span><span class="cropper-line line-w" data-action="w"></span><span class="cropper-line line-s" data-action="s"></span><span class="cropper-point point-e" data-action="e"></span><span class="cropper-point point-n" data-action="n"></span><span class="cropper-point point-w" data-action="w"></span><span class="cropper-point point-s" data-action="s"></span><span class="cropper-point point-ne" data-action="ne"></span><span class="cropper-point point-nw" data-action="nw"></span><span class="cropper-point point-sw" data-action="sw"></span><span class="cropper-point point-se" data-action="se"></span></div></div>',m.other=t.fn.cropper,t.fn.cropper=function(i){var o,a=s(arguments,1);return this.each(function(){var e,s,h=t(this),n=h.data(D);if(!n){if(/destroy/.test(i))return;e=t.extend({},h.data(),t.isPlainObject(i)&&i),h.data(D,n=new m(this,e))}"string"==typeof i&&t.isFunction(s=n[i])&&(o=s.apply(n,a))}),e(o)?this:o},t.fn.cropper.Constructor=m,t.fn.cropper.setDefaults=m.setDefaults,t.fn.cropper.noConflict=function(){return t.fn.cropper=m.other,this}});