PageSourceSearch

https://researgence.ai/markerjs2.1fb993fb7879c06d.js

js researgence.ai collected 2026-10-05 12:32:16 UTC 147,029 bytes, 1 lines download raw bytes

vendor: 10,824 bytes, line 1
1"use strict";(self.webpackChunkreseargence=self.webpackChunkreseargence||[]).push([[384],{14131:(ut,X,Y)=>{Y.r(X),Y.d(X,{Activator:()=>H,ArrowMarker:()=>_,ArrowTypePanel:()=>tt,CalloutMarker:()=>U,CaptionFrameMarker:()=>rt,ColorPickerPanel:()=>f,CoverMarker:()=>G,CurveMarker:()=>ot,EllipseFrameMarker:()=>st,EllipseMarker:()=>N,EventListenerRepository:()=>at,FontFamilyPanel:()=>I,FrameMarker:()=>D,FreehandMarker:()=>M,HighlightMarker:()=>W,LineMarker:()=>A,LineStylePanel:()=>B,LineWidthPanel:()=>k,LinearMarkerBase:()=>V,MarkerArea:()=>dt,MarkerAreaEvent:()=>m,MarkerAreaRenderEvent:()=>nt,MarkerBase:()=>R,MarkerEvent:()=>C,MeasurementMarker:()=>it,OpacityPanel:()=>F,RectangleMarker:()=>O,RectangularBoxMarkerBase:()=>w,RectangularBoxMarkerGrips:()=>$,ResizeGrip:()=>L,Settings:()=>q,Style:()=>z,StyleClass:()=>y,StyleManager:()=>Q,SvgHelper:()=>a,TextMarker:()=>E,ToolboxPanel:()=>x,TransformMatrix:()=>P});var Z=function(e,t){return(Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,r){s.__proto__=r}||function(s,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(s[i]=r[i])})(e,t)};function u(o,e){function t(){this.constructor=o}Z(o,e),o.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}function K(o,e,t,s){return new(t||(t=Promise))(function(r,i){function n(p){try{c(s.next(p))}catch(l){i(l)}}function h(p){try{c(s.throw(p))}catch(l){i(l)}}function c(p){var l;p.done?r(p.value):(l=p.value,l instanceof t?l:new t(function(d){d(l)})).then(n,h)}c((s=s.apply(o,e||[])).next())})}function J(o,e){var t,s,r,i,n={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:h(0),throw:h(1),return:h(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function h(c){return function(p){return function(l){if(t)throw new TypeError("Generator is already executing.");for(;n;)try{if(t=1,s&&(r=2&l[0]?s.return:l[0]?s.throw||((r=s.return)&&r.call(s),0):s.next)&&!(r=r.call(s,l[1])).done)return r;switch(s=0,r&&(l=[2&l[0],r.value]),l[0]){case 0:case 1:r=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,s=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(!((r=(r=n.trys).length>0&&r[r.length-1])||6!==l[0]&&2!==l[0])){n=0;continue}if(3===l[0]&&(!r||l[1]>r[0]&&l[1]<r[3])){n.label=l[1];break}if(6===l[0]&&n.label<r[1]){n.label=r[1],r=l;break}if(r&&n.label<r[2]){n.label=r[2],n.ops.push(l);break}r[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(o,n)}catch(d){l=[6,d],s=0}finally{t=r=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([c,p])}}}function T(){for(var o=0,e=0,t=arguments.length;e<t;e++)o+=arguments[e].length;var s=Array(o),r=0;for(e=0;e<t;e++)for(var i=arguments[e],n=0,h=i.length;n<h;n++,r++)s[r]=i[n];return s}var a=function(){function o(){}return o.createDefs=function(){return document.createElementNS("http://www.w3.org/2000/svg","defs")},o.setAttributes=function(e,t){for(var s=0,r=t;s<r.length;s++){var i=r[s];e.setAttribute(i[0],i[1])}},o.createRect=function(e,t,s){var r=document.createElementNS("http://www.w3.org/2000/svg","rect");return r.setAttribute("width",e.toString()),r.setAttribute("height",t.toString()),s&&o.setAttributes(r,s),r},o.createLine=function(e,t,s,r,i){var n=document.createElementNS("http://www.w3.org/2000/svg","line");return n.setAttribute("x1",e.toString()),n.setAttribute("y1",t.toString()),n.setAttribute("x2",s.toString()),n.setAttribute("y2",r.toString()),i&&o.setAttributes(n,i),n},o.createPolygon=function(e,t){var s=document.createElementNS("http://www.w3.org/2000/svg","polygon");return s.setAttribute("points",e),t&&o.setAttributes(s,t),s},o.createCircle=function(e,t){var s=document.createElementNS("http://www.w3.org/2000/svg","circle");return s.setAttribute("cx",(e/2).toString()),s.setAttribute("cy",(e/2).toString()),s.setAttribute("r",e.toString()),t&&o.setAttributes(s,t),s},o.createEllipse=function(e,t,s){var r=document.createElementNS("http://www.w3.org/2000/svg","ellipse");return r.setAttribute("cx",(e/2).toString()),r.setAttribute("cy",(t/2).toString()),r.setAttribute("rx",(e/2).toString()),r.setAttribute("ry",(t/2).toString()),s&&o.setAttributes(r,s),r},o.createGroup=function(e){var t=document.createElementNS("http://www.w3.org/2000/svg","g");return e&&o.setAttributes(t,e),t},o.createTransform=function(){return document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGTransform()},o.createMarker=function(e,t,s,r,i,n,h){var c=document.createElementNS("http://www.w3.org/2000/svg","marker");return o.setAttributes(c,[["id",e],["orient",t],["markerWidth",s.toString()],["markerHeight",r.toString()],["refX",i.toString()],["refY",n.toString()]]),c.appendChild(h),c},o.createText=function(e){var t=document.createElementNS("http://www.w3.org/2000/svg","text");return t.setAttribute("x","0"),t.setAttribute("y","0"),e&&o.setAttributes(t,e),t},o.createTSpan=function(e,t){var s=document.createElementNS("http://www.w3.org/2000/svg","tspan");return s.textContent=e,t&&o.setAttributes(s,t),s},o.createImage=function(e){var t=document.createElementNS("http://www.w3.org/2000/svg","image");return e&&o.setAttributes(t,e),t},o.createPoint=function(e,t){var s=document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGPoint();return s.x=e,s.y=t,s},o.createPath=function(e,t){var s=document.createElementNS("http://www.w3.org/2000/svg","path");return s.setAttribute("d",e),t&&o.setAttributes(s,t),s},o}(),H=function(){function o(){}return o.addKey=function(e){o.key=e},Object.defineProperty(o,"isLicensed",{get:function(){return!!o.key&&new RegExp(/^MJS2-[A-Z][0-9]{3}-[A-Z][0-9]{3}-[0-9]{4}$/,"i").test(o.key)},enumerable:!1,configurable:!0}),o}(),ht=function(){function o(){this.naturalSize=!1,this.imageType="image/png",this.markersOnly=!1}return o.prototype.rasterize=function(e,t,s){var r=this;return new Promise(function(i){var n=void 0!==s?s:document.createElement("canvas");null===e&&(r.markersOnly=!0,r.naturalSize=!1);var h=document.createElementNS("http://www.w3.org/2000/svg","svg");h.setAttribute("xmlns","http://www.w3.org/2000/svg"),h.setAttribute("width",t.width.baseVal.valueAsString),h.setAttribute("height",t.height.baseVal.valueAsString),h.setAttribute("viewBox","0 0 "+t.viewBox.baseVal.width.toString()+" "+t.viewBox.baseVal.height.toString()),h.innerHTML=t.innerHTML,!0===r.naturalSize?(h.width.baseVal.value=e.naturalWidth,h.height.baseVal.value=e.naturalHeight):void 0!==r.width&&void 0!==r.height&&(h.width.baseVal.value=r.width,h.height.baseVal.value=r.height),n.width=h.width.baseVal.value,n.height=h.height.baseVal.value;var c=h.outerHTML,p=n.getContext("2d");!0!==r.markersOnly&&p.drawImage(e,0,0,n.width,n.height);var l=window.URL,d=new Image(n.width,n.height);d.setAttribute("crossOrigin","anonymous");var g=new Blob([c],{type:"image/svg+xml"}),v=l.createObjectURL(g);d.onload=function(){p.drawImage(d,0,0),l.revokeObjectURL(v);var b=n.toDataURL(r.imageType,r.imageQuality);i(b)},d.src=v})},o}(),z=function(){},Q=function(){function o(e){this._classNamePrefixBase="__markerjs2_",this.classes=[],this.rules=[],this.settings=this.defaultSettings,this._classNamePrefix=this._classNamePrefixBase+"_"+e+"_"}return Object.defineProperty(o.prototype,"classNamePrefixBase",{get:function(){return this._classNamePrefixBase},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"classNamePrefix",{get:function(){return this._classNamePrefix},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"defaultSettings",{get:function(){return{canvasBackgroundColor:"#ffffff",toolbarBackgroundColor:"#111111",toolbarBackgroundHoverColor:"#333333",toolbarColor:"#eeeeee",toolbarHeight:40,toolboxColor:"#eeeeee",toolboxAccentColor:"#3080c3",undoButtonVisible:!0,redoButtonVisible:!1,zoomButtonVisible:!1,zoomOutButtonVisible:!1,clearButtonVisible:!1,resultButtonBlockVisible:!0,logoPosition:"left"}},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"fadeInAnimationClassName",{get:function(){return this.classNamePrefix+"fade_in"},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"fadeOutAnimationClassName",{get:function(){return this.classNamePrefix+"fade_out"},enumerable:!1,configurable:!0}),o.prototype.addClass=function(e){return void 0===this.styleSheet&&this.addStyleSheet(),e.name=""+this.classNamePrefix+e.localName,this.classes.push(e),this.styleSheet.sheet.insertRule("."+e.name+" {"+e.style+"}",this.styleSheet.sheet.cssRules.length),e},o.prototype.addRule=function(e){void 0===this.styleSheet&&this.addStyleSheet(),this.rules.push(e),this.styleSheet.sheet.insertRule(e.selector+" {"+e.style+"}",this.styleSheet.sheet.cssRules.length)},o.prototype.addStyleSheet=function(){var e;this.styleSheet=document.createElement("style"),(null!==(e=this.styleSheetRoot)&&void 0!==e?e:document.head).appendChild(this.styleSheet),this.addRule(new S("."+this.classNamePrefix+" h3","font-family: sans-serif")),this.addRule(new S("@keyframes "+this.classNamePrefix+"_fade_in_animation_frames","\n        from {\n          opacity: 0;\n        }\n        to {\n          opacity: 1;\n        }\n    ")),this.addRule(new S("@keyframes "+this.classNamePrefix+"_fade_out_animation_frames","\n        from {\n          opacity: 1;\n        }\n        to {\n          opacity: 0;\n        }\n    ")),this.addClass(new y("fade_in","\n      animation-duration: 0.3s;\n      animation-name: "+this.classNamePrefix+"_fade_in_animation_frames;\n    ")),this.addClass(new y("fade_out","\n      animation-duration: 0.3s;\n      animation-name: "+this.classNamePrefix+"_fade_out_animation_frames;\n    "))},o.prototype.removeStyleSheet=function(){var e;this.styleSheet&&((null!==(e=this.styleSheetRoot)&&void 0!==e?e:document.head).removeChild(this.styleSheet),this.styleSheet=void 0)},o}(),S=function(e,t){this.selector=e,this.style=t},y=function(e,t){this.localName=e,this.style=t},lt=function(){function o(e,t,s,r,i){this.buttons=[],this.markerButtons=[],this.buttonClickListeners=[],this.markerjsContainer=e,this.displayMode=t,this.markerItems=s,this.uiStyleSettings=r,this.styles=i,this.addStyles(),this.adjustLayout=this.adjustLayout.bind(this),this.overflowButtonClicked=this.overflowButtonClicked.bind(this),this.setCurrentMarker=this.setCurrentMarker.bind(this)}return o.prototype.show=function(e){var t=this;this.uiContainer=document.createElement("div"),this.uiContainer.style.visibility=e,this.uiContainer.className=this.toolbarStyleClass.name+" "+this.styles.fadeInAnimationClassName+" "+(this.uiStyleSettings.toolbarStyleColorsClassName?this.uiStyleSettings.toolbarStyleColorsClassName:this.toolbarStyleColorsClass.name);var s=document.createElement("div");s.className=this.toolbarBlockStyleClass.name,s.style.whiteSpace="nowrap",this.uiContainer.appendChild(s),this.addActionButton(s,'<svg viewBox="0 0 24 24">
1<path d="M10.07 14.27a.997.997 0 011.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16m3.57 7.7a.99.99 0 01-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 01-1-1V3a1 1 0 011-1c.24 0 .47.09.64.23l.01-.01 11.49 9.64a1.001 1.001 0 01-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69z"/></svg>',"select","Select mode"),this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M9 3v1H4v2h1v13a2 2 0 002 2h10a2 2 0 002-2V6h1V4h-5V3H9M7 6h10v13H7V6m2 2v9h2V8H9m4 0v9h2V8h-2z"/></svg>',"delete","Delete marker"),this.uiStyleSettings.clearButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M19.36 2.72l1.42 1.42-5.72 5.71c1.07 1.54 1.22 3.39.32 4.59L9.06 8.12c1.2-.9 3.05-.75 4.59.32l5.71-5.72M5.93 17.57c-2.01-2.01-3.24-4.41-3.58-6.65l4.88-2.09 7.44 7.44-2.09 4.88c-2.24-.34-4.64-1.57-6.65-3.58z"/></svg>',"clear","Delete all markers"),this.uiStyleSettings.undoButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M12.5 8c-2.65 0-5.05 1-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"/></svg>',"undo","Undo"),this.uiStyleSettings.redoButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M18.4 10.6C16.55 9 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16a8.002 8.002 0 017.6-5.5c1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6z"/></svg>',"redo","Redo"),this.uiStyleSettings.zoomButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M15.5 14l5 5-1.5 1.5-5-5v-.79l-.27-.28A6.471 6.471 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3 6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.5
17 4.23l.28.27h.79m-6 0C12 14 14 12 14 9.5S12 5 9.5 5 5 7 5 9.5 7 14 9.5 14m2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"/></svg>',"zoom","Zoom in"),this.uiStyleSettings.zoomButtonVisible&&this.uiStyleSettings.zoomOutButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0016 9.5 6.5 6.5 0 009.5 3 6.5 6.5 0 003 9.5 6.5 6.5 0 009.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 5 1.5-1.5-5-5m-6 0C7 14 5 12 5 9.5S7 5 9.5 5 14 7 14 9.5 12 14 9.5 14M7 9h5v1H7V9z"/></svg>',"zoom-out","Zoom out"),this.uiStyleSettings.notesButtonVisible&&this.addActionButton(s,'<svg viewBox="0 0 24 24"><path d="M18.13 12l1.26-1.26c.44-.44 1-.68 1.61-.74V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 002 2h6v-1.87l.13-.13H5V5h7v7h6.13M14 4.5l5.5 5.5H14V4.5m5.13 9.33l2.04 2.04L15.04 22H13v-2.04l6.13-6.13m3.72.36l-.98.98-2.04-2.04.98-.98c.19-.2.52-.2.72 0l1.32 1.32c.2.2.2.53 0 .72z"/></svg>',"notes","Notes"),this.markerButtonBlock=document.createElement("div"),this.markerButtonBlock.className=this.toolbarBlockStyleClass.name,this.markerButtonBlock.style.flexGrow="2",this.markerButtonBlock.style.textAlign="center",this.uiContainer.appendChild(this.markerButtonBlock),this.markerButtonOverflowBlock=document.createElement("div"),this.markerButtonOverflowBlock.className=this.toolbarOverflowBlockStyleClass.name+" "+(this.uiStyleSettings.toolbarOverflowBlockStyleColorsClassName?this.uiStyleSettings.toolbarOverflowBlockStyleColorsClassName:this.toolbarOverflowBlockStyleColorsClass.name),this.markerButtonOverflowBlock.style.display="none",this.uiContainer.appendChild(this.markerButtonOverflowBlock),this.markerItems&&(this.markerItems.forEach(function(i){var n=document.createElement("div");n.className=""+t.toolbarButtonStyleClass.name,n.setAttribute("data-type-name",i.typeName),n.setAttribute("aria-label",i.title),n.setAttribute("title",i.title),n.innerHTML=i.icon,n.addEventListener("click",function(){t.markerToolbarButtonClicked(n,i)}),t.buttons.push(n),t.markerButtons.push(n)}),this.overflowButton=document.createElement("div"),this.overflowButton.className=this.toolbarButtonStyleClass.name+" "+(this.uiStyleSettings.toolbarButtonStyleColorsClassName?this.uiStyleSettings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name),this.overflowButton.innerHTML='<svg viewBox="0 0 24 24"><path d="M12 16a2 2 0 012 2 2 2 0 01-2 2 2 2 0 01-2-2 2 2 0 012-2m0-6a2 2 0 012 2 2 2 0 01-2 2 2 2 0 01-2-2 2 2 0 012-2m0-6a2 2 0 012 2 2 2 0 01-2 2 2 2 0 01-2-2 2 2 0 012-2z"/></svg>',this.overflowButton.addEventListener("click",this.overflowButtonClicked),this.markerButtonBlock.appendChild(this.overflowButton));var r=document.createElement("div");r.className=this.toolbarBlockStyleClass.name,r.style.whiteSpace="nowrap",r.style.display=!1!==this.uiStyleSettings.resultButtonBlockVisible?"":"none",this.uiContainer.appendChild(r),this.addActionButton(r,'<svg viewBox="0 0 24 24"><path d="M9 20.42l-6.21-6.21 2.83-2.83L9 14.77l9.88-9.89 2.83 2.83L9 20.42z"/></svg>',"render","Save and close"),this.addActionButton(r,'<svg viewBox="0 0 24 24"><path d="M20 6.91L17.09 4 12 9.09 6.91 4 4 6.91 9.09 12 4 17.09 6.91 20 12 14.91 17.09 20 20 17.09 14.91 12 20 6.91z"/></svg>',"close","Close"),this.markerjsContainer.appendChild(this.uiContainer),this.setSelectMode(),this.setCurrentMarker(),this.adjustLayout()},o.prototype.addButtonClickListener=function(e){this.buttonClickListeners.push(e)},o.prototype.removeButtonClickListener=function(e){this.buttonClickListeners.indexOf(e)>-1&&this.buttonClickListeners.splice(this.buttonClickListeners.indexOf(e),1)},o.prototype.setSelectMode=function(){this.resetButtonStyles(),this.setActiveButton(this.buttons[0])},o.prototype.adjustLayout=function(){if(this.markerButtons&&this.markerButtons.length>0){var e=Math.floor(this.markerButtonBlock.clientWidth/this.uiStyleSettings.toolbarHeight)-1;this.markerButtonBlock.innerHTML="",this.markerButtonOverflowBlock.innerHTML="";for(var t=0;t<this.markerButtons.length;t++)t<e||t===e&&this.markerButtons.length-1===e?this.markerButtonBlock.appendChild(this.markerButtons[t]):(t===e&&this.markerButtonBlock.appendChild(this.overflowButton),this.markerButtonOverflowBlock.appendChild(this.markerButtons[t]))}},o.prototype.overflowButtonClicked=function(){"none"!==this.markerButtonOverflowBlock.style.display?(this.markerButtonOverflowBlock.className=this.markerButtonOverflowBlock.className.replace(this.styles.fadeInAnimationClassName,""),this.markerButtonOverflowBlock.style.display="none"):(this.markerButtonOverflowBlock.className+=" "+this.styles.fadeInAnimationClassName,this.markerButtonOverflowBlock.style.top=this.uiContainer.offsetTop+this.overflowButton.offsetHeight+"px",this.markerButtonOverflowBlock.style.right=this.uiContainer.offsetWidth-this.overflowButton.offsetLeft-this.overflowButton.offsetWidth+2*this.uiContainer.offsetLeft+"px",this.markerButtonOverflowBlock.style.display="inline-block")},o.prototype.resetButtonStyles=function(){var e=this;this.buttons.forEach(function(t){t.className=t.className.replace(e.uiStyleSettings.toolbarButtonStyleColorsClassName?e.uiStyleSettings.toolbarButtonStyleColorsClassName:e.toolbarButtonStyleColorsClass.name,"").trim(),t.className=t.className.replace(e.uiStyleSettings.toolbarActiveButtonStyleColorsClassName?e.uiStyleSettings.toolbarActiveButtonStyleColorsClassName:e.toolbarActiveButtonStyleColorsClass.name,"").trim(),t.className+=" "+(e.uiStyleSettings.toolbarButtonStyleColorsClassName?e.uiStyleSettings.toolbarButtonStyleColorsClassName:e.toolbarButtonStyleColorsClass.name)})},o.prototype.addActionButton=function(e,t,s,r){var i=this,n=document.createElement("div");switch(n.className=""+this.toolbarButtonStyleClass.name,n.innerHTML=t,n.setAttribute("data-action",s),n.title=r,n.setAttribute("aria-label",r),n.addEventListener("click",function(){i.actionToolbarButtonClicked(n,s)}),s){case"select":case"undo":case"redo":n.style.fill=this.uiStyleSettings.selectButtonColor;break;case"delete":case"clear":n.style.fill=this.uiStyleSettings.deleteButtonColor;break;case"render":n.style.fill=this.uiStyleSettings.okButtonColor;break;
vendor: 33,002 bytes, line 1
1case"close":n.style.fill=this.uiStyleSettings.closeButtonColor}e.appendChild(n),this.buttons.push(n)},o.prototype.addStyles=function(){this.toolbarStyleClass=this.styles.addClass(new y("toolbar","\n      width: 100%;\n      flex-shrink: 0;\n      display: flex;\n      flex-direction: row;\n      justify-content: space-between;      \n      height: "+this.uiStyleSettings.toolbarHeight+"px;\n      box-sizing: content-box;\n      "+("inline"===this.displayMode?"border-top-left-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+"\n      "+("inline"===this.displayMode?"border-top-right-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+"\n      overflow: hidden;\n    ")),this.toolbarStyleColorsClass=this.styles.addClass(new y("toolbar_colors","\n      background-color: "+this.uiStyleSettings.toolbarBackgroundColor+";\n      box-shadow: 0px 3px rgba(33, 33, 33, 0.1);\n    ")),this.toolbarBlockStyleClass=this.styles.addClass(new y("toolbar-block","\n        display: inline-block;\n        box-sizing: content-box;\n    ")),this.toolbarOverflowBlockStyleClass=this.styles.addClass(new y("toolbar-overflow-block","\n        position: absolute;\n        top: "+this.uiStyleSettings.toolbarHeight+"px;\n        max-width: "+2*this.uiStyleSettings.toolbarHeight+"px;\n        z-index: 10;\n        box-sizing: content-box;\n      ")),this.toolbarOverflowBlockStyleColorsClass=this.styles.addClass(new y("toolbar-overflow-block_colors","\n        background-color: "+this.uiStyleSettings.toolbarBackgroundColor+";\n      "));var e=this.uiStyleSettings.toolbarHeight/4;this.toolbarButtonStyleClass=this.styles.addClass(new y("toolbar_button","\n      display: inline-block;\n      width: "+(this.uiStyleSettings.toolbarHeight-2*e)+"px;\n      height: "+(this.uiStyleSettings.toolbarHeight-2*e)+"px;\n      padding: "+e+"px;\n      box-sizing: content-box;\n    ")),this.toolbarButtonStyleColorsClass=this.styles.addClass(new y("toolbar_button_colors","\n      fill: "+this.uiStyleSettings.toolbarColor+";\n    ")),this.toolbarActiveButtonStyleColorsClass=this.styles.addClass(new y("toolbar_active_button","\n      fill: "+this.uiStyleSettings.toolbarColor+";\n      background-color: "+this.uiStyleSettings.toolbarBackgroundHoverColor+"\n    ")),this.styles.addRule(new S("."+this.toolbarButtonStyleClass.name+" svg","\n      height: "+this.uiStyleSettings.toolbarHeight/2+"px;\n    ")),this.styles.addRule(new S("."+this.toolbarButtonStyleColorsClass.name+":hover","\n        background-color: "+this.uiStyleSettings.toolbarBackgroundHoverColor+"\n    "))},o.prototype.markerToolbarButtonClicked=function(e,t){this.setActiveButton(e),this.buttonClickListeners&&this.buttonClickListeners.length>0&&this.buttonClickListeners.forEach(function(s){return s("marker",t)}),this.markerButtonOverflowBlock.style.display="none"},o.prototype.actionToolbarButtonClicked=function(e,t){this.buttonClickListeners&&this.buttonClickListeners.length>0&&this.buttonClickListeners.forEach(function(s){return s("action",t)}),this.markerButtonOverflowBlock.style.display="none",this.setActiveButton(this.buttons[0])},o.prototype.setActiveButton=function(e){this.resetButtonStyles(),e.className=e.className.replace(this.uiStyleSettings.toolbarButtonStyleColorsClassName?this.uiStyleSettings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name,"").trim(),e.className+=" "+(this.uiStyleSettings.toolbarActiveButtonStyleColorsClassName?this.uiStyleSettings.toolbarActiveButtonStyleColorsClassName:this.toolbarActiveButtonStyleColorsClass.name)},o.prototype.setActiveMarkerButton=function(e){var t=this.markerButtons.find(function(s){return s.getAttribute("data-type-name")===e});t&&this.setActiveButton(t)},o.prototype.setCurrentMarker=function(e){var t=this;this.currentMarker=e,this.buttons.filter(function(s){return/delete|notes/.test(s.getAttribute("data-action"))}).forEach(function(s){void 0===t.currentMarker?(s.style.fillOpacity="0.4",s.style.pointerEvents="none"):(s.style.fillOpacity="1",s.style.pointerEvents="all")})},o}(),pt=function(){function o(e,t,s,r){this.panels=[],this.panelButtons=[],this.markerjsContainer=e,this.displayMode=t,this.uiStyleSettings=s,this.styles=r,this.panelButtonClick=this.panelButtonClick.bind(this),this.addStyles()}return o.prototype.addStyles=function(){var e;this.toolboxStyleClass=this.styles.addClass(new y("toolbox","\n      width: 100%;\n      flex-shrink: 0;\n      display: flex;\n      flex-direction: column;\n      font-family: sans-serif;\n      "+("popup"===this.displayMode?"height:"+2.5*this.uiStyleSettings.toolbarHeight+"px;":"")+"\n      box-sizing: content-box;\n      "+("popup"===this.displayMode?"background-color: "+this.uiStyleSettings.canvasBackgroundColor+";":"")+"\n      "+("inline"===this.displayMode?"border-bottom-left-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+"\n      "+("inline"===this.displayMode?"border-bottom-right-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+"\n      overflow: hidden;\n    ")),this.toolboxStyleColorsClass=this.styles.addClass(new y("toolbox_colors","\n      color: "+this.uiStyleSettings.toolboxColor+";\n    "));var t=this.uiStyleSettings.toolbarHeight/4;this.toolboxButtonRowStyleClass=this.styles.addClass(new y("toolbox-button-row","\n      display: flex;\n      cursor: default;\n      box-sizing: content-box;\n    ")),this.toolboxButtonRowStyleColorsClass=this.styles.addClass(new y("toolbox-button-row_colors","\n      background-color: "+this.uiStyleSettings.toolbarBackgroundColor+";\n    ")),this.toolboxPanelRowStyleClass=this.styles.addClass(new y("toolbox-panel-row","\n      display: flex;\n      "+("inline"===this.displayMode?"position: absolute;":"")+"\n      "+("inline"===this.displayMode?"bottom: "+this.uiStyleSettings.toolbarHeight+"px;":"")+"\n      cursor: default;\n      height: "+1.5*this.uiStyleSettings.toolbarHeight+"px;\n      "+("inline"===this.displayMode?"width: 100%;":"")+"\n      box-sizing: content-box;\n    ")),this.toolboxPanelRowStyleColorsClass=this.styles.addClass(new y("toolbox-panel-row_colors","\n      background-color: "+(null!==(e=this.uiStyleSettings.toolboxBackgroundColor)&&void 0!==e?e:this.uiStyleSettings.toolbarBackgroundHoverColor)+";\n    ")),this.toolboxButtonStyleClass=this.styles.addClass(new y("toolbox_button","\n      display: inline-block;\n      width: "+(this.uiStyleSettings.toolbarHeight-2*t)+"px;\n      height: "+(this.uiStyleSettings.toolbarHeight-2*t)+"px;\n      padding: "+t+"px;\n      box-sizing: content-box;\n    ")),this.toolboxButtonStyleColorsClass=this.styles.addClass(new y("toolbox-button_colors","\n      fill: "+this.uiStyleSettings.toolbarColor+";\n    ")),this.toolboxActiveButtonStyleColorsClass=this.styles.addClass(new y("toolbox-active-button_colors","\n      background-color: "+this.uiStyleSettings.toolbarBackgroundHoverColor+";\n      fill: "+this.uiStyleSettings.toolbarColor+";\n    ")),this.styles.addRule(new S("."+this.toolboxButtonStyleColorsClass.name+":hover","\n        background-color: "+this.uiStyleSettings.toolbarBackgroundHoverColor+"\n    ")),this.styles.addRule(new S("."+this.toolboxButtonStyleClass.name+" svg","\n      height: "+this.uiStyleSettings.toolbarHeight/2+"px;\n    "))},o.prototype.show=function(e){var t;this.uiContainer=document.createElement("div"),this.uiContainer.style.visibility=e,this.uiContainer.className=this.toolboxStyleClass.name+" "+(null!==(t=this.uiStyleSettings.toolboxStyleColorsClassName)&&void 0!==t?t:this.toolboxStyleColorsClass.name),this.markerjsContainer.appendChild(this.uiContainer)},o.prototype.setPanelButtons=function(e){var t,s,r=this;this.panels=e,void 0!==this.uiContainer&&(this.uiContainer.innerHTML="",this.panelRow=document.createElement("div"),this.panelRow.className=this.toolboxPanelRowStyleClass.name+" "+(null!==(t=this.uiStyleSettings.toolboxPanelRowStyleColorsClassName)&&void 0!==t?t:this.toolboxPanelRowStyleColorsClass.name),this.uiContainer.appendChild(this.panelRow),this.buttonRow=document.createElement("div"),this.buttonRow.className=this.toolboxButtonRowStyleClass.name+" "+(null!==(s=this.uiStyleSettings.toolboxButtonRowStyleColorsClassName)&&void 0!==s?s:this.toolboxButtonRowStyleColorsClass.name)+" ",this.uiContainer.appendChild(this.buttonRow),this.panelButtons.splice(0),this.panels.forEach(function(i){var n;i.uiStyleSettings=r.uiStyleSettings;var h=document.createElement("div");h.className=r.toolboxButtonStyleClass.name+" "+(null!==(n=r.uiStyleSettings.toolboxButtonStyleColorsClassName)&&void 0!==n?n:r.toolboxButtonStyleColorsClass.name),h.innerHTML=i.icon,h.title=i.title,h.addEventListener("click",function(){r.panelButtonClick(i)}),r.panelButtons.push(h),r.buttonRow.appendChild(h)}),"inline"===this.displayMode?this.panelRow.style.display="none":this.panelRow.style.visibility="hidden")},o.prototype.panelButtonClick=function(e){var t=this,s=-1;if(e!==this.activePanel){s=this.panels.indexOf(e),this.panelRow.innerHTML="";var r=e.getUi();r.style.margin=this.uiStyleSettings.toolbarHeight/4+"px",this.panelRow.appendChild(r),this.panelRow.style.display="flex",this.panelRow.style.visibility="visible",this.panelRow.className=this.panelRow.className.replace(this.styles.fadeOutAnimationClassName,""),this.panelRow.className+=" "+this.styles.fadeInAnimationClassName,this.activePanel=e}else this.activePanel=void 0,this.panelRow.className=this.panelRow.className.replace(this.styles.fadeInAnimationClassName,""),this.panelRow.className+=" "+this.styles.fadeOutAnimationClassName,setTimeout(function(){"inline"===t.displayMode?t.panelRow.style.display="none":t.panelRow.style.visibility="hidden"},200);this.panelButtons.forEach(function(i,n){var h,c;i.className=t.toolboxButtonStyleClass.name+" "+(n===s?""+(null!==(h=t.uiStyleSettings.toolboxActiveButtonStyleColorsClassName)&&void 0!==h?h:t.toolboxActiveButtonStyleColorsClass.name):""+(null!==(c=t.uiStyleSettings.toolboxButtonStyleColorsClassName)&&void 0!==c?c:t.toolboxButtonStyleColorsClass.name))})},o}(),x=function(e,t){this.title=e,this.icon=t},f=function(o){function e(t,s,r,i){var n=o.call(this,t,i||'<svg viewBox="0 0 24 24"><path d="M17.5 12a1.5 1.5 0 01-1.5-1.5A1.5 1.5 0 0117.5 9a1.5 1.5 0 011.5 1.5 1.5 1.5 0 01-1.5 1.5m-3-4A1.5 1.5 0 0113 6.5 1.5 1.5 0 0114.5 5 1.5 1.5 0 0116 6.5 1.5 1.5 0 0114.5 8m-5 0A1.5 1.5 0 018 6.5 1.5 1.5 0 019.5 5 1.5 1.5 0 0111 6.5 1.5 1.5 0 019.5 8m-3 4A1.5 1.5 0 015 10.5 1.5 1.5 0 016.5 9 1.5 1.5 0 018 10.5 1.5 1.5 0 016.5 12M12 3a9 9 0 00-9 9 9 9 0 009 9 1.5 1.5 0 001.5-1.5c0-.39-.15-.74-.39-1-.23-.27-.38-.62-.38-1a1.5 1.5 0 011.5-1.5H16a5 5 0 005-5c0-4.42-4.03-8-9-8z"/></svg>')||this;return n.colors=[],n.addTransparent=!1,n.colorBoxes=[],n.colors=s,n.currentColor=r,n.setCurrentColor=n.setCurrentColor.bind(n),n.getColorBox=n.getColorBox.bind(n),n}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");return s.style.overflow="hidden",s.style.whiteSpace="nowrap",this.colors.forEach(function(r){var i=t.getColorBox(r);s.appendChild(i),t.colorBoxes.push(i)}),s},e.prototype.getColorBox=function(t){var s=this,i=this.uiStyleSettings.toolbarHeight-this.uiStyleSettings.toolbarHeight/4,n=document.createElement("div");n.style.display="inline-block",n.style.boxSizing="content-box",n.style.width=i-2+"px",n.style.height=i-2+"px",n.style.padding="1px",n.style.marginRight="2px",n.style.marginBottom="2px",n.style.borderWidth="2px",n.style.borderStyle="solid",n.style.borderRadius=(i+2)/2+"px",n.style.borderColor=t===this.currentColor?this.uiStyleSettings.toolboxAccentColor:"transparent",n.addEventListener("click",function(){s.setCurrentColor(t,n)});var h=document.createElement("div");return h.style.display="inline-block",h.style.width=i-2+"px",h.style.height=i-2+"px",h.style.backgroundColor=t,h.style.borderRadius=i/2+"px","transparent"===t&&(h.style.fill=this.uiStyleSettings.toolboxAccentColor,h.innerHTML='<svg viewBox="0 0 24 24">\n        <path d="M2,5.27L3.28,4L20,20.72L18.73,22L15.65,18.92C14.5,19.3 13.28,19.5 12,19.5C7,19.5 2.73,16.39 1,12C1.69,10.24 2.79,8.69 4.19,7.46L2,5.27M12,9A3,3 0 0,1 15,12C15,12.35 14.94,12.69 14.83,13L11,9.17C11.31,9.06 11.65,9 12,9M12,4.5C17,4.5 21.27,7.61 23,12C22.18,14.08 20.79,15.88 19,17.19L17.58,15.76C18.94,14.82 20.06,13.54 20.82,12C19.17,8.64 15.76,6.5 12,6.5C10.91,6.5 9.84,6.68 8.84,7L7.3,5.47C8.74,4.85 10.33,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C12.69,17.5 13.37,17.43 14,17.29L11.72,15C10.29,14.85 9.15,13.71 9,12.28L5.6,8.87C4.61,9.72 3.78,10.78 3.18,12Z" />\n      </svg>'),n.appendChild(h),n},e.prototype.setCurrentColor=function(t,s){var r=this;this.currentColor=t,this.colorBoxes.forEach(function(i){i.style.borderColor=i===s?r.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onColorChanged&&this.onColorChanged(t)},e}(x),R=function(){function o(e,t,s){this._state="new",this._isSelected=!1,this._container=e,this._overlayContainer=t,this.globalSettings=s,this.stateChanged=this.stateChanged.bind(this),this.colorChanged=this.colorChanged.bind(this),this.fillColorChanged=this.fillColorChanged.bind(this)}return Object.defineProperty(o.prototype,"typeName",{get:function(){return Object.getPrototypeOf(this).constructor.typeName},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"container",{get:function(){return this._container},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"overlayContainer",{get:function(){return this._overlayContainer},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"state",{get:function(){return this._state},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"toolboxPanels",{get:function(){return[]},enumerable:!1,configurable:!0}),o.prototype.ownsTarget=function(e){return!1},Object.defineProperty(o.prototype,"isSelected",{get:function(){return this._isSelected},enumerable:!1,configurable:!0}),o.prototype.select=function(){this.container.style.cursor="move",this._isSelected=!0,this.manipulationStartState=this.getState()},o.prototype.deselect=function(){this.container.style.cursor="default",this._isSelected=!1,this.stateChanged()},o.prototype.pointerDown=function(e,t){},o.prototype.dblClick=function(e,t){},o.prototype.manipulate=function(e){},o.prototype.pointerUp=function(e){this.stateChanged()},o.prototype.dispose=function(){},o.prototype.addMarkerVisualToContainer=function(e){this.container.childNodes.length>0?this.container.insertBefore(e,this.container.childNodes[0]):this.container.appendChild(e)},o.prototype.getState=function(){return{typeName:o.typeName,state:this.state,notes:this.notes}},o.prototype.restoreState=function(e){this._state=e.state,this.notes=e.notes},o.prototype.scale=function(e,t){},o.prototype.colorChanged=function(e){this.onColorChanged&&this.onColorChanged(e),this.stateChanged()},o.prototype.fillColorChanged=function(e){this.onFillColorChanged&&this.onFillColorChanged(e),this.stateChanged()},o.prototype.stateChanged=function(){if(this.onStateChanged&&"creating"!==this.state&&"new"!==this.state){var e=this.getState();void 0!==this.manipulationStartState&&(this.manipulationStartState.state="select"),e.state="select",JSON.stringify(this.manipulationStartState)!=JSON.stringify(e)&&this.onStateChanged(this)}},o.typeName="MarkerBase",o}(),$=function(){function o(){this.findGripByVisual=this.findGripByVisual.bind(this)}return o.prototype.findGripByVisual=function(e){return this.topLeft.ownsTarget(e)?this.topLeft:this.topCenter.ownsTarget(e)?this.topCenter:this.topRight.ownsTarget(e)?this.topRight:this.centerLeft.ownsTarget(e)?this.centerLeft:this.centerRight.ownsTarget(e)?this.centerRight:this.bottomLeft.ownsTarget(e)?this.bottomLeft:this.bottomCenter.ownsTarget(e)?this.bottomCenter:this.bottomRight.ownsTarget(e)?this.bottomRight:void 0},o}(),L=function(){function o(){this.GRIP_SIZE=10,this.visual=a.createGroup(),this.visual.appendChild(a.createCircle(1.5*this.GRIP_SIZE,[["fill","transparent"]])),this.visual.appendChild(a.createCircle(this.GRIP_SIZE,[["fill","#cccccc"],["fill-opacity","0.7"],["stroke","#333333"],["stroke-width","2"],["stroke-opacity","0.7"]]))}return o.prototype.ownsTarget=function(e){return e===this.visual||e===this.visual.childNodes[0]||e===this.visual.childNodes[1]},o}(),P=function(){function o(){}return o.toITransformMatrix=function(e){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}},o.toSVGMatrix=function(e,t){return e.a=t.a,e.b=t.b,e.c=t.c,e.d=t.d,e.e=t.e,e.f=t.f,e},o}(),w=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.left=0,i.top=0,i.width=0,i.height=0,i.defaultSize={x:50,y:20},i.offsetX=0,i.offsetY=0,i.rotationAngle=0,i.CB_DISTANCE=10,i._suppressMarkerCreateEvent=!1,i.container.transform.baseVal.appendItem(a.createTransform()),i.setupControlBox(),i}return u(e,o),Object.defineProperty(e.prototype,"centerX",{get:function(){return this.left+this.width/2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"centerY",{get:function(){return this.top+this.height/2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"visual",{get:function(){return this._visual},set:function(s){this._visual=s;var r=a.createTransform();this._visual.transform.baseVal.appendItem(r)},enumerable:!1,configurable:!0}),e.prototype.ownsTarget=function(t){return!!o.prototype.ownsTarget.call(this,t)||!!(void 0!==this.controlGrips.findGripByVisual(t)||void 0!==this.rotatorGrip&&this.rotatorGrip.ownsTarget(t))},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"new"===this.state&&(this.left=t.x,this.top=t.y),this.manipulationStartLeft=this.left,this.manipulationStartTop=this.top,this.manipulationStartWidth=this.width,this.manipulationStartHeight=this.height;var r=this.unrotatePoint(t);if(this.manipulationStartX=r.x,this.manipulationStartY=r.y,this.offsetX=r.x-this.left,this.offsetY=r.y-this.top,"new"!==this.state)if(this.select(),this.activeGrip=this.controlGrips.findGripByVisual(s),void 0!==this.activeGrip)this._state="resize";else if(void 0!==this.rotatorGrip&&this.rotatorGrip.ownsTarget(s)){this.activeGrip=this.rotatorGrip;var i=this.rotatePoint({x:this.centerX,y:this.centerY});this.left=i.x-this.width/2,this.top=i.y-this.height/2,this.moveVisual({x:this.left,y:this.top});var n=this.container.transform.baseVal.getItem(0);n.setRotate(this.rotationAngle,this.centerX,this.centerY),this.container.transform.baseVal.replaceItem(n,0),this.adjustControlBox(),this._state="rotate"}else this._state="move"},e.prototype.pointerUp=function(t){var s=this.state;o.prototype.pointerUp.call(this,t),"creating"===this.state&&this.width<10&&this.height<10?(this.width=this.defaultSize.x,this.height=this.defaultSize.y):this.manipulate(t),this._state="select","creating"===s&&this.onMarkerCreated&&!1===this._suppressMarkerCreateEvent&&this.onMarkerCreated(this)},e.prototype.moveVisual=function(t){this.visual.style.transform="translate("+t.x+"px, "+t.y+"px)"},e.prototype.manipulate=function(t){var s=this.unrotatePoint(t);"creating"===this.state?this.resize(t):"move"===this.state?(this.left=this.manipulationStartLeft+(s.x-this.manipulationStartLeft)-this.offsetX,this.top=this.manipulationStartTop+(s.y-this.manipulationStartTop)-this.offsetY,this.moveVisual({x:this.left,y:this.top}),this.adjustControlBox()):"resize"===this.state?this.resize(s):"rotate"===this.state&&this.rotate(t)},e.prototype.resize=function(t){var s=this.manipulationStartLeft,r=this.manipulationStartWidth,i=this.manipulationStartTop,n=this.manipulationStartHeight;switch(this.activeGrip){case this.controlGrips.bottomLeft:case this.controlGrips.centerLeft:case this.controlGrips.topLeft:r=this.manipulationStartWidth+this.manipulationStartLeft-(s=this.manipulationStartLeft+t.x-this.manipulationStartX);break;case this.controlGrips.bottomRight:case this.controlGrips.centerRight:case this.controlGrips.topRight:case void 0:r=this.manipulationStartWidth+t.x-this.manipulationStartX}switch(this.activeGrip){case this.controlGrips.topCenter:case this.controlGrips.topLeft:case this.controlGrips.topRight:n=this.manipulationStartHeight+this.manipulationStartTop-(i=this.manipulationStartTop+t.y-this.manipulationStartY);break;case this.controlGrips.bottomCenter:case this.controlGrips.bottomLeft:case this.controlGrips.bottomRight:case void 0:n=this.manipulationStartHeight+t.y-this.manipulationStartY}r>=0?(this.left=s,this.width=r):(this.left=s+r,this.width=-r),n>=0?(this.top=i,this.height=n):(this.top=i+n,this.height=-n),this.setSize()},e.prototype.setSize=function(){this.moveVisual({x:this.left,y:this.top}),this.adjustControlBox()},e.prototype.rotate=function(t){if(Math.abs(t.x-this.centerX)>.1){var s=Math.sign(t.x-this.centerX);this.rotationAngle=180*Math.atan((t.y-this.centerY)/(t.x-this.centerX))/Math.PI+90*s,this.applyRotation()}},e.prototype.applyRotation=function(){var t=this.container.transform.baseVal.getItem(0);t.setRotate(this.rotationAngle,this.centerX,this.centerY),this.container.transform.baseVal.replaceItem(t,0)},e.prototype.rotatePoint=function(t){if(0===this.rotationAngle)return t;var s=this.container.getCTM(),r=a.createPoint(t.x,t.y);return{x:(r=r.matrixTransform(s)).x,y:r.y}},e.prototype.unrotatePoint=function(t){if(0===this.rotationAngle)return t;var s=this.container.getCTM();s=s.inverse();var r=a.createPoint(t.x,t.y);return{x:(r=r.matrixTransform(s)).x,y:r.y}},e.prototype.select=function(){o.prototype.select.call(this),this.adjustControlBox(),this.controlBox.style.display=""},e.prototype.deselect=function(){o.prototype.deselect.call(this),this.controlBox.style.display="none"},e.prototype.setupControlBox=function(){this.controlBox=a.createGroup();var t=a.createTransform();t.setTranslate(-this.CB_DISTANCE/2,-this.CB_DISTANCE/2),this.controlBox.transform.baseVal.appendItem(t),this.container.appendChild(this.controlBox),this.controlRect=a.createRect(this.width+this.CB_DISTANCE,this.height+this.CB_DISTANCE,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"],["fill","transparent"],["pointer-events","none"]]),this.controlBox.appendChild(this.controlRect),!0!==this.globalSettings.disableRotation&&(this.rotatorGripLine=a.createLine((this.width+2*this.CB_DISTANCE)/2,this.top-this.CB_DISTANCE,(this.width+2*this.CB_DISTANCE)/2,this.top-3*this.CB_DISTANCE,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.controlBox.appendChild(this.rotatorGripLine)),this.controlGrips=new $,this.addControlGrips(),this.controlBox.style.display="none"},e.prototype.adjustControlBox=function(){var t=this.controlBox.transform.baseVal.getItem(0);t.setTranslate(this.left-this.CB_DISTANCE/2,this.top-this.CB_DISTANCE/2),this.controlBox.transform.baseVal.replaceItem(t,0),this.controlRect.setAttribute("width",(this.width+this.CB_DISTANCE).toString()),this.controlRect.setAttribute("height",(this.height+this.CB_DISTANCE).toString()),void 0!==this.rotatorGripLine&&(this.rotatorGripLine.setAttribute("x1",((this.width+this.CB_DISTANCE)/2).toString()),this.rotatorGripLine.setAttribute("y1",(-this.CB_DISTANCE/2).toString()),this.rotatorGripLine.setAttribute("x2",((this.width+this.CB_DISTANCE)/2).toString()),this.rotatorGripLine.setAttribute("y2",(3*-this.CB_DISTANCE).toString())),this.positionGrips()},e.prototype.addControlGrips=function(){this.controlGrips.topLeft=this.createGrip(),this.controlGrips.topCenter=this.createGrip(),this.controlGrips.topRight=this.createGrip(),this.controlGrips.centerLeft=this.createGrip(),this.controlGrips.centerRight=this.createGrip(),this.controlGrips.bottomLeft=this.createGrip(),this.controlGrips.bottomCenter=this.createGrip(),this.controlGrips.bottomRight=this.createGrip(),!0!==this.globalSettings.disableRotation&&(this.rotatorGrip=this.createGrip()),this.positionGrips()},e.prototype.createGrip=function(){var t=new L;return t.visual.transform.baseVal.appendItem(a.createTransform()),this.controlBox.appendChild(t.visual),t},e.prototype.positionGrips=function(){var t=this.controlGrips.topLeft.GRIP_SIZE,s=-t/2,r=s,i=(this.width+this.CB_DISTANCE)/2-t/2,n=(this.height+this.CB_DISTANCE)/2-t/2,h=this.height+this.CB_DISTANCE-t/2,c=this.width+this.CB_DISTANCE-t/2;this.positionGrip(this.controlGrips.topLeft.visual,s,r),this.positionGrip(this.controlGrips.topCenter.visual,i,r),this.positionGrip(this.controlGrips.topRight.visual,c,r),this.positionGrip(this.controlGrips.centerLeft.visual,s,n),this.positionGrip(this.controlGrips.centerRight.visual,c,n),this.positionGrip(this.controlGrips.bottomLeft.visual,s,h),this.positionGrip(this.controlGrips.bottomCenter.visual,i,h),this.positionGrip(this.controlGrips.bottomRight.visual,c,h),void 0!==this.rotatorGrip&&this.positionGrip(this.rotatorGrip.visual,i,r-3*this.CB_DISTANCE)},e.prototype.positionGrip=function(t,s,r){var i=t.transform.baseVal.getItem(0);i.setTranslate(s,r),t.transform.baseVal.replaceItem(i,0)},e.prototype.hideControlBox=function(){this.controlBox.style.display="none"},e.prototype.showControlBox=function(){this.controlBox.style.display=""},e.prototype.getState=function(){return Object.assign({left:this.left,top:this.top,width:this.width,height:this.height,rotationAngle:this.rotationAngle,visualTransformMatrix:P.toITransformMatrix(this.visual.transform.baseVal.getItem(0).matrix),containerTransformMatrix:P.toITransformMatrix(this.container.transform.baseVal.getItem(0).matrix)},o.prototype.getState.call(this))},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t);var s=t;this.left=s.left,this.top=s.top,this.width=s.width,this.height=s.height,this.rotationAngle=s.rotationAngle,this.visual.transform.baseVal.getItem(0).setMatrix(P.toSVGMatrix(this.visual.transform.baseVal.getItem(0).matrix,s.visualTransformMatrix)),this.container.transform.baseVal.getItem(0).setMatrix(P.toSVGMatrix(this.container.transform.baseVal.getItem(0).matrix,s.containerTransformMatrix))},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s);var r=this.rotatePoint({x:this.left,y:this.top}),i=this.unrotatePoint({x:r.x*t,y:r.y*s});this.left=i.x,this.top=i.y,this.width=this.width*t,this.height=this.height*s,this.adjustControlBox()},e}(R),O=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.fillColor="transparent",i.strokeColor="transparent",i.strokeWidth=0,i.strokeDasharray="",i.opacity=1,i.setStrokeColor=i.setStrokeColor.bind(i),i.setFillColor=i.setFillColor.bind(i),i.setStrokeWidth=i.setStrokeWidth.bind(i),i.setStrokeDasharray=i.setStrokeDasharray.bind(i),i.createVisual=i.createVisual.bind(i),i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual)},e.prototype.createVisual=function(){this.visual=a.createRect(1,1,[["fill",this.fillColor],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["stroke-dasharray",this.strokeDasharray],["opacity",this.opacity.toString()]]),this.addMarkerVisualToContainer(this.visual)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"new"===this.state&&(this.createVisual(),this.moveVisual(t),this._state="creating")},e.prototype.manipulate=function(t){o.prototype.manipulate.call(this,t)},e.prototype.resize=function(t){o.prototype.resize.call(this,t),this.setSize()},e.prototype.setSize=function(){o.prototype.setSize.call(this),a.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]])},e.prototype.pointerUp=function(t){o.prototype.pointerUp.call(this,t),this.setSize()},e.prototype.setStrokeColor=function(t){this.strokeColor=t,this.visual&&a.setAttributes(this.visual,[["stroke",this.strokeColor]]),this.colorChanged(t),this.stateChanged()},e.prototype.setFillColor=function(t){this.fillColor=t,this.visual&&a.setAttributes(this.visual,[["fill",this.fillColor]]),this.stateChanged()},e.prototype.setStrokeWidth=function(t){this.strokeWidth=t,this.visual&&a.setAttributes(this.visual,[["stroke-width",this.strokeWidth.toString()]]),this.stateChanged()},e.prototype.setStrokeDasharray=function(t){this.strokeDasharray=t,this.visual&&a.setAttributes(this.visual,[["stroke-dasharray",this.strokeDasharray]]),this.stateChanged()},e.prototype.getState=function(){return Object.assign({fillColor:this.fillColor,strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,opacity:this.opacity},o.prototype.getState.call(this))},e.prototype.restoreState=function(t){var s=t;this.fillColor=s.fillColor,this.strokeColor=s.strokeColor,this.strokeWidth=s.strokeWidth,this.strokeDasharray=s.strokeDasharray,this.opacity=s.opacity,this.createVisual(),o.prototype.restoreState.call(this,t),this.setSize()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.setSize()},e.title="Rectangle marker",e}(w),k=function(o){function e(t,s,r,i){var n=o.call(this,t,i||'<svg viewBox="0 0 24 24"><path d="M3 17h18v-2H3v2m0 3h18v-1H3v1m0-7h18v-3H3v3m0-9v4h18V4H3z"/></svg>')||this;return n.widths=[],n.widthBoxes=[],n.widths=s,n.currentWidth=r,n.setCurrentWidth=n.setCurrentWidth.bind(n),n}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");return s.style.display="flex",s.style.overflow="hidden",s.style.flexGrow="2",this.widths.forEach(function(r){var i=document.createElement("div");i.style.display="flex",i.style.flexGrow="2",i.style.alignItems="center",i.style.justifyContent="space-between",i.style.padding="5px",i.style.borderWidth="2px",i.style.borderStyle="solid",i.style.borderColor=r===t.currentWidth?t.uiStyleSettings.toolboxAccentColor:"transparent",i.addEventListener("click",function(){t.setCurrentWidth(r,i)}),s.appendChild(i);var n=document.createElement("div");n.innerText=r.toString(),n.style.marginRight="5px",i.appendChild(n);var h=document.createElement("div");h.style.minHeight="20px",h.style.flexGrow="2",h.style.display="flex",h.style.alignItems="center";var c=document.createElement("hr");c.style.minWidth="20px",c.style.border="0px",c.style.borderTop=r+"px solid "+t.uiStyleSettings.toolboxColor,c.style.flexGrow="2",h.appendChild(c),i.appendChild(h),t.widthBoxes.push(i)}),s},e.prototype.setCurrentWidth=function(t,s){var r=this;this.currentWidth=t,this.widthBoxes.forEach(function(i){i.style.borderColor=i===s?r.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onWidthChanged&&this.onWidthChanged(this.currentWidth)},e}(x),B=function(o){function e(t,s,r,i){var n=o.call(this,t,i||'<svg viewBox="0 0 24 24"><path d="M3 16h5v-2H3v2m6.5 0h5v-2h-5v2m6.5 0h5v-2h-5v2M3 20h2v-2H3v2m4 0h2v-2H7v2m4 0h2v-2h-2v2m4 0h2v-2h-2v2m4 0h2v-2h-2v2M3 12h8v-2H3v2m10 0h8v-2h-8v2M3 4v4h18V4H3z"/></svg>')||this;return n.styles=[],n.styleBoxes=[],n.styles=s,n.currentStyle=r,n.setCurrentStyle=n.setCurrentStyle.bind(n),n}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");return s.style.display="flex",s.style.overflow="hidden",s.style.flexGrow="2",this.styles.forEach(function(r){var i=document.createElement("div");i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="space-between",i.style.padding="5px",i.style.borderWidth="2px",i.style.borderStyle="solid",i.style.overflow="hidden",i.style.maxWidth=100/t.styles.length-5+"%",i.style.borderColor=r===t.currentStyle?t.uiStyleSettings.toolboxAccentColor:"transparent",i.addEventListener("click",function(){t.setCurrentStyle(r,i)}),s.appendChild(i);var n=document.createElement("div");n.style.minHeight="20px",n.style.flexGrow="2",n.style.overflow="hidden",n.innerHTML='<svg width="100" height="20">\n      <line x1="0" y1="10" x2="100" y2="10" stroke="'+t.uiStyleSettings.toolboxColor+'" stroke-width="3" '+(""!==r?'stroke-dasharray="'+r+'"':"")+" />\n  </svg>",i.appendChild(n),t.styleBoxes.push(i)}),s},e.prototype.setCurrentStyle=function(t,s){var r=this;this.currentStyle=t,this.styleBoxes.forEach(function(i){i.style.borderColor=i===s?r.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onStyleChanged&&this.onStyleChanged(this.currentStyle)},e}(x),D=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.strokeColor=r.defaultColor,i.strokeWidth=r.defaultStrokeWidth,i.strokeDasharray=r.defaultStrokeDasharray,i.strokePanel=new f("Line color",r.defaultColorSet,r.defaultColor),i.strokePanel.onColorChanged=i.setStrokeColor,i.strokeWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.strokeWidthPanel.onWidthChanged=i.setStrokeWidth,i.strokeStylePanel=new B("Line style",r.defaultStrokeDasharrays,r.defaultStrokeDasharray),i.strokeStylePanel.onStyleChanged=i.setStrokeDasharray,i}return u(e,o),Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=o.prototype.getState.call(this);return t.typeName=e.typeName,t},e.typeName="FrameMarker",e.title="Frame marker",e.icon='<svg viewBox="0 0 24 24"><path d="M4 6v13h16V6H4m14 11H6V8h12v9z"/></svg>',e}(O),q=function(){this.defaultColorSet=["#EF4444","#10B981","#2563EB","#F
1FFF00","#7C3AED","#F472B6","#000000","#FFFFFF"],this.defaultColor=this.defaultColorSet[0],this.defaultFillColor=this.defaultColorSet[0],this.defaultStrokeColor=this.defaultColorSet[7],this.defaultHighlightColor=this.defaultColorSet[3],this.defaultStrokeWidth=3,this.defaultStrokeDasharray="",this.defaultHighlightOpacity=.5,this.defaultFontFamily="Helvetica, Arial, sans-serif",this.defaultStrokeWidths=[1,2,3,5,10],this.defaultStrokeDasharrays=["","3","12 3","9 6 3 6"],this.defaultOpacitySteps=[.1,.25,.5,.75,1],this.displayMode="inline",this.defaultFontFamilies=['Times, "Times New Roman", serif',"Helvetica, Arial, sans-serif",'Courier, "Courier New", monospace',"cursive","fantasy"],this.popupMargin=30,this.newFreehandMarkerOnPointerUp=!1,this.defaultColorsFollowCurrentColors=!1,this.freehandPixelRatio=1,this.disableRotation=!1,this.defaultCaptionFontSize="1rem",this.defaultCaptionText="Text",this.wrapText=!1},V=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.x1=0,i.y1=0,i.x2=0,i.y2=0,i.defaultLength=50,i.manipulationStartX=0,i.manipulationStartY=0,i.manipulationStartX1=0,i.manipulationStartY1=0,i.manipulationStartX2=0,i.manipulationStartY2=0,i.setupControlBox(),i}return u(e,o),e.prototype.ownsTarget=function(t){return!!o.prototype.ownsTarget.call(this,t)||!(!this.grip1.ownsTarget(t)&&!this.grip2.ownsTarget(t))},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),this.manipulationStartX=t.x,this.manipulationStartY=t.y,"new"===this.state&&(this.x1=t.x,this.y1=t.y,this.x2=t.x,this.y2=t.y),this.manipulationStartX1=this.x1,this.manipulationStartY1=this.y1,this.manipulationStartX2=this.x2,this.manipulationStartY2=this.y2,"new"!==this.state&&(this.select(),this.activeGrip=this.grip1.ownsTarget(s)?this.grip1:this.grip2.ownsTarget(s)?this.grip2:void 0,this._state=this.activeGrip?"resize":"move")},e.prototype.pointerUp=function(t){var s=this.state;o.prototype.pointerUp.call(this,t),"creating"===this.state&&Math.abs(this.x1-this.x2)<10&&Math.abs(this.y1-this.y2)<10?(this.x2=this.x1+this.defaultLength,this.adjustVisual(),this.adjustControlBox()):this.manipulate(t),this._state="select","creating"===s&&this.onMarkerCreated&&this.onMarkerCreated(this)},e.prototype.adjustVisual=function(){},e.prototype.manipulate=function(t){"creating"===this.state?this.resize(t):"move"===this.state?(this.x1=this.manipulationStartX1+t.x-this.manipulationStartX,this.y1=this.manipulationStartY1+t.y-this.manipulationStartY,this.x2=this.manipulationStartX2+t.x-this.manipulationStartX,this.y2=this.manipulationStartY2+t.y-this.manipulationStartY,this.adjustVisual(),this.adjustControlBox()):"resize"===this.state&&this.resize(t)},e.prototype.resize=function(t){switch(this.activeGrip){case this.grip1:this.x1=t.x,this.y1=t.y;break;case this.grip2:case void 0:this.x2=t.x,this.y2=t.y}this.adjustVisual(),this.adjustControlBox()},e.prototype.select=function(){o.prototype.select.call(this),this.adjustControlBox(),this.controlBox.style.display=""},e.prototype.deselect=function(){o.prototype.deselect.call(this),this.controlBox.style.display="none"},e.prototype.setupControlBox=function(){this.controlBox=a.createGroup(),this.container.appendChild(this.controlBox),this.addControlGrips(),this.controlBox.style.display="none"},e.prototype.adjustControlBox=function(){this.positionGrips()},e.prototype.addControlGrips=function(){this.grip1=this.createGrip(),this.grip2=this.createGrip(),this.positionGrips()},e.prototype.createGrip=function(){var t=new L;return t.visual.transform.baseVal.appendItem(a.createTransform()),this.controlBox.appendChild(t.visual),t},e.prototype.positionGrips=function(){var t=this.grip1.GRIP_SIZE;this.positionGrip(this.grip1.visual,this.x1-t/2,this.y1-t/2),this.positionGrip(this.grip2.visual,this.x2-t/2,this.y2-t/2)},e.prototype.positionGrip=function(t,s,r){var i=t.transform.baseVal.getItem(0);i.setTranslate(s,r),t.transform.baseVal.replaceItem(i,0)},e.prototype.getState=function(){return Object.assign({x1:this.x1,y1:this.y1,x2:this.x2,y2:this.y2},o.prototype.getState.call(this))},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t);var s=t;this.x1=s.x1,this.y1=s.y1,this.x2=s.x2,this.y2=s.y2},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.x1=this.x1*t,this.y1=this.y1*s,this.x2=this.x2*t,this.y2=this.y2*s,this.adjustVisual(),this.adjustControlBox()},e}(R),A=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.strokeColor="transparent",i.strokeWidth=0,i.strokeDasharray="",i.setStrokeColor=i.setStrokeColor.bind(i),i.setStrokeWidth=i.setStrokeWidth.bind(i),i.setStrokeDasharray=i.setStrokeDasharray.bind(i),i.strokeColor=r.defaultColor,i.strokeWidth=r.defaultStrokeWidth,i.strokeDasharray=r.defaultStrokeDasharray,i.strokePanel=new f("Line color",r.defaultColorSet,r.defaultColor),i.strokePanel.onColorChanged=i.setStrokeColor,
vendor: 73,675 bytes, line 1
1i.strokeWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.strokeWidthPanel.onWidthChanged=i.setStrokeWidth,i.strokeStylePanel=new B("Line style",r.defaultStrokeDasharrays,r.defaultStrokeDasharray),i.strokeStylePanel.onStyleChanged=i.setStrokeDasharray,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual&&t!==this.selectorLine&&t!==this.visibleLine)},e.prototype.createVisual=function(){this.visual=a.createGroup(),this.selectorLine=a.createLine(this.x1,this.y1,this.x2,this.y2,[["stroke","transparent"],["stroke-width",(this.strokeWidth+10).toString()]]),this.visibleLine=a.createLine(this.x1,this.y1,this.x2,this.y2,[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),this.visual.appendChild(this.selectorLine),this.visual.appendChild(this.visibleLine),this.addMarkerVisualToContainer(this.visual)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"new"===this.state&&(this.createVisual(),this.adjustVisual(),this._state="creating")},e.prototype.adjustVisual=function(){this.selectorLine&&this.visibleLine&&(this.selectorLine.setAttribute("x1",this.x1.toString()),this.selectorLine.setAttribute("y1",this.y1.toString()),this.selectorLine.setAttribute("x2",this.x2.toString()),this.selectorLine.setAttribute("y2",this.y2.toString()),this.visibleLine.setAttribute("x1",this.x1.toString()),this.visibleLine.setAttribute("y1",this.y1.toString()),this.visibleLine.setAttribute("x2",this.x2.toString()),this.visibleLine.setAttribute("y2",this.y2.toString()),a.setAttributes(this.visibleLine,[["stroke",this.strokeColor]]),a.setAttributes(this.visibleLine,[["stroke-width",this.strokeWidth.toString()]]),a.setAttributes(this.visibleLine,[["stroke-dasharray",this.strokeDasharray.toString()]]))},e.prototype.setStrokeColor=function(t){this.strokeColor=t,this.adjustVisual(),this.colorChanged(t)},e.prototype.setStrokeWidth=function(t){this.strokeWidth=t,this.adjustVisual()},e.prototype.setStrokeDasharray=function(t){this.strokeDasharray=t,this.adjustVisual(),this.stateChanged()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t);var s=t;this.strokeColor=s.strokeColor,this.strokeWidth=s.strokeWidth,this.strokeDasharray=s.strokeDasharray,this.createVisual(),this.adjustVisual()},e.typeName="LineMarker",e.title="Line marker",e.icon='<svg viewBox="0 0 24 24"><path d="M19 13H5v-2h14v2z"/></svg>',e}(V),I=function(o){function e(t,s,r,i){var n=o.call(this,t,i||'<svg viewBox="0 0 24 24"><path d="M17 8h3v12h1v1h-4v-1h1v-3h-4l-1.5 3H14v1h-4v-1h1l6-12m1 1l-3.5 7H18V9M5 3h5c1.11 0 2 .89 2 2v11H9v-5H6v5H3V5c0-1.11.89-2 2-2m1 2v4h3V5H6z"/></svg>')||this;return n.fonts=[],n.fontBoxes=[],n.fonts=s,n.currentFont=r,n.setCurrentFont=n.setCurrentFont.bind(n),n}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");return s.style.overflow="hidden",s.style.flexGrow="2",this.fonts.forEach(function(r){var i=document.createElement("div");i.style.display="inline-block",i.style.alignItems="center",i.style.justifyContent="space-between",i.style.padding="5px",i.style.borderWidth="2px",i.style.borderStyle="solid",i.style.overflow="hidden",i.style.maxWidth=100/t.fonts.length-5+"%",i.style.borderColor=r===t.currentFont?t.uiStyleSettings.toolboxAccentColor:"transparent",i.addEventListener("click",function(){t.setCurrentFont(r,i)}),s.appendChild(i);var n=document.createElement("div");n.style.display="flex",n.style.minHeight="20px",n.style.flexGrow="2",n.style.fontFamily=r,n.style.overflow="hidden";var h=document.createElement("div");h.style.whiteSpace="nowrap",h.style.overflow="hidden",h.style.textOverflow="ellipsis",h.innerHTML="The quick brown fox jumps over the lazy dog",n.appendChild(h),i.appendChild(n),t.fontBoxes.push(i)}),s},e.prototype.setCurrentFont=function(t,s){var r=this;this.currentFont=t,this.fontBoxes.forEach(function(i){i.style.borderColor=i===s?r.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onFontChanged&&this.onFontChanged(this.currentFont)},e}(x),E=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.color="transparent",i.padding=5,i.DEFAULT_TEXT="your text here",i.text=i.DEFAULT_TEXT,i.isMoved=!1,i.color=r.defaultColor,i.fontFamily=r.defaultFontFamily,i.defaultSize={x:100,y:30},i.setColor=i.setColor.bind(i),i.setFont=i.setFont.bind(i),i.renderText=i.renderText.bind(i),i.sizeText=i.sizeText.bind(i),i.textEditDivClicked=i.textEditDivClicked.bind(i),i.showTextEditor=i.showTextEditor.bind(i),i.setSize=i.setSize.bind(i),i.positionTextEditor=i.positionTextEditor.bind(i),i.wrapText=i.wrapText.bind(i),i.colorPanel=new f("Color",r.defaultColorSet,r.defaultColor),i.colorPanel.onColorChanged=i.setColor,i.fontFamilyPanel=new I("Font",r.defaultFontFamilies,r.defaultFontFamily),i.fontFamilyPanel.onFontChanged=i.setFont,i}return u(e,o),e.prototype.ownsTarget=function(t){if(o.prototype.ownsTarget.call(this,t)||t===this.visual||t===this.textElement||t===this.bgRectangle)return!0;var s=!1;return this.textElement.childNodes.forEach(function(r){r===t&&(s=!0)}),s},e.prototype.createVisual=function(){this.visual=a.createGroup(),this.bgRectangle=a.createRect(1,1,[["fill","transparent"]]),this.visual.appendChild(this.bgRectangle),this.textElement=a.createText([["fill",this.color],["font-family",this.fontFamily],["font-size","16px"],["x","0"],["y","0"]]),this.textElement.transform.baseVal.appendItem(a.createTransform()),this.textElement.transform.baseVal.appendItem(a.createTransform()),this.visual.appendChild(this.textElement),this.addMarkerVisualToContainer(this.visual),this.renderText()},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),this.isMoved=!1,this.pointerDownPoint=t,this.pointerDownTimestamp=Date.now(),"new"===this.state&&(this.createVisual(),this.moveVisual(t),this._state="creating")},e.prototype.wrapText=function(){function t(p){var l=p[0].length;return p.forEach(function(d){d.length>l&&(l=d.length)}),.35*l/p.length}if(""!==this.text){for(var s=this.text.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/),r=1*this.width/this.height,i=new(Array.bind.apply(Array,T([void 0],s))),n=t(i),h=Number.MAX_VALUE,c=function(){var l=i[0];i.forEach(function(d){d.length>l.length&&(l=d)}),(h=l.lastIndexOf(" ",h-1))>0?(i=[],s.forEach(function(d){for(var g=d;g.length>h;){var v=g.lastIndexOf(" ",h);v<0&&(v=g.indexOf(" ")),v>0?(i.push(g.substring(0,v)),g=g.substring(v).trim()):(i.push(g),g="")}i.push(g)}),n=t(i)):n=-1};n>r;)c();return i.join("\r\n")}return this.text},e.prototype.renderText=function(){var t=this;if(this.textElement){for(;this.textElement.lastChild;)this.textElement.removeChild(this.textElement.lastChild);(this.globalSettings.wrapText?this.wrapText():this.text).split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/).forEach(function(s){t.textElement.appendChild(a.createTSpan(""===s.trim()?" ":s.trim(),[["x","0"],["dy","1.2em"]]))}),setTimeout(this.sizeText,10)}},e.prototype.getTextScale=function(){var t=this.textElement.getBBox(),s=1;return t.width>0&&t.height>0&&(s=Math.min((1*this.width-this.width*this.padding*2/100)/t.width,(1*this.height-this.height*this.padding*2/100)/t.height)),s},e.prototype.getTextPosition=function(t){var s="rtl"===window.getComputedStyle(this.textElement).direction?1:-1,r=this.textElement.getBBox(),i=0,n=0;return r.width>0&&r.height>0&&(i=(this.width+s*r.width*t)/2,n=this.height/2-r.height*t/2),{x:i,y:n}},e.prototype.sizeText=function(){var t=this.textElement.getBBox(),s=this.getTextScale(),r=this.getTextPosition(s);r.y-=t.y*s,navigator.userAgent.indexOf("Edge/")>-1?this.textElement.style.transform="translate("+r.x+"px, "+r.y+"px) scale("+s+", "+s+")":(this.textElement.transform.baseVal.getItem(0).setTranslate(r.x,r.y),this.textElement.transform.baseVal.getItem(1).setScale(s,s))},e.prototype.manipulate=function(t){o.prototype.manipulate.call(this,t),void 0!==this.pointerDownPoint&&(this.isMoved=Math.abs(t.x-this.pointerDownPoint.x)>5||Math.abs(t.y-this.pointerDownPoint.y)>5)},e.prototype.resize=function(t){o.prototype.resize.call(this,t),this.isMoved=!0,this.setSize(),this.globalSettings.wrapText?this.renderText():this.sizeText()},e.prototype.setSize=function(){o.prototype.setSize.call(this),this.visual&&this.bgRectangle&&(a.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]]),a.setAttributes(this.bgRectangle,[["width",this.width.toString()],["height",this.height.toString()]]))},e.prototype.pointerUp=function(t){var s=this.state;"creating"===s&&(this._suppressMarkerCreateEvent=!0),o.prototype.pointerUp.call(this,t),this.setSize(),("creating"===s||!this.isMoved&&Date.now()-this.pointerDownTimestamp>500)&&this.showTextEditor(),this.pointerDownPoint=void 0},e.prototype.showTextEditor=function(){var t=this;this._state="edit",this.overlayContainer.innerHTML="",this.textEditDiv=document.createElement("div"),this.textEditDiv.style.flexGrow="2",this.textEditDiv.style.alignItems="center",this.textEditDiv.style.justifyContent="center",this.textEditDiv.style.pointerEvents="auto",this.textEditDiv.style.overflow="hidden",this.textEditor=document.createElement("div"),this.textEditor.style.position="absolute",this.textEditor.style.fontFamily=this.fontFamily,this.textEditor.style.lineHeight="1em",this.textEditor.innerText=this.text,this.textEditor.contentEditable="true",this.textEditor.style.color=this.color,this.textEditor.style.whiteSpace="pre",this.positionTextEditor(),this.textEditor.addEventListener("pointerup",function(s){s.stopPropagation()}),this.globalSettings.wrapText||this.textEditor.addEventListener("input",function(){for(var s=Number.parseFloat(t.textEditor.style.fontSize);t.textEditor.clientWidth>=Number.parseInt(t.textEditor.style.maxWidth)&&s>.9;)s-=.1,t.textEditor.style.fontSize=Math.max(s,.9)+"em"}),this.textEditor.addEventListener("keyup",function(s){s.cancelBubble=!0}),this.textEditor.addEventListener("paste",function(s){if(s.clipboardData){var r=s.clipboardData.getData("text"),i=window.getSelection();if(!i.rangeCount)return!1;i.deleteFromDocument(),i.getRangeAt(0).insertNode(document.createTextNode(r)),s.preventDefault()}}),this.textEditDiv.addEventListener("pointerup",function(){t.textEditDivClicked(t.textEditor.innerText)}),this.textEditDiv.appendChild(this.textEditor),this.overlayContainer.appendChild(this.textEditDiv),this.hideVisual(),this.textEditor.focus(),document.execCommand("selectAll")},e.prototype.positionTextEditor=function(){if("edit"===this.state)if(void 0===this.textEditor)this.showTextEditor();else if(this.globalSettings.wrapText)this.textEditor.style.left=this.left+this.padding+"px",this.textEditor.style.top=this.top+this.padding+"px",this.textEditor.style.width=this.width-2*this.padding+"px",this.textEditor.style.height=this.height-2*this.padding+"px",this.textEditor.style.maxHeight=this.textEditor.style.height,this.textEditor.style.whiteSpace="wrap";else{this.textElement.style.display="";var t=this.getTextScale(),s=this.rotatePoint({x:this.left+this.width/2,y:this.top+this.height/2}),r=this.textElement.getBBox(),i={x:r.width*t,y:r.height*t};s.x-=i.x/2,s.y-=i.y/2,this.textEditor.style.top=s.y+"px",this.textEditor.style.left=s.x+"px",this.textEditor.style.maxWidth=this.overlayContainer.offsetWidth-s.x+"px",this.textEditor.style.fontSize=Math.max(16*t,12)+"px",this.textElement.style.display="none"}},e.prototype.textEditDivClicked=function(t){this.text=t.trim(),this.overlayContainer.innerHTML="",this.renderText(),this.showVisual(),this._suppressMarkerCreateEvent&&(this._suppressMarkerCreateEvent=!1,this.onMarkerCreated&&this.onMarkerCreated(this)),this.stateChanged()},e.prototype.select=function(){o.prototype.select.call(this),"edit"===this.state&&this.textEditDivClicked(this.textEditor.innerText)},e.prototype.deselect=function(){"edit"===this.state&&this.textEditDivClicked(this.textEditor.innerText),o.prototype.deselect.call(this)},e.prototype.dblClick=function(t,s){o.prototype.dblClick.call(this,t,s),this.showTextEditor()},e.prototype.setColor=function(t){this.textElement&&a.setAttributes(this.textElement,[["fill",t]]),this.color=t,this.textEditor&&(this.textEditor.style.color=this.color),this.colorChanged(t)},e.prototype.setFont=function(t){this.textElement&&a.setAttributes(this.textElement,[["font-family",t]]),this.fontFamily=t,this.textEditor&&(this.textEditor.style.fontFamily=this.fontFamily),this.renderText(),this.stateChanged()},e.prototype.hideVisual=function(){this.textElement.style.display="none",this.hideControlBox()},e.prototype.showVisual=function(){"edit"===this.state&&(this._state="select"),this.textElement.style.display="",this.showControlBox()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.colorPanel,this.fontFamilyPanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({color:this.color,fontFamily:this.fontFamily,padding:this.padding,text:this.text,wrapText:this.globalSettings.wrapText},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){var s=t;this.color=s.color,this.fontFamily=s.fontFamily,this.padding=s.padding,this.text=s.text,this.createVisual(),o.prototype.restoreState.call(this,t),this.setSize(),this.globalSettings.wrapText&&this.renderText()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.setSize(),this.sizeText(),this.positionTextEditor()},e.typeName="TextMarker",e.title="Text marker",e.icon='<svg viewBox="0 0 24 24"><path d="M9.6 14L12 7.7l2.4 6.3M11 5L5.5 19h2.2l1.1-3H15l1.1 3h2.2L13 5h-2z"/></svg>',e}(w),M=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.color="transparent",i.lineWidth=3,i.drawing=!1,i.pixelRatio=1,i.color=r.defaultColor,i.lineWidth=r.defaultStrokeWidth,i.pixelRatio=r.freehandPixelRatio,i.setColor=i.setColor.bind(i),i.addCanvas=i.addCanvas.bind(i),i.finishCreation=i.finishCreation.bind(i),i.setLineWidth=i.setLineWidth.bind(i),i.colorPanel=new f("Color",r.defaultColorSet,r.defaultColor),i.colorPanel.onColorChanged=i.setColor,i.lineWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.lineWidthPanel.onWidthChanged=i.setLineWidth,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual&&t!==this.drawingImage)},e.prototype.createVisual=function(){this.visual=a.createGroup(),this.drawingImage=a.createImage(),this.visual.appendChild(this.drawingImage);var t=a.createTransform();this.visual.transform.baseVal.appendItem(t),this.addMarkerVisualToContainer(this.visual)},e.prototype.pointerDown=function(t,s){"new"===this.state&&(this.addCanvas(),this.createVisual(),this._state="creating"),"creating"===this.state?(this.canvasContext.strokeStyle=this.color,this.canvasContext.lineWidth=this.lineWidth,this.canvasContext.beginPath(),this.canvasContext.moveTo(t.x,t.y),this.drawing=!0):o.prototype.pointerDown.call(this,t,s)},e.prototype.manipulate=function(t){"creating"===this.state?this.drawing&&(this.canvasContext.lineTo(t.x,t.y),this.canvasContext.stroke()):o.prototype.manipulate.call(this,t)},e.prototype.resize=function(t){o.prototype.resize.call(this,t),a.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]]),a.setAttributes(this.drawingImage,[["width",this.width.toString()],["height",this.height.toString()]])},e.prototype.pointerUp=function(t){"creating"===this._state?this.drawing&&(this.canvasContext.closePath(),this.drawing=!1,this.globalSettings.newFreehandMarkerOnPointerUp&&this.finishCreation()):o.prototype.pointerUp.call(this,t)},e.prototype.addCanvas=function(){this.overlayContainer.innerHTML="",this.canvasElement=document.createElement("canvas"),this.canvasElement.width=this.overlayContainer.clientWidth*this.pixelRatio,this.canvasElement.height=this.overlayContainer.clientHeight*this.pixelRatio,this.canvasContext=this.canvasElement.getContext("2d"),this.canvasContext.scale(this.pixelRatio,this.pixelRatio),this.overlayContainer.appendChild(this.canvasElement)},e.prototype.select=function(){"creating"===this.state&&this.finishCreation(),o.prototype.select.call(this)},e.prototype.deselect=function(){"creating"===this.state&&this.finishCreation(),o.prototype.deselect.call(this)},e.prototype.finishCreation=function(){for(var t=this.canvasContext.getImageData(0,0,this.canvasElement.width,this.canvasElement.height),s=[this.canvasElement.width+1,this.canvasElement.height+1,-1,-1],r=s[0],i=s[1],n=s[2],h=s[3],c=!1,p=0;p<this.canvasElement.height;p++)for(var l=0;l<this.canvasElement.width;l++)t.data[p*this.canvasElement.width*4+4*l+3]>0&&(c=!0,p<i&&(i=p),l<r&&(r=l),p>h&&(h=p),l>n&&(n=l));if(c){this.left=r/this.pixelRatio,this.top=i/this.pixelRatio,this.width=(n-r)/this.pixelRatio,this.height=(h-i)/this.pixelRatio;var d=document.createElement("canvas");d.width=n-r,d.height=h-i,d.getContext("2d").putImageData(this.canvasContext.getImageData(r,i,n-r,h-i),0,0),this.drawingImgUrl=d.toDataURL("image/png"),this.setDrawingImage(),this._state="select",this.onMarkerCreated&&this.onMarkerCreated(this)}this.overlayContainer.innerHTML=""},e.prototype.setDrawingImage=function(){a.setAttributes(this.drawingImage,[["width",this.width.toString()],["height",this.height.toString()]]),a.setAttributes(this.drawingImage,[["href",this.drawingImgUrl]]),this.moveVisual({x:this.left,y:this.top})},e.prototype.setColor=function(t){this.color=t,this.colorChanged(t)},e.prototype.setLineWidth=function(t){this.lineWidth=t},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return"new"===this.state||"creating"===this.state?[this.colorPanel,this.lineWidthPanel]:[]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({drawingImgUrl:this.drawingImgUrl},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){this.createVisual(),o.prototype.restoreState.call(this,t),this.drawingImgUrl=t.drawingImgUrl,this.setDrawingImage()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.setDrawingImage()},e.typeName="FreehandMarker",e.title="Freehand marker",e.icon='<svg viewBox="0 0 24 24"><path d="M9.75 20.85c1.78-.7 1.39-2.63.49-3.85-.89-1.25-2.12-2.11-3.36-2.94A9.817 9.817 0 014.54 12c-.28-.33-.85-.94-.27-1.06.59-.12 1.61.46 2.13.68.91.38 1.81.82 2.65 1.34l1.01-1.7C8.5 10.23 6.5 9.32 4.64 9.05c-1.06-.16-2.18.06-2.54 1.21-.32.99.19 1.99.77 2.77 1.37 1.83 3.5 2.71 5.09 4.29.34.33.75.72.95 1.18.21.44.16.47-.31.47-1.24 0-2.79-.97-3.8-1.61l-1.01 1.7c1.53.94 4.09 2.41 5.96 1.79m11.09-15.6c.22-.22.22-.58 0-.79l-1.3-1.3a.562.562 0 00-.78 0l-1.02 1.02 2.08 2.08M11 10.92V13h2.08l6.15-6.15-2.08-2.08L11 10.92z"/></svg>',e}(w),tt=function(o){function e(t,s,r){var i=o.call(this,t,r||'<svg viewBox="0 0 24 24"><path d="M8 14v4l-6-6 6-6v4h8V6l6 6-6 6v-4H8z"/></svg>')||this;return i.typeBoxes=[],i.currentType=s,i.setCurrentType=i.setCurrentType.bind(i),i}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");s.style.display="flex",s.style.overflow="hidden",s.style.flexGrow="2";for(var r=function(c){var p="both";switch(c){case 0:p="both";break;case 1:p="start";break;case 2:p="end";break;case 3:p="none"}var l=document.createElement("div");if(l.style.display="flex",l.style.flexGrow="2",l.style.alignItems="center",l.style.justifyContent="space-between",l.style.padding="5px",l.style.borderWidth="2px",l.style.borderStyle="solid",l.style.borderColor=p===i.currentType?i.uiStyleSettings.toolboxAccentColor:"transparent",l.addEventListener("click",function(){t.setCurrentType(p,l)}),s.appendChild(l),"both"===p||"start"===p){var d=document.createElement("div");d.style.display="flex",d.style.alignItems="center",d.style.minHeight="20px",d.innerHTML='<svg viewBox="0 0 10 10" width="10" height="10" xmlns="http://www.w3.org/2000/svg">\n          <polygon points="0,5 10,0 10,10" fill="'+(void 0!==i.uiStyleSettings?i.uiStyleSettings.toolboxColor:"#eeeeee")+'" />\n        </svg>',d.style.marginLeft="5px",l.appendChild(d)}var g=document.createElement("div");g.style.display="flex",g.style.alignItems="center",g.style.minHeight="20px",g.style.flexGrow="2";var v=document.createElement("hr");if(v.style.minWidth="20px",v.style.border="0px",v.style.borderTop="3px solid "+(void 0!==i.uiStyleSettings?i.uiStyleSettings.toolboxColor:"#eeeeee"),v.style.flexGrow="2",g.appendChild(v),l.appendChild(g),"both"===p||"end"===p){var b=document.createElement("div");b.style.display="flex",b.style.alignItems="center",b.style.minHeight="20px",b.innerHTML='<svg viewBox="0 0 10 10" width="10" height="10" xmlns="http://www.w3.org/2000/svg">\n          <polygon points="0,0 10,5 0,10" fill="'+(void 0!==i.uiStyleSettings?i.uiStyleSettings.toolboxColor:"#eeeeee")+'" />\n        </svg>',b.style.marginRight="5px",l.appendChild(b)}i.typeBoxes.push(l)},i=this,n=0;n<4;n++)r(n);return s},e.prototype.setCurrentType=function(t,s){var r=this;this.currentType=t,this.typeBoxes.forEach(function(i){i.style.borderColor=i===s?void 0!==r.uiStyleSettings?r.uiStyleSettings.toolboxAccentColor:"#3080c3":"transparent"}),this.onArrowTypeChanged&&this.onArrowTypeChanged(this.currentType)},e}(x),_=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.arrowType="end",i.arrowBaseHeight=10,i.arrowBaseWidth=10,i.getArrowPoints=i.getArrowPoints.bind(i),i.setArrowType=i.setArrowType.bind(i),i.arrowTypePanel=new tt("Arrow type","end"),i.arrowTypePanel.onArrowTypeChanged=i.setArrowType,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.arrow1&&t!==this.arrow2)},e.prototype.getArrowPoints=function(t,s){var r=this.arrowBaseWidth+2*this.strokeWidth,i=this.arrowBaseHeight+2*this.strokeWidth;return t-r/2+","+(s+i/2)+" "+t+","+(s-i/2)+" "+(t+r/2)+","+(s+i/2)},e.prototype.createTips=function(){this.arrow1=a.createPolygon(this.getArrowPoints(this.x1,this.y1),[["fill",this.strokeColor]]),this.arrow1.transform.baseVal.appendItem(a.createTransform()),this.visual.appendChild(this.arrow1),this.arrow2=a.createPolygon(this.getArrowPoints(this.x2,this.y2),[["fill",this.strokeColor]]),this.arrow2.transform.baseVal.appendItem(a.createTransform()),this.visual.appendChild(this.arrow2)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"creating"===this.state&&this.createTips()},e.prototype.adjustVisual=function(){if(o.prototype.adjustVisual.call(this),this.arrow1&&this.arrow2){this.arrow1.style.display="both"===this.arrowType||"start"===this.arrowType?"":"none",this.arrow2.style.display="both"===this.arrowType||"end"===this.arrowType?"":"none",a.setAttributes(this.arrow1,[["points",this.getArrowPoints(this.x1,this.y1)],["fill",this.strokeColor]]),a.setAttributes(this.arrow2,[["points",this.getArrowPoints(this.x2,this.y2)],["fill",this.strokeColor]]);var t=0;Math.abs(this.x1-this.x2)>.1&&(t=180*Math.atan((this.y2-this.y1)/(this.x2-this.x1))/Math.PI+90*Math.sign(this.x1-this.x2));var s=this.arrow1.transform.baseVal.getItem(0);s.setRotate(t,this.x1,this.y1),this.arrow1.transform.baseVal.replaceItem(s,0);var r=this.arrow2.transform.baseVal.getItem(0);r.setRotate(t+180,this.x2,this.y2),this.arrow2.transform.baseVal.replaceItem(r,0)}},e.prototype.setArrowType=function(t){this.arrowType=t,this.adjustVisual(),this.stateChanged()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel,this.arrowTypePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({arrowType:this.arrowType},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t),this.arrowType=t.arrowType,this.createTips(),this.adjustVisual()},e.typeName="ArrowMarker",e.title="Arrow marker",e.icon='<svg viewBox="0 0 24 24"><path d="M19 6.41L17.59 5 7 15.59V9H5v10h10v-2H8.41L19 6.41z"/></svg>',e}(A),G=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.fillColor=r.defaultFillColor,i.strokeWidth=0,i.fillPanel=new f("Color",r.defaultColorSet,r.defaultFillColor),i.fillPanel.onColorChanged=i.setFillColor,i}return u(e,o),Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.fillPanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=o.prototype.getState.call(this);return t.typeName=e.typeName,t},e.typeName="CoverMarker",e.title="Cover marker",e.icon='<svg viewBox="0 0 24 24"><path d="M4 6v13h16V6H4z"/></svg>',e}(O),F=function(o){function e(t,s,r,i){var n=o.call(this,t,i||'<svg viewBox="0 0 24 24"><path d="M17.66 8L12 2.35 6.34 8A8.02 8.02 0 004 13.64c0 2 .78 4.11 2.34 5.67a7.99 7.99 0 0011.32 0c1.56-1.56 2.34-3.67 2.34-5.67S19.22 9.56 17.66 8M6 14c0-2 .62-3.27 1.76-4.4L12 5.27l4.24 4.38C17.38 10.77 18 12 18 14H6z"/></svg>')||this;return n.opacities=[],n.opacityBoxes=[],n.opacities=s,n.currentOpacity=r,n.setCurrentOpacity=n.setCurrentOpacity.bind(n),n}return u(e,o),e.prototype.getUi=function(){var t=this,s=document.createElement("div");return s.style.display="flex",s.style.overflow="hidden",s.style.flexGrow="2",s.style.justifyContent="space-between",this.opacities.forEach(function(r){var i=document.createElement("div");i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="center",i.style.padding="5px",i.style.borderWidth="2px",i.style.borderStyle="solid",i.style.borderColor=r===t.currentOpacity?t.uiStyleSettings.toolboxAccentColor:"transparent",i.addEventListener("click",function(){t.setCurrentOpacity(r,i)}),s.appendChild(i);var n=document.createElement("div");n.innerText=100*r+"%",i.appendChild(n),t.opacityBoxes.push(i)}),s},e.prototype.setCurrentOpacity=function(t,s){var r=this;this.currentOpacity=t,this.opacityBoxes.forEach(function(i){i.style.borderColor=i===s?r.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onOpacityChanged&&this.onOpacityChanged(this.currentOpacity)},e}(x),W=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.setOpacity=i.setOpacity.bind(i),i.fillColor=r.defaultHighlightColor,i.strokeWidth=0,i.opacity=r.defaultHighlightOpacity,i.fillPanel=new f("Color",r.defaultColorSet,i.fillColor),i.fillPanel.onColorChanged=i.setFillColor,i.opacityPanel=new F("Opacity",r.defaultOpacitySteps,i.opacity),i.opacityPanel.onOpacityChanged=i.setOpacity,i}return u(e,o),e.prototype.setOpacity=function(t){this.opacity=t,this.visual&&a.setAttributes(this.visual,[["opacity",this.opacity.toString()]]),this.stateChanged()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.fillPanel,this.opacityPanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=o.prototype.getState.call(this);return t.typeName=e.typeName,t},e.typeName="HighlightMarker",e.title="Highlight marker",e.icon='<svg viewBox="0 0 24 24"><path d="M18.5 1.15c-.53 0-1.04.19-1.43.58l-5.81 5.82 5.65 5.65 5.82-5.81c.77-.78.77-2.04 0-2.83l-2.84-2.83c-.39-.39-.89-.58-1.39-.58M10.3 8.5l-5.96 5.96c-.78.78-.78 2.04.02 2.85C3.14 18.54 1.9 19.77.67 21h5.66l.86-.86c.78.76 2.03.75 2.81-.02l5.95-5.96"/></svg>',e}(G),et='<svg viewBox="0 0 24 24"><path d="M9.62 12L12 5.67 14.37 12M11 3L5.5 17h2.25l1.12-3h6.25l1.13 3h2.25L13 3h-2z"/></svg>',j='<svg viewBox="0 0 24 24"><path d="M19 11.5s-2 2.17-2 3.5a2 2 0 002 2 2 2 0 002-2c0-1.33-2-3.5-2-3.5M5.21 10L10 5.21 14.79 10m1.77-1.06L7.62 0 6.21 1.41l2.38 2.38-5.15 5.15c-.59.56-.59 1.53 0 2.12l5.5 5.5c.29.29.68.44 1.06.44s.77-.15 1.06-.44l5.5-5.5c.59-.59.59-1.56 0-2.12z"/></svg>',U=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.bgColor="transparent",i.tipPosition={x:0,y:0},i.tipBase1Position={x:0,y:0},i.tipBase2Position={x:0,y:0},i.tipMoving=!1,i.color=r.defaultStrokeColor,i.bgColor=r.defaultFillColor,i.fontFamily=r.defaultFontFamily,i.defaultSize={x:100,y:30},i.setBgColor=i.setBgColor.bind(i),i.getTipPoints=i.getTipPoints.bind(i),i.positionTip=i.positionTip.bind(i),i.setTipPoints=i.setTipPoints.bind(i),i.colorPanel=new f("Text color",r.defaultColorSet,i.color,et),i.colorPanel.onColorChanged=i.setColor,i.bgColorPanel=new f("Fill color",r.defaultColorSet,i.bgColor,j),i.bgColorPanel.onColorChanged=i.setBgColor,i.fontFamilyPanel=new I("Font",r.defaultFontFamilies,r.defaultFontFamily),i.fontFamilyPanel.onFontChanged=i.setFont,i.tipGrip=new L,i.tipGrip.visual.transform.baseVal.appendItem(a.createTransform()),i.controlBox.appendChild(i.tipGrip.visual),i}return u(e,o),e.prototype.ownsTarget=function(t){return o.prototype.ownsTarget.call(this,t)||this.tipGrip.ownsTarget(t)||this.tip===t},e.prototype.createTip=function(){a.setAttributes(this.bgRectangle,[["fill",this.bgColor],["rx","10px"]]),this.tip=a.createPolygon(this.getTipPoints(),[["fill",this.bgColor]]),this.visual.appendChild(this.tip)},e.prototype.pointerDown=function(t,s){"new"===this.state&&o.prototype.pointerDown.call(this,t,s),"creating"===this.state?this.createTip():this.tipGrip.ownsTarget(s)?(this.manipulationStartLeft=this.left,this.manipulationStartTop=this.top,this.tipMoving=!0):o.prototype.pointerDown.call(this,t,s)},e.prototype.pointerUp=function(t){if(this.tipMoving)this.tipMoving=!1,this.isMoved=!0,o.prototype.pointerUp.call(this,t);else{var s="creating"===this.state;o.prototype.pointerUp.call(this,t),this.setTipPoints(s),this.positionTip()}},e.prototype.manipulate=function(t){if(this.tipMoving){var s=this.unrotatePoint(t);this.tipPosition={x:s.x-this.manipulationStartLeft,y:s.y-this.manipulationStartTop},this.positionTip()}else o.prototype.manipulate.call(this,t)},e.prototype.setBgColor=function(t){this.bgRectangle&&this.tip&&(a.setAttributes(this.bgRectangle,[["fill",t]]),a.setAttributes(this.tip,[["fill",t]])),this.bgColor=t,this.fillColorChanged(t)},e.prototype.getTipPoints=function(){return this.setTipPoints("creating"===this.state),this.tipBase1Position.x+","+this.tipBase1Position.y+" "+this.tipBase2Position.x+","+this.tipBase2Position.y+" "+this.tipPosition.x+","+this.tipPosition.y},e.prototype.setTipPoints=function(t){void 0===t&&(t=!1);var s=Math.min(this.height/2,15),r=this.height/5;t&&(this.tipPosition={x:s+r/2,y:this.height+20});var i=Math.atan(this.height/2/(this.width/2));this.tipPosition.x<this.width/2&&this.tipPosition.y<this.height/2?i<Math.atan((this.height/2-this.tipPosition.y)/(this.width/2-this.tipPosition.x))?(r=this.width/5,s=Math.min(this.width/2,15),this.tipBase1Position={x:s,y:0},this.tipBase2Position={x:s+r,y:0}):(this.tipBase1Position={x:0,y:s},this.tipBase2Position={x:0,y:s+r}):this.tipPosition.x>=this.width/2&&this.tipPosition.y<this.height/2?i<Math.atan((this.height/2-this.tipPosition.y)/(this.tipPosition.x-this.width/2))?(r=this.width/5,s=Math.min(this.width/2,15),this.tipBase1Position={x:this.width-s-r,y:0},this.tipBase2Position={x:this.width-s,y:0}):(this.tipBase1Position={x:this.width,y:s},this.tipBase2Position={x:this.width,y:s+r}):this.tipPosition.x>=this.width/2&&this.tipPosition.y>=this.height/2?i<Math.atan((this.tipPosition.y-this.height/2)/(this.tipPosition.x-this.width/2))?(r=this.width/5,s=Math.min(this.width/2,15),this.tipBase1Position={x:this.width-s-r,y:this.height},this.tipBase2Position={x:this.width-s,y:this.height}):(this.tipBase1Position={x:this.width,y:this.height-s-r},this.tipBase2Position={x:this.width,y:this.height-s}):i<Math.atan((this.tipPosition.y-this.height/2)/(this.width/2-this.tipPosition.x))?(r=this.width/5,s=Math.min(this.width/2,15),this.tipBase1Position={x:s,y:this.height},this.tipBase2Position={x:s+r,y:this.height}):(this.tipBase1Position={x:0,y:this.height-s},this.tipBase2Position={x:0,y:this.height-s-r})},e.prototype.resize=function(t){o.prototype.resize.call(this,t),this.positionTip()},e.prototype.positionTip=function(){a.setAttributes(this.tip,[["points",this.getTipPoints()]]);var t=this.tipGrip.visual.transform.baseVal.getItem(0);t.setTranslate(this.tipPosition.x,this.tipPosition.y),this.tipGrip.visual.transform.baseVal.replaceItem(t,0)},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.colorPanel,this.bgColorPanel,this.fontFamilyPanel]},enumerable:!1,configurable:!0}),e.prototype.select=function(){this.positionTip(),o.prototype.select.call(this)},e.prototype.getState=function(){var t=Object.assign({bgColor:this.bgColor,tipPosition:this.tipPosition},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){var s=t;this.bgColor=s.bgColor,this.tipPosition=s.tipPosition,o.prototype.restoreState.call(this,t),this.createTip(),this.setTipPoints()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.tipPosition={x:this.tipPosition.x*t,y:this.tipPosition.y*s},this.positionTip()},e.typeName="CalloutMarker",e.title="Callout marker",e.icon='<svg viewBox="0 0 24 24"><path d="M4 2h16a2 2 0 012 2v12a2 2 0 01-2 2h-4l-4 4-4-4H4a2 2 0 01-2-2V4a2 2 0 012-2m0 2v12h4.83L12 19.17 15.17 16H20V4H4m2 3h12v2H6V7m0 4h10v2H6v-2z"/></svg>',e}(E),N=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.fillColor="transparent",i.strokeColor="transparent",i.strokeWidth=0,i.strokeDasharray="",i.opacity=1,i.strokeColor=r.defaultColor,i.strokeWidth=r.defaultStrokeWidth,i.strokeDasharray=r.defaultStrokeDasharray,i.fillColor=r.defaultFillColor,i.setStrokeColor=i.setStrokeColor.bind(i),i.setFillColor=i.setFillColor.bind(i),i.setStrokeWidth=i.setStrokeWidth.bind(i),i.setStrokeDasharray=i.setStrokeDasharray.bind(i),i.setOpacity=i.setOpacity.bind(i),i.createVisual=i.createVisual.bind(i),i.strokePanel=new f("Line color",T(r.defaultColorSet,["transparent"]),r.defaultColor),i.strokePanel.onColorChanged=i.setStrokeColor,i.fillPanel=new f("Fill color",T(r.defaultColorSet,["transparent"]),i.fillColor,j),i.fillPanel.onColorChanged=i.setFillColor,i.strokeWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.strokeWidthPanel.onWidthChanged=i.setStrokeWidth,i.strokeStylePanel=new B("Line style",r.defaultStrokeDasharrays,r.defaultStrokeDasharray),i.strokeStylePanel.onStyleChanged=i.setStrokeDasharray,i.opacityPanel=new F("Opacity",r.defaultOpacitySteps,i.opacity),i.opacityPanel.onOpacityChanged=i.setOpacity,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual)},e.prototype.createVisual=function(){this.visual=a.createEllipse(this.width/2,this.height/2,[["fill",this.fillColor],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["stroke-dasharray",this.strokeDasharray],["opacity",this.opacity.toString()]]),this.addMarkerVisualToContainer(this.visual)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"new"===this.state&&(this.createVisual(),this.moveVisual(t),this._state="creating")},e.prototype.manipulate=function(t){o.prototype.manipulate.call(this,t)},e.prototype.resize=function(t){o.prototype.resize.call(this,t),this.setSize()},e.prototype.setSize=function(){o.prototype.setSize.call(this),a.setAttributes(this.visual,[["cx",(this.width/2).toString()],["cy",(this.height/2).toString()],["rx",(this.width/2).toString()],["ry",(this.height/2).toString()]])},e.prototype.pointerUp=function(t){o.prototype.pointerUp.call(this,t),this.setSize()},e.prototype.setStrokeColor=function(t){this.strokeColor=t,this.visual&&a.setAttributes(this.visual,[["stroke",this.strokeColor]]),this.colorChanged(t),this.stateChanged()},e.prototype.setFillColor=function(t){this.fillColor=t,this.visual&&a.setAttributes(this.visual,[["fill",this.fillColor]]),this.fillColorChanged(t),this.stateChanged()},e.prototype.setStrokeWidth=function(t){this.strokeWidth=t,this.visual&&a.setAttributes(this.visual,[["stroke-width",this.strokeWidth.toString()]]),this.stateChanged()},e.prototype.setStrokeDasharray=function(t){this.strokeDasharray=t,this.visual&&a.setAttributes(this.visual,[["stroke-dasharray",this.strokeDasharray]]),this.stateChanged()},e.prototype.setOpacity=function(t){this.opacity=t,this.visual&&a.setAttributes(this.visual,[["opacity",this.opacity.toString()]]),this.stateChanged()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.fillPanel,this.strokeWidthPanel,this.strokeStylePanel,this.opacityPanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({fillColor:this.fillColor,strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,opacity:this.opacity},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){var s=t;this.fillColor=s.fillColor,this.strokeColor=s.strokeColor,this.strokeWidth=s.strokeWidth,this.strokeDasharray=s.strokeDasharray,this.opacity=s.opacity,this.createVisual(),o.prototype.restoreState.call(this,t),this.setSize()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.setSize()},e.typeName="EllipseMarker",e.title="Ellipse marker",e.icon='<svg viewBox="0 0 24 24"><path d="M12 4C6.5 4 2 7.58 2 12s4.5 8 10 8 10-3.58 10-8-4.5-8-10-8z"/></svg>',e}(w),it=function(o){function e(t,s,r){return o.call(this,t,s,r)||this}return u(e,o),Object.defineProperty(e.prototype,"tipLength",{get:function(){return 10+3*this.strokeWidth},enumerable:!1,configurable:!0}),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.tip1&&t!==this.tip2)},e.prototype.createTips=function(){this.tip1=a.createLine(this.x1-this.tipLength/2,this.y1,this.x1+this.tipLength/2,this.y1,[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),this.tip1.transform.baseVal.appendItem(a.createTransform()),this.visual.appendChild(this.tip1),this.tip2=a.createLine(this.x2-this.tipLength/2,this.y2,this.x2+this.tipLength/2,this.y2,[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),this.tip2.transform.baseVal.appendItem(a.createTransform()),this.visual.appendChild(this.tip2)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),"creating"===this.state&&this.createTips()},e.prototype.adjustVisual=function(){if(o.prototype.adjustVisual.call(this),this.tip1&&this.tip2&&(a.setAttributes(this.tip1,[["x1",(this.x1-this.tipLength/2).toString()],["y1",this.y1.toString()],["x2",(this.x1+this.tipLength/2).toString()],["y2",this.y1.toString()],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),a.setAttributes(this.tip2,[["x1",(this.x2-this.tipLength/2).toString()],["y1",this.y2.toString()],["x2",(this.x2+this.tipLength/2).toString()],["y2",this.y2.toString()],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),Math.abs(this.x1-this.x2)>.1)){var t=180*Math.atan((this.y2-this.y1)/(this.x2-this.x1))/Math.PI+90*Math.sign(this.x1-this.x2),s=this.tip1.transform.baseVal.getItem(0);s.setRotate(t,this.x1,this.y1),this.tip1.transform.baseVal.replaceItem(s,0);var r=this.tip2.transform.baseVal.getItem(0);r.setRotate(t+180,this.x2,this.y2),this.tip2.transform.baseVal.replaceItem(r,0)}},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=o.prototype.getState.call(this);return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t),this.createTips(),this.adjustVisual()},e.typeName="MeasurementMarker",e.title="Measurement marker",e.icon='<svg viewBox="0 0 24 24"><path d="M1.39 18.36l1.77-1.76L4.58 18l1.06-1.05-1.42-1.41 1.42-1.42 2.47 2.48 1.06-1.06-2.47-2.48 1.41-1.41 1.42 1.41L10.59 12l-1.42-1.41 1.42-1.42 2.47 2.48 1.06-1.06-2.47-2.48 1.41-1.41 1.41 1.41 1.07-1.06-1.42-1.41 1.42-1.42L18 6.7l1.07-1.06-2.47-2.48 1.76-1.77 4.25 4.25L5.64 22.61l-4.25-4.25z"/></svg>',e}(A),st=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.strokePanel.colors=r.defaultColorSet,i.fillColor="transparent",i}return u(e,o),Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=o.prototype.getState.call(this);return t.typeName=e.typeName,t},e.typeName="EllipseFrameMarker",e.title="Ellipse frame marker",e.icon='<svg viewBox="0 0 24 24"><path d="M12 6c4.41 0 8 2.69 8 6s-3.59 6-8 6-8-2.69-8-6 3.59-6 8-6m0-2C6.5 4 2 7.58 2 12s4.5 8 10 8 10-3.58 10-8-4.5-8-10-8z"/></svg>',e}(N),ct=function(){function o(){this.undoStack=[],this.redoStack=[]}return Object.defineProperty(o.prototype,"isUndoPossible",{get:function(){return this.undoStack.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"isRedoPossible",{get:function(){return this.redoStack.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"undoStepCount",{get:function(){return this.undoStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"redoStepCount",{get:function(){return this.redoStack.length},enumerable:!1,configurable:!0}),o.prototype.addUndoStep=function(e){0!==this.undoStack.length&&JSON.stringify(this.undoStack[this.undoStack.length-1])===JSON.stringify(e)||(this.undoStack.push(e),JSON.stringify(this.lastRedoStep)!==JSON.stringify(e)&&this.redoStack.splice(0,this.redoStack.length))},o.prototype.replaceLastUndoStep=function(e){this.undoStack.length>0&&(this.undoStack[this.undoStack.length-1]=e)},o.prototype.getLastUndoStep=function(){return this.undoStack.length>0?this.undoStack[this.undoStack.length-1]:void 0},o.prototype.undo=function(){if(this.undoStack.length>1){var e=this.undoStack.pop();return void 0!==e&&this.redoStack.push(e),this.undoStack.length>0?this.undoStack[this.undoStack.length-1]:void 0}},o.prototype.redo=function(){return this.lastRedoStep=this.redoStack.pop(),this.lastRedoStep},o}(),ot=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.strokeColor="transparent",i.strokeWidth=0,i.strokeDasharray="",i.curveX=0,i.curveY=0,i.manipulationStartCurveX=0,i.manipulationStartCurveY=0,i.setStrokeColor=i.setStrokeColor.bind(i),i.setStrokeWidth=i.setStrokeWidth.bind(i),i.setStrokeDasharray=i.setStrokeDasharray.bind(i),i.positionGrips=i.positionGrips.bind(i),i.addControlGrips=i.addControlGrips.bind(i),i.adjustVisual=i.adjustVisual.bind(i),i.setupControlBox=i.setupControlBox.bind(i),i.resize=i.resize.bind(i),i.strokeColor=r.defaultColor,i.strokeWidth=r.defaultStrokeWidth,i.strokeDasharray=r.defaultStrokeDasharray,i.strokePanel=new f("Line color",r.defaultColorSet,r.defaultColor),i.strokePanel.onColorChanged=i.setStrokeColor,i.strokeWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.strokeWidthPanel.onWidthChanged=i.setStrokeWidth,i.strokeStylePanel=new B("Line style",r.defaultStrokeDasharrays,r.defaultStrokeDasharray),i.strokeStylePanel.onStyleChanged=i.setStrokeDasharray,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual&&t!==this.selectorCurve&&t!==this.visibleCurve&&!this.curveGrip.ownsTarget(t))},e.prototype.getPathD=function(){return"M "+this.x1+" "+this.y1+" Q "+this.curveX+" "+this.curveY+", "+this.x2+" "+this.y2},e.prototype.createVisual=function(){this.visual=a.createGroup(),this.selectorCurve=a.createPath(this.getPathD(),[["stroke","transparent"],["stroke-width",(this.strokeWidth+10).toString()],["fill","transparent"]]),this.visibleCurve=a.createPath(this.getPathD(),[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["fill","transparent"]]),this.visual.appendChild(this.selectorCurve),this.visual.appendChild(this.visibleCurve),this.addMarkerVisualToContainer(this.visual)},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),this.manipulationStartCurveX=this.curveX,this.manipulationStartCurveY=this.curveY,"new"===this.state&&(this.curveX=t.x,this.curveY=t.y),"new"===this.state?(this.createVisual(),this.adjustVisual(),this._state="creating"):this.curveGrip.ownsTarget(s)&&(this.activeGrip=this.curveGrip,this._state="resize")},e.prototype.adjustVisual=function(){this.selectorCurve&&this.visibleCurve&&(this.selectorCurve.setAttribute("d",this.getPathD()),this.visibleCurve.setAttribute("d",this.getPathD()),a.setAttributes(this.visibleCurve,[["stroke",this.strokeColor]]),a.setAttributes(this.visibleCurve,[["stroke-width",this.strokeWidth.toString()]]),a.setAttributes(this.visibleCurve,[["stroke-dasharray",this.strokeDasharray.toString()]]))},e.prototype.setupControlBox=function(){o.prototype.setupControlBox.call(this),this.curveControlLine1=a.createLine(this.x1,this.y1,this.curveX,this.curveY,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.curveControlLine2=a.createLine(this.x2,this.y2,this.curveX,this.curveY,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.controlBox.insertBefore(this.curveControlLine1,this.controlBox.firstChild),this.controlBox.insertBefore(this.curveControlLine2,this.controlBox.firstChild)},e.prototype.addControlGrips=function(){this.curveGrip=this.createGrip(),this.curveX=0,this.curveY=0,o.prototype.addControlGrips.call(this)},e.prototype.positionGrips=function(){o.prototype.positionGrips.call(this);var t=this.curveGrip.GRIP_SIZE;this.positionGrip(this.curveGrip.visual,this.curveX-t/2,this.curveY-t/2),this.curveControlLine1&&this.curveControlLine2&&(this.curveControlLine1.setAttribute("x1",this.x1.toString()),this.curveControlLine1.setAttribute("y1",this.y1.toString()),this.curveControlLine1.setAttribute("x2",this.curveX.toString()),this.curveControlLine1.setAttribute("y2",this.curveY.toString()),this.curveControlLine2.setAttribute("x1",this.x2.toString()),this.curveControlLine2.setAttribute("y1",this.y2.toString()),this.curveControlLine2.setAttribute("x2",this.curveX.toString()),this.curveControlLine2.setAttribute("y2",this.curveY.toString()))},e.prototype.manipulate=function(t){"move"===this.state&&(this.curveX=this.manipulationStartCurveX+t.x-this.manipulationStartX,this.curveY=this.manipulationStartCurveY+t.y-this.manipulationStartY),o.prototype.manipulate.call(this,t)},e.prototype.resize=function(t){this.activeGrip===this.curveGrip&&(this.curveX=t.x,this.curveY=t.y),o.prototype.resize.call(this,t),"creating"===this.state&&(this.curveX=this.x1+(this.x2-this.x1)/2,this.curveY=this.y1+(this.y2-this.y1)/2)},e.prototype.setStrokeColor=function(t){this.strokeColor=t,this.adjustVisual(),this.colorChanged(t)},e.prototype.setStrokeWidth=function(t){this.strokeWidth=t,this.adjustVisual()},e.prototype.setStrokeDasharray=function(t){this.strokeDasharray=t,this.adjustVisual()},e.prototype.scale=function(t,s){this.curveX=this.curveX*t,this.curveY=this.curveY*s,o.prototype.scale.call(this,t,s)},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,curveX:this.curveX,curveY:this.curveY},o.prototype.getState.call(this));return t.typeName=e.typeName,t},e.prototype.restoreState=function(t){o.prototype.restoreState.call(this,t);var s=t;this.strokeColor=s.strokeColor,this.strokeWidth=s.strokeWidth,this.strokeDasharray=s.strokeDasharray,this.curveX=s.curveX,this.curveY=s.curveY,this.createVisual(),this.adjustVisual()},e.typeName="CurveMarker",e.title="Curve marker",e.icon='<svg viewBox="0 0 24 24"><path d="M18.5 2A1.5 1.5 0 0120 3.5 1.5 1.5 0 0118.5 5c-.23 0-.45-.05-.65-.15l-3.69 3.7.34.45c2.19-1.26 4.76-2 7.5-2l1 .03v2.01L22 9c-2.58 0-5 .75-7 2.04A3.96 3.96 0 0111.04 15C9.75 17 9 19.42 9 22l.04 1H7.03L7 22c0-2.74.74-5.31 2-7.5l-.45-.34-3.7 3.69c.1.2.15.42.15.65A1.5 1.5 0 013.5 20 1.5 1.5 0 012 18.5 1.5 1.5 0 013.5 17c.23 0 .45.05.65.15l3.69-3.7C7.31 12.78 7 11.92 7 11a4 4 0 014-4c.92 0 1.78.31 2.45.84l3.7-3.69c-.1-.2-.15-.42-.15-.65A1.5 1.5 0 0118.5 2M11 9a2 2 0 00-2 2 2 2 0 002 2 2 2 0 002-2 2 2 0 00-2-2z"/></svg>',e}(V),rt=function(o){function e(t,s,r){var i=o.call(this,t,s,r)||this;return i.fillColor="transparent",i.strokeColor="transparent",i.strokeWidth=0,i.strokeDasharray="",i.textColor="transparent",i.fontSize="1rem",i.isMoved=!1,i.captionText="Caption",i.PADDING=5,i.captionBoxWidth=0,i.captionBoxHeight=0,i.strokeColor=r.defaultColor,i.strokeWidth=r.defaultStrokeWidth,i.strokeDasharray=r.defaultStrokeDasharray,i.fillColor=r.defaultFillColor,i.textColor=r.defaultStrokeColor,i.fontFamily=r.defaultFontFamily,i.fontSize=r.defaultCaptionFontSize,i.captionText=r.defaultCaptionText,i.setStrokeColor=i.setStrokeColor.bind(i),i.setFillColor=i.setFillColor.bind(i),i.setStrokeWidth=i.setStrokeWidth.bind(i),i.setStrokeDasharray=i.setStrokeDasharray.bind(i),i.createVisual=i.createVisual.bind(i),i.sizeCaption=i.sizeCaption.bind(i),i.setCaptionText=i.setCaptionText.bind(i),i.showTextEditor=i.showTextEditor.bind(i),i.positionTextEditor=i.positionTextEditor.bind(i),i.finishTextEditing=i.finishTextEditing.bind(i),i.setFont=i.setFont.bind(i),i.setTextColor=i.setTextColor.bind(i),i.strokePanel=new f("Line color",T(r.defaultColorSet,["transparent"]),i.strokeColor),i.strokePanel.onColorChanged=i.setStrokeColor,i.fillPanel=new f("Fill color",T(r.defaultColorSet,["transparent"]),i.fillColor,j),i.fillPanel.onColorChanged=i.setFillColor,i.strokeWidthPanel=new k("Line width",r.defaultStrokeWidths,r.defaultStrokeWidth),i.strokeWidthPanel.onWidthChanged=i.setStrokeWidth,i.strokeStylePanel=new B("Line style",r.defaultStrokeDasharrays,r.defaultStrokeDasharray),i.strokeStylePanel.onStyleChanged=i.setStrokeDasharray,i.fontFamilyPanel=new I("Font",r.defaultFontFamilies,r.defaultFontFamily),i.fontFamilyPanel.onFontChanged=i.setFont,i.textColorPanel=new f("Text color",r.defaultColorSet,i.textColor,et),i.textColorPanel.onColorChanged=i.setTextColor,i}return u(e,o),e.prototype.ownsTarget=function(t){return!(!o.prototype.ownsTarget.call(this,t)&&t!==this.visual&&t!==this.frame&&t!==this.captionBg&&t!==this.captionElement)},e.prototype.createVisual=function(){this.visual=a.createGroup(),this.addMarkerVisualToContainer(this.visual),this.captionBg=a.createRect(1,1,[["fill",this.fillColor]]),this.visual.appendChild(this.captionBg),this.captionElement=a.createText([["fill",this.textColor],["font-family",this.fontFamily]]),this.captionElement.style.fontSize=this.fontSize,this.captionElement.style.textAnchor="start",this.captionElement.style.dominantBaseline="text-before-edge",this.captionElement.textContent=this.captionText,this.visual.appendChild(this.captionElement),this.frame=a.createRect(this.width,this.height,[["fill","transparent"],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["stroke-dasharray",this.strokeDasharray]]),this.visual.appendChild(this.frame),this.sizeCaption()},e.prototype.setCaptionText=function(t){this.captionText=t,this.captionElement.textContent=this.captionText,this.sizeCaption()},e.prototype.pointerDown=function(t,s){o.prototype.pointerDown.call(this,t,s),this.isMoved=!1,this.pointerDownPoint=t,this.pointerDownTimestamp=Date.now(),"new"===this.state&&(this.createVisual(),this.moveVisual(t),this._state="creating")},e.prototype.manipulate=function(t){o.prototype.manipulate.call(this,t),void 0!==this.pointerDownPoint&&(this.isMoved=Math.abs(t.x-this.pointerDownPoint.x)>5||Math.abs(t.y-this.pointerDownPoint.y)>5)},e.prototype.resize=function(t){o.prototype.resize.call(this,t),this.setSize()},e.prototype.sizeCaption=function(){var t=this.captionElement.getBBox();""!==this.captionText.trim()?(this.captionBoxWidth=t.width+2*this.PADDING,this.captionBoxHeight=t.height+2*this.PADDING):(this.captionBoxWidth=0,this.captionBoxHeight=0),a.setAttributes(this.captionBg,[["width",this.captionBoxWidth.toString()],["height",this.captionBoxHeight.toString()],["clip-path","path('M0,0 H"+this.width+" V"+this.height+" H"+-this.width+" Z')"]]),a.setAttributes(this.captionElement,[["x",this.PADDING.toString()],["y",this.PADDING.toString()],["clip-path","path('M0,0 H"+(this.width-this.PADDING)+" V"+this.height+" H"+(-this.width-this.PADDING)+" Z')"]])},e.prototype.showTextEditor=function(){var t=this;this._state="edit",this.overlayContainer.innerHTML="",this.textEditDiv=document.createElement("div"),this.textEditDiv.style.flexGrow="2",this.textEditDiv.style.alignItems="center",this.textEditDiv.style.justifyContent="center",this.textEditDiv.style.pointerEvents="auto",this.textEditDiv.style.overflow="hidden",this.textEditBox=document.createElement("input"),this.textEditBox.style.position="absolute",this.textEditBox.style.width=this.width+"px",this.captionBoxHeight>0&&(this.textEditBox.style.height=this.captionBoxHeight+"px"),this.textEditBox.style.fontSize=this.fontSize,this.textEditBox.style.fontFamily=this.fontFamily,this.textEditBox.style.backgroundColor=this.fillColor,this.textEditBox.style.color=this.textColor,this.textEditBox.style.borderWidth="0",this.textEditBox.setAttribute("value",this.captionText),this.textEditBox.select(),this.textEditDiv.appendChild(this.textEditBox),this.overlayContainer.appendChild(this.textEditDiv),this.textEditBox.addEventListener("pointerup",function(s){s.stopPropagation()}),this.textEditBox.addEventListener("keypress",function(s){"Enter"===s.key&&t.finishTextEditing(t.textEditBox.value)}),this.textEditBox.addEventListener("keyup",function(s){s.cancelBubble=!0}),this.textEditBox.addEventListener("blur",function(){t.finishTextEditing(t.textEditBox.value)}),this.textEditDiv.addEventListener("pointerup",function(){t.finishTextEditing(t.textEditBox.value)}),this.positionTextEditor(),this.textEditBox.focus()},e.prototype.positionTextEditor=function(){"edit"===this.state&&(void 0===this.textEditBox?this.showTextEditor():(this.textEditBox.style.left=this.left+"px",this.textEditBox.style.top=this.top+"px",this.textEditBox.style.transform="rotate("+this.rotationAngle+"deg)",this.textEditBox.style.transformOrigin=this.width/2+"px "+this.height/2+"px"))},e.prototype.finishTextEditing=function(t){this.setCaptionText(t.trim()),this.overlayContainer.innerHTML="",this.stateChanged()},e.prototype.setFont=function(t){this.captionElement&&a.setAttributes(this.captionElement,[["font-family",t]]),this.fontFamily=t,this.textEditBox&&(this.textEditBox.style.fontFamily=this.fontFamily),this.sizeCaption(),this.stateChanged()},e.prototype.setTextColor=function(t){this.captionElement&&a.setAttributes(this.captionElement,[["fill",t]]),this.textColor=t,this.textEditBox&&(this.textEditBox.style.color=this.textColor),this.stateChanged()},e.prototype.setSize=function(){o.prototype.setSize.call(this),a.setAttributes(this.frame,[["width",this.width.toString()],["height",this.height.toString()]]),this.sizeCaption()},e.prototype.pointerUp=function(t){o.prototype.pointerUp.call(this,t),this.setSize(),!this.isMoved&&Date.now()-this.pointerDownTimestamp>500&&this.showTextEditor(),this.pointerDownPoint=void 0},e.prototype.dblClick=function(t,s){o.prototype.dblClick.call(this,t,s),this.showTextEditor()},e.prototype.setStrokeColor=function(t){this.strokeColor=t,this.frame&&a.setAttributes(this.frame,[["stroke",this.strokeColor]]),this.colorChanged(t),this.stateChanged()},e.prototype.setFillColor=function(t){this.fillColor=t,this.captionBg&&a.setAttributes(this.captionBg,[["fill",this.fillColor]]),this.fillColorChanged(t),this.stateChanged()},e.prototype.setStrokeWidth=function(t){this.strokeWidth=t,this.frame&&a.setAttributes(this.frame,[["stroke-width",this.strokeWidth.toString()]]),this.stateChanged()},e.prototype.setStrokeDasharray=function(t){this.strokeDasharray=t,this.frame&&a.setAttributes(this.frame,[["stroke-dasharray",this.strokeDasharray]]),this.stateChanged()},Object.defineProperty(e.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.fillPanel,this.strokeWidthPanel,this.strokeStylePanel,this.fontFamilyPanel,this.textColorPanel]},enumerable:!1,configurable:!0}),e.prototype.getState=function(){var t=Object.assign({fillColor:this.fillColor,strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,opacity:1,textColor:this.textColor,fontFamily:this.fontFamily,fontSize:this.fontSize,captionText:this.captionText},o.prototype.getState.call(this));return t.typeName=this.typeName,t},e.prototype.restoreState=function(t){var s=t;this.fillColor=s.fillColor,this.strokeColor=s.strokeColor,this.strokeWidth=s.strokeWidth,this.strokeDasharray=s.strokeDasharray,this.textColor=s.textColor,this.fontFamily=s.fontFamily,this.captionText=s.captionText,this.fontSize=s.fontSize,this.createVisual(),o.prototype.restoreState.call(this,t),this.setSize()},e.prototype.scale=function(t,s){o.prototype.scale.call(this,t,s),this.setSize()},e.typeName="CaptionFrameMarker",e.title="Caption frame marker",e.icon='<svg viewBox="0 0 24 24"><path d="M5 3c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V5c0-1.11-.89-2-2-2H5m0 2h14v14H5V5m2 2v2h10V7H7z"/></svg>',e}(w),m=function(){function o(e,t){void 0===t&&(t=!1),this.cancelable=!1,this._defaultPrevented=!1,this.markerArea=e,this.cancelable=t}return Object.defineProperty(o.prototype,"defaultPrevented",{get:function(){return this._defaultPrevented},enumerable:!1,configurable:!0}),o.prototype.preventDefault=function(){this._defaultPrevented=!0},o}(),nt=function(o){function e(t,s,r){var i=o.call(this,t,!1)||this;return i.dataUrl=s,i.state=r,i}return u(e,o),e}(m),C=function(o){function e(t,s,r){void 0===r&&(r=!1);var i=o.call(this,t,r)||this;return i.marker=s,i}return u(e,o),e}(m),at=function(){function o(){this.render=[],this.beforeclose=[],this.close=[],this.show=[],this.restorestate=[],this.statechange=[],this.markerselect=[],this.markerdeselect=[],this.markercreating=[],this.markercreate=[],this.markerbeforedelete=[],this.markerdelete=[],this.markerchange=[],this.focus=[],this.blur=[]}return o.prototype.addEventListener=function(e,t){this[e].push(t)},o.prototype.removeEventListener=function(e,t){var s=this[e].indexOf(t);s>-1&&this[e].splice(s,1)},o}(),dt=function(){function o(e){this.touchPoints=0,this._availableMarkerTypes=this.DEFAULT_MARKER_TYPES,this.mode="select",this.markers=[],this.isDragging=!1,this.renderEventListeners=[],this.closeEventListeners=[],this.settings=new q,this._isOpen=!1,this.undoRedoManager=new ct,this.renderAtNaturalSize=!1,this.renderImageType="image/png",this.renderMarkersOnly=!1,this.zoomSteps=[1,1.5,2,4],this._zoomLevel=1,this._isResizing=!1,this.prevPanPoint={x:0,y:0},this.eventListeners=new at,this._silentRenderMode=!1,this._isFocused=!1,this._instanceNo=o.instanceCounter++,this.styles=new Q(this.instanceNo),this.uiStyleSettings=this.styles.settings,this.target=e,this.targetRoot=document.body,this.width=e.clientWidth,this.height=e.clientHeight,this.styles.removeStyleSheet(),this.open=this.open.bind(this),this.setTopLeft=this.setTopLeft.bind(this),this.toolbarButtonClicked=this.toolbarButtonClicked.bind(this),this.createNewMarker=this.createNewMarker.bind(this),this.addNewMarker=this.addNewMarker.bind(this),this.markerCreated=this.markerCreated.bind(this),this.setCurrentMarker=this.setCurrentMarker.bind(this),this.onPointerDown=this.onPointerDown.bind(this),this.onDblClick=this.onDblClick.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onPointerOut=this.onPointerOut.bind(this),this.onKeyUp=this.onKeyUp.bind(this),this.overrideOverflow=this.overrideOverflow.bind(this),this.restoreOverflow=this.restoreOverflow.bind(this),this.close=this.close.bind(this),this.closeUI=this.closeUI.bind(this),this.addCloseEventListener=this.addCloseEventListener.bind(this),this.removeCloseEventListener=this.removeCloseEventListener.bind(this),this.addRenderEventListener=this.addRenderEventListener.bind(this),this.removeRenderEventListener=this.removeRenderEventListener.bind(this),this.clientToLocalCoordinates=this.clientToLocalCoordinates.bind(this),this.onWindowResize=this.onWindowResize.bind(this),this.deleteSelectedMarker=this.deleteSelectedMarker.bind(this),this.setWindowHeight=this.setWindowHeight.bind(this),this.removeMarker=this.removeMarker.bind(this),this.colorChanged=this.colorChanged.bind(this),this.fillColorChanged=this.fillColorChanged.bind(this),this.onPopupTargetResize=this.onPopupTargetResize.bind(this),this.showNotesEditor=this.showNotesEditor.bind(this),this.hideNotesEditor=this.hideNotesEditor.bind(this),this.stepZoom=this.stepZoom.bind(this),this.focus=this.focus.bind(this),this.blur=this.blur.bind(this),this.markerStateChanged=this.markerStateChanged.bind(this),this.switchToSelectMode=this.switchToSelectMode.bind(this),this.addDefs=this.addDefs.bind(this),this.addDefsToImage=this.addDefsToImage.bind(this)}return Object.defineProperty(o.prototype,"ALL_MARKER_TYPES",{get:function(){return[D,M,_,E,st,N,W,U,it,G,A,ot,rt]},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"DEFAULT_MARKER_TYPES",{get:function(){return[D,M,_,E,N,W,U]},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"BASIC_MARKER_TYPES",{get:function(){return[D,M,_,E,W]},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"availableMarkerTypes",{get:function(){return this._availableMarkerTypes},set:function(t){var s=this;this._availableMarkerTypes.splice(0),t.forEach(function(r){if("string"==typeof r){var i=s.ALL_MARKER_TYPES.find(function(n){return n.typeName===r});void 0!==i&&s._availableMarkerTypes.push(i)}else s._availableMarkerTypes.push(r)})},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"currentMarker",{get:function(){return this._currentMarker},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"isOpen",{get:function(){return this._isOpen},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"isUndoPossible",{get:function(){return!(!this.undoRedoManager||!this.undoRedoManager.isUndoPossible)},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"isRedoPossible",{get:function(){return!(!this.undoRedoManager||!this.undoRedoManager.isRedoPossible)},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"zoomLevel",{get:function(){return this._zoomLevel},set:function(t){this._zoomLevel=t,this.editorCanvas&&this.contentDiv&&(this.editorCanvas.style.transform="scale("+this._zoomLevel+")",this.contentDiv.scrollTo({left:(this.editorCanvas.clientWidth*this._zoomLevel-this.contentDiv.clientWidth)/2,top:(this.editorCanvas.clientHeight*this._zoomLevel-this.contentDiv.clientHeight)/2}))},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"instanceNo",{get:function(){return this._instanceNo},enumerable:!1,configurable:!0}),o.prototype.open=function(){this.setupResizeObserver(),this.setEditingTarget(),this.setTopLeft(),this.initMarkerCanvas(),this.initOverlay(),this.attachEvents(),"popup"===this.settings.displayMode&&this.onPopupTargetResize(),H.isLicensed||this.addLogo(),this._isOpen=!0,this._isFocused=!0},o.prototype.show=function(){var e=this;void 0===this.styles.styleSheetRoot&&void 0!==z.styleSheetRoot&&(this.styles.styleSheetRoot=z.styleSheetRoot),this.markers.splice(0),this.setWindowHeight(),this.showUI(),this.open(),this.eventListeners.show.forEach(function(t){return t(new m(e))})},o.prototype.render=function(){return K(this,void 0,void 0,function(){var e;return J(this,function(t){switch(t.label){case 0:return this.setCurrentMarker(),(e=new ht).naturalSize=this.renderAtNaturalSize,e.imageType=this.renderImageType,e.imageQuality=this.renderImageQuality,e.markersOnly=this.renderMarkersOnly,e.width=this.renderWidth,e.height=this.renderHeight,[4,e.rasterize(this.target instanceof HTMLImageElement?this.target:null,this.markerImage,this.renderTarget)];case 1:return t.sent(),[4,e.rasterize(this.target instanceof HTMLImageElement?this.target:null,this.markerImage,this.renderTarget)];case 2:return[2,t.sent()]}})})},o.prototype.close=function(e){var t=this;if(void 0===e&&(e=!1),this.isOpen){var s=!1;e||this.eventListeners.beforeclose.forEach(function(r){var i=new m(t,!0);r(i),i.defaultPrevented&&(s=!0)}),s||(this.coverDiv&&this.closeUI(),this.targetObserver&&(this.targetObserver.unobserve(this.target),this.targetObserver.unobserve(this.editorCanvas)),"popup"===this.settings.displayMode&&window.removeEventListener("resize",this.setWindowHeight),this.eventListeners.close.forEach(function(r){return r(new m(t))}),this.detachEvents(),this._isOpen=!1)}},o.prototype.addMarkersToToolbar=function(){for(var e,t=[],s=0;s<arguments.length;s++)t[s]=arguments[s];(e=this._availableMarkerTypes).push.apply(e,t)},o.prototype.addRenderEventListener=function(e){this.addEventListener("render",function(t){e(t.dataUrl,t.state)})},o.prototype.removeRenderEventListener=function(e){},o.prototype.addCloseEventListener=function(e){this.addEventListener("close",function(){e()})},o.prototype.removeCloseEventListener=function(e){},o.prototype.setupResizeObserver=function(){var e=this;"inline"===this.settings.displayMode?window.ResizeObserver&&(this.targetObserver=new ResizeObserver(function(){e.resize(e.target.clientWidth,e.target.clientHeight)}),this.targetObserver.observe(this.target)):"popup"===this.settings.displayMode&&(window.ResizeObserver&&(this.targetObserver=new ResizeObserver(function(){return e.onPopupTargetResize()}),this.targetObserver.observe(this.editorCanvas)),window.addEventListener("resize",this.setWindowHeight))},o.prototype.onPopupTargetResize=function(){var e=1*this.target.clientWidth/this.target.clientHeight,t=this.editorCanvas.clientWidth/e>this.editorCanvas.clientHeight?this.editorCanvas.clientHeight*e:this.editorCanvas.clientWidth;this.resize(t,t<this.editorCanvas.clientWidth?this.editorCanvas.clientHeight:this.editorCanvas.clientWidth/e)},o.prototype.setWindowHeight=function(){this.windowHeight=window.innerHeight},o.prototype.resize=function(e,t){this._isResizing=!0;var s=e/this.imageWidth,r=t/this.imageHeight;this.imageWidth=Math.round(e),this.imageHeight=Math.round(t),this.target instanceof HTMLImageElement&&this.editingTarget instanceof HTMLImageElement&&(this.editingTarget.src=this.target.src),this.editingTarget.width=this.imageWidth,this.editingTarget.height=this.imageHeight,this.editingTarget.style.width=this.imageWidth+"px",this.editingTarget.style.height=this.imageHeight+"px",this.markerImage.setAttribute("width",this.imageWidth.toString()),this.markerImage.setAttribute("height",this.imageHeight.toString()),this.markerImage.setAttribute("viewBox","0 0 "+this.imageWidth.toString()+" "+this.imageHeight.toString()),this.markerImageHolder.style.width=this.imageWidth+"px",this.markerImageHolder.style.height=this.imageHeight+"px",this.overlayContainer.style.width=this.imageWidth+"px",this.overlayContainer.style.height=this.imageHeight+"px","popup"!==this.settings.displayMode?this.coverDiv.style.width=this.imageWidth.toString()+"px":(this.setTopLeft(),this.positionMarkerImage()),void 0!==this.toolbar&&this.toolbar.adjustLayout(),this.positionLogo(),this.scaleMarkers(s,r),this._isResizing=!1},o.prototype.scaleMarkers=function(e,t){var s,r=this;this._currentMarker&&this._currentMarker instanceof E?this._currentMarker.scale(e,t):(s=this._currentMarker,this.setCurrentMarker()),this.markers.forEach(function(i){i!==r._currentMarker&&i.scale(e,t)}),void 0!==s&&this.setCurrentMarker(s)},o.prototype.setEditingTarget=function(){this.imageWidth=Math.round(this.target.clientWidth),this.imageHeight=Math.round(this.target.clientHeight),this.target instanceof HTMLImageElement&&this.editingTarget instanceof HTMLImageElement&&(this.editingTarget.src=this.target.src),this.editingTarget.width=this.imageWidth,this.editingTarget.height=this.imageHeight,this.editingTarget.style.width=this.imageWidth+"px",this.editingTarget.style.height=this.imageHeight+"px"},o.prototype.setTopLeft=function(){var e=this.editingTarget.getBoundingClientRect(),t=this.editorCanvas.getBoundingClientRect();this.left=e.left-t.left,this.top=e.top-t.top},o.prototype.initMarkerCanvas=function(){this.markerImageHolder=document.createElement("div"),this.markerImageHolder.style.setProperty("touch-action","pinch-zoom"),this.markerImage=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.markerImage.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.markerImage.setAttribute("width",this.imageWidth.toString()),this.markerImage.setAttribute("height",this.imageHeight.toString()),this.markerImage.setAttribute("viewBox","0 0 "+this.imageWidth.toString()+" "+this.imageHeight.toString()),this.markerImage.style.pointerEvents="auto",this.markerImageHolder.style.position="absolute",this.markerImageHolder.style.width=this.imageWidth+"px",this.markerImageHolder.style.height=this.imageHeight+"px",this.markerImageHolder.style.transformOrigin="top left",this.positionMarkerImage(),this.markerImageHolder.appendChild(this.markerImage),this.editorCanvas.appendChild(this.markerImageHolder)},o.prototype.addDefs=function(){for(var e,t=[],s=0;s<arguments.length;s++)t[s]=arguments[s];this.defs=a.createDefs(),this.addDefsToImage(),(e=this.defs).append.apply(e,t)},o.prototype.addDefsToImage=function(){this.defs&&this.markerImage.insertBefore(this.defs,this.markerImage.firstChild)},o.prototype.initOverlay=function(){this.overlayContainer=document.createElement("div"),this.overlayContainer.style.position="absolute",this.overlayContainer.style.left="0px",this.overlayContainer.style.top="0px",this.overlayContainer.style.width=this.imageWidth+"px",this.overlayContainer.style.height=this.imageHeight+"px",this.overlayContainer.style.display="flex",this.markerImageHolder.appendChild(this.overlayContainer)},o.prototype.positionMarkerImage=function(){this.markerImageHolder.style.top=this.top/this.zoomLevel+"px",this.markerImageHolder.style.left=this.left/this.zoomLevel+"px"},o.prototype.attachEvents=function(){this.markerImage.addEventListener("pointerdown",this.onPointerDown),this.markerImage.addEventListener("touchmove",function(e){return e.preventDefault()}),this.markerImage.addEventListener("dblclick",this.onDblClick),this.attachWindowEvents()},o.prototype.attachWindowEvents=function(){window.addEventListener("pointermove",this.onPointerMove),window.addEventListener("pointerup",this.onPointerUp),window.addEventListener("pointercancel",this.onPointerOut),window.addEventListener("pointerout",this.onPointerOut),window.addEventListener("pointerleave",this.onPointerUp),window.addEventListener("resize",this.onWindowResize),window.addEventListener("keyup",this.onKeyUp)},o.prototype.detachEvents=function(){this.markerImage.removeEventListener("pointerdown",this.onPointerDown),this.markerImage.removeEventListener("dblclick",this.onDblClick),this.detachWindowEvents()},o.prototype.detachWindowEvents=function(){window.removeEventListener("pointermove",this.onPointerMove),window.removeEventListener("pointerup",this.onPointerUp),window.removeEventListener("pointercancel",this.onPointerOut),window.removeEventListener("pointerout",this.onPointerOut),window.removeEventListener("pointerleave",this.onPointerUp),window.removeEventListener("resize",this.onWindowResize),window.removeEventListener("keyup",this.onKeyUp)},o.prototype.addLogo=function(){this.logoUI=document.createElement("div"),this.logoUI.style.display="inline-block",this.logoUI.style.margin="0px",this.logoUI.style.padding="0px",this.logoUI.style.fill="#333333";var e=document.createElement("a");e.href="https://markerjs.com/",e.target="_blank",e.innerHTML='<svg viewBox="0 0 112 96" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path fill="#e5f20d" fill-opacity=".647" d="M0 40.386h111.96V95.62H0z"/><path d="M93.61 61.452c0 .987-.328 1.831-.987 2.53-.657.7-1.52 1.048-2.591 1.048-1.481 0-2.222-.74-2.222-2.22 0-16.617-.533-29.347-1.604-38.192-1.068-8.842-2.92-13.265-5.552-13.265-4.443 0-10.94 15.509-19.497 46.52v.124c0 .987-.328 1.831-.987 2.53-.657.7-1.52 1.048-2.592 1.048-1.48 0-2.22-.74-2.22-2.22 0-3.29.165-8.392.493-15.302.33-7.732.494-13.82.494-18.262 0-6.17-.186-10.55-.556-13.142-.37-2.591-1.172-3.887-2.406-3.887-2.796 0-6.333 5.12-10.612 15.363C38.494 34.367 34.01 46.44 29.32 60.34l-1.11 3.209a5.714 5.714 0 01-1.42 2.097c-.617.578-1.295.864-2.036.864-.987 0-1.644-.081-1.974-.247-.328-.162-.533-.656-.617-1.48-.41-4.03-.74-9.418-.987-16.165-.163-1.728-.329-4.566-.494-8.515-.822-13.901-1.562-23.3-2.221-28.196-.657-4.893-.987-7.628-.987-8.205 0-.657.33-1.44.987-2.345.659-.903 1.276-1.357 1.85-1.357 1.319 0 2.387.947 3.21 2.838.411.906.863 4.526 1.357 10.859.493 6.335.905 14.19 1.233 23.568l.617 18.88c4.527-13.983 9.216-26.673 14.068-38.068C45.65 6.686 50.093.988 54.123.988c2.715 0 4.566 1.974 5.553 5.923.987 3.949 1.481 9.667 1.481 17.152 0 3.949-.081 9.625-.247 17.029l-.123 5.676c3.373-11.762 6.725-21.634 10.057-29.615 3.331-7.979 6.685-11.97 10.056-11.97 8.475 0 12.71 18.757 12.71 56.269z" fill-rule="nonzero"/></svg>',e.title="Powered by marker.js",e.style.display="grid",e.style.alignItems="center",e.style.justifyItems="center",e.style.padding="3px",e.style.width="20px",e.style.height="20px",this.logoUI.appendChild(e),this.editorCanvas.appendChild(this.logoUI),this.logoUI.style.position="absolute",this.logoUI.style.pointerEvents="all",this.positionLogo()},o.prototype.positionLogo=function(){this.logoUI&&(this.logoUI.style.left="r
1ight"!==this.uiStyleSettings.logoPosition?this.markerImageHolder.offsetLeft+10+"px":this.markerImageHolder.offsetLeft+this.markerImageHolder.offsetWidth-this.logoUI.clientWidth-10+"px",this.logoUI.style.top=this.markerImageHolder.offsetTop+this.markerImageHolder.offsetHeight-this.logoUI.clientHeight-10+"px")},o.prototype.overrideOverflow=function(){this.scrollXState=window.scrollX,this.scrollYState=window.scrollY,this.bodyOverflowState=document.body.style.overflow,window.scroll({top:0,left:0}),document.body.style.overflow="hidden"},o.prototype.restoreOverflow=function(){document.body.style.overflow=this.bodyOverflowState,window.scroll({top:this.scrollYState,left:this.scrollXState})},o.prototype.showUI=function(){var e;switch("popup"===this.settings.displayMode&&this.overrideOverflow(),this.coverDiv=document.createElement("div"),this.coverDiv.style.visibility=this._silentRenderMode?"hidden":"visible",this.coverDiv.className=this.styles.classNamePrefixBase+" "+this.styles.classNamePrefix,this.coverDiv.style.fontSize="16px",this.coverDiv.style.userSelect="none",this.settings.displayMode){case"inline":this.coverDiv.style.position="absolute";var s=this.target.offsetLeft+(null!==(e=this.settings.uiOffsetLeft)&&void 0!==e?e:0);this.coverDiv.style.top=(void 0!==this.settings.uiOffsetTop?this.target.offsetTop+this.settings.uiOffsetTop:this.target.offsetTop>this.styles.settings.toolbarHeight?this.target.offsetTop-this.styles.settings.toolbarHeight:0)+"px",this.coverDiv.style.left=s+"px",this.coverDiv.style.width=this.target.offsetWidth.toString()+"px",this.coverDiv.style.zIndex=void 0!==this.uiStyleSettings.zIndex?this.uiStyleSettings.zIndex:"5";break;case"popup":this.coverDiv.style.position="absolute",this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=window.innerHeight+"px",this.coverDiv.style.backgroundColor="rgba(0, 0, 0, 0.75)",this.coverDiv.style.zIndex=void 0!==this.uiStyleSettings.zIndex?this.uiStyleSettings.zIndex:"1000",this.coverDiv.style.display="flex"}this.targetRoot.appendChild(this.coverDiv),this.uiDiv=document.createElement("div"),this.uiDiv.style.display="flex",this.uiDiv.style.flexDirection="column",this.uiDiv.style.flexGrow="2",this.uiDiv.style.margin="popup"===this.settings.displayMode?this.settings.popupMargin+"px":"0px","popup"===this.settings.displayMode&&(this.uiDiv.style.maxWidth="calc(100vw - "+2*this.settings.popupMargin+"px"),this.uiDiv.style.border="0px",this.coverDiv.appendChild(this.uiDiv),this.toolbar=new lt(this.uiDiv,this.settings.displayMode,this._availableMarkerTypes,this.uiStyleSettings,this.styles),this.toolbar.addButtonClickListener(this.toolbarButtonClicked),this.toolbar.show(this._silentRenderMode||this.uiStyleSettings.hideToolbar?"hidden":"visible"),this.contentDiv=document.createElement("div"),this.contentDiv.style.display="flex",this.contentDiv.style.flexDirection="row",this.contentDiv.style.flexGrow="2",this.contentDiv.style.flexShrink="1","popup"===this.settings.displayMode&&(this.contentDiv.style.backgroundColor=this.uiStyleSettings.canvasBackgroundColor,this.contentDiv.style.maxHeight=this.windowHeight-2*this.settings.popupMargin-3.5*this.uiStyleSettings.toolbarHeight+"px",this.contentDiv.style.maxWidth="calc(100vw - "+2*this.settings.popupMargin+"px)"),this.contentDiv.style.overflow="auto",this.uiDiv.appendChild(this.contentDiv),this.editorCanvas=document.createElement("div"),this.editorCanvas.style.flexGrow="2",this.editorCanvas.style.flexShrink="1",this.editorCanvas.style.position="relative",this.editorCanvas.style.overflow="hidden",this.editorCanvas.style.display="flex","popup"===this.settings.displayMode&&(this.editorCanvas.style.alignItems="center",this.editorCanvas.style.justifyContent="center"),this.editorCanvas.style.pointerEvents="none",this.editorCanvas.style.transformOrigin="left top",this.editorCanvas.style.transform="scale("+this.zoomLevel+")",this.contentDiv.appendChild(this.editorCanvas),this.editingTarget=this.target instanceof HTMLImageElement?document.createElement("img"):document.createElement("canvas"),"inline"===this.settings.displayMode&&void 0===this.settings.uiOffsetTop&&this.target.offsetTop<this.styles.settings.toolbarHeight&&(this.editingTarget.style.marginTop=this.target.offsetTop-this.styles.settings.toolbarHeight+"px"),this.editorCanvas.appendChild(this.editingTarget),this.toolbox=new pt(this.uiDiv,this.settings.displayMode,this.uiStyleSettings,this.styles),this.toolbox.show(this._silentRenderMode||this.uiStyleSettings.hideToolbox?"hidden":"visible")},o.prototype.closeUI=function(){"popup"===this.settings.displayMode&&this.restoreOverflow(),this.targetRoot.removeChild(this.coverDiv),this.coverDiv.remove(),this.coverDiv=null},o.prototype.removeMarker=function(e){this.markerImage.removeChild(e.container),this.markers.indexOf(e)>-1&&this.markers.splice(this.markers.indexOf(e),1),e.dispose()},o.prototype.switchToSelectMode=function(){this.mode="select",this.hideNotesEditor(),void 0!==this._currentMarker&&("new"!==this._currentMarker.state?this._currentMarker.select():(this.removeMarker(this._currentMarker),this.setCurrentMarker(),this.markerImage.style.cursor="default"),this.addUndoStep())},o.prototype.toolbarButtonClicked=function(e,t){if("marker"===e&&void 0!==t)this.createNewMarker(t);else if("action"===e)switch(t){case"select":this.switchToSelectMode(),this.switchToSelectMode();break;case"delete":this.deleteSelectedMarker();break;case"clear":this.clear();break;case"undo":this.undo();break;case"redo":this.redo();break;case"zoom":this.stepZoom();break;case"zoom-out":this.zoomLevel=1;break;case"notes":void 0===this.notesArea?(this.switchToSelectMode(),this.zoomLevel=1,this.showNotesEditor()):this.switchToSelectMode();break;
vendor: 10,519 bytes, line 1
1case"close":this.close();break;case"render":this.switchToSelectMode(),this.startRenderAndClose()}},o.prototype.deleteSelectedMarker=function(){var e=this;if(void 0!==this._currentMarker){var t=!1;if(this.eventListeners.markerbeforedelete.forEach(function(r){var i=new C(e,e._currentMarker,!0);r(i),i.defaultPrevented&&(t=!0)}),!t){var s=this._currentMarker;this._currentMarker.dispose(),this.markerImage.removeChild(this._currentMarker.container),this.markers.splice(this.markers.indexOf(this._currentMarker),1),this.setCurrentMarker(),this.addUndoStep(),this.eventListeners.markerdelete.forEach(function(r){return r(new C(e,s))})}}},o.prototype.clear=function(){var e=this,t=!1;if(this.markers.length>0&&(this.eventListeners.markerbeforedelete.forEach(function(n){var h=new C(e,void 0,!0);n(h),h.defaultPrevented&&(t=!0)}),!t)){this.setCurrentMarker();for(var s=function(h){var c=r.markers[h];r.setCurrentMarker(r.markers[h]),r._currentMarker.dispose(),r.markerImage.removeChild(r._currentMarker.container),r.markers.splice(r.markers.indexOf(r._currentMarker),1),r.eventListeners.markerdelete.forEach(function(p){return p(new C(e,c))})},r=this,i=this.markers.length-1;i>=0;i--)s(i);this.addUndoStep()}},Object.defineProperty(o.prototype,"isNotesAreaOpen",{get:function(){return void 0!==this.notesArea},enumerable:!1,configurable:!0}),o.prototype.showNotesEditor=function(){var e;void 0!==this._currentMarker&&(this.overlayContainer.innerHTML="",this.notesArea=document.createElement("textarea"),this.notesArea.className=this.uiStyleSettings.notesAreaStyleClassName,this.notesArea.style.pointerEvents="auto",this.notesArea.style.alignSelf="stretch",this.notesArea.style.width="100%",this.notesArea.style.margin=this.uiStyleSettings.toolbarHeight/4+"px",this.notesArea.value=null!==(e=this._currentMarker.notes)&&void 0!==e?e:"",this.overlayContainer.appendChild(this.notesArea))},o.prototype.hideNotesEditor=function(){this.isNotesAreaOpen&&(void 0!==this._currentMarker&&(this._currentMarker.notes=""!==this.notesArea.value.trim()?this.notesArea.value:void 0),this.overlayContainer.removeChild(this.notesArea),this.notesArea=void 0)},o.prototype.selectLastMarker=function(){this.markers.length>0?this.setCurrentMarker(this.markers[this.markers.length-1]):this.setCurrentMarker()},o.prototype.addUndoStep=function(){var e=this;if(void 0===this._currentMarker||"edit"!==this._currentMarker.state){var t=this.getState(),s=this.undoRedoManager.getLastUndoStep();if(!s||s.width===t.width&&s.height===t.height){var r=this.undoRedoManager.undoStepCount;this.undoRedoManager.addUndoStep(t),r<this.undoRedoManager.undoStepCount&&this.eventListeners.statechange.forEach(function(i){return i(new m(e))})}else this.undoRedoManager.replaceLastUndoStep(t)}},o.prototype.undo=function(){this.switchToSelectMode(),this.addUndoStep(),this.undoStep()},o.prototype.undoStep=function(){var e=this,t=this.undoRedoManager.undo();void 0!==t&&(this.restoreState(t),this.addDefsToImage(),this.selectLastMarker(),this.eventListeners.statechange.forEach(function(s){return s(new m(e))}))},o.prototype.redo=function(){this.switchToSelectMode(),this.redoStep()},o.prototype.redoStep=function(){var e=this,t=this.undoRedoManager.redo();void 0!==t&&(this.restoreState(t),this.addDefsToImage(),this.selectLastMarker(),this.eventListeners.statechange.forEach(function(s){return s(new m(e))}))},o.prototype.stepZoom=function(){var e=this.zoomSteps.indexOf(this.zoomLevel);this.zoomLevel=e<this.zoomSteps.length-1?this.zoomSteps[e+1]:this.zoomSteps[0]},o.prototype.panTo=function(e){this.contentDiv.scrollBy({left:this.prevPanPoint.x-e.x,top:this.prevPanPoint.y-e.y}),this.prevPanPoint=e},o.prototype.startRenderAndClose=function(){return K(this,void 0,void 0,function(){var e,t,s=this;return J(this,function(r){switch(r.label){case 0:return[4,this.render()];case 1:return e=r.sent(),t=this.getState(),this.eventListeners.render.forEach(function(i){return i(new nt(s,e,t))}),this.close(!0),[2]}})})},o.prototype.getState=function(e){!0===e&&this.setCurrentMarker();var t={width:this.imageWidth,height:this.imageHeight,markers:[]};return this.markers.forEach(function(s){return t.markers.push(s.getState())}),t},o.prototype.restoreState=function(e){var t=this;for(this.markers.splice(0);this.markerImage.lastChild;)this.markerImage.removeChild(this.markerImage.lastChild);e.markers.forEach(function(s){var r=t._availableMarkerTypes.find(function(n){return n.typeName===s.typeName});if(void 0!==r){var i=t.addNewMarker(r);i.restoreState(s),t.markers.push(i)}}),e.width&&e.height&&(e.width!==this.imageWidth||e.height!==this.imageHeight)&&this.scaleMarkers(this.imageWidth/e.width,this.imageHeight/e.height),this.eventListeners.restorestate.forEach(function(s){return s(new m(t))})},o.prototype.addNewMarker=function(e){var t=a.createGroup();return this.markerImage.appendChild(t),new e(t,this.overlayContainer,this.settings)},o.prototype.createNewMarker=function(e){var t,s=this;(t="string"==typeof e?this._availableMarkerTypes.find(function(r){return r.typeName===e}):e)&&(this.setCurrentMarker(),this.addUndoStep(),this._currentMarker=this.addNewMarker(t),this._currentMarker.onMarkerCreated=this.markerCreated,this._currentMarker.onColorChanged=this.colorChanged,this._currentMarker.onFillColorChanged=this.fillColorChanged,this._currentMarker.onStateChanged=this.markerStateChanged,this.markerImage.style.cursor="crosshair",this.toolbar.setActiveMarkerButton(t.typeName),this.toolbox.setPanelButtons(this._currentMarker.toolboxPanels),this.eventListeners.markercreating.forEach(function(r){return r(new C(s,s._currentMarker))}))},o.prototype.markerCreated=function(e){var t=this;this.mode="select",this.markerImage.style.cursor="default",this.markers.push(e),this.setCurrentMarker(e),e instanceof M&&this.settings.newFreehandMarkerOnPointerUp?this.createNewMarker(M):this.toolbar.setSelectMode(),this.addUndoStep(),this.eventListeners.markercreate.forEach(function(s){return s(new C(t,t._currentMarker))})},o.prototype.colorChanged=function(e){this.settings.defaultColorsFollowCurrentColors&&(this.settings.defaultColor=e,this.settings.defaultStrokeColor=e)},o.prototype.fillColorChanged=function(e){this.settings.defaultColorsFollowCurrentColors&&(this.settings.defaultFillColor=e)},o.prototype.markerStateChanged=function(e){var t=this;this.eventListeners.markerchange.forEach(function(s){return s(new C(t,e))})},o.prototype.setCurrentMarker=function(e){var t=this;this._currentMarker!==e&&void 0!==this._currentMarker&&(this._currentMarker.deselect(),this.toolbar.setCurrentMarker(),this.toolbox.setPanelButtons([]),this._isResizing||this.eventListeners.markerdeselect.forEach(function(s){return s(new C(t,t._currentMarker))})),this._currentMarker=e,void 0===this._currentMarker||this._currentMarker.isSelected||("new"!==this._currentMarker.state&&this._currentMarker.select(),this.toolbar.setCurrentMarker(this._currentMarker),this.toolbox.setPanelButtons(this._currentMarker.toolboxPanels),this._isResizing||this.eventListeners.markerselect.forEach(function(s){return s(new C(t,t._currentMarker))}))},o.prototype.onPointerDown=function(e){if(this._isFocused||this.focus(),this.touchPoints++,1===this.touchPoints||"touch"!==e.pointerType)if(void 0===this._currentMarker||"new"!==this._currentMarker.state&&"creating"!==this._currentMarker.state){if("select"===this.mode){var t=this.markers.find(function(s){return s.ownsTarget(e.target)});void 0!==t?(this.setCurrentMarker(t),this.isDragging=!0,this._currentMarker.pointerDown(this.clientToLocalCoordinates(e.clientX,e.clientY),e.target)):(this.setCurrentMarker(),this.isDragging=!0,this.prevPanPoint={x:e.clientX,y:e.clientY})}}else this.isDragging=!0,this._currentMarker.pointerDown(this.clientToLocalCoordinates(e.clientX,e.clientY))},o.prototype.onDblClick=function(e){if(this._isFocused||this.focus(),"select"===this.mode){var t=this.markers.find(function(s){return s.ownsTarget(e.target)});void 0!==t&&t!==this._currentMarker&&this.setCurrentMarker(t),void 0!==this._currentMarker?this._currentMarker.dblClick(this.clientToLocalCoordinates(e.clientX,e.clientY),e.target):this.setCurrentMarker()}},o.prototype.onPointerMove=function(e){1!==this.touchPoints&&"touch"===e.pointerType||(void 0!==this._currentMarker||this.isDragging)&&(void 0!==this._currentMarker&&"edit"===this._currentMarker.state||e.preventDefault(),void 0!==this._currentMarker?this._currentMarker.manipulate(this.clientToLocalCoordinates(e.clientX,e.clientY)):this.zoomLevel>1&&this.panTo({x:e.clientX,y:e.clientY}))},o.prototype.onPointerUp=function(e){this.touchPoints>0&&this.touchPoints--,0===this.touchPoints&&this.isDragging&&void 0!==this._currentMarker&&this._currentMarker.pointerUp(this.clientToLocalCoordinates(e.clientX,e.clientY)),this.isDragging=!1,this.addUndoStep()},o.prototype.onPointerOut=function(){this.touchPoints>0&&this.touchPoints--},o.prototype.onKeyUp=function(e){void 0===this._currentMarker||void 0!==this.notesArea||"Delete"!==e.key&&"Backspace"!==e.key||this.deleteSelectedMarker()},o.prototype.clientToLocalCoordinates=function(e,t){var s=this.markerImage.getBoundingClientRect();return{x:(e-s.left)/this.zoomLevel/(s.width/this.imageWidth/this.zoomLevel),y:(t-s.top)/this.zoomLevel/(s.height/this.imageHeight/this.zoomLevel)}},o.prototype.onWindowResize=function(){this.positionUI()},o.prototype.positionUI=function(){switch(this.setTopLeft(),this.settings.displayMode){case"inline":var e=this.target.getClientRects(),t=e.length>0&&e.item(0)&&e.item(0).y>this.styles.settings.toolbarHeight?this.target.offsetTop-this.styles.settings.toolbarHeight:0;this.coverDiv.style.top=t+"px",this.coverDiv.style.left=this.target.offsetLeft.toString()+"px";break;case"popup":this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=this.windowHeight+"px",this.contentDiv.style.maxHeight=this.windowHeight-2*this.settings.popupMargin-3.5*this.styles.settings.toolbarHeight+"px"}this.positionMarkerImage(),this.positionLogo()},o.prototype.addLicenseKey=function(e){H.addKey(e)},o.prototype.addEventListener=function(e,t){this.eventListeners.addEventListener(e,t)},o.prototype.removeEventListener=function(e,t){this.eventListeners.removeEventListener(e,t)},o.prototype.renderState=function(e){this._silentRenderMode=!0,this.settings.displayMode="inline",this.isOpen||this.show(),this.restoreState(e),this.startRenderAndClose(),this._silentRenderMode=!1},Object.defineProperty(o.prototype,"isFocused",{get:function(){return this._isFocused}
1,enumerable:!1,configurable:!0}),o.prototype.focus=function(){var e=this;this._isFocused||(this.attachWindowEvents(),this._isFocused=!0,void 0!==this._previousCurrentMarker&&this.setCurrentMarker(this._previousCurrentMarker),this.eventListeners.focus.forEach(function(t){return t(new m(e))}))},o.prototype.blur=function(){var e=this;this._isFocused&&(this.detachWindowEvents(),this._isFocused=!1,this._previousCurrentMarker=this._currentMarker,this.setCurrentMarker(),this.eventListeners.blur.forEach(function(t){return t(new m(e))}))},o.instanceCounter=0,o}()}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.