UNPKG

jab-image-editor

Version:
15 lines 282 kB
/*! * jab-image-editor.min.js * @version 1.0.5 * @author Notin <jjabenza81@gmail.com> * @license MIT */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("tui-code-snippet"),require("fabric").fabric,require("tui-color-picker")):"function"==typeof define&&define.amd?define(["tui-code-snippet","fabric","tui-color-picker"],t):"object"==typeof exports?exports.ImageEditor=t(require("tui-code-snippet"),require("fabric").fabric,require("tui-color-picker")):(e.tui=e.tui||{},e.tui.ImageEditor=t(e.tui&&e.tui.util,e.fabric,e.tui&&e.tui.colorPicker))}(window,function(n,i,o){return s={},r.m=a=[function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultFilterRangeValus=t.defaultTextRangeValus=t.defaultShapeStrokeValus=t.defaultDrawRangeValus=t.defaultRotateRangeValus=t.defaultIconPath=t.rejectMessages=t.fObjectOptions=t.keyCodes=t.drawingModes=t.eventNames=t.commandNames=t.CROPZONE_DEFAULT_OPTIONS=t.SHAPE_DEFAULT_OPTIONS=t.componentNames=t.SHAPE_TYPE=t.SHAPE_FILL_TYPE=t.FILTER_NAME_VALUE_MAP=t.HELP_MENUS=void 0;var i=n(1);t.HELP_MENUS=["undo","redo","reset","delete","deleteAll"],t.FILTER_NAME_VALUE_MAP={blur:"blur",blocksize:"pixelate"},t.SHAPE_FILL_TYPE={FILTER:"filter",COLOR:"color"},t.SHAPE_TYPE=["rect","circle","triangle"],t.componentNames=(0,i.keyMirror)("IMAGE_LOADER","CROPPER","FLIP","ROTATION","FREE_DRAWING","LINE","TEXT","ICON","FILTER","SHAPE"),t.SHAPE_DEFAULT_OPTIONS={lockSkewingX:!0,lockSkewingY:!0,lockUniScaling:!1,bringForward:!0,isRegular:!1},t.CROPZONE_DEFAULT_OPTIONS={hasRotatingPoint:!1,hasBorders:!1,lockScalingFlip:!0,lockRotation:!0,lockSkewingX:!0,lockSkewingY:!0},t.commandNames={CLEAR_OBJECTS:"clearObjects",LOAD_IMAGE:"loadImage",FLIP_IMAGE:"flip",ROTATE_IMAGE:"rotate",ADD_OBJECT:"addObject",REMOVE_OBJECT:"removeObject",APPLY_FILTER:"applyFilter",REMOVE_FILTER:"removeFilter",ADD_ICON:"addIcon",CHANGE_ICON_COLOR:"changeIconColor",ADD_SHAPE:"addShape",CHANGE_SHAPE:"changeShape",ADD_TEXT:"addText",CHANGE_TEXT:"changeText",CHANGE_TEXT_STYLE:"changeTextStyle",ADD_IMAGE_OBJECT:"addImageObject",RESIZE_CANVAS_DIMENSION:"resizeCanvasDimension",SET_OBJECT_PROPERTIES:"setObjectProperties",SET_OBJECT_POSITION:"setObjectPosition"},t.eventNames={OBJECT_ACTIVATED:"objectActivated",OBJECT_MOVED:"objectMoved",OBJECT_SCALED:"objectScaled",OBJECT_CREATED:"objectCreated",OBJECT_ROTATED:"objectRotated",OBJECT_ADDED:"objectAdded",TEXT_EDITING:"textEditing",TEXT_CHANGED:"textChanged",ICON_CREATE_RESIZE:"iconCreateResize",ICON_CREATE_END:"iconCreateEnd",ADD_TEXT:"addText",ADD_OBJECT:"addObject",ADD_OBJECT_AFTER:"addObjectAfter",MOUSE_DOWN:"mousedown",MOUSE_UP:"mouseup",MOUSE_MOVE:"mousemove",TOOL_SELECTED:"toolSelected",REDO_STACK_CHANGED:"redoStackChanged",UNDO_STACK_CHANGED:"undoStackChanged",SELECTION_CLEARED:"selectionCleared",SELECTION_CREATED:"selectionCreated"},t.drawingModes=(0,i.keyMirror)("NORMAL","CROPPER","FREE_DRAWING","LINE_DRAWING","TEXT","SHAPE"),t.keyCodes={Z:90,Y:89,C:67,V:86,SHIFT:16,BACKSPACE:8,DEL:46,ARROW_DOWN:40,ARROW_UP:38},t.fObjectOptions={SELECTION_STYLE:{borderColor:"red",cornerColor:"green",cornerSize:10,originX:"center",originY:"center",transparentCorners:!1}},t.rejectMessages={addedObject:"The object is already added.",flip:"The flipX and flipY setting values are not changed.",invalidDrawingMode:"This operation is not supported in the drawing mode.",invalidParameters:"Invalid parameters.",isLock:"The executing command state is locked.",loadImage:"The background image is empty.",loadingImageFailed:"Invalid image loaded.",noActiveObject:"There is no active object.",noObject:"The object is not in canvas.",redo:"The promise of redo command is reject.",rotation:"The current angle is same the old angle.",undo:"The promise of undo command is reject.",unsupportedOperation:"Unsupported operation.",unsupportedType:"Unsupported object type."},t.defaultIconPath={"icon-arrow":"M40 12V0l24 24-24 24V36H0V12h40z","icon-arrow-2":"M49,32 H3 V22 h46 l-18,-18 h12 l23,23 L43,50 h-12 l18,-18 z ","icon-arrow-3":"M43.349998,27 L17.354,53 H1.949999 l25.996,-26 L1.949999,1 h15.404 L43.349998,27 z ","icon-star":"M35,54.557999 l-19.912001,10.468 l3.804,-22.172001 l-16.108,-15.7 l22.26,-3.236 L35,3.746 l9.956,20.172001 l22.26,3.236 l-16.108,15.7 l3.804,22.172001 z ","icon-star-2":"M17,31.212 l-7.194,4.08 l-4.728,-6.83 l-8.234,0.524 l-1.328,-8.226 l-7.644,-3.14 l2.338,-7.992 l-5.54,-6.18 l5.54,-6.176 l-2.338,-7.994 l7.644,-3.138 l1.328,-8.226 l8.234,0.522 l4.728,-6.83 L17,-24.312 l7.194,-4.08 l4.728,6.83 l8.234,-0.522 l1.328,8.226 l7.644,3.14 l-2.338,7.992 l5.54,6.178 l-5.54,6.178 l2.338,7.992 l-7.644,3.14 l-1.328,8.226 l-8.234,-0.524 l-4.728,6.83 z ","icon-polygon":"M3,31 L19,3 h32 l16,28 l-16,28 H19 z ","icon-location":"M24 62C8 45.503 0 32.837 0 24 0 10.745 10.745 0 24 0s24 10.745 24 24c0 8.837-8 21.503-24 38zm0-28c5.523 0 10-4.477 10-10s-4.477-10-10-10-10 4.477-10 10 4.477 10 10 10z","icon-heart":"M49.994999,91.349998 l-6.96,-6.333 C18.324001,62.606995 2.01,47.829002 2.01,29.690998 C2.01,14.912998 13.619999,3.299999 28.401001,3.299999 c8.349,0 16.362,5.859 21.594,12 c5.229,-6.141 13.242001,-12 21.591,-12 c14.778,0 26.390999,11.61 26.390999,26.390999 c0,18.138 -16.314001,32.916 -41.025002,55.374001 l-6.96,6.285 z ","icon-bubble":"M44 48L34 58V48H12C5.373 48 0 42.627 0 36V12C0 5.373 5.373 0 12 0h40c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12h-8z"},t.defaultRotateRangeValus={realTimeEvent:!0,min:-360,max:360,value:0},t.defaultDrawRangeValus={min:5,max:30,value:12},t.defaultShapeStrokeValus={realTimeEvent:!0,min:2,max:300,value:3},t.defaultTextRangeValus={realTimeEvent:!0,min:10,max:100,value:50},t.defaultFilterRangeValus={tintOpacityRange:{realTimeEvent:!0,min:0,max:1,value:.7,useDecimal:!0},removewhiteDistanceRange:{realTimeEvent:!0,min:0,max:1,value:.2,useDecimal:!0},brightnessRange:{realTimeEvent:!0,min:-1,max:1,value:0,useDecimal:!0},noiseRange:{realTimeEvent:!0,min:0,max:1e3,value:100},pixelateRange:{realTimeEvent:!0,min:2,max:20,value:4},colorfilterThresholeRange:{realTimeEvent:!0,min:0,max:1,value:.2,useDecimal:!0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Promise=void 0,t.clamp=function(e,t,n){var i=void 0;n<t&&(i=t,t=n,n=i);return d(t,u(e,n))},t.keyMirror=function(){for(var t={},e=arguments.length,n=Array(e),i=0;i<e;i++)n[i]=arguments[i];return(0,o.forEach)(n,function(e){t[e]=e}),t},t.makeStyleText=function(e){var n="";return(0,o.forEach)(e,function(e,t){n+=t+": "+e+";"}),n},t.getProperties=function(e,t){var n={},i=t.length,o=0,r=void 0;for(o=0;o<i;o+=1)r=t[o],n[r]=e[r];return n},t.toInteger=function(e){return parseInt(e,10)},t.toCamelCase=function(e){return e.replace(/-([a-z])/g,function(e,t){return t.toUpperCase()})},t.isSupportFileApi=function(){return!!(window.File&&window.FileList&&window.FileReader)},t.getRgb=function(e,t){4===e.length&&(e=""+e+e.slice(1,4));var n=parseInt(e.slice(1,3),16),i=parseInt(e.slice(3,5),16),o=parseInt(e.slice(5,7),16);return"rgba("+n+", "+i+", "+o+", "+(t||1)+")"},t.sendHostName=function(){if(h)return;h=!0,(0,o.sendHostname)("image-editor","UA-129999381-1")},t.styleLoad=function(e,t){var n=document.getElementsByTagName("head")[0],i=document.createElement("link"),o=encodeURIComponent(e);t&&(i.id=t);i.setAttribute("rel","stylesheet"),i.setAttribute("type","text/css"),i.setAttribute("href","data:text/css;charset=UTF-8,"+o),n.appendChild(i)},t.getSelector=function(t){return function(e){return t.querySelector(e)}},t.base64ToBlob=function(e){var n="",t=void 0,i=void 0,o=void 0;t=e.replace(/data:(image\/.+);base64,/,function(e,t){return n=t,""});var r=(t=atob(t)).length;for(i=new Uint8Array(r),o=0;o<r;o+=1)i[o]=t.charCodeAt(o);return new Blob([i],{type:n})},t.fixFloatingPoint=function(e){return Number(e.toFixed(l))},t.assignmentForDestroy=function(n){(0,o.forEach)(n,function(e,t){n[t]=null})},t.cls=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"",t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"";return"."!==e.charAt(0)?""+c+t+e:"."+c+t+e.slice(1)},t.changeOrigin=function(e,t){var n=t.originX,i=t.originY,o=e.getPointByOrigin(n,i),r=o.x,a=o.y;e.set({left:r,top:a,originX:n,originY:i}),e.setCoords()},t.flipObject=function(t){var n={};return Object.keys(t).forEach(function(e){n[t[e]]=e}),n},t.setCustomProperty=function(e,t){e.customProps=e.customProps||{},(0,o.extend)(e.customProps,t)},t.getCustomProperty=function(t,e){var n={};(0,o.isString)(e)&&(e=[e]);return(0,o.forEach)(e,function(e){n[e]=t.customProps[e]}),n},t.capitalizeString=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},t.includes=function(e,t){return 0<=e.indexOf(t)},t.getFillTypeFromOption=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return(0,o.pick)(e,"type")||s.SHAPE_FILL_TYPE.COLOR},t.getFillTypeFromObject=function(e){var t=e.fill;if((void 0===t?{}:t).source)return s.SHAPE_FILL_TYPE.FILTER;return s.SHAPE_FILL_TYPE.COLOR},t.isShape=function(e){return 0<=(0,o.inArray)(e.get("type"),s.SHAPE_TYPE)};var i,o=n(2),r=n(72),a=(i=r)&&i.__esModule?i:{default:i},s=n(0);var l=2,c="tui-image-editor-",u=Math.min,d=Math.max,h=!1;t.Promise=a.default},function(e,t){e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o=n(113),r=(i=o)&&i.__esModule?i:{default:i};var a={};t.default={create:function(e){var t=a[e];if(t){for(var n=arguments.length,i=Array(1<n?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return new r.default(t,i)}return null},register:function(e){a[e.name]=e}}},function(n,e,t){(function(e){function t(e){return e&&e.Math==Math&&e}n.exports=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof e&&e)||Function("return this")()}).call(this,t(78))},function(e,t){e.exports=i},function(e,t,n){var i=n(4),o=n(47),r=n(12),a=n(48),s=n(53),l=n(85),c=o("wks"),u=i.Symbol,d=l?u:u&&u.withoutSetter||a;e.exports=function(e){return r(c,e)||(s&&r(u,e)?c[e]=u[e]:c[e]=d("Symbol."+e)),c[e]}},function(e,t,n){"use strict";function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}Object.defineProperty(t,"__esModule",{value:!0});var o=(function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}(r,[{key:"fire",value:function(){for(var e=this.graphics,t=arguments.length,n=Array(t),i=0;i<t;i++)n[i]=arguments[i];return this.graphics.fire.apply(e,n)}},{key:"setCanvasImage",value:function(e,t){this.graphics.setCanvasImage(e,t)}},{key:"getCanvasElement",value:function(){return this.graphics.getCanvasElement()}},{key:"getCanvas",value:function(){return this.graphics.getCanvas()}},{key:"getCanvasImage",value:function(){return this.graphics.getCanvasImage()}},{key:"getImageName",value:function(){return this.graphics.getImageName()}},{key:"getEditor",value:function(){return this.graphics.getEditor()}},{key:"getName",value:function(){return this.name}},{key:"setImageProperties",value:function(e,t){this.graphics.setImageProperties(e,t)}},{key:"setCanvasCssDimension",value:function(e){this.graphics.setCanvasCssDimension(e)}},{key:"setCanvasBackstoreDimension",value:function(e){this.graphics.setCanvasBackstoreDimension(e)}},{key:"adjustCanvasDimension",value:function(){this.graphics.adjustCanvasDimension()}}]),r);function r(e,t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r),this.name=e,this.graphics=t}t.default=o},function(e,t,n){var i=n(13),o=n(19),r=n(27);e.exports=i?function(e,t,n){return o.f(e,t,r(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){"use strict";function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}Object.defineProperty(t,"__esModule",{value:!0});var o=(function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}(l,[{key:"selector",value:function(e){return this.subMenuElement.querySelector(e)}},{key:"colorPickerChangeShow",value:function(t){this.colorPickerControls.forEach(function(e){t!==e&&e.hide()})}},{key:"getButtonType",value:function(e,t){return e.className.match(RegExp("("+t.join("|")+")"))[0]}},{key:"changeClass",value:function(e,t,n){e.classList.remove(t),e.classList.add(n)}},{key:"changeStandbyMode",value:function(){}},{key:"changeStartMode",value:function(){}},{key:"_makeSubMenuElement",value:function(e){var t=e.locale,n=e.name,i=e.iconStyle,o=e.makeSvgIcon,r=e.templateHtml,a=document.createElement("div");a.className="tui-image-editor-menu-"+n,a.innerHTML=r({locale:t,iconStyle:i,makeSvgIcon:o}),this.subMenuElement.appendChild(a)}}]),l);function l(e,t){var n=t.locale,i=t.name,o=t.makeSvgIcon,r=t.menuBarPosition,a=t.templateHtml,s=t.usageStatistics;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),this.subMenuElement=e,this.menuBarPosition=r,this.toggleDirection="top"===r?"down":"up",this.colorPickerControls=[],this.usageStatistics=s,this.eventHandler={},this._makeSubMenuElement({locale:n,name:i,makeSvgIcon:o,templateHtml:a})}t.default=o},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var i=n(14);e.exports=function(e){if(!i(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var i=n(10);e.exports=!i(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";function m(i){function e(e,t,n){if(this instanceof i){switch(arguments.length){case 0:return new i;case 1:return new i(e);case 2:return new i(e,t)}return new i(e,t,n)}return i.apply(this,arguments)}return e.prototype=i.prototype,e}var b=n(4),y=n(50).f,_=n(51),k=n(37),E=n(38),w=n(8),O=n(12);e.exports=function(e,t){var n,i,o,r,a,s,l,c,u=e.target,d=e.global,h=e.stat,f=e.proto,v=d?b:h?b[u]:(b[u]||{}).prototype,p=d?k:k[u]||(k[u]={}),g=p.prototype;for(o in t)n=!_(d?o:u+(h?".":"#")+o,e.forced)&&v&&O(v,o),a=p[o],n&&(s=e.noTargetGet?(c=y(v,o))&&c.value:v[o]),r=n&&s?s:t[o],n&&typeof a==typeof r||(l=e.bind&&n?E(r,b):e.wrap&&n?m(r):f&&"function"==typeof r?E(Function.call,r):r,(e.sham||r&&r.sham||a&&a.sham)&&w(l,"sham",!0),p[o]=l,f&&(O(k,i=u+"Prototype")||w(k,i,{}),k[i][o]=r,e.real&&g&&!g[o]&&w(g,o,r)))}},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){function i(e){return"function"==typeof e?e:void 0}var o=n(37),r=n(4);e.exports=function(e,t){return arguments.length<2?i(o[e])||i(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t){e.exports={}},function(e,t,n){var i=n(13),o=n(45),r=n(11),a=n(46),s=Object.defineProperty;t.f=i?s:function(e,t,n){if(r(e),t=a(t,!0),r(n),o)try{return s(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},function(e,t){e.exports=!0},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){"use strict";function i(e){var n,i;this.promise=new e(function(e,t){if(void 0!==n||void 0!==i)throw TypeError("Bad Promise constructor");n=e,i=t}),this.resolve=o(n),this.reject=o(i)}var o=n(16);e.exports.f=function(e){return new i(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e};function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var r=s(n(2)),a=s(n(122));function s(e){return e&&e.__esModule?e:{default:e}}var l=["#000000","#2a2a2a","#545454","#7e7e7e","#a8a8a8","#d2d2d2","#ffffff","","#ff4040","#ff6518","#ffbb3b","#03bd9e","#00a9ff","#515ce6","#9e5fff","#ff5583"],c=(i(u,[{key:"destroy",value:function(){var n=this;this._removeEvent(),this.picker.destroy(),this.colorpickerElement.innerHTML="",r.default.forEach(this,function(e,t){n[t]=null})}},{key:"_changeColorElement",value:function(e){e?(this.colorElement.classList.remove("transparent"),this.colorElement.style.backgroundColor=e):(this.colorElement.style.backgroundColor="#fff",this.colorElement.classList.add("transparent"))}},{key:"_makePickerButtonElement",value:function(e){this.colorpickerElement.classList.add("tui-image-editor-button"),this.colorElement=document.createElement("div"),this.colorElement.className="color-picker-value",e?this.colorElement.style.backgroundColor=e:this.colorElement.classList.add("transparent")}},{key:"_makePickerLayerElement",value:function(e,t){var n=document.createElement("label"),i=document.createElement("div");this.pickerControl=document.createElement("div"),this.pickerControl.className="color-picker-control",this.pickerElement=document.createElement("div"),this.pickerElement.className="color-picker",n.innerHTML=t,i.className="triangle",this.pickerControl.appendChild(this.pickerElement),this.pickerControl.appendChild(i),e.appendChild(this.pickerControl),e.appendChild(this.colorElement),e.appendChild(n)}},{key:"_addEvent",value:function(){var t=this;this.picker.on("selectColor",function(e){t._changeColorElement(e.color),t._color=e.color,t.fire("change",e.color)}),this.eventHandler={pickerToggle:this._pickerToggleEventHandler.bind(this),pickerHide:function(){return t.hide()}},this.colorpickerElement.addEventListener("click",this.eventHandler.pickerToggle),document.body.addEventListener("click",this.eventHandler.pickerHide)}},{key:"_removeEvent",value:function(){this.colorpickerElement.removeEventListener("click",this.eventHandler.pickerToggle),document.body.removeEventListener("click",this.eventHandler.pickerHide),this.picker.off()}},{key:"_pickerToggleEventHandler",value:function(e){var t=e.target,n=t&&this._isElementInColorPickerControl(t);(!n||n&&this._isPaletteButton(t))&&(this._show=!this._show,this.pickerControl.style.display=this._show?"block":"none",this._setPickerControlPosition(),this.fire("changeShow",this)),e.stopPropagation()}},{key:"_isPaletteButton",value:function(e){return"tui-colorpicker-palette-button"===e.className}},{key:"_isElementInColorPickerControl",value:function(e){for(var t=e;t!==document.body&&t;){if(t===this.pickerControl)return!0;t=t.parentNode}return!1}},{key:"hide",value:function(){this._show=!1,this.pickerControl.style.display="none"}},{key:"_setPickerControlPosition",value:function(){var e=this.pickerControl.style,t=this._colorpickerElement.clientWidth/2+2,n=this.pickerControl.offsetWidth/2-t,i=-1*(this.pickerControl.offsetHeight+10);"down"===this._toggleDirection&&(i=30),e.top=i+"px",e.left="-"+n+"px"}},{key:"color",get:function(){return this._color},set:function(e){this._color=e,this._changeColorElement(e)}}]),u);function u(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"#7e7e7e",n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"up",i=arguments[3];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u),this.colorpickerElement=e,this.usageStatistics=i,this._show=!1,this._colorpickerElement=e,this._toggleDirection=n,this._makePickerButtonElement(t),this._makePickerLayerElement(e,e.getAttribute("title")),this._color=t,this.picker=a.default.create({container:this.pickerElement,preset:l,color:t,usageStatistics:this.usageStatistics}),this._addEvent()}r.default.CustomEvents.mixin(c),t.default=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e};function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var r,a=n(2),s=(r=a)&&r.__esModule?r:{default:r},l=n(1),c=n(0);var u=/(-?)([0-9]*)[^0-9]*([0-9]*)/g,d=(i(h,[{key:"destroy",value:function(){var n=this;this._removeClickEvent(),this._removeDragEvent(),this._removeInputEvent(),this.rangeElement.innerHTML="",s.default.forEach(this,function(e,t){n[t]=null})}},{key:"trigger",value:function(e){this.fire(e,this._value)}},{key:"_getRangeWidth",value:function(){function e(e){return(0,l.toInteger)(window.getComputedStyle(e,null).width)}return e(this.rangeElement)-e(this.pointer)}},{key:"_drawRangeElement",value:function(){this.rangeElement.classList.add("tui-image-editor-range"),this.bar=document.createElement("div"),this.bar.className="tui-image-editor-virtual-range-bar",this.subbar=document.createElement("div"),this.subbar.className="tui-image-editor-virtual-range-subbar",this.pointer=document.createElement("div"),this.pointer.className="tui-image-editor-virtual-range-pointer",this.bar.appendChild(this.subbar),this.bar.appendChild(this.pointer),this.rangeElement.appendChild(this.bar)}},{key:"_addInputEvent",value:function(){this.rangeInputElement&&(this.rangeInputElement.addEventListener("keydown",this.eventHandler.changeInputWithArrow),this.rangeInputElement.addEventListener("keyup",this.eventHandler.changeInput),this.rangeInputElement.addEventListener("blur",this.eventHandler.changeInputFinally))}},{key:"_removeInputEvent",value:function(){this.rangeInputElement&&(this.rangeInputElement.removeEventListener("keydown",this.eventHandler.changeInputWithArrow),this.rangeInputElement.removeEventListener("keyup",this.eventHandler.changeInput),this.rangeInputElement.removeEventListener("blur",this.eventHandler.changeInputFinally))}},{key:"_changeValueWithInputKeyEvent",value:function(e){var t=e.keyCode,n=e.target;if(!([c.keyCodes.ARROW_UP,c.keyCodes.ARROW_DOWN].indexOf(t)<0)){var i=Number(n.value);if(!((i=this._valueUpDownForKeyEvent(i,t))<this._min||i>this._max)){var o=(0,l.clamp)(i,this._min,this.max);this.value=o,this.fire("change",o,!1)}}}},{key:"_valueUpDownForKeyEvent",value:function(e,t){var n=this._useDecimal?.1:1;return t===c.keyCodes.ARROW_UP?e+=n:t===c.keyCodes.ARROW_DOWN&&(e-=n),e}},{key:"_changeValueWithInput",value:function(e,t){var n=t.keyCode,i=t.target;if(!(0<=[c.keyCodes.ARROW_UP,c.keyCodes.ARROW_DOWN].indexOf(n))){var o=this._filterForInputText(i.value),r=!o||isNaN(o);if(i.value=o,!r){var a=(this._useDecimal?Number:l.toInteger)(o);a=(0,l.clamp)(a,this._min,this.max),this.value=a,this.fire("change",a,e)}}}},{key:"_addClickEvent",value:function(){this.rangeElement.addEventListener("click",this.eventHandler.changeSlideFinally)}},{key:"_removeClickEvent",value:function(){this.rangeElement.removeEventListener("click",this.eventHandler.changeSlideFinally)}},{key:"_addDragEvent",value:function(){this.pointer.addEventListener("mousedown",this.eventHandler.startChangingSlide),this.pointer.addEventListener("touchstart",this.eventHandler.startChangingSlide)}},{key:"_removeDragEvent",value:function(){this.pointer.removeEventListener("mousedown",this.eventHandler.startChangingSlide),this.pointer.removeEventListener("touchstart",this.eventHandler.startChangingSlide)}},{key:"_changeSlide",value:function(e){var t=(e.screenX?e.screenX:e.changedTouches[0].screenX)-this.firstPosition,n=this.firstLeft+t;n=(n=n>this.rangeWidth?this.rangeWidth:n)<0?0:n,this.pointer.style.left=n+"px",this.subbar.style.right=this.rangeWidth-n+"px";var i=n/this.rangeWidth,o=this._absMax*i+this._min,r=this._useDecimal?o:(0,l.toInteger)(o);this.value!==r&&(this.value=r,this.realTimeEvent&&this.fire("change",this._value,!1))}},{key:"_changeSlideFinally",value:function(e){if(e.stopPropagation(),"tui-image-editor-range"===e.target.className){var t=e.offsetX/this.rangeWidth,n=this._absMax*t+this._min;this.pointer.style.left=t*this.rangeWidth+"px",this.subbar.style.right=(1-t)*this.rangeWidth+"px",this.value=n,this.fire("change",n,!0)}}},{key:"_startChangingSlide",value:function(e){this.firstPosition=e.screenX?e.screenX:e.changedTouches[0].screenX,this.firstLeft=(0,l.toInteger)(this.pointer.style.left)||0,document.addEventListener("mousemove",this.eventHandler.changeSlide),document.addEventListener("touchmove",this.eventHandler.changeSlide),document.addEventListener("mouseup",this.eventHandler.stopChangingSlide),document.addEventListener("touchend",this.eventHandler.stopChangingSlide)}},{key:"_stopChangingSlide",value:function(){this.fire("change",this._value,!0),document.removeEventListener("mousemove",this.eventHandler.changeSlide),document.removeEventListener("touchmove",this.eventHandler.changeSlide),document.removeEventListener("mouseup",this.eventHandler.stopChangingSlide),document.removeEventListener("touchend",this.eventHandler.stopChangingSlide)}},{key:"_filterForInputText",value:function(e){return e.replace(u,"$1$2$3")}},{key:"max",set:function(e){this._max=e,this._absMax=-1*this._min+this._max,this.value=this._value},get:function(){return this._max}},{key:"value",get:function(){return this._value},set:function(e){var t=((e=this._useDecimal?e:(0,l.toInteger)(e))-this._min)*this.rangeWidth/this._absMax;this.rangeWidth<t&&(t=this.rangeWidth),this.pointer.style.left=t+"px",this.subbar.style.right=this.rangeWidth-t+"px",this._value=e,this.rangeInputElement&&(this.rangeInputElement.value=e)}}]),h);function h(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h),this._value=t.value||0,this.rangeElement=e.slider,this.rangeInputElement=e.input,this._drawRangeElement(),this.rangeWidth=this._getRangeWidth(),this._min=t.min||0,this._max=t.max||100,this._useDecimal=t.useDecimal,this._absMax=-1*this._min+this._max,this.realTimeEvent=t.realTimeEvent||!1,this.eventHandler={startChangingSlide:this._startChangingSlide.bind(this),stopChangingSlide:this._stopChangingSlide.bind(this),changeSlide:this._changeSlide.bind(this),changeSlideFinally:this._changeSlideFinally.bind(this),changeInput:this._changeValueWithInput.bind(this,!1),changeInputFinally:this._changeValueWithInput.bind(this,!0),changeInputWithArrow:this._changeValueWithInputKeyEvent.bind(this)},this._addClickEvent(),this._addDragEvent(),this._addInputEvent(),this.value=t.value,this.trigger("change")}s.default.CustomEvents.mixin(d),t.default=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e};function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var r,a=n(66),s=(r=a)&&r.__esModule?r:{default:r};var l=s.default.create,c=s.default.types,u=(i(d,[{key:"getName",value:function(){return this.name}},{key:"start",value:function(){throw new Error(l(c.UN_IMPLEMENTATION,"start"))}},{key:"stop",value:function(){throw new Error(l(c.UN_IMPLEMENTATION,"stop"))}}]),d);function d(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),this.name=e}t.default=u},function(e,t,n){var i,o,r,a=n(77),s=n(4),l=n(14),c=n(8),u=n(12),d=n(35),h=n(36),f=s.WeakMap;if(a){var v=new f,p=v.get,g=v.has,m=v.set;i=function(e,t){return m.call(v,e,t),t},o=function(e){return p.call(v,e)||{}},r=function(e){return g.call(v,e)}}else{var b=d("state");h[b]=!0,i=function(e,t){return c(e,b,t),t},o=function(e){return u(e,b)?e[b]:{}},r=function(e){return u(e,b)}}e.exports={set:i,get:o,has:r,enforce:function(e){return r(e)?o(e):i(e,{})},getterFor:function(n){return function(e){var t;if(!l(e)||(t=o(e)).type!==n)throw TypeError("Incompatible receiver, "+n+" required");return t}}}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){var i=n(81),o=n(33);e.exports=function(e){return i(o(e))}},function(e,t,n){var o=n(8);e.exports=function(e,t,n,i){i&&i.enumerable?e[t]=n:o(e,t,n)}},function(e,t,n){function f(e,t){this.stopped=e,this.result=t}var v=n(11),p=n(101),g=n(55),m=n(38),b=n(102),y=n(103);(e.exports=function(e,t,n,i,o){var r,a,s,l,c,u,d,h=m(t,n,i?2:1);if(o)r=e;else{if("function"!=typeof(a=b(e)))throw TypeError("Target is not iterable");if(p(a)){for(s=0,l=g(e.length);s<l;s++)if((c=i?h(v(d=e[s])[0],d[1]):h(e[s]))&&c instanceof f)return c;return new f(!1)}r=a.call(e)}for(u=r.next;!(d=u.call(r)).done;)if("object"==typeof(c=y(r,h,d.value,i))&&c&&c instanceof f)return c;return new f(!1)}).stop=function(e){return new f(!0,e)}},function(e,t){e.exports=function(e){try{return{error:!1,value:e()}}catch(e){return{error:!0,value:e}}}},function(e,t){var n=Math.ceil,i=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(0<e?i:n)(e)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var i=n(4),o=n(14),r=i.document,a=o(r)&&o(r.createElement);e.exports=function(e){return a?r.createElement(e):{}}},function(e,t,n){var i=n(47),o=n(48),r=i("keys");e.exports=function(e){return r[e]||(r[e]=o(e))}},function(e,t){e.exports={}},function(e,t){e.exports={}},function(e,t,n){var r=n(16);e.exports=function(i,o,e){if(r(i),void 0===o)return i;switch(e){case 0:return function(){return i.call(o)};case 1:return function(e){return i.call(o,e)};case 2:return function(e,t){return i.call(o,e,t)};case 3:return function(e,t,n){return i.call(o,e,t,n)}}return function(){return i.apply(o,arguments)}}},function(e,t,n){var i=n(12),o=n(83),r=n(35),a=n(84),s=r("IE_PROTO"),l=Object.prototype;e.exports=a?Object.getPrototypeOf:function(e){return e=o(e),i(e,s)?e[s]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){var r=n(41),a=n(19).f,s=n(8),l=n(12),c=n(91),u=n(6)("toStringTag");e.exports=function(e,t,n,i){if(e){var o=n?e:e.prototype;l(o,u)||a(o,u,{configurable:!0,value:t}),i&&!r&&s(o,"toString",c)}}},function(e,t,n){var i={};i[n(6)("toStringTag")]="z",e.exports="[object z]"===String(i)},function(e,t,n){var i=n(41),o=n(21),r=n(6)("toStringTag"),a="Arguments"==o(function(){return arguments}());e.exports=i?o:function(e){var t,n,i;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),r))?n:a?o(t):"Object"==(i=o(t))&&"function"==typeof t.callee?"Arguments":i}},function(e,t,n){var i=n(44),o=Function.toString;"function"!=typeof i.inspectSource&&(i.inspectSource=function(e){return o.call(e)}),e.exports=i.inspectSource},function(e,t,n){var i=n(4),o=n(79),r="__core-js_shared__",a=i[r]||o(r,{});e.exports=a},function(e,t,n){var i=n(13),o=n(10),r=n(34);e.exports=!i&&!o(function(){return 7!=Object.defineProperty(r("div"),"a",{get:function(){return 7}}).a})},function(e,t,n){var o=n(14);e.exports=function(e,t){if(!o(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!o(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!o(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!o(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var i=n(20),o=n(44);(e.exports=function(e,t){return o[e]||(o[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.4",mode:i?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},function(e,t){var n=0,i=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+i).toString(36)}},function(e,t,n){"use strict";function m(){return this}var b=n(15),y=n(82),_=n(39),k=n(58),E=n(40),w=n(8),O=n(29),i=n(6),C=n(20),x=n(18),o=n(52),S=o.IteratorPrototype,M=o.BUGGY_SAFARI_ITERATORS,P=i("iterator"),j="values",T="entries";e.exports=function(e,t,n,i,o,r,a){y(n,t,i);function s(e){if(e===o&&p)return p;if(!M&&e in f)return f[e];switch(e){case"keys":case j:case T:return function(){return new n(this,e)}}return function(){return new n(this)}}var l,c,u,d=t+" Iterator",h=!1,f=e.prototype,v=f[P]||f["@@iterator"]||o&&f[o],p=!M&&v||s(o),g="Array"==t&&f.entries||v;if(g&&(l=_(g.call(new e)),S!==Object.prototype&&l.next&&(C||_(l)===S||(k?k(l,S):"function"!=typeof l[P]&&w(l,P,m)),E(l,d,!0,!0),C&&(x[d]=m))),o==j&&v&&v.name!==j&&(h=!0,p=function(){return v.call(this)}),C&&!a||f[P]===p||w(f,P,p),x[t]=p,o)if(c={values:s(j),keys:r?p:s("keys"),entries:s(T)},a)for(u in c)!M&&!h&&u in f||O(f,u,c[u]);else b({target:t,proto:!0,forced:M||h},c);return c}},function(e,t,n){var i=n(13),o=n(80),r=n(27),a=n(28),s=n(46),l=n(12),c=n(45),u=Object.getOwnPropertyDescriptor;t.f=i?u:function(e,t){if(e=a(e),t=s(t,!0),c)try{return u(e,t)}catch(e){}if(l(e,t))return r(!o.f.call(e,t),e[t])}},function(e,t,n){function i(e,t){var n=s[a(e)];return n==c||n!=l&&("function"==typeof t?o(t):!!t)}var o=n(10),r=/#|\.prototype\./,a=i.normalize=function(e){return String(e).replace(r,".").toLowerCase()},s=i.data={},l=i.NATIVE="N",c=i.POLYFILL="P";e.exports=i},function(e,t,n){"use strict";var i,o,r,a=n(39),s=n(8),l=n(12),c=n(6),u=n(20),d=c("iterator"),h=!1;[].keys&&("next"in(r=[].keys())?(o=a(a(r)))!==Object.prototype&&(i=o):h=!0),null==i&&(i={}),u||l(i,d)||s(i,d,function(){return this}),e.exports={IteratorPrototype:i,BUGGY_SAFARI_ITERATORS:h}},function(e,t,n){var i=n(10);e.exports=!!Object.getOwnPropertySymbols&&!i(function(){return!String(Symbol())})},function(e,t,n){function i(){}function o(e){return"<script>"+e+"</"+v+">"}var r,a=n(11),s=n(86),l=n(56),c=n(36),u=n(57),d=n(34),h=n(35),f="prototype",v="script",p=h("IE_PROTO"),g=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(e){}var e,t;g=r?function(e){e.write(o("")),e.close();var t=e.parentWindow.Object;return e=null,t}(r):((t=d("iframe")).style.display="none",u.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(o("document.F=Object")),e.close(),e.F);for(var n=l.length;n--;)delete g[f][l[n]];return g()};c[p]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(i[f]=a(e),n=new i,i[f]=null,n[p]=e):n=g(),void 0===t?n:s(n,t)}},function(e,t,n){var i=n(32),o=Math.min;e.exports=function(e){return 0<e?o(i(e),9007199254740991):0}},function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){var i=n(17);e.exports=i("document","documentElement")},function(e,t,n){var o=n(11),r=n(92);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var n,i=!1,e={};try{(n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(e,[]),i=e instanceof Array}catch(e){}return function(e,t){return o(e),r(t),i?n.call(e,t):e.__proto__=t,e}}():void 0)},function(e,t,n){var i=n(4);e.exports=i.Promise},function(e,t,n){var o=n(11),r=n(16),a=n(6)("species");e.exports=function(e,t){var n,i=o(e).constructor;return void 0===i||null==(n=o(i)[a])?t:r(n)}},function(e,t,n){function i(e){if(O.hasOwnProperty(e)){var t=O[e];delete O[e],t()}}function o(e){return function(){i(e)}}function r(e){i(e.data)}function a(e){u.postMessage(e+"",m.protocol+"//"+m.host)}var s,l,c,u=n(4),d=n(10),h=n(21),f=n(38),v=n(57),p=n(34),g=n(62),m=u.location,b=u.setImmediate,y=u.clearImmediate,_=u.process,k=u.MessageChannel,E=u.Dispatch,w=0,O={},C="onreadystatechange";b&&y||(b=function(e){for(var t=[],n=1;n<arguments.length;)t.push(arguments[n++]);return O[++w]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},s(w),w},y=function(e){delete O[e]},"process"==h(_)?s=function(e){_.nextTick(o(e))}:E&&E.now?s=function(e){E.now(o(e))}:k&&!g?(c=(l=new k).port2,l.port1.onmessage=r,s=f(c.postMessage,c,1)):!u.addEventListener||"function"!=typeof postMessage||u.importScripts||d(a)?s=C in p("script")?function(e){v.appendChild(p("script"))[C]=function(){v.removeChild(this),i(e)}}:function(e){setTimeout(o(e),0)}:(s=a,u.addEventListener("message",r,!1))),e.exports={set:b,clear:y}},function(e,t,n){var i=n(63);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(i)},function(e,t,n){var i=n(17);e.exports=i("navigator","userAgent")||""},function(e,t,n){var i=n(11),o=n(14),r=n(22);e.exports=function(e,t){if(i(e),o(t)&&t.constructor===e)return t;var n=r.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var i=n(15),c=n(16),o=n(22),r=n(31),u=n(30);i({target:"Promise",stat:!0},{allSettled:function(e){var s=this,t=o.f(s),l=t.resolve,n=t.reject,i=r(function(){var i=c(s.resolve),o=[],r=0,a=1;u(e,function(e){var t=r++,n=!1;o.push(void 0),a++,i.call(s,e).then(function(e){n||(n=!0,o[t]={status:"fulfilled",value:e},--a||l(o))},function(e){n||(n=!0,o[t]={status:"rejected",reason:e},--a||l(o))})}),--a||l(o)});return i.error&&n(i.value),t.promise}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o=n(2),r=(i=o)&&i.__esModule?i:{default:i};var a=(0,n(1).keyMirror)("UN_IMPLEMENTATION","NO_COMPONENT_NAME"),s="Should implement a method: ",l="Should set a component name",c={UN_IMPLEMENTATION:function(e){return s+e},NO_COMPONENT_NAME:function(){return l}};t.default={types:r.default.extend({},a),create:function(e){e=e.toLowerCase();for(var t=c[e],n=arguments.length,i=Array(1<n?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];return t.apply(void 0,i)}}},function(e,t,n){"use strict";var L={rect:1,circle:2,triangle:1},D={rect:{w:"width",h:"height"},circle:{w:"rx",h:"ry"},triangle:{w:"width",h:"height"}};function R(e,t,n){var i=e.x,o=e.y,r=t.x,a=t.y,s=n*Math.PI/180;return{originX:(r-i)*Math.cos(s)-(a-o)*Math.sin(s)+i<i?"right":"left",originY:(r-i)*Math.sin(s)+(a-o)*Math.cos(s)+o<o?"bottom":"top"}}e.exports={setOrigins:function(e){var t=e.getPointByOrigin("left","top"),n=e.getPointByOrigin("right","top"),i=e.getPointByOrigin("right","bottom"),o=e.getPointByOrigin("left","bottom");e.origins={lt:t,rt:n,rb:i,lb:o}},resize:function(e,t,n){var i,o,r,a,s,l,c,u,d,h,f,v,p,g,m,b,y,_,k,E,w,O,C,x,S,M,P,j,T,I,A;"center"===(g=e).originX&&"center"===g.originY&&(s=t,c=(l=e).getPointByOrigin("center","center"),u=R(c,s,-l.angle),d=u.originX,h=u.originY,f=l.getPointByOrigin(d,h),v=l.left-(c.x-f.x),p=l.top-(c.y-f.y),l.set({originX:d,originY:h,left:v,top:p}),l.setCoords(),o=(i=e).originX,r=i.originY,a=o.substring(0,1)+r.substring(0,1),i.startPoint=i.origins[a]),n?function(e){var t=e.type,n=e.scaleX,i=e.scaleY,o=D[t],r=e[o.w]*n,a=e[o.h]*i;if(e.isRegular){var s=Math.max(n,i);r=e[o.w]*s,a=e[o.h]*s}var l={hasControls:!1,hasBorders:!1,scaleX:1,scaleY:1};l[o.w]=r,l[o.h]=a,e.set(l)}(e):(m=t,y=(b=e).type,_=b.strokeWidth,k=b.startPoint,E=L[y],w=D[y],O=!("triangle"!==b.type),C={},x=Math.abs(k.x-m.x)/E,S=Math.abs(k.y-m.y)/E,_<x&&(x-=_/E),_<S&&(S-=_/E),b.isRegular&&(x=S=Math.max(x,S),O&&(S=Math.sqrt(3)/2*x)),C[w.w]=x,C[w.h]=S,b.set(C)),M=t,j=(P=e).startPoint,T=R(j,M,-P.angle),I=T.originX,A=T.originY,P.setPositionByOrigin(j,I,A),P.setCoords()},adjustOriginToCenter:function(e){var t=e.getPointByOrigin("center","center"),n=e.originX,i=e.originY,o=e.getPointByOrigin(n,i),r=e.left+(t.x-o.x),a=e.top+(t.y-o.y);e.set({hasControls:!0,hasBorders:!0,originX:"center",originY:"center",left:r,top:a}),e.setCoords()}}},function(e,t,n){"use strict";n(69);var i,o=n(70),r=(i=o)&&i.__esModule?i:{default:i};n(166),n(167),n(168),n(169),n(170),n(171),n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(181),n(182),n(183),n(184),n(185),e.exports=r.default},function(e,t,n){"use strict";Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Element.prototype.closest||(Element.prototype.closest=function(e){var t=this;if(!document.documentElement.contains(t))return null;do{if(t.matches(e))return t;t=t.parentElement||t.parentNode}while(null!==t&&1===t.nodeType);return null}) /*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */,"document"in window.self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))||function(e){if("Element"in e){var t="classList",n="prototype",i=e.Element[n],o=Object,r=String[n].trim||function(){return this.replace(/^\s+|\s+$/g,"")},a=Array[n].indexOf||function(e){for(var t=0,n=this.length;t<n;t++)if(t in this&&this[t]===e)return t;return-1},s=function(e,t){this.name=e,this.code=DOMException[e],this.message=t},l=function(e,t){if(""===t)throw new s("SYNTAX_ERR","An invalid or illegal string was specified");if(/\s/.test(t))throw new s("INVALID_CHARACTER_ERR","String contains an invalid character");return a.call(e,t)},c=function(e){for(var t=r.call(e.getAttribute("class")||""),n=t?t.split(/\s+/):[],i=0,o=n.length;i<o;i++)this.push(n[i]);this._updateClassName=function(){e.setAttribute("class",this.toString())}},u=c[n]=[],d=function(){return new c(this)};if(s[n]=Error[n],u.item=function(e){return this[e]||null},u.contains=function(e){return-1!==l(this,e+="")},u.add=function(){for(var e,t=arguments,n=0,i=t.length,o=!1;-1===l(this,e=t[n]+"")&&(this.push(e),o=!0),++n<i;);o&&this._updateClassName()},u.remove=function(){var e,t,n=arguments,i=0,o=n.length,r=!1;do{for(t=l(this,e=n[i]+"");-1!==t;)this.splice(t,1),r=!0,t=l(this,e)}while(++i<o);r&&this._updateClassName()},u.toggle=function(e,t){e+="";var n=this.contains(e),i=n?!0!==t&&"remove":!1!==t&&"add";return i&&this[i](e),!0===t||!1===t?t:!n},u.toString=function(){return this.join(" ")},o.defineProperty){var h={get:d,enumerable:!0,configurable:!0};try{o.defineProperty(i,t,h)}catch(e){void 0!==e.number&&-2146823252!==e.number||(h.enumerable=!1,o.defineProperty(i,t,h))}}else o[n].__defineGetter__&&i.__defineGetter__(t,d)}}(window.self),function(){var e=document.createElement("_");if(e.classList.add("c1","c2"),!e.classList.contains("c2")){var t=function(e){var i=DOMTokenList.prototype[e];DOMTokenList.prototype[e]=function(e){var t,n=arguments.length;for(t=0;t<n;t++)e=arguments[t],i.call(this,e)}};t("add"),t("remove")}if(e.classList.toggle("c3",!1),e.classList.contains("c3")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(e,t){return 1 in arguments&&!this.contains(e)==!t?t:n.call(this,e)}}e=null}()), /*! * @copyright Copyright (c) 2017 IcoMoon.io * @license Licensed under MIT license * See https://github.com/Keyamoon/svgxuse * @version 1.2.6 */ function(){if("undefined"!=typeof window&&window.addEventListener){var e,t,n,y=Object.create(null),_=function(){clearTimeout(t),t=setTimeout(e,100)},k=function(){},E="http://www.w3.org/1999/xlink";e=function(){var e,t,n,i,o,r,a,s,l,c,u,d,h,f=0;function v(){var e;0===--f&&(k(),window.addEventListener("resize",_,!1),window.addEventListener("orientationchange",_,!1),k=window.MutationObserver?((e=new MutationObserver(_)).observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0}),function(){try{e.disconnect(),window.removeEventListener("resize",_,!1),window.removeEventListener("orientationchange",_,!1)}catch(e){}}):(document.documentElement.addEventListener("DOMSubtreeModified",_,!1),function(){document.documentElement.removeEventListener("DOMSubtreeModified",_,!1),window.removeEventListener("resize",_,!1),window.removeEventListener("orientationchange",_,!1)}))}function p(e){return function(){!0!==y[e.base]&&(e.useEl.setAttributeNS(E,"xlink:href","#"+e.hash),e.useEl.hasAttribute("href")&&e.useEl.setAttribute("href","#"+e.hash))}}function g(i){return function(){var e,t=document.body,n=document.createElement("x");i.onload=null,n.innerHTML=i.responseText,(e=n.getElementsByTagName("svg")[0])&&(e.setAttribute("aria-hidden","true"),e.style.position="absolute",e.style.width=0,e.style.height=0,e.style.overflow="hidden",t.insertBefore(e,t.firstChild)),v()}}function m(e){return function(){e.onerror=null,e.ontimeout=null,v()}}for(k(),s=document.getElementsByTagName("use"),o=0;o<s.length;o+=1){try{t=s[o].getBoundingClientRect()}catch(e){t=!1}e=(a=(i=s[o].getAttribute("href")||s[o].getAttributeNS(E,"href")||s[o].getAttribute("xlink:href"))&&i.split?i.split("#"):["",""])[0],n=a[1],r=t&&0===t.left&&0===t.right&&0===t.top&&0===t.bottom,t&&0===t.width&&0===t.height&&!r?(s[o].hasAttribute("href")&&s[o].setAttributeNS(E,"xlink:href",i),e.length&&(!0!==(l=y[e])&&setTimeout(p({useEl:s[o],base:e,hash:n}),0),void 0===l&&(c=e,h=d=u=void 0,window.XMLHttpRequest&&(u=new XMLHttpRequest,d=b(location),h=b(c),u=void 0===u.withCredentials&&""!==h&&h!==d?XDomainRequest||void 0:XMLHttpRequest),void 0!==u&&(l=new u,(y[e]=l).onload=g(l),l.onerror=m(l),l.ontimeout=m(l),l.open("GET",e),l.send(),f+=1)))):r?e.length&&y[e]&&setTimeout(p({useEl:s[o],base:e,hash:n}),0):void 0===y[e]?y[e]=!0:y[e].onload&&(y[e].abort(),delete y[e].onload,y[e]=!0)}function b(e){var t;return void 0!==e.protocol?t=e:(t=document.createElement("a")).href=e,t.protocol.replace(/:/g,"")+t.host}s="",f+=1,v()},n=function(){window.removeEventListener("load",n,!1),t=setTimeout(e,0)},"complete"!==document.readyState?window.addEventListener("load",n,!1):n()}}()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e};function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var r=f(n(2)),a=f(n(71)),s=f(n(114)),l=f(n(141)),c=f(n(3)),u=f(n(143)),d=n(1),h=n(0);function f(e){return e&&e.__esModule?e:{default:e}}function v(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=r.default.isUndefined,g=r.default.forEach,m=r.default.CustomEvents,b=h.eventNames.MOUSE_DOWN,y=h.eventNames.OBJECT_MOVED,_=h.eventNames.OBJECT_SCALED,k=h.eventNames.OBJECT_ACTIVATED,E=h.eventNames.OBJECT_ROTATED,w=h.eventNames.OBJECT_ADDED,O=h.eventNames.ADD_TEXT,C=h.eventNames.ADD_OBJECT,x=h.eventNames.TEXT_EDITING,S=h.eventNames.TEXT_CHANGED,M=h.eventNames.ICON_CREATE_RESIZE,P=h.eventNames.ICON_CREATE_END,j=h.eventNames.SELECTION_CLEARED,T=h.eventNames.SELECTION_CREATED,I=h.eventNames.TOOL_SELECTED,A=h.eventNames.ADD_OBJECT_AFTER,L=(i(D,[{key:"_setSelectionStyle",value:function(t,e){var n=e.applyCropSelectionStyle,i=e.applyGroupSelectionStyle;t&&this._graphics.setSelectionStyle(t),n&&this._graphics.setCropSelectionStyle(t),i&&this.on("selectionCreated",function(e){"activeSelection"===e.type&&e.set(t)})}},{key:"_attachInvokerEvents",value:function(){var e=h.eventNames.UNDO_STACK_CHANGED,t=h.eventNames.REDO_STACK_CHANGED;this._invoker.on(e,this.fire.bind(this,e)),this._invoker.on(t,this.fire.bind(this,t))}},{key:"_attachGraphicsEvents",value:function(){var e;this._graphics.on((v(e={},b,this._handlers.mousedown),v(e,y,this._handlers.objectMoved),v(e,_,this._handlers.objectScaled),v(e,E,this._handlers.objectRotated),v(e,k,this._handlers.objectActivated),v(e,w,this._handlers.objectAdded),v(e,O,this._handlers.addText),v(e,C,this._handlers.addObject),v(e,x,this._handlers.textEditing),v(e,S,this._handlers.textChanged),v(e,M,this._handlers.iconCreateResize),v(e,P,this._handlers.iconCreateEnd),v(e,j,this._handlers.selectionCleared),v(e,T,this._handlers.selectionCreated),e))}},{key:"_attachUiEvents",value:function(){this.ui&&this.ui.on(v({},I,this._handlers.toolSelected))}},{key:"_attachDomEvents",value:function(){document.addEventListener("keydown",this._handlers.keydown)}},{key:"_detachDomEvents",value:function(){document.removeEventListener("keydown",this._handlers.keydown)}},{key:"_onKeyDown",value:function(e){var t=e.ctrlKey,n=e.keyCode,i=e.metaKey;(t||i)&&(n===h.keyCodes.C?this._graphics.resetTargetObjectForCopyPaste():n===h.keyCodes.V?(this._graphics.pasteObject(),this.clearRedoStack()):n===h.keyCodes.Z?this.undo().catch(function(){}):n===h.keyCodes.Y&&this.redo().catch(function(){}));var o=n===h.keyCodes.BACKSPACE||n===h.keyCodes.DEL;this._graphics.isReadyRemoveObject()&&o&&(e.preventDefault(),this.removeActiveObject())}},{key:"removeActiveObject",value:function(){var e=this._graphics.getActiveObjectIdForRemove();this.removeObject(e)}},{key:"_onMouseDown",value:function(e,t){this.fire(h.eventNames.MOUSE_DOWN,e,t)}},{key:"_pushAddObjectCommand",value:function(e){var t=c.default.create(h.commandNames.ADD_OBJECT,this._graphics,e);this._invoker.pushUndoStack(t)}},{key:"_onObjectActivated",value:function(e){this.fire(h.eventNames.OBJECT_ACTIVATED,e)}},{key:"_onObjectMoved",value:function(e){this.fire(h.eventNames.OBJECT_MOVED,e)}},{key:"_onObjectScaled",value:function(e){this.fire(h.eventNames.OBJECT_SCALED,e)}},{key:"_onObjectRotated",value:function(e){this.fire(h.eventNames.OBJECT_ROTATED,e)}},{key:"getDrawingMode",value:function(){return this._graphics.getDrawingMode()}},{key:"clearObjects",value:function(){return this.execute(h.commandNames.CLEAR_OBJECTS)}},{key:"deactivateAll",value:function(){this._graphics.deactivateAll(),this._graphics.renderAll()}},{key:"discardSelection",value:function(){this._graphics.discardSelection()}},{key:"changeSelectableAll",value:function(e){this._graphics.changeSelectableAll(e)}},{key:"execute",value:function(e){for(var t,n=arguments.length,i=Array(1<n?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];var r=[this._graphics].concat(i);return(t=this._invoker).execute.apply(t,[e].concat(r))}},{key:"executeSilent",value:function(e){for(var t,n=arguments.length,i=Array(1<n?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];var r=[this._graphics].concat(i);return(t=this._invoker).executeSilent.apply(t,[e].concat(r))}},{key:"undo",value:function(){return this._invoker.undo()}},{key:"redo",value:function(){return this._invoker.redo()}},{key:"loadImageFromFile",value:function(t,e){if(!t)return d.Promise.reject(h.rejectMessages.invalidParameters);var n=URL.createObjectURL(t);return e=e||t.name,this.loadImageFromURL(n,e).then(function(e){return URL.revokeObjectURL(t),e})}},{key:"loadImageFromURL",value:function(e,t){return t&&e?this.execute(h.commandNames.LOAD_IMAGE,t,e):d.Promise.reject(h.rejectMessages.invalidParameters)}},{key:"addImageObject",value:function(e){return e?this.execute(h.commandNames.ADD_IMAGE_OBJECT,e):d.Promise.reject(h.rejectMessages.invalidParameters)}},{key:"startDrawingMode",value:function(e,t){return this._graphics.startDrawingMode(e,t)}},{key:"stopDrawingMode",value:function(){this._graphics.stopDrawingMode()}},{key:"crop",value:function(e){var t=this._graphics.getCroppedImag