���Root Mod By V1rus_Alfa
User / IP
:
216.73.217.78
Host / Server
:
195.214.235.115 / npln.ir
System
:
Linux damavand.pws-dns.net 5.14.0-503.35.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Apr 4 05:23:43 EDT 2025 x86_64
Command
|
Upload
|
Mass Deface
|
Create
:
/
home2
/
cutunixc
/
.trash
/
js
/
Viewing: croppie.min.js
!function(root,factory){"function"==typeof define&&define.amd?define(factory):"object"==typeof exports&&"string"!=typeof exports.nodeName?module.exports=factory():root.Croppie=factory()}("undefined"!=typeof self?self:this,(function(){"function"!=typeof Promise&&function(a){function b(a,b){return function(){a.apply(b,arguments)}}function c(a){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof a)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],i(a,b(e,this),b(f,this))}function d(a){var b=this;return null===this._state?void this._deferreds.push(a):void k((function(){var c=b._state?a.onFulfilled:a.onRejected;if(null!==c){var d;try{d=c(b._value)}catch(e){return void a.reject(e)}a.resolve(d)}else(b._state?a.resolve:a.reject)(b._value)}))}function e(a){try{if(a===this)throw new TypeError("A promise cannot be resolved with itself.");if(a&&("object"==typeof a||"function"==typeof a)){var c=a.then;if("function"==typeof c)return void i(b(c,a),b(e,this),b(f,this))}this._state=!0,this._value=a,g.call(this)}catch(d){f.call(this,d)}}function f(a){this._state=!1,this._value=a,g.call(this)}function g(){for(var a=0,b=this._deferreds.length;b>a;a++)d.call(this,this._deferreds[a]);this._deferreds=null}function h(a,b,c,d){this.onFulfilled="function"==typeof a?a:null,this.onRejected="function"==typeof b?b:null,this.resolve=c,this.reject=d}function i(a,b,c){var d=!1;try{a((function(a){d||(d=!0,b(a))}),(function(a){d||(d=!0,c(a))}))}catch(e){if(d)return;d=!0,c(e)}}var j=setTimeout,k="function"==typeof setImmediate&&setImmediate||function(a){j(a,1)},l=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};c.prototype.catch=function(a){return this.then(null,a)},c.prototype.then=function(a,b){var e=this;return new c((function(c,f){d.call(e,new h(a,b,c,f))}))},c.all=function(){var a=Array.prototype.slice.call(1===arguments.length&&l(arguments[0])?arguments[0]:arguments);return new c((function(b,c){function d(f,g){try{if(g&&("object"==typeof g||"function"==typeof g)){var h=g.then;if("function"==typeof h)return void h.call(g,(function(a){d(f,a)}),c)}a[f]=g,0==--e&&b(a)}catch(i){c(i)}}if(0===a.length)return b([]);for(var e=a.length,f=0;f<a.length;f++)d(f,a[f])}))},c.resolve=function(a){return a&&"object"==typeof a&&a.constructor===c?a:new c((function(b){b(a)}))},c.reject=function(a){return new c((function(b,c){c(a)}))},c.race=function(a){return new c((function(b,c){for(var d=0,e=a.length;e>d;d++)a[d].then(b,c)}))},c._setImmediateFn=function(a){k=a},"undefined"!=typeof module&&module.exports?module.exports=c:a.Promise||(a.Promise=c)}(this),"function"!=typeof window.CustomEvent&&function(){function CustomEvent(event,params){params=params||{bubbles:!1,cancelable:!1,detail:void 0};var evt=document.createEvent("CustomEvent");return evt.initCustomEvent(event,params.bubbles,params.cancelable,params.detail),evt}CustomEvent.prototype=window.Event.prototype,window.CustomEvent=CustomEvent}(),HTMLCanvasElement.prototype.toBlob||Object.defineProperty(HTMLCanvasElement.prototype,"toBlob",{value:function(callback,type,quality){for(var binStr=atob(this.toDataURL(type,quality).split(",")[1]),len=binStr.length,arr=new Uint8Array(len),i=0;i<len;i++)arr[i]=binStr.charCodeAt(i);callback(new Blob([arr],{type:type||"image/png"}))}});var cssPrefixes=["Webkit","Moz","ms"],emptyStyles=document.createElement("div").style,EXIF_NORM=[1,8,3,6],EXIF_FLIP=[2,7,4,5],CSS_TRANS_ORG,CSS_TRANSFORM,CSS_USERSELECT;function vendorPrefix(prop){if(prop in emptyStyles)return prop;for(var capProp=prop[0].toUpperCase()+prop.slice(1),i=cssPrefixes.length;i--;)if((prop=cssPrefixes[i]+capProp)in emptyStyles)return prop}function getExifOffset(ornt,rotate){var arr=EXIF_NORM.indexOf(ornt)>-1?EXIF_NORM:EXIF_FLIP,index=arr.indexOf(ornt),offset=rotate/90%arr.length;return arr[(arr.length+index+offset%arr.length)%arr.length]}function deepExtend(destination,source){for(var property in destination=destination||{},source)source[property]&&source[property].constructor&&source[property].constructor===Object?(destination[property]=destination[property]||{},deepExtend(destination[property],source[property])):destination[property]=source[property];return destination}function clone(object){return deepExtend({},object)}function debounce(func,wait,immediate){var timeout;return function(){var context=this,args=arguments,later=function(){timeout=null,immediate||func.apply(context,args)},callNow=immediate&&!timeout;clearTimeout(timeout),timeout=setTimeout(later,wait),callNow&&func.apply(context,args)}}function dispatchChange(element){if("createEvent"in document){var evt=document.createEvent("HTMLEvents");evt.initEvent("change",!1,!0),element.dispatchEvent(evt)}else element.fireEvent("onchange")}function css(el,styles,val){if("string"==typeof styles){var tmp=styles;(styles={})[tmp]=val}for(var prop in styles)el.style[prop]=styles[prop]}function addClass(el,c){el.classList?el.classList.add(c):el.className+=" "+c}function removeClass(el,c){el.classList?el.classList.remove(c):el.className=el.className.replace(c,"")}function setAttributes(el,attrs){for(var key in attrs)el.setAttribute(key,attrs[key])}function num(v){return parseInt(v,10)}function loadImage(src,doExif){var img=new Image;return img.style.opacity="0",new Promise((function(resolve,reject){function _resolve(){img.style.opacity="1",setTimeout((function(){resolve(img)}),1)}img.removeAttribute("crossOrigin"),src.match(/^https?:\/\/|^\/\//)&&img.setAttribute("crossOrigin","anonymous"),img.onload=function(){doExif?EXIF.getData(img,(function(){_resolve()})):_resolve()},img.onerror=function(ev){img.style.opacity=1,setTimeout((function(){reject(ev)}),1)},img.src=src}))}function naturalImageDimensions(img,ornt){var w=img.naturalWidth,h=img.naturalHeight,orient=ornt||getExifOrientation(img);if(orient&&orient>=5){var x=w;w=h,h=x}return{width:w,height:h}}CSS_TRANSFORM=vendorPrefix("transform"),CSS_TRANS_ORG=vendorPrefix("transformOrigin"),CSS_USERSELECT=vendorPrefix("userSelect");var TRANSLATE_OPTS={translate3d:{suffix:", 0px"},translate:{suffix:""}},Transform=function(x,y,scale){this.x=parseFloat(x),this.y=parseFloat(y),this.scale=parseFloat(scale)};Transform.parse=function(v){return v.style?Transform.parse(v.style[CSS_TRANSFORM]):v.indexOf("matrix")>-1||v.indexOf("none")>-1?Transform.fromMatrix(v):Transform.fromString(v)},Transform.fromMatrix=function(v){var vals=v.substring(7).split(",");return vals.length&&"none"!==v||(vals=[1,0,0,1,0,0]),new Transform(num(vals[4]),num(vals[5]),parseFloat(vals[0]))},Transform.fromString=function(v){var values=v.split(") "),translate=values[0].substring(Croppie.globals.translate.length+1).split(","),scale=values.length>1?values[1].substring(6):1,x=translate.length>1?translate[0]:0,y=translate.length>1?translate[1]:0;return new Transform(x,y,scale)},Transform.prototype.toString=function(){var suffix=TRANSLATE_OPTS[Croppie.globals.translate].suffix||"";return Croppie.globals.translate+"("+this.x+"px, "+this.y+"px"+suffix+") scale("+this.scale+")"};var TransformOrigin=function(el){if(!el||!el.style[CSS_TRANS_ORG])return this.x=0,void(this.y=0);var css=el.style[CSS_TRANS_ORG].split(" ");this.x=parseFloat(css[0]),this.y=parseFloat(css[1])};function getExifOrientation(img){return img.exifdata&&img.exifdata.Orientation?num(img.exifdata.Orientation):1}function drawCanvas(canvas,img,orientation){var width=img.width,height=img.height,ctx=canvas.getContext("2d");switch(canvas.width=img.width,canvas.height=img.height,ctx.save(),orientation){case 2:ctx.translate(width,0),ctx.scale(-1,1);break;case 3:ctx.translate(width,height),ctx.rotate(180*Math.PI/180);break;case 4:ctx.translate(0,height),ctx.scale(1,-1);break;case 5:canvas.width=height,canvas.height=width,ctx.rotate(90*Math.PI/180),ctx.scale(1,-1);break;case 6:canvas.width=height,canvas.height=width,ctx.rotate(90*Math.PI/180),ctx.translate(0,-height);break;case 7:canvas.width=height,canvas.height=width,ctx.rotate(-90*Math.PI/180),ctx.translate(-width,height),ctx.scale(1,-1);break;case 8:canvas.width=height,canvas.height=width,ctx.translate(0,width),ctx.rotate(-90*Math.PI/180)}ctx.drawImage(img,0,0,width,height),ctx.restore()}function _create(){var self=this,contClass="croppie-container",customViewportClass=this.options.viewport.type?"cr-vp-"+this.options.viewport.type:null,boundary,img,viewport,overlay,bw,bh;this.options.useCanvas=this.options.enableOrientation||_hasExif.call(this),this.data={},this.elements={},boundary=this.elements.boundary=document.createElement("div"),viewport=this.elements.viewport=document.createElement("div"),img=this.elements.img=document.createElement("img"),overlay=this.elements.overlay=document.createElement("div"),this.options.useCanvas?(this.elements.canvas=document.createElement("canvas"),this.elements.preview=this.elements.canvas):this.elements.preview=img,addClass(boundary,"cr-boundary"),boundary.setAttribute("aria-dropeffect","none"),bw=this.options.boundary.width,bh=this.options.boundary.height,css(boundary,{width:bw+(isNaN(bw)?"":"px"),height:bh+(isNaN(bh)?"":"px")}),addClass(viewport,"cr-viewport"),customViewportClass&&addClass(viewport,customViewportClass),css(viewport,{width:this.options.viewport.width+"px",height:this.options.viewport.height+"px"}),viewport.setAttribute("tabindex",0),addClass(this.elements.preview,"cr-image"),setAttributes(this.elements.preview,{alt:"preview","aria-grabbed":"false"}),addClass(overlay,"cr-overlay"),this.element.appendChild(boundary),boundary.appendChild(this.elements.preview),boundary.appendChild(viewport),boundary.appendChild(overlay),addClass(this.element,contClass),this.options.customClass&&addClass(this.element,this.options.customClass),_initDraggable.call(this),this.options.enableZoom&&_initializeZoom.call(this),this.options.enableResize&&_initializeResize.call(this)}function _hasExif(){return this.options.enableExif&&window.EXIF}function _initializeResize(){var self=this,wrap=document.createElement("div"),isDragging=!1,direction,originalX,originalY,minSize=50,maxWidth,maxHeight,vr,hr;function mouseDown(ev){if((void 0===ev.button||0===ev.button)&&(ev.preventDefault(),!isDragging)){var overlayRect=self.elements.overlay.getBoundingClientRect();if(isDragging=!0,originalX=ev.pageX,originalY=ev.pageY,direction=-1!==ev.currentTarget.className.indexOf("vertical")?"v":"h",maxWidth=overlayRect.width,maxHeight=overlayRect.height,ev.touches){var touches=ev.touches[0];originalX=touches.pageX,originalY=touches.pageY}window.addEventListener("mousemove",mouseMove),window.addEventListener("touchmove",mouseMove),window.addEventListener("mouseup",mouseUp),window.addEventListener("touchend",mouseUp),document.body.style[CSS_USERSELECT]="none"}}function mouseMove(ev){var pageX=ev.pageX,pageY=ev.pageY;if(ev.preventDefault(),ev.touches){var touches=ev.touches[0];pageX=touches.pageX,pageY=touches.pageY}var deltaX=pageX-originalX,deltaY=pageY-originalY,newHeight=self.options.viewport.height+deltaY,newWidth=self.options.viewport.width+deltaX;"v"===direction&&newHeight>=50&&newHeight<=maxHeight?(css(wrap,{height:newHeight+"px"}),self.options.boundary.height+=deltaY,css(self.elements.boundary,{height:self.options.boundary.height+"px"}),self.options.viewport.height+=deltaY,css(self.elements.viewport,{height:self.options.viewport.height+"px"})):"h"===direction&&newWidth>=50&&newWidth<=maxWidth&&(css(wrap,{width:newWidth+"px"}),self.options.boundary.width+=deltaX,css(self.elements.boundary,{width:self.options.boundary.width+"px"}),self.options.viewport.width+=deltaX,css(self.elements.viewport,{width:self.options.viewport.width+"px"})),_updateOverlay.call(self),_updateZoomLimits.call(self),_updateCenterPoint.call(self),_triggerUpdate.call(self),originalY=pageY,originalX=pageX}function mouseUp(){isDragging=!1,window.removeEventListener("mousemove",mouseMove),window.removeEventListener("touchmove",mouseMove),window.removeEventListener("mouseup",mouseUp),window.removeEventListener("touchend",mouseUp),document.body.style[CSS_USERSELECT]=""}addClass(wrap,"cr-resizer"),css(wrap,{width:this.options.viewport.width+"px",height:this.options.viewport.height+"px"}),this.options.resizeControls.height&&(addClass(vr=document.createElement("div"),"cr-resizer-vertical"),wrap.appendChild(vr)),this.options.resizeControls.width&&(addClass(hr=document.createElement("div"),"cr-resizer-horisontal"),wrap.appendChild(hr)),vr&&(vr.addEventListener("mousedown",mouseDown),vr.addEventListener("touchstart",mouseDown)),hr&&(hr.addEventListener("mousedown",mouseDown),hr.addEventListener("touchstart",mouseDown)),this.elements.boundary.appendChild(wrap)}function _setZoomerVal(v){if(this.options.enableZoom){var z=this.elements.zoomer,val=fix(v,4);z.value=Math.max(parseFloat(z.min),Math.min(parseFloat(z.max),val)).toString()}}function _initializeZoom(){var self=this,wrap=self.elements.zoomerWrap=document.createElement("div"),zoomer=self.elements.zoomer=document.createElement("input");function change(){_onZoom.call(self,{value:parseFloat(zoomer.value),origin:new TransformOrigin(self.elements.preview),viewportRect:self.elements.viewport.getBoundingClientRect(),transform:Transform.parse(self.elements.preview)})}function scroll(ev){var delta,targetZoom;if("ctrl"===self.options.mouseWheelZoom&&!0!==ev.ctrlKey)return 0;delta=ev.wheelDelta?ev.wheelDelta/1200:ev.deltaY?ev.deltaY/1060:ev.detail?ev.detail/-60:0,targetZoom=self._currentZoom+delta*self._currentZoom,ev.preventDefault(),_setZoomerVal.call(self,targetZoom),change.call(self)}addClass(wrap,"cr-slider-wrap"),addClass(zoomer,"cr-slider"),zoomer.type="range",zoomer.step="0.0001",zoomer.value="1",zoomer.style.display=self.options.showZoomer?"":"none",zoomer.setAttribute("aria-label","zoom"),self.element.appendChild(wrap),wrap.appendChild(zoomer),self._currentZoom=1,self.elements.zoomer.addEventListener("input",change),self.elements.zoomer.addEventListener("change",change),self.options.mouseWheelZoom&&(self.elements.boundary.addEventListener("mousewheel",scroll),self.elements.boundary.addEventListener("DOMMouseScroll",scroll))}function _onZoom(ui){var self=this,transform=ui?ui.transform:Transform.parse(self.elements.preview),vpRect=ui?ui.viewportRect:self.elements.viewport.getBoundingClientRect(),origin=ui?ui.origin:new TransformOrigin(self.elements.preview);function applyCss(){var transCss={};transCss[CSS_TRANSFORM]=transform.toString(),transCss[CSS_TRANS_ORG]=origin.toString(),css(self.elements.preview,transCss)}if(self._currentZoom=ui?ui.value:self._currentZoom,transform.scale=self._currentZoom,self.elements.zoomer.setAttribute("aria-valuenow",self._currentZoom),applyCss(),self.options.enforceBoundary){var boundaries=_getVirtualBoundaries.call(self,vpRect),transBoundaries=boundaries.translate,oBoundaries=boundaries.origin;transform.x>=transBoundaries.maxX&&(origin.x=oBoundaries.minX,transform.x=transBoundaries.maxX),transform.x<=transBoundaries.minX&&(origin.x=oBoundaries.maxX,transform.x=transBoundaries.minX),transform.y>=transBoundaries.maxY&&(origin.y=oBoundaries.minY,transform.y=transBoundaries.maxY),transform.y<=transBoundaries.minY&&(origin.y=oBoundaries.maxY,transform.y=transBoundaries.minY)}applyCss(),_debouncedOverlay.call(self),_triggerUpdate.call(self)}function _getVirtualBoundaries(viewport){var self=this,scale=this._currentZoom,vpWidth=viewport.width,vpHeight=viewport.height,centerFromBoundaryX=this.elements.boundary.clientWidth/2,centerFromBoundaryY=this.elements.boundary.clientHeight/2,imgRect=this.elements.preview.getBoundingClientRect(),curImgWidth=imgRect.width,curImgHeight=imgRect.height,halfWidth=vpWidth/2,halfHeight=vpHeight/2,maxX=-1*(halfWidth/scale-centerFromBoundaryX),minX,maxY=-1*(halfHeight/scale-centerFromBoundaryY),minY,originMinX=1/scale*halfWidth,originMaxX,originMinY=1/scale*halfHeight,originMaxY;return{translate:{maxX:maxX,minX:maxX-(curImgWidth*(1/scale)-vpWidth*(1/scale)),maxY:maxY,minY:maxY-(curImgHeight*(1/scale)-vpHeight*(1/scale))},origin:{maxX:curImgWidth*(1/scale)-originMinX,minX:originMinX,maxY:curImgHeight*(1/scale)-originMinY,minY:originMinY}}}function _updateCenterPoint(rotate){var self=this,scale=this._currentZoom,data=this.elements.preview.getBoundingClientRect(),vpData=this.elements.viewport.getBoundingClientRect(),transform=Transform.parse(this.elements.preview.style[CSS_TRANSFORM]),pc=new TransformOrigin(this.elements.preview),top=vpData.top-data.top+vpData.height/2,left=vpData.left-data.left+vpData.width/2,center={},adj={};if(rotate){var cx=pc.x,cy=pc.y,tx=transform.x,ty=transform.y;center.y=cx,center.x=cy,transform.y=tx,transform.x=ty}else center.y=top/scale,center.x=left/scale,adj.y=(center.y-pc.y)*(1-scale),adj.x=(center.x-pc.x)*(1-scale),transform.x-=adj.x,transform.y-=adj.y;var newCss={};newCss[CSS_TRANS_ORG]=center.x+"px "+center.y+"px",newCss[CSS_TRANSFORM]=transform.toString(),css(this.elements.preview,newCss)}function _initDraggable(){var self=this,isDragging=!1,originalX,originalY,originalDistance,vpRect,transform;function assignTransformCoordinates(deltaX,deltaY){var imgRect=self.elements.preview.getBoundingClientRect(),top=transform.y+deltaY,left=transform.x+deltaX;self.options.enforceBoundary?(vpRect.top>imgRect.top+deltaY&&vpRect.bottom<imgRect.bottom+deltaY&&(transform.y=top),vpRect.left>imgRect.left+deltaX&&vpRect.right<imgRect.right+deltaX&&(transform.x=left)):(transform.y=top,transform.x=left)}function toggleGrabState(isDragging){self.elements.preview.setAttribute("aria-grabbed",isDragging),self.elements.boundary.setAttribute("aria-dropeffect",isDragging?"move":"none")}function keyDown(ev){var LEFT_ARROW=37,UP_ARROW=38,RIGHT_ARROW=39,DOWN_ARROW=40,zoom;if(!ev.shiftKey||38!==ev.keyCode&&40!==ev.keyCode){if(self.options.enableKeyMovement&&ev.keyCode>=37&&ev.keyCode<=40){ev.preventDefault();var movement=parseKeyDown(ev.keyCode);transform=Transform.parse(self.elements.preview),document.body.style[CSS_USERSELECT]="none",vpRect=self.elements.viewport.getBoundingClientRect(),keyMove(movement)}}else zoom=38===ev.keyCode?parseFloat(self.elements.zoomer.value)+parseFloat(self.elements.zoomer.step):parseFloat(self.elements.zoomer.value)-parseFloat(self.elements.zoomer.step),self.setZoom(zoom);function parseKeyDown(key){switch(key){case 37:return[1,0];case 38:return[0,1];case 39:return[-1,0];case 40:return[0,-1]}}}function keyMove(movement){var deltaX,deltaY,newCss={};assignTransformCoordinates(movement[0],movement[1]),newCss[CSS_TRANSFORM]=transform.toString(),css(self.elements.preview,newCss),_updateOverlay.call(self),document.body.style[CSS_USERSELECT]="",_updateCenterPoint.call(self),_triggerUpdate.call(self),originalDistance=0}function mouseDown(ev){if((void 0===ev.button||0===ev.button)&&(ev.preventDefault(),!isDragging)){if(isDragging=!0,originalX=ev.pageX,originalY=ev.pageY,ev.touches){var touches=ev.touches[0];originalX=touches.pageX,originalY=touches.pageY}toggleGrabState(isDragging),transform=Transform.parse(self.elements.preview),window.addEventListener("mousemove",mouseMove),window.addEventListener("touchmove",mouseMove),window.addEventListener("mouseup",mouseUp),window.addEventListener("touchend",mouseUp),document.body.style[CSS_USERSELECT]="none",vpRect=self.elements.viewport.getBoundingClientRect()}}function mouseMove(ev){ev.preventDefault();var pageX=ev.pageX,pageY=ev.pageY;if(ev.touches){var touches=ev.touches[0];pageX=touches.pageX,pageY=touches.pageY}var deltaX=pageX-originalX,deltaY=pageY-originalY,newCss={};if("touchmove"===ev.type&&ev.touches.length>1){var touch1=ev.touches[0],touch2=ev.touches[1],dist=Math.sqrt((touch1.pageX-touch2.pageX)*(touch1.pageX-touch2.pageX)+(touch1.pageY-touch2.pageY)*(touch1.pageY-touch2.pageY));originalDistance||(originalDistance=dist/self._currentZoom);var scale=dist/originalDistance;return _setZoomerVal.call(self,scale),void dispatchChange(self.elements.zoomer)}assignTransformCoordinates(deltaX,deltaY),newCss[CSS_TRANSFORM]=transform.toString(),css(self.elements.preview,newCss),_updateOverlay.call(self),originalY=pageY,originalX=pageX}function mouseUp(){toggleGrabState(isDragging=!1),window.removeEventListener("mousemove",mouseMove),window.removeEventListener("touchmove",mouseMove),window.removeEventListener("mouseup",mouseUp),window.removeEventListener("touchend",mouseUp),document.body.style[CSS_USERSELECT]="",_updateCenterPoint.call(self),_triggerUpdate.call(self),originalDistance=0}self.elements.overlay.addEventListener("mousedown",mouseDown),self.elements.viewport.addEventListener("keydown",keyDown),self.elements.overlay.addEventListener("touchstart",mouseDown)}function _updateOverlay(){if(this.elements){var self=this,boundRect=this.elements.boundary.getBoundingClientRect(),imgData=this.elements.preview.getBoundingClientRect();css(this.elements.overlay,{width:imgData.width+"px",height:imgData.height+"px",top:imgData.top-boundRect.top+"px",left:imgData.left-boundRect.left+"px"})}}TransformOrigin.prototype.toString=function(){return this.x+"px "+this.y+"px"};var _debouncedOverlay=debounce(_updateOverlay,500);function _triggerUpdate(){var self=this,data=this.get(),ev;_isVisible.call(this)&&(this.options.update.call(this,data),this.$&&"undefined"==typeof Prototype?this.$(this.element).trigger("update.croppie",data):(window.CustomEvent?ev=new CustomEvent("update",{detail:data}):(ev=document.createEvent("CustomEvent")).initCustomEvent("update",!0,!0,data),this.element.dispatchEvent(ev)))}function _isVisible(){return this.elements.preview.offsetHeight>0&&this.elements.preview.offsetWidth>0}function _updatePropertiesFromImage(){var self=this,initialZoom=1,cssReset={},img=this.elements.preview,imgData,transformReset=new Transform(0,0,1),originReset=new TransformOrigin,isVisible;_isVisible.call(this)&&!this.data.bound&&(this.data.bound=!0,cssReset[CSS_TRANSFORM]=transformReset.toString(),cssReset[CSS_TRANS_ORG]=originReset.toString(),cssReset.opacity=1,css(img,cssReset),imgData=this.elements.preview.getBoundingClientRect(),this._originalImageWidth=imgData.width,this._originalImageHeight=imgData.height,this.data.orientation=getExifOrientation(this.elements.img),this.options.enableZoom?_updateZoomLimits.call(this,!0):this._currentZoom=1,transformReset.scale=this._currentZoom,cssReset[CSS_TRANSFORM]=transformReset.toString(),css(img,cssReset),this.data.points.length?_bindPoints.call(this,this.data.points):_centerImage.call(this),_updateCenterPoint.call(this),_updateOverlay.call(this))}function _updateZoomLimits(initial){var self=this,minZoom=Math.max(this.options.minZoom,0)||0,maxZoom=this.options.maxZoom||1.5,initialZoom,defaultInitialZoom,zoomer=this.elements.zoomer,scale=parseFloat(zoomer.value),boundaryData=this.elements.boundary.getBoundingClientRect(),imgData=naturalImageDimensions(this.elements.img,this.data.orientation),vpData=this.elements.viewport.getBoundingClientRect(),minW,minH;this.options.enforceBoundary&&(minW=vpData.width/imgData.width,minH=vpData.height/imgData.height,minZoom=Math.max(minW,minH)),minZoom>=maxZoom&&(maxZoom=minZoom+1),zoomer.min=fix(minZoom,4),zoomer.max=fix(maxZoom,4),!initial&&(scale<zoomer.min||scale>zoomer.max)?_setZoomerVal.call(this,scale<zoomer.min?zoomer.min:zoomer.max):initial&&(defaultInitialZoom=Math.max(boundaryData.width/imgData.width,boundaryData.height/imgData.height),initialZoom=null!==this.data.boundZoom?this.data.boundZoom:defaultInitialZoom,_setZoomerVal.call(this,initialZoom)),dispatchChange(zoomer)}function _bindPoints(points){if(4!==points.length)throw"Croppie - Invalid number of points supplied: "+points;var self=this,pointsWidth=points[2]-points[0],vpData=this.elements.viewport.getBoundingClientRect(),boundRect=this.elements.boundary.getBoundingClientRect(),vpOffset_left=vpData.left-boundRect.left,vpOffset_top=vpData.top-boundRect.top,scale=vpData.width/pointsWidth,originTop=points[1],originLeft=points[0],transformTop=-1*points[1]+vpOffset_top,transformLeft=-1*points[0]+vpOffset_left,newCss={};newCss[CSS_TRANS_ORG]=originLeft+"px "+originTop+"px",newCss[CSS_TRANSFORM]=new Transform(transformLeft,transformTop,scale).toString(),css(this.elements.preview,newCss),_setZoomerVal.call(this,scale),this._currentZoom=scale}function _centerImage(){var self=this,imgDim=this.elements.preview.getBoundingClientRect(),vpDim=this.elements.viewport.getBoundingClientRect(),boundDim=this.elements.boundary.getBoundingClientRect(),vpLeft=vpDim.left-boundDim.left,vpTop=vpDim.top-boundDim.top,w=vpLeft-(imgDim.width-vpDim.width)/2,h=vpTop-(imgDim.height-vpDim.height)/2,transform=new Transform(w,h,this._currentZoom);css(this.elements.preview,CSS_TRANSFORM,transform.toString())}function _transferImageToCanvas(customOrientation){var self=this,canvas=this.elements.canvas,img=this.elements.img,ctx,orientation;canvas.getContext("2d").clearRect(0,0,canvas.width,canvas.height),canvas.width=img.width,canvas.height=img.height,drawCanvas(canvas,img,this.options.enableOrientation&&customOrientation||getExifOrientation(img))}function _getCanvas(data){var self=this,points=data.points,left=num(points[0]),top=num(points[1]),right,bottom,width=num(points[2])-left,height=num(points[3])-top,circle=data.circle,canvas=document.createElement("canvas"),ctx=canvas.getContext("2d"),startX=0,startY=0,canvasWidth=data.outputWidth||width,canvasHeight=data.outputHeight||height;canvas.width=canvasWidth,canvas.height=canvasHeight,data.backgroundColor&&(ctx.fillStyle=data.backgroundColor,ctx.fillRect(0,0,canvasWidth,canvasHeight));var sx=left,sy=top,sWidth=width,sHeight=height,dx=0,dy=0,dWidth=canvasWidth,dHeight=canvasHeight;return left<0&&(sx=0,dx=Math.abs(left)/width*canvasWidth),sWidth+sx>this._originalImageWidth&&(dWidth=(sWidth=this._originalImageWidth-sx)/width*canvasWidth),top<0&&(sy=0,dy=Math.abs(top)/height*canvasHeight),sHeight+sy>this._originalImageHeight&&(dHeight=(sHeight=this._originalImageHeight-sy)/height*canvasHeight),ctx.drawImage(this.elements.preview,sx,sy,sWidth,sHeight,dx,dy,dWidth,dHeight),circle&&(ctx.fillStyle="#fff",ctx.globalCompositeOperation="destination-in",ctx.beginPath(),ctx.arc(canvas.width/2,canvas.height/2,canvas.width/2,0,2*Math.PI,!0),ctx.closePath(),ctx.fill()),canvas}function _getHtmlResult(data){var points=data.points,div=document.createElement("div"),img=document.createElement("img"),width=points[2]-points[0],height=points[3]-points[1];return addClass(div,"croppie-result"),div.appendChild(img),css(img,{left:-1*points[0]+"px",top:-1*points[1]+"px"}),img.src=data.url,css(div,{width:width+"px",height:height+"px"}),div}function _getBase64Result(data){return _getCanvas.call(this,data).toDataURL(data.format,data.quality)}function _getBlobResult(data){var self=this;return new Promise((function(resolve){_getCanvas.call(self,data).toBlob((function(blob){resolve(blob)}),data.format,data.quality)}))}function _replaceImage(img){this.elements.img.parentNode&&(Array.prototype.forEach.call(this.elements.img.classList,(function(c){img.classList.add(c)})),this.elements.img.parentNode.replaceChild(img,this.elements.img),this.elements.preview=img),this.elements.img=img}function _bind(options,cb){var self=this,url,points=[],zoom=null,hasExif=_hasExif.call(self);if("string"==typeof options)url=options,options={};else if(Array.isArray(options))points=options.slice();else{if(void 0===options&&self.data.url)return _updatePropertiesFromImage.call(self),_triggerUpdate.call(self),null;url=options.url,points=options.points||[],zoom=void 0===options.zoom?null:options.zoom}return self.data.bound=!1,self.data.url=url||self.data.url,self.data.boundZoom=zoom,loadImage(url,hasExif).then((function(img){if(_replaceImage.call(self,img),points.length)self.options.relative&&(points=[points[0]*img.naturalWidth/100,points[1]*img.naturalHeight/100,points[2]*img.naturalWidth/100,points[3]*img.naturalHeight/100]);else{var natDim=naturalImageDimensions(img),rect=self.elements.viewport.getBoundingClientRect(),aspectRatio=rect.width/rect.height,imgAspectRatio,width,height;natDim.width/natDim.height>aspectRatio?width=(height=natDim.height)*aspectRatio:(width=natDim.width,height=natDim.height/aspectRatio);var x0=(natDim.width-width)/2,y0=(natDim.height-height)/2,x1=x0+width,y1=y0+height;self.data.points=[x0,y0,x1,y1]}self.data.points=points.map((function(p){return parseFloat(p)})),self.options.useCanvas&&_transferImageToCanvas.call(self,options.orientation),_updatePropertiesFromImage.call(self),_triggerUpdate.call(self),cb&&cb()}))}function fix(v,decimalPoints){return parseFloat(v).toFixed(decimalPoints||0)}function _get(){var self=this,imgData=this.elements.preview.getBoundingClientRect(),vpData=this.elements.viewport.getBoundingClientRect(),x1=vpData.left-imgData.left,y1=vpData.top-imgData.top,widthDiff=(vpData.width-this.elements.viewport.offsetWidth)/2,heightDiff=(vpData.height-this.elements.viewport.offsetHeight)/2,x2=x1+this.elements.viewport.offsetWidth+widthDiff,y2=y1+this.elements.viewport.offsetHeight+heightDiff,scale=this._currentZoom;(scale===1/0||isNaN(scale))&&(scale=1);var max=this.options.enforceBoundary?0:Number.NEGATIVE_INFINITY;return x1=Math.max(max,x1/scale),y1=Math.max(max,y1/scale),x2=Math.max(max,x2/scale),y2=Math.max(max,y2/scale),{points:[fix(x1),fix(y1),fix(x2),fix(y2)],zoom:scale,orientation:this.data.orientation}}var RESULT_DEFAULTS={type:"canvas",format:"png",quality:1},RESULT_FORMATS=["jpeg","webp","png"];function _result(options){var self=this,data=_get.call(self),opts=deepExtend(clone(RESULT_DEFAULTS),clone(options)),resultType="string"==typeof options?options:opts.type||"base64",size=opts.size||"viewport",format=opts.format,quality=opts.quality,backgroundColor=opts.backgroundColor,circle="boolean"==typeof opts.circle?opts.circle:"circle"===self.options.viewport.type,vpRect=self.elements.viewport.getBoundingClientRect(),ratio=vpRect.width/vpRect.height,prom;return"viewport"===size?(data.outputWidth=vpRect.width,data.outputHeight=vpRect.height):"object"==typeof size&&(size.width&&size.height?(data.outputWidth=size.width,data.outputHeight=size.height):size.width?(data.outputWidth=size.width,data.outputHeight=size.width/ratio):size.height&&(data.outputWidth=size.height*ratio,data.outputHeight=size.height)),RESULT_FORMATS.indexOf(format)>-1&&(data.format="image/"+format,data.quality=quality),data.circle=circle,data.url=self.data.url,data.backgroundColor=backgroundColor,prom=new Promise((function(resolve){switch(resultType.toLowerCase()){case"rawcanvas":resolve(_getCanvas.call(self,data));break;case"canvas":case"base64":resolve(_getBase64Result.call(self,data));break;case"blob":_getBlobResult.call(self,data).then(resolve);break;default:resolve(_getHtmlResult.call(self,data))}}))}function _refresh(){_updatePropertiesFromImage.call(this)}function _rotate(deg){if(!this.options.useCanvas||!this.options.enableOrientation)throw"Croppie: Cannot rotate without enableOrientation && EXIF.js included";var self=this,canvas=this.elements.canvas;this.data.orientation=getExifOffset(this.data.orientation,deg),drawCanvas(canvas,this.elements.img,this.data.orientation),_updateCenterPoint.call(this,!0),_updateZoomLimits.call(this)}function _destroy(){var self=this;this.element.removeChild(this.elements.boundary),removeClass(this.element,"croppie-container"),this.options.enableZoom&&this.element.removeChild(this.elements.zoomerWrap),delete this.elements}if(window.jQuery){var $=window.jQuery;$.fn.croppie=function(opts){var ot=typeof opts;if("string"===ot){var args=Array.prototype.slice.call(arguments,1),singleInst=$(this).data("croppie");return"get"===opts?singleInst.get():"result"===opts?singleInst.result.apply(singleInst,args):"bind"===opts?singleInst.bind.apply(singleInst,args):this.each((function(){var i=$(this).data("croppie");if(i){var method=i[opts];if(!$.isFunction(method))throw"Croppie "+opts+" method not found";method.apply(i,args),"destroy"===opts&&$(this).removeData("croppie")}}))}return this.each((function(){var i=new Croppie(this,opts);i.$=$,$(this).data("croppie",i)}))}}function Croppie(element,opts){if(element.className.indexOf("croppie-container")>-1)throw new Error("Croppie: Can't initialize croppie more than once");if(this.element=element,this.options=deepExtend(clone(Croppie.defaults),opts),"img"===this.element.tagName.toLowerCase()){var origImage=this.element;addClass(origImage,"cr-original-image"),setAttributes(origImage,{"aria-hidden":"true",alt:""});var replacementDiv=document.createElement("div");this.element.parentNode.appendChild(replacementDiv),replacementDiv.appendChild(origImage),this.element=replacementDiv,this.options.url=this.options.url||origImage.src}if(_create.call(this),this.options.url){var bindOpts={url:this.options.url,points:this.options.points};delete this.options.url,delete this.options.points,_bind.call(this,bindOpts)}}return Croppie.defaults={viewport:{width:100,height:100,type:"square"},boundary:{},orientationControls:{enabled:!0,leftClass:"",rightClass:""},resizeControls:{width:!0,height:!0},customClass:"",showZoomer:!0,enableZoom:!0,enableResize:!1,mouseWheelZoom:!0,enableExif:!1,enforceBoundary:!0,enableOrientation:!1,enableKeyMovement:!0,update:function(){}},Croppie.globals={translate:"translate3d"},deepExtend(Croppie.prototype,{bind:function(options,cb){return _bind.call(this,options,cb)},get:function(){var data=_get.call(this),points=data.points;return this.options.relative&&(points[0]/=this.elements.img.naturalWidth/100,points[1]/=this.elements.img.naturalHeight/100,points[2]/=this.elements.img.naturalWidth/100,points[3]/=this.elements.img.naturalHeight/100),data},result:function(type){return _result.call(this,type)},refresh:function(){return _refresh.call(this)},setZoom:function(v){_setZoomerVal.call(this,v),dispatchChange(this.elements.zoomer)},rotate:function(deg){_rotate.call(this,deg)},destroy:function(){return _destroy.call(this)}}),Croppie}));
Coded With 💗 by
0x6ick Mod By V1rus_Alfa