143 lines
352 KiB
JavaScript
143 lines
352 KiB
JavaScript
function e(t){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(t)}function t(e,t,n,r,a,i,o){try{var s=e[i](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function n(e){return function(){var n=this,r=arguments;return new Promise((function(a,i){var o=e.apply(n,r);function s(e){t(o,a,i,s,l,"next",e)}function l(e){t(o,a,i,s,l,"throw",e)}s(void 0)}))}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t&&a(e.prototype,t),n&&a(e,n),e}function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=l(e);if(t){var a=l(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return u(this,n)}}function h(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}return n}(e,t)||p(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e){return function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||p(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,t):void 0}}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function m(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=p(e))){var t=0,n=function(){};return{s:n,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a,i=!0,o=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==r.return||r.return()}finally{if(o)throw a}}}}function v(e){var t=e.changedTouches,n=t[0],r="";switch(e.type){case"touchstart":r="mousedown";break;case"touchmove":r="mousemove";break;case"touchend":r="mouseup";break;default:return}var a=n.screenX,i=n.screenY,o=n.clientX,s=n.clientY,l=new MouseEvent(r,{bubbles:!0,cancelable:!0,view:window,detail:1,screenX:a,screenY:i,clientX:o,clientY:s,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});t.length<2&&(n.target.dispatchEvent(l),e.preventDefault())}document.addEventListener("touchstart",v,!0),document.addEventListener("touchmove",v,!0),document.addEventListener("touchend",v,!0),document.addEventListener("touchcancel",v,!0);
|
|
/**
|
|
* Namespaces or tools therefor.
|
|
* @module namespaces
|
|
* @license MIT
|
|
*/
|
|
var y={HTML:"http://www.w3.org/1999/xhtml",MATH:"http://www.w3.org/1998/Math/MathML",SE:"http://svg-edit.googlecode.com",SVG:"http://www.w3.org/2000/svg",XLINK:"http://www.w3.org/1999/xlink",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"},_=function(){var e={};return Object.entries(y).forEach((function(t){var n=h(t,2),r=n[0],a=n[1];e[a]=r.toLowerCase()})),e};!function(){if(!("SVGPathSeg"in window)){var e=function(){function e(t,n,a){r(this,e),this.pathSegType=t,this.pathSegTypeAsLetter=n,this._owningPathSegList=a}return i(e,[{key:"_segmentChanged",value:function(){this._owningPathSegList&&this._owningPathSegList.segmentChanged(this)}}]),e}();e.prototype.classname="SVGPathSeg",e.PATHSEG_UNKNOWN=0,e.PATHSEG_CLOSEPATH=1,e.PATHSEG_MOVETO_ABS=2,e.PATHSEG_MOVETO_REL=3,e.PATHSEG_LINETO_ABS=4,e.PATHSEG_LINETO_REL=5,e.PATHSEG_CURVETO_CUBIC_ABS=6,e.PATHSEG_CURVETO_CUBIC_REL=7,e.PATHSEG_CURVETO_QUADRATIC_ABS=8,e.PATHSEG_CURVETO_QUADRATIC_REL=9,e.PATHSEG_ARC_ABS=10,e.PATHSEG_ARC_REL=11,e.PATHSEG_LINETO_HORIZONTAL_ABS=12,e.PATHSEG_LINETO_HORIZONTAL_REL=13,e.PATHSEG_LINETO_VERTICAL_ABS=14,e.PATHSEG_LINETO_VERTICAL_REL=15,e.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS=16,e.PATHSEG_CURVETO_CUBIC_SMOOTH_REL=17,e.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS=18,e.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL=19;var t=function(t){s(a,t);var n=d(a);function a(t){return r(this,a),n.call(this,e.PATHSEG_CLOSEPATH,"z",t)}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegClosePath]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter}},{key:"clone",value:function(){return new a(void 0)}}]),a}(e),n=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_MOVETO_ABS,"M",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegMovetoAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(n.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}});var a=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_MOVETO_REL,"m",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegMovetoRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(a.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}});var o=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_LINETO_ABS,"L",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(o.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}});var l=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_LINETO_REL,"l",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(l.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}});var c=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l,c,u){var d;return r(this,a),(d=n.call(this,e.PATHSEG_CURVETO_CUBIC_ABS,"C",t))._x=i,d._y=o,d._x1=s,d._y1=l,d._x2=c,d._y2=u,d}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoCubicAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x1+" "+this._y1+" "+this._x2+" "+this._y2+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x1,this._y1,this._x2,this._y2)}}]),a}(e);Object.defineProperties(c.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x1:{get:function(){return this._x1},set:function(e){this._x1=e,this._segmentChanged()},enumerable:!0},y1:{get:function(){return this._y1},set:function(e){this._y1=e,this._segmentChanged()},enumerable:!0},x2:{get:function(){return this._x2},set:function(e){this._x2=e,this._segmentChanged()},enumerable:!0},y2:{get:function(){return this._y2},set:function(e){this._y2=e,this._segmentChanged()},enumerable:!0}});var u=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l,c,u){var d;return r(this,a),(d=n.call(this,e.PATHSEG_CURVETO_CUBIC_REL,"c",t))._x=i,d._y=o,d._x1=s,d._y1=l,d._x2=c,d._y2=u,d}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoCubicRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x1+" "+this._y1+" "+this._x2+" "+this._y2+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x1,this._y1,this._x2,this._y2)}}]),a}(e);Object.defineProperties(u.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x1:{get:function(){return this._x1},set:function(e){this._x1=e,this._segmentChanged()},enumerable:!0},y1:{get:function(){return this._y1},set:function(e){this._y1=e,this._segmentChanged()},enumerable:!0},x2:{get:function(){return this._x2},set:function(e){this._x2=e,this._segmentChanged()},enumerable:!0},y2:{get:function(){return this._y2},set:function(e){this._y2=e,this._segmentChanged()},enumerable:!0}});var h=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l){var c;return r(this,a),(c=n.call(this,e.PATHSEG_CURVETO_QUADRATIC_ABS,"Q",t))._x=i,c._y=o,c._x1=s,c._y1=l,c}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoQuadraticAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x1+" "+this._y1+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x1,this._y1)}}]),a}(e);Object.defineProperties(h.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x1:{get:function(){return this._x1},set:function(e){this._x1=e,this._segmentChanged()},enumerable:!0},y1:{get:function(){return this._y1},set:function(e){this._y1=e,this._segmentChanged()},enumerable:!0}});var f=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l){var c;return r(this,a),(c=n.call(this,e.PATHSEG_CURVETO_QUADRATIC_REL,"q",t))._x=i,c._y=o,c._x1=s,c._y1=l,c}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoQuadraticRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x1+" "+this._y1+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x1,this._y1)}}]),a}(e);Object.defineProperties(f.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x1:{get:function(){return this._x1},set:function(e){this._x1=e,this._segmentChanged()},enumerable:!0},y1:{get:function(){return this._y1},set:function(e){this._y1=e,this._segmentChanged()},enumerable:!0}});var p=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l,c,u,d){var h;return r(this,a),(h=n.call(this,e.PATHSEG_ARC_ABS,"A",t))._x=i,h._y=o,h._r1=s,h._r2=l,h._angle=c,h._largeArcFlag=u,h._sweepFlag=d,h}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegArcAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._r1+" "+this._r2+" "+this._angle+" "+(this._largeArcFlag?"1":"0")+" "+(this._sweepFlag?"1":"0")+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._r1,this._r2,this._angle,this._largeArcFlag,this._sweepFlag)}}]),a}(e);Object.defineProperties(p.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},r1:{get:function(){return this._r1},set:function(e){this._r1=e,this._segmentChanged()},enumerable:!0},r2:{get:function(){return this._r2},set:function(e){this._r2=e,this._segmentChanged()},enumerable:!0},angle:{get:function(){return this._angle},set:function(e){this._angle=e,this._segmentChanged()},enumerable:!0},largeArcFlag:{get:function(){return this._largeArcFlag},set:function(e){this._largeArcFlag=e,this._segmentChanged()},enumerable:!0},sweepFlag:{get:function(){return this._sweepFlag},set:function(e){this._sweepFlag=e,this._segmentChanged()},enumerable:!0}});var g=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l,c,u,d){var h;return r(this,a),(h=n.call(this,e.PATHSEG_ARC_REL,"a",t))._x=i,h._y=o,h._r1=s,h._r2=l,h._angle=c,h._largeArcFlag=u,h._sweepFlag=d,h}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegArcRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._r1+" "+this._r2+" "+this._angle+" "+(this._largeArcFlag?"1":"0")+" "+(this._sweepFlag?"1":"0")+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._r1,this._r2,this._angle,this._largeArcFlag,this._sweepFlag)}}]),a}(e);Object.defineProperties(g.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},r1:{get:function(){return this._r1},set:function(e){this._r1=e,this._segmentChanged()},enumerable:!0},r2:{get:function(){return this._r2},set:function(e){this._r2=e,this._segmentChanged()},enumerable:!0},angle:{get:function(){return this._angle},set:function(e){this._angle=e,this._segmentChanged()},enumerable:!0},largeArcFlag:{get:function(){return this._largeArcFlag},set:function(e){this._largeArcFlag=e,this._segmentChanged()},enumerable:!0},sweepFlag:{get:function(){return this._sweepFlag},set:function(e){this._sweepFlag=e,this._segmentChanged()},enumerable:!0}});var m=function(t){s(a,t);var n=d(a);function a(t,i){var o;return r(this,a),(o=n.call(this,e.PATHSEG_LINETO_HORIZONTAL_ABS,"H",t))._x=i,o}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoHorizontalAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x}},{key:"clone",value:function(){return new a(void 0,this._x)}}]),a}(e);Object.defineProperty(m.prototype,"x",{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0});var v=function(t){s(a,t);var n=d(a);function a(t,i){var o;return r(this,a),(o=n.call(this,e.PATHSEG_LINETO_HORIZONTAL_REL,"h",t))._x=i,o}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoHorizontalRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x}},{key:"clone",value:function(){return new a(void 0,this._x)}}]),a}(e);Object.defineProperty(v.prototype,"x",{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0});var y=function(t){s(a,t);var n=d(a);function a(t,i){var o;return r(this,a),(o=n.call(this,e.PATHSEG_LINETO_VERTICAL_ABS,"V",t))._y=i,o}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoVerticalAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._y)}}]),a}(e);Object.defineProperty(y.prototype,"y",{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0});var _=function(t){s(a,t);var n=d(a);function a(t,i){var o;return r(this,a),(o=n.call(this,e.PATHSEG_LINETO_VERTICAL_REL,"v",t))._y=i,o}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegLinetoVerticalRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._y)}}]),a}(e);Object.defineProperty(_.prototype,"y",{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0});var b=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l){var c;return r(this,a),(c=n.call(this,e.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS,"S",t))._x=i,c._y=o,c._x2=s,c._y2=l,c}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoCubicSmoothAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x2+" "+this._y2+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x2,this._y2)}}]),a}(e);Object.defineProperties(b.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x2:{get:function(){return this._x2},set:function(e){this._x2=e,this._segmentChanged()},enumerable:!0},y2:{get:function(){return this._y2},set:function(e){this._y2=e,this._segmentChanged()},enumerable:!0}});var x=function(t){s(a,t);var n=d(a);function a(t,i,o,s,l){var c;return r(this,a),(c=n.call(this,e.PATHSEG_CURVETO_CUBIC_SMOOTH_REL,"s",t))._x=i,c._y=o,c._x2=s,c._y2=l,c}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoCubicSmoothRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x2+" "+this._y2+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y,this._x2,this._y2)}}]),a}(e);Object.defineProperties(x.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0},x2:{get:function(){return this._x2},set:function(e){this._x2=e,this._segmentChanged()},enumerable:!0},y2:{get:function(){return this._y2},set:function(e){this._y2=e,this._segmentChanged()},enumerable:!0}});var w=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS,"T",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoQuadraticSmoothAbs]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(w.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}});var S=function(t){s(a,t);var n=d(a);function a(t,i,o){var s;return r(this,a),(s=n.call(this,e.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL,"t",t))._x=i,s._y=o,s}return i(a,[{key:"toString",value:function(){return"[object SVGPathSegCurvetoQuadraticSmoothRel]"}},{key:"_asPathString",value:function(){return this.pathSegTypeAsLetter+" "+this._x+" "+this._y}},{key:"clone",value:function(){return new a(void 0,this._x,this._y)}}]),a}(e);Object.defineProperties(S.prototype,{x:{get:function(){return this._x},set:function(e){this._x=e,this._segmentChanged()},enumerable:!0},y:{get:function(){return this._y},set:function(e){this._y=e,this._segmentChanged()},enumerable:!0}}),SVGPathElement.prototype.createSVGPathSegClosePath=function(){return new t(void 0)},SVGPathElement.prototype.createSVGPathSegMovetoAbs=function(e,t){return new n(void 0,e,t)},SVGPathElement.prototype.createSVGPathSegMovetoRel=function(e,t){return new a(void 0,e,t)},SVGPathElement.prototype.createSVGPathSegLinetoAbs=function(e,t){return new o(void 0,e,t)},SVGPathElement.prototype.createSVGPathSegLinetoRel=function(e,t){return new l(void 0,e,t)},SVGPathElement.prototype.createSVGPathSegCurvetoCubicAbs=function(e,t,n,r,a,i){return new c(void 0,e,t,n,r,a,i)},SVGPathElement.prototype.createSVGPathSegCurvetoCubicRel=function(e,t,n,r,a,i){return new u(void 0,e,t,n,r,a,i)},SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticAbs=function(e,t,n,r){return new h(void 0,e,t,n,r)},SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticRel=function(e,t,n,r){return new f(void 0,e,t,n,r)},SVGPathElement.prototype.createSVGPathSegArcAbs=function(e,t,n,r,a,i,o){return new p(void 0,e,t,n,r,a,i,o)},SVGPathElement.prototype.createSVGPathSegArcRel=function(e,t,n,r,a,i,o){return new g(void 0,e,t,n,r,a,i,o)},SVGPathElement.prototype.createSVGPathSegLinetoHorizontalAbs=function(e){return new m(void 0,e)},SVGPathElement.prototype.createSVGPathSegLinetoHorizontalRel=function(e){return new v(void 0,e)},SVGPathElement.prototype.createSVGPathSegLinetoVerticalAbs=function(e){return new y(void 0,e)},SVGPathElement.prototype.createSVGPathSegLinetoVerticalRel=function(e){return new _(void 0,e)},SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothAbs=function(e,t,n,r){return new b(void 0,e,t,n,r)},SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothRel=function(e,t,n,r){return new x(void 0,e,t,n,r)},SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothAbs=function(e,t){return new w(void 0,e,t)},SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothRel=function(e,t){return new S(void 0,e,t)},"getPathSegAtLength"in SVGPathElement.prototype||(SVGPathElement.prototype.getPathSegAtLength=function(e){if(void 0===e||!isFinite(e))throw new Error("Invalid arguments.");var t=document.createElementNS("http://www.w3.org/2000/svg","path");t.setAttribute("d",this.getAttribute("d"));var n=t.pathSegList.numberOfItems-1;if(n<=0)return 0;do{if(t.pathSegList.removeItem(n),e>t.getTotalLength())break;n--}while(n>0);return n}),window.SVGPathSeg=e,window.SVGPathSegClosePath=t,window.SVGPathSegMovetoAbs=n,window.SVGPathSegMovetoRel=a,window.SVGPathSegLinetoAbs=o,window.SVGPathSegLinetoRel=l,window.SVGPathSegCurvetoCubicAbs=c,window.SVGPathSegCurvetoCubicRel=u,window.SVGPathSegCurvetoQuadraticAbs=h,window.SVGPathSegCurvetoQuadraticRel=f,window.SVGPathSegArcAbs=p,window.SVGPathSegArcRel=g,window.SVGPathSegLinetoHorizontalAbs=m,window.SVGPathSegLinetoHorizontalRel=v,window.SVGPathSegLinetoVerticalAbs=y,window.SVGPathSegLinetoVerticalRel=_,window.SVGPathSegCurvetoCubicSmoothAbs=b,window.SVGPathSegCurvetoCubicSmoothRel=x,window.SVGPathSegCurvetoQuadraticSmoothAbs=w,window.SVGPathSegCurvetoQuadraticSmoothRel=S}if(!("SVGPathSegList"in window)||!("appendItem"in window.SVGPathSegList.prototype)){var k=function(){function e(t){r(this,e),this._pathElement=t,this._list=this._parsePath(this._pathElement.getAttribute("d")),this._mutationObserverConfig={attributes:!0,attributeFilter:["d"]},this._pathElementMutationObserver=new MutationObserver(this._updateListFromPathMutations.bind(this)),this._pathElementMutationObserver.observe(this._pathElement,this._mutationObserverConfig)}return i(e,[{key:"_checkPathSynchronizedToList",value:function(){this._updateListFromPathMutations(this._pathElementMutationObserver.takeRecords())}},{key:"_updateListFromPathMutations",value:function(e){if(this._pathElement){var t=!1;e.forEach((function(e){"d"===e.attributeName&&(t=!0)})),t&&(this._list=this._parsePath(this._pathElement.getAttribute("d")))}}},{key:"_writeListToPath",value:function(){this._pathElementMutationObserver.disconnect(),this._pathElement.setAttribute("d",e._pathSegArrayAsString(this._list)),this._pathElementMutationObserver.observe(this._pathElement,this._mutationObserverConfig)}},{key:"segmentChanged",value:function(e){this._writeListToPath()}},{key:"clear",value:function(){this._checkPathSynchronizedToList(),this._list.forEach((function(e){e._owningPathSegList=null})),this._list=[],this._writeListToPath()}},{key:"initialize",value:function(e){return this._checkPathSynchronizedToList(),this._list=[e],e._owningPathSegList=this,this._writeListToPath(),e}},{key:"_checkValidIndex",value:function(e){if(isNaN(e)||e<0||e>=this.numberOfItems)throw new Error("INDEX_SIZE_ERR")}},{key:"getItem",value:function(e){return this._checkPathSynchronizedToList(),this._checkValidIndex(e),this._list[e]}},{key:"insertItemBefore",value:function(e,t){return this._checkPathSynchronizedToList(),t>this.numberOfItems&&(t=this.numberOfItems),e._owningPathSegList&&(e=e.clone()),this._list.splice(t,0,e),e._owningPathSegList=this,this._writeListToPath(),e}},{key:"replaceItem",value:function(e,t){return this._checkPathSynchronizedToList(),e._owningPathSegList&&(e=e.clone()),this._checkValidIndex(t),this._list[t]=e,e._owningPathSegList=this,this._writeListToPath(),e}},{key:"removeItem",value:function(e){this._checkPathSynchronizedToList(),this._checkValidIndex(e);var t=this._list[e];return this._list.splice(e,1),this._writeListToPath(),t}},{key:"appendItem",value:function(e){return this._checkPathSynchronizedToList(),e._owningPathSegList&&(e=e.clone()),this._list.push(e),e._owningPathSegList=this,this._writeListToPath(),e}},{key:"_parsePath",value:function(e){if(!e||!e.length)return[];var t=this,n=function(){function e(){r(this,e),this.pathSegList=[]}return i(e,[{key:"appendSegment",value:function(e){this.pathSegList.push(e)}}]),e}(),a=function(){function e(t){r(this,e),this._string=t,this._currentIndex=0,this._endIndex=this._string.length,this._previousCommand=SVGPathSeg.PATHSEG_UNKNOWN,this._skipOptionalSpaces()}return i(e,[{key:"_isCurrentSpace",value:function(){var e=this._string[this._currentIndex];return e<=" "&&(" "===e||"\n"===e||"\t"===e||"\r"===e||"\f"===e)}},{key:"_skipOptionalSpaces",value:function(){for(;this._currentIndex<this._endIndex&&this._isCurrentSpace();)this._currentIndex++;return this._currentIndex<this._endIndex}},{key:"_skipOptionalSpacesOrDelimiter",value:function(){return!(this._currentIndex<this._endIndex&&!this._isCurrentSpace()&&","!==this._string.charAt(this._currentIndex))&&(this._skipOptionalSpaces()&&this._currentIndex<this._endIndex&&","===this._string.charAt(this._currentIndex)&&(this._currentIndex++,this._skipOptionalSpaces()),this._currentIndex<this._endIndex)}},{key:"hasMoreData",value:function(){return this._currentIndex<this._endIndex}},{key:"peekSegmentType",value:function(){var e=this._string[this._currentIndex];return this._pathSegTypeFromChar(e)}},{key:"_pathSegTypeFromChar",value:function(e){switch(e){case"Z":case"z":return SVGPathSeg.PATHSEG_CLOSEPATH;case"M":return SVGPathSeg.PATHSEG_MOVETO_ABS;case"m":return SVGPathSeg.PATHSEG_MOVETO_REL;case"L":return SVGPathSeg.PATHSEG_LINETO_ABS;case"l":return SVGPathSeg.PATHSEG_LINETO_REL;case"C":return SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS;case"c":return SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL;case"Q":return SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS;case"q":return SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL;case"A":return SVGPathSeg.PATHSEG_ARC_ABS;case"a":return SVGPathSeg.PATHSEG_ARC_REL;case"H":return SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS;case"h":return SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL;case"V":return SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS;case"v":return SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL;case"S":return SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS;case"s":return SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL;case"T":return SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS;case"t":return SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL;default:return SVGPathSeg.PATHSEG_UNKNOWN}}},{key:"_nextCommandHelper",value:function(e,t){return("+"===e||"-"===e||"."===e||e>="0"&&e<="9")&&t!==SVGPathSeg.PATHSEG_CLOSEPATH?t===SVGPathSeg.PATHSEG_MOVETO_ABS?SVGPathSeg.PATHSEG_LINETO_ABS:t===SVGPathSeg.PATHSEG_MOVETO_REL?SVGPathSeg.PATHSEG_LINETO_REL:t:SVGPathSeg.PATHSEG_UNKNOWN}},{key:"initialCommandIsMoveTo",value:function(){if(!this.hasMoreData())return!0;var e=this.peekSegmentType();return e===SVGPathSeg.PATHSEG_MOVETO_ABS||e===SVGPathSeg.PATHSEG_MOVETO_REL}},{key:"_parseNumber",value:function(){var e=0,t=0,n=1,r=0,a=1,i=1,o=this._currentIndex;if(this._skipOptionalSpaces(),this._currentIndex<this._endIndex&&"+"===this._string.charAt(this._currentIndex)?this._currentIndex++:this._currentIndex<this._endIndex&&"-"===this._string.charAt(this._currentIndex)&&(this._currentIndex++,a=-1),!(this._currentIndex===this._endIndex||(this._string.charAt(this._currentIndex)<"0"||this._string.charAt(this._currentIndex)>"9")&&"."!==this._string.charAt(this._currentIndex))){for(var s=this._currentIndex;this._currentIndex<this._endIndex&&this._string.charAt(this._currentIndex)>="0"&&this._string.charAt(this._currentIndex)<="9";)this._currentIndex++;if(this._currentIndex!==s)for(var l=this._currentIndex-1,c=1;l>=s;)t+=c*(this._string.charAt(l--)-"0"),c*=10;if(this._currentIndex<this._endIndex&&"."===this._string.charAt(this._currentIndex)){if(this._currentIndex++,this._currentIndex>=this._endIndex||this._string.charAt(this._currentIndex)<"0"||this._string.charAt(this._currentIndex)>"9")return;for(;this._currentIndex<this._endIndex&&this._string.charAt(this._currentIndex)>="0"&&this._string.charAt(this._currentIndex)<="9";)n*=10,r+=(this._string.charAt(this._currentIndex)-"0")/n,this._currentIndex+=1}if(this._currentIndex!==o&&this._currentIndex+1<this._endIndex&&("e"===this._string.charAt(this._currentIndex)||"E"===this._string.charAt(this._currentIndex))&&"x"!==this._string.charAt(this._currentIndex+1)&&"m"!==this._string.charAt(this._currentIndex+1)){if(this._currentIndex++,"+"===this._string.charAt(this._currentIndex)?this._currentIndex++:"-"===this._string.charAt(this._currentIndex)&&(this._currentIndex++,i=-1),this._currentIndex>=this._endIndex||this._string.charAt(this._currentIndex)<"0"||this._string.charAt(this._currentIndex)>"9")return;for(;this._currentIndex<this._endIndex&&this._string.charAt(this._currentIndex)>="0"&&this._string.charAt(this._currentIndex)<="9";)e*=10,e+=this._string.charAt(this._currentIndex)-"0",this._currentIndex++}var u=t+r;if(u*=a,e&&(u*=Math.pow(10,i*e)),o!==this._currentIndex)return this._skipOptionalSpacesOrDelimiter(),u}}},{key:"_parseArcFlag",value:function(){if(!(this._currentIndex>=this._endIndex)){var e=!1,t=this._string.charAt(this._currentIndex++);if("0"===t)e=!1;else{if("1"!==t)return;e=!0}return this._skipOptionalSpacesOrDelimiter(),e}}},{key:"parseSegment",value:function(){var e=this._string[this._currentIndex],n=this._pathSegTypeFromChar(e);if(n===SVGPathSeg.PATHSEG_UNKNOWN){if(this._previousCommand===SVGPathSeg.PATHSEG_UNKNOWN)return null;if((n=this._nextCommandHelper(e,this._previousCommand))===SVGPathSeg.PATHSEG_UNKNOWN)return null}else this._currentIndex++;switch(this._previousCommand=n,n){case SVGPathSeg.PATHSEG_MOVETO_REL:return new SVGPathSegMovetoRel(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_MOVETO_ABS:return new SVGPathSegMovetoAbs(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_REL:return new SVGPathSegLinetoRel(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_ABS:return new SVGPathSegLinetoAbs(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL:return new SVGPathSegLinetoHorizontalRel(t,this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS:return new SVGPathSegLinetoHorizontalAbs(t,this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL:return new SVGPathSegLinetoVerticalRel(t,this._parseNumber());case SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS:return new SVGPathSegLinetoVerticalAbs(t,this._parseNumber());case SVGPathSeg.PATHSEG_CLOSEPATH:return this._skipOptionalSpaces(),new SVGPathSegClosePath(t);case SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL:var r={x1:this._parseNumber(),y1:this._parseNumber(),x2:this._parseNumber(),y2:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoCubicRel(t,r.x,r.y,r.x1,r.y1,r.x2,r.y2);case SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS:var a={x1:this._parseNumber(),y1:this._parseNumber(),x2:this._parseNumber(),y2:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoCubicAbs(t,a.x,a.y,a.x1,a.y1,a.x2,a.y2);case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL:var i={x2:this._parseNumber(),y2:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoCubicSmoothRel(t,i.x,i.y,i.x2,i.y2);case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS:var o={x2:this._parseNumber(),y2:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoCubicSmoothAbs(t,o.x,o.y,o.x2,o.y2);case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL:var s={x1:this._parseNumber(),y1:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoQuadraticRel(t,s.x,s.y,s.x1,s.y1);case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS:var l={x1:this._parseNumber(),y1:this._parseNumber(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegCurvetoQuadraticAbs(t,l.x,l.y,l.x1,l.y1);case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL:return new SVGPathSegCurvetoQuadraticSmoothRel(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS:return new SVGPathSegCurvetoQuadraticSmoothAbs(t,this._parseNumber(),this._parseNumber());case SVGPathSeg.PATHSEG_ARC_REL:var c={x1:this._parseNumber(),y1:this._parseNumber(),arcAngle:this._parseNumber(),arcLarge:this._parseArcFlag(),arcSweep:this._parseArcFlag(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegArcRel(t,c.x,c.y,c.x1,c.y1,c.arcAngle,c.arcLarge,c.arcSweep);case SVGPathSeg.PATHSEG_ARC_ABS:var u={x1:this._parseNumber(),y1:this._parseNumber(),arcAngle:this._parseNumber(),arcLarge:this._parseArcFlag(),arcSweep:this._parseArcFlag(),x:this._parseNumber(),y:this._parseNumber()};return new SVGPathSegArcAbs(t,u.x,u.y,u.x1,u.y1,u.arcAngle,u.arcLarge,u.arcSweep);default:throw new Error("Unknown path seg type.")}}}]),e}(),o=new n,s=new a(e);if(!s.initialCommandIsMoveTo())return[];for(;s.hasMoreData();){var l=s.parseSegment();if(!l)return[];o.appendSegment(l)}return o.pathSegList}}],[{key:"_pathSegArrayAsString",value:function(e){var t="",n=!0;return e.forEach((function(e){n?(n=!1,t+=e._asPathString()):t+=" "+e._asPathString()})),t}}]),e}();k.prototype.classname="SVGPathSegList",Object.defineProperty(k.prototype,"numberOfItems",{get:function(){return this._checkPathSynchronizedToList(),this._list.length},enumerable:!0}),Object.defineProperties(SVGPathElement.prototype,{pathSegList:{get:function(){return this._pathSegList||(this._pathSegList=new k(this)),this._pathSegList},enumerable:!0},normalizedPathSegList:{get:function(){return this.pathSegList},enumerable:!0},animatedPathSegList:{get:function(){return this.pathSegList},enumerable:!0},animatedNormalizedPathSegList:{get:function(){return this.pathSegList},enumerable:!0}}),window.SVGPathSegList=k}}();var b,x=jQuery,w=(Boolean(document.createElementNS&&document.createElementNS(y.SVG,"svg").createSVGRect),navigator.userAgent),S=document.createElementNS(y.SVG,"svg"),k=Boolean(window.opera),C=w.includes("AppleWebKit"),A=w.includes("Gecko/"),E=w.includes("MSIE"),G=w.includes("Chrome/"),P=(w.includes("Windows"),w.includes("Macintosh")),N="ontouchstart"in window,I=Boolean(S.querySelector),T=Boolean(document.evaluate),L=function(){var e=document.createElementNS(y.SVG,"path");e.setAttribute("d","M0,0 10,10");var t=e.pathSegList,n=e.createSVGPathSegLinetoAbs(5,5);try{return t.replaceItem(n,1),!0}catch(e){}return!1}(),M=function(){var e=document.createElementNS(y.SVG,"path");e.setAttribute("d","M0,0 10,10");var t=e.pathSegList,n=e.createSVGPathSegLinetoAbs(5,5);try{return t.insertItemBefore(n,1),!0}catch(e){}return!1}(),O=function(){var e=document.createElementNS(y.SVG,"svg"),t=document.createElementNS(y.SVG,"svg");document.documentElement.append(e),t.setAttribute("x",5),e.append(t);var n=document.createElementNS(y.SVG,"text");n.textContent="a",t.append(n);try{return 0===n.getStartPositionOfChar(0).x}catch(e){return!1}finally{e.remove()}}(),j=function(){var e=document.createElementNS(y.SVG,"svg");document.documentElement.append(e);var t=document.createElementNS(y.SVG,"path");t.setAttribute("d","M0,0 C0,0 10,10 10,0"),e.append(t);var n=t.getBBox();return e.remove(),n.height>4&&n.height<5}(),V=function(){var e=document.createElementNS(y.SVG,"svg");document.documentElement.append(e);var t=document.createElementNS(y.SVG,"path");t.setAttribute("d","M0,0 10,0");var n=document.createElementNS(y.SVG,"path");n.setAttribute("d","M5,0 15,0");var r=document.createElementNS(y.SVG,"g");r.append(t,n),e.append(r);var a=r.getBBox();return e.remove(),15===a.width}(),R=(function(){var e=document.createElementNS(y.SVG,"rect");e.setAttribute("x",.1);var t=!e.cloneNode(!1).getAttribute("x").includes(",");t||x.alert('NOTE: This version of Opera is known to contain bugs in SVG-edit.\nPlease upgrade to the <a href="http://opera.com">latest version</a> in which the problems have been fixed.')}(),(b=document.createElementNS(y.SVG,"rect")).setAttribute("style","vector-effect:non-scaling-stroke"),"non-scaling-stroke"===b.style.vectorEffect),B=function(){var t=document.createElementNS(y.SVG,"rect").transform.baseVal,n=S.createSVGTransform();t.appendItem(n);var r=t.getItem(0),a=function(t){return t&&"object"===e(t)&&"function"==typeof t.setMatrix&&"angle"in t};return a(r)&&a(n)&&r.type===n.type&&r.angle===n.angle&&r.matrix.a===n.matrix.a&&r.matrix.b===n.matrix.b&&r.matrix.c===n.matrix.c&&r.matrix.d===n.matrix.d&&r.matrix.e===n.matrix.e&&r.matrix.f===n.matrix.f}(),U=function(){return C},F=function(){return A},D=function(){return E},H=function(){return G},z=function(){return P},q=function(){return N},Y=function(){return R};
|
|
/**
|
|
* A jQuery module to work with SVG attributes.
|
|
* @module jQueryAttr
|
|
* @license MIT
|
|
*/
|
|
function W(t){var n=t.fn.attr;return t.fn.attr=function(t,r){var a=this.length;if(!a)return n.call(this,t,r);for(var i=0;i<a;++i){var o=this[i];if("http://www.w3.org/2000/svg"!==o.namespaceURI)return n.call(this,t,r);if(void 0!==r)o.setAttribute(t,r);else if(Array.isArray(t)){for(var s={},l=t.length;l--;){var c=t[l],u=o.getAttribute(c);(u||"0"===u)&&(u=isNaN(u)?u:u-0),s[c]=u}return s}if("object"!==e(t)){var d=o.getAttribute(t);return(d||"0"===d)&&(d=isNaN(d)?d:d-0),d}for(var f=0,p=Object.entries(t);f<p.length;f++){var g=h(p[f],2),m=g[0],v=g[1];o.setAttribute(m,v)}}return this},t}var X=document.createElementNS(y.SVG,"svg");function Q(e){var t=e.matrix,n="";switch(e.type){case 1:n="matrix("+[t.a,t.b,t.c,t.d,t.e,t.f].join(",")+")";break;case 2:n="translate("+t.e+","+t.f+")";break;case 3:n=t.a===t.d?"scale("+t.a+")":"scale("+t.a+","+t.d+")";break;case 4:var r=0,a=0;if(0!==e.angle){var i=1-t.a;a=(i*t.f+t.b*t.e)/(i*i+t.b*t.b),r=(t.e-t.b*a)/i}n="rotate("+e.angle+" "+r+","+a+")"}return n}var K,Z={},$=function(){function e(t){r(this,e),this._elem=t||null,this._xforms=[],this._update=function(){for(var e="",t=0;t<this.numberOfItems;++t){e+=Q(this._list.getItem(t))+" "}this._elem.setAttribute("transform",e)},this._list=this,this._init=function(){var e=this,t=this._elem.getAttribute("transform");if(t)for(var n=/\s*((scale|matrix|rotate|translate)\s*\(.*?\))\s*,?\s*/,r=!0;r;)r=t.match(n),t=t.replace(n,""),r&&r[1]&&function(){var t=r[1].split(/\s*\(/),n=t[0],a=t[1].match(/\s*(.*?)\s*\)/);a[1]=a[1].replace(/(\d)-/g,"$1 -");var i=a[1].split(/[, ]+/),o="abcdef".split(""),s=X.createSVGMatrix();Object.values(i).forEach((function(e,t){i[t]=Number.parseFloat(e),"matrix"===n&&(s[o[t]]=i[t])}));var l=X.createSVGTransform(),c="set"+n.charAt(0).toUpperCase()+n.slice(1),u="matrix"===n?[s]:i;"scale"===n&&1===u.length?u.push(u[0]):"translate"===n&&1===u.length?u.push(0):"rotate"===n&&1===u.length&&u.push(0,0),l[c].apply(l,f(u)),e._list.appendItem(l)}()},this._removeFromOtherLists=function(e){e&&Object.values(Z).some((function(t){for(var n=0,r=t._xforms.length;n<r;++n)if(t._xforms[n]===e)return t.removeItem(n),!0;return!1}))},this.numberOfItems=0}return i(e,[{key:"clear",value:function(){this.numberOfItems=0,this._xforms=[]}},{key:"initialize",value:function(e){this.numberOfItems=1,this._removeFromOtherLists(e),this._xforms=[e]}},{key:"getItem",value:function(e){if(e<this.numberOfItems&&e>=0)return this._xforms[e];var t=new Error("DOMException with code=INDEX_SIZE_ERR");throw t.code=1,t}},{key:"insertItemBefore",value:function(e,t){var n=null;if(t>=0)if(t<this.numberOfItems){this._removeFromOtherLists(e);var r,a=new Array(this.numberOfItems+1);for(r=0;r<t;++r)a[r]=this._xforms[r];a[r]=e;for(var i=r+1;r<this.numberOfItems;++i,++r)a[i]=this._xforms[r];this.numberOfItems++,this._xforms=a,n=e,this._list._update()}else n=this._list.appendItem(e);return n}},{key:"replaceItem",value:function(e,t){var n=null;return t<this.numberOfItems&&t>=0&&(this._removeFromOtherLists(e),this._xforms[t]=e,n=e,this._list._update()),n}},{key:"removeItem",value:function(e){if(e<this.numberOfItems&&e>=0){var t,n=this._xforms[e],r=new Array(this.numberOfItems-1);for(t=0;t<e;++t)r[t]=this._xforms[t];for(var a=t;a<this.numberOfItems-1;++a,++t)r[a]=this._xforms[t+1];return this.numberOfItems--,this._xforms=r,this._list._update(),n}var i=new Error("DOMException with code=INDEX_SIZE_ERR");throw i.code=1,i}},{key:"appendItem",value:function(e){return this._removeFromOtherLists(e),this._xforms.push(e),this.numberOfItems++,this._list._update(),e}}]),e}(),J=function(e){e.id&&Z[e.id]&&delete Z[e.id]},ee=function(e){if(!B){var t=e.id||"temp",n=Z[t];return n&&"temp"!==t||(Z[t]=new $(e),Z[t]._init(),n=Z[t]),n}return e.transform?e.transform.baseVal:e.gradientTransform?e.gradientTransform.baseVal:e.patternTransform?e.patternTransform.baseVal:null},te=["x","x1","cx","rx","width"],ne=["y","y1","cy","ry","height"],re=["r","radius"].concat(te,ne),ae={},ie=function(){return ae},oe=function e(t){var n=K.getRoundDigits();return isNaN(t)?Array.isArray(t)?e(t[0])+","+e(t[1]):Number.parseFloat(t).toFixed(n)-0:Number(Number(t).toFixed(n))},se=function(e,t){return t=t||K.getBaseUnit(),oe(e/ae[t])},le=function(e,t,n){e.setAttribute(t,n)},ce=function(e,t){if(!isNaN(t))return t-0;if("%"===t.substr(-1)){var n=t.substr(0,t.length-1)/100,r=K.getWidth(),a=K.getHeight();return te.includes(e)?n*r:ne.includes(e)?n*a:n*Math.sqrt(r*r+a*a)/Math.sqrt(2)}var i=t.substr(-2);return t.substr(0,t.length-2)*ae[i]},ue=function(e,t,n){if(re.includes(e))return!isNaN(t)||(t=t.toLowerCase(),Object.keys(ae).some((function(e){return new RegExp("^-?[\\d\\.]+"+e+"$").test(t)})));if("id"===e){var r=!1;try{var a=K.getElement(t);r=sn(a)||a===n}catch(e){}return r}return!0},de={BEFORE_APPLY:"before_apply",AFTER_APPLY:"after_apply",BEFORE_UNAPPLY:"before_unapply",AFTER_UNAPPLY:"after_unapply"},he=function(){function e(){r(this,e)}return i(e,[{key:"getText",value:function(){return this.text}}]),e}(),fe=function(e){s(n,he);var t=d(n);function n(e,a,i,o){var s;return r(this,n),(s=t.call(this)).elem=e,s.text=o?"Move "+e.tagName+" to "+o:"Move "+e.tagName,s.oldNextSibling=a,s.oldParent=i,s.newNextSibling=e.nextSibling,s.newParent=e.parentNode,s}return i(n,[{key:"type",value:function(){return"svgedit.history.MoveElementCommand"}},{key:"apply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_APPLY,this),this.elem=this.newParent.insertBefore(this.elem,this.newNextSibling),e&&e.handleHistoryEvent(de.AFTER_APPLY,this)}},{key:"unapply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_UNAPPLY,this),this.elem=this.oldParent.insertBefore(this.elem,this.oldNextSibling),e&&e.handleHistoryEvent(de.AFTER_UNAPPLY,this)}},{key:"elements",value:function(){return[this.elem]}}]),n}();fe.type=fe.prototype.type;var pe=function(e){s(n,he);var t=d(n);function n(e,a){var i;return r(this,n),(i=t.call(this)).elem=e,i.text=a||"Create "+e.tagName,i.parent=e.parentNode,i.nextSibling=i.elem.nextSibling,i}return i(n,[{key:"type",value:function(){return"svgedit.history.InsertElementCommand"}},{key:"apply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_APPLY,this),this.elem=this.parent.insertBefore(this.elem,this.nextSibling),e&&e.handleHistoryEvent(de.AFTER_APPLY,this)}},{key:"unapply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_UNAPPLY,this),this.parent=this.elem.parentNode,this.elem=this.elem.remove(),e&&e.handleHistoryEvent(de.AFTER_UNAPPLY,this)}},{key:"elements",value:function(){return[this.elem]}}]),n}();pe.type=pe.prototype.type;var ge=function(e){s(n,he);var t=d(n);function n(e,a,i,o){var s;return r(this,n),(s=t.call(this)).elem=e,s.text=o||"Delete "+e.tagName,s.nextSibling=a,s.parent=i,J(e),s}return i(n,[{key:"type",value:function(){return"svgedit.history.RemoveElementCommand"}},{key:"apply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_APPLY,this),J(this.elem),this.parent=this.elem.parentNode,this.elem=this.elem.remove(),e&&e.handleHistoryEvent(de.AFTER_APPLY,this)}},{key:"unapply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_UNAPPLY,this),J(this.elem),sn(this.nextSibling)&&window.console&&console.log("Error: reference element was lost"),this.parent.insertBefore(this.elem,this.nextSibling),e&&e.handleHistoryEvent(de.AFTER_UNAPPLY,this)}},{key:"elements",value:function(){return[this.elem]}}]),n}();ge.type=ge.prototype.type;var me=function(e){s(n,he);var t=d(n);function n(e,a,i){var o;for(var s in r(this,n),(o=t.call(this)).elem=e,o.text=i?"Change "+e.tagName+" "+i:"Change "+e.tagName,o.newValues={},o.oldValues=a,a)o.newValues[s]="#text"===s?e.textContent:"#href"===s?Vt(e):e.getAttribute(s);return o}return i(n,[{key:"type",value:function(){return"svgedit.history.ChangeElementCommand"}},{key:"apply",value:function(e){var t=this;e&&e.handleHistoryEvent(de.BEFORE_APPLY,this);var n=!1;if(Object.entries(this.newValues).forEach((function(e){var r=h(e,2),a=r[0],i=r[1];i?"#text"===a?t.elem.textContent=i:"#href"===a?Rt(t.elem,i):t.elem.setAttribute(a,i):"#text"===a?t.elem.textContent="":(t.elem.setAttribute(a,""),t.elem.removeAttribute(a)),"transform"===a&&(n=!0)})),!n){var r=Jt(this.elem);if(r){var a=this.elem.getBBox(),i=["rotate(",r," ",a.x+a.width/2,",",a.y+a.height/2,")"].join("");i!==this.elem.getAttribute("transform")&&this.elem.setAttribute("transform",i)}}return e&&e.handleHistoryEvent(de.AFTER_APPLY,this),!0}},{key:"unapply",value:function(e){var t=this;e&&e.handleHistoryEvent(de.BEFORE_UNAPPLY,this);var n=!1;if(Object.entries(this.oldValues).forEach((function(e){var r=h(e,2),a=r[0],i=r[1];i?"#text"===a?t.elem.textContent=i:"#href"===a?Rt(t.elem,i):t.elem.setAttribute(a,i):"#text"===a?t.elem.textContent="":t.elem.removeAttribute(a),"transform"===a&&(n=!0)})),!n){var r=Jt(this.elem);if(r){var a=this.elem.getBBox(),i=["rotate(",r," ",a.x+a.width/2,",",a.y+a.height/2,")"].join("");i!==this.elem.getAttribute("transform")&&this.elem.setAttribute("transform",i)}}return J(this.elem),e&&e.handleHistoryEvent(de.AFTER_UNAPPLY,this),!0}},{key:"elements",value:function(){return[this.elem]}}]),n}();me.type=me.prototype.type;var ve=function(e){s(n,he);var t=d(n);function n(e){var a;return r(this,n),(a=t.call(this)).text=e||"Batch Command",a.stack=[],a}return i(n,[{key:"type",value:function(){return"svgedit.history.BatchCommand"}},{key:"apply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_APPLY,this);for(var t=this.stack.length,n=0;n<t;++n)this.stack[n].apply(e);e&&e.handleHistoryEvent(de.AFTER_APPLY,this)}},{key:"unapply",value:function(e){e&&e.handleHistoryEvent(de.BEFORE_UNAPPLY,this);for(var t=this.stack.length-1;t>=0;t--)this.stack[t].unapply(e);e&&e.handleHistoryEvent(de.AFTER_UNAPPLY,this)}},{key:"elements",value:function(){for(var e=[],t=this.stack.length;t--;)for(var n=this.stack[t].elements(),r=n.length;r--;)e.includes(n[r])||e.push(n[r]);return e}},{key:"addSubCommand",value:function(e){this.stack.push(e)}},{key:"isEmpty",value:function(){return!this.stack.length}}]),n}();ve.type=ve.prototype.type;var ye,_e,be,xe,we,Se=function(){function e(t){r(this,e),this.handler_=t||null,this.undoStackPointer=0,this.undoStack=[],this.undoChangeStackPointer=-1,this.undoableChangeStack=[]}return i(e,[{key:"resetUndoStack",value:function(){this.undoStack=[],this.undoStackPointer=0}},{key:"getUndoStackSize",value:function(){return this.undoStackPointer}},{key:"getRedoStackSize",value:function(){return this.undoStack.length-this.undoStackPointer}},{key:"getNextUndoCommandText",value:function(){return this.undoStackPointer>0?this.undoStack[this.undoStackPointer-1].getText():""}},{key:"getNextRedoCommandText",value:function(){return this.undoStackPointer<this.undoStack.length?this.undoStack[this.undoStackPointer].getText():""}},{key:"undo",value:function(){this.undoStackPointer>0&&this.undoStack[--this.undoStackPointer].unapply(this.handler_)}},{key:"redo",value:function(){this.undoStackPointer<this.undoStack.length&&this.undoStack.length>0&&this.undoStack[this.undoStackPointer++].apply(this.handler_)}},{key:"addCommandToHistory",value:function(e){this.undoStackPointer<this.undoStack.length&&this.undoStack.length>0&&(this.undoStack=this.undoStack.splice(0,this.undoStackPointer)),this.undoStack.push(e),this.undoStackPointer=this.undoStack.length}},{key:"beginUndoableChange",value:function(e,t){for(var n=++this.undoChangeStackPointer,r=t.length,a=new Array(r),i=new Array(r);r--;){var o=t[r];sn(o)||(i[r]=o,a[r]=o.getAttribute(e))}this.undoableChangeStack[n]={attrName:e,oldValues:a,elements:i}}},{key:"finishUndoableChange",value:function(){for(var e=this.undoChangeStackPointer--,t=this.undoableChangeStack[e],n=t.attrName,r=new ve("Change "+n),a=t.elements.length;a--;){var i=t.elements[a];if(!sn(i)){var o={};o[n]=t.oldValues[a],o[n]!==i.getAttribute(n)&&r.addSubCommand(new me(i,o,n))}}return this.undoableChangeStack[e]=null,r}}]),e}(),ke=Object.freeze({__proto__:null,HistoryEventTypes:de,MoveElementCommand:fe,InsertElementCommand:pe,RemoveElementCommand:ge,ChangeElementCommand:me,BatchCommand:ve,UndoManager:Se}),Ce=document.createElementNS(y.SVG,"svg"),Ae=function(e,t,n){return{x:n.a*e+n.c*t+n.e,y:n.b*e+n.d*t+n.f}},Ee=function(e){return 1===e.a&&0===e.b&&0===e.c&&1===e.d&&0===e.e&&0===e.f},Ge=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=t.reduceRight((function(e,t){return t.multiply(e)}));return Math.abs(r.a)<1e-14&&(r.a=0),Math.abs(r.b)<1e-14&&(r.b=0),Math.abs(r.c)<1e-14&&(r.c=0),Math.abs(r.d)<1e-14&&(r.d=0),Math.abs(r.e)<1e-14&&(r.e=0),Math.abs(r.f)<1e-14&&(r.f=0),r},Pe=function(e){if(!e)return!1;for(var t=e.numberOfItems;t--;){var n=e.getItem(t);if(1===n.type&&!Ee(n.matrix))return!0}return!1},Ne=function(e,t,n,r,a){var i=Ae(e,t,a),o=Ae(e+n,t,a),s=Ae(e,t+r,a),l=Ae(e+n,t+r,a),c=Math.min(i.x,o.x,s.x,l.x),u=Math.max(i.x,o.x,s.x,l.x),d=Math.min(i.y,o.y,s.y,l.y);return{tl:i,tr:o,bl:s,br:l,aabox:{x:c,y:d,width:u-c,height:Math.max(i.y,o.y,s.y,l.y)-d}}},Ie=function(e,t,n){if(sn(e))return Ce.createSVGTransformFromMatrix(Ce.createSVGMatrix());if(t=t||0,n=n||e.numberOfItems-1,(t=Number.parseInt(t))>(n=Number.parseInt(n))){var r=n;n=t,t=r}for(var a=Ce.createSVGMatrix(),i=t;i<=n;++i){var o=i>=0&&i<e.numberOfItems?e.getItem(i).matrix:Ce.createSVGMatrix();a=Ge(a,o)}return Ce.createSVGTransformFromMatrix(a)},Te=function(e){var t=ee(e);return Ie(t).matrix},Le=function(e,t,n,r){var a=Math.PI/4,i=n-e,o=r-t,s=Math.atan2(o,i),l=Math.sqrt(i*i+o*o),c=Math.round(s/a)*a;return{x:e+l*Math.cos(c),y:t+l*Math.sin(c),a:c}},Me=function(e,t){return t.x<e.x+e.width&&t.x+t.width>e.x&&t.y<e.y+e.height&&t.y+t.height>e.y},Oe=jQuery,je={2:["x","y"],4:["x","y"],6:["x","y","x1","y1","x2","y2"],8:["x","y","x1","y1"],10:["x","y","r1","r2","angle","largeArcFlag","sweepFlag"],12:["x"],14:["y"],16:["x","y","x2","y2"],18:["x","y"]},Ve={},Re=function(e){Object.assign(Ve,e.ui)},Be=[],Ue=!0,Fe={},De=null,He=null,ze=function(e){He=e,Be=[0,"ClosePath"];Oe.each(["Moveto","Lineto","CurvetoCubic","CurvetoQuadratic","Arc","LinetoHorizontal","LinetoVertical","CurvetoCubicSmooth","CurvetoQuadraticSmooth"],(function(e,t){Be.push(t+"Abs"),Be.push(t+"Rel")}))},qe=function(e,t,n){var r=e.pathSegList;if(M)r.insertItemBefore(t,n);else{for(var a=r.numberOfItems,i=[],o=0;o<a;o++){var s=r.getItem(o);i.push(s)}r.clear();for(var l=0;l<a;l++)l===n&&r.appendItem(t),r.appendItem(i[l])}},Ye=function(e,t){return je[e].map((function(e){return t[e]}))},We=function(e,t){var n=e.path,r={x:t?t.x:e.item.x,y:t?t.y:e.item.y};n.matrix&&(r=Ae(r.x,r.y,n.matrix));var a=He.getCurrentZoom();return r.x*=a,r.y*=a,r},Xe=function(e,t){var n={x:e.x,y:e.y};t.matrix&&(e=Ae(n.x,n.y,t.imatrix),n.x=e.x,n.y=e.y);var r=He.getCurrentZoom();return n.x/=r,n.y/=r,n},Qe=function(e,t,n){var r=Ke(),a=tn("pathpointgrip_"+e);if(!a){a=document.createElementNS(y.SVG,"circle");var i={id:"pathpointgrip_"+e,display:"none",r:4,fill:"#0FF",stroke:"#00F","stroke-width":2,cursor:"move",style:"pointer-events:all"};"pathNodeTooltip"in Ve&&(i["xlink:title"]=Ve.pathNodeTooltip),nn(a,i),a=r.appendChild(a),Oe("#pathpointgrip_"+e).dblclick((function(){De&&De.setSegType()}))}return t&&n&&nn(a,{cx:t,cy:n,display:"inline"}),a},Ke=function(){var e=tn("pathpointgrip_container");e||((e=tn("selectorParentGroup").appendChild(document.createElementNS(y.SVG,"g"))).id="pathpointgrip_container");return e},Ze=function(e){var t=tn("ctrlpointgrip_"+e);if(t)return t;t=document.createElementNS(y.SVG,"circle");var n={id:"ctrlpointgrip_"+e,display:"none",r:4,fill:"#0FF",stroke:"#55F","stroke-width":1,cursor:"move",style:"pointer-events:all"};return"pathCtrlPtTooltip"in Ve&&(n["xlink:title"]=Ve.pathCtrlPtTooltip),nn(t,n),Ke().append(t),t},$e=function(e){var t=tn("ctrlLine_"+e);return t||(t=document.createElementNS(y.SVG,"line"),nn(t,{id:"ctrlLine_"+e,stroke:"#555","stroke-width":1,style:"pointer-events:none"}),Ke().append(t),t)},Je=function(e){var t=e.item,n=e.index;if(!("x1"in t)||!("x2"in t))return null;var r={};Ke();for(var a=[De.segs[n-1].item,t],i=1;i<3;i++){var o=n+"c"+i,s=r["c"+i+"_line"]=$e(o),l=We(e,{x:t["x"+i],y:t["y"+i]}),c=We(e,{x:a[i-1].x,y:a[i-1].y});nn(s,{x1:l.x,y1:l.y,x2:c.x,y2:c.y,display:"inline"}),r["c"+i+"_line"]=s;var u=r["c"+i]=Ze(o);nn(u,{cx:l.x,cy:l.y,display:"inline"}),r["c"+i]=u}return r},et=function(e,t,n,r){var a=r||De.elem,i=a["createSVGPathSeg"+Be[e]].apply(a,f(n));if(L)a.pathSegList.replaceItem(i,t);else{for(var o=a.pathSegList,s=o.numberOfItems,l=[],c=0;c<s;c++){var u=o.getItem(c);l.push(u)}o.clear();for(var d=0;d<s;d++)d===t?o.appendItem(i):o.appendItem(l[d])}},tt=function(e,t){var n=e.index,r=tn("segline_"+n);if(!r){var a=Ke();r=document.createElementNS(y.SVG,"path"),nn(r,{id:"segline_"+n,display:"none",fill:"none",stroke:"#0FF","stroke-width":2,style:"pointer-events:none",d:"M0,0 0,0"}),a.append(r)}if(t){var i=e.prev;if(!i)return r.setAttribute("display","none"),r;var o=We(i);et(2,0,[o.x,o.y],r);for(var s=Ye(e.type,e.item),l=0;l<s.length;l+=2){var c=We(e,{x:s[l],y:s[l+1]});s[l]=c.x,s[l+1]=c.y}et(e.type,1,s,r)}return r},nt=function(e,t,n){var r=e.x-n.x,a=e.y-n.y,i=t.x-n.x,o=t.y-n.y;if(!(0===r&&0===a||0===i&&0===o)){var s=Math.sqrt(r*r+a*a),l=Math.sqrt(i*i+o*o),c=He.getSVGRoot().createSVGPoint(),u=He.getSVGRoot().createSVGPoint(),d=Math.atan2(a,r),h=Math.atan2(o,i);d<0&&(d+=2*Math.PI),h<0&&(h+=2*Math.PI);var f,p,g=Math.abs(d-h),m=Math.abs(Math.PI-g)/2;return d-h>0?(f=g<Math.PI?d+m:d-m,p=g<Math.PI?h-m:h+m):(f=g<Math.PI?d-m:d+m,p=g<Math.PI?h+m:h-m),c.x=s*Math.cos(f)+n.x,c.y=s*Math.sin(f)+n.y,u.x=l*Math.cos(p)+n.x,u.y=l*Math.sin(p)+n.y,[c,u]}},rt=function(){function e(t,n){r(this,e),this.selected=!1,this.index=t,this.item=n,this.type=n.pathSegType,this.ctrlpts=[],this.ptgrip=null,this.segsel=null}return i(e,[{key:"showCtrlPts",value:function(e){for(var t in this.ctrlpts)({}).hasOwnProperty.call(this.ctrlpts,t)&&this.ctrlpts[t].setAttribute("display",e?"inline":"none")}},{key:"selectCtrls",value:function(e){Oe("#ctrlpointgrip_"+this.index+"c1, #ctrlpointgrip_"+this.index+"c2").attr("fill",e?"#0FF":"#EEE")}},{key:"show",value:function(e){this.ptgrip&&(this.ptgrip.setAttribute("display",e?"inline":"none"),this.segsel.setAttribute("display",e?"inline":"none"),this.showCtrlPts(e))}},{key:"select",value:function(e){this.ptgrip&&(this.ptgrip.setAttribute("stroke",e?"#0FF":"#00F"),this.segsel.setAttribute("display",e?"inline":"none"),this.ctrlpts&&this.selectCtrls(e),this.selected=e)}},{key:"addGrip",value:function(){this.ptgrip=function(e,t){var n=e.index,r=Qe(n);if(t){var a=We(e);nn(r,{cx:a.x,cy:a.y,display:"inline"})}return r}(this,!0),this.ctrlpts=Je(this),this.segsel=tt(this,!0)}},{key:"update",value:function(e){if(this.ptgrip){var t=We(this);nn(this.ptgrip,{cx:t.x,cy:t.y}),tt(this,!0),this.ctrlpts&&(e&&(this.item=De.elem.pathSegList.getItem(this.index),this.type=this.item.pathSegType),Je(this))}}},{key:"move",value:function(e,t){var n=this.item,r=this.ctrlpts?[n.x+=e,n.y+=t,n.x1,n.y1,n.x2+=e,n.y2+=t]:[n.x+=e,n.y+=t];if(et(this.type,this.index,10===this.type?Ye(this.type,n):r),this.next&&this.next.ctrlpts){var a=this.next.item,i=[a.x,a.y,a.x1+=e,a.y1+=t,a.x2,a.y2];et(this.next.type,this.next.index,i)}if(this.mate){var o=this.mate.item,s=[o.x+=e,o.y+=t];et(this.mate.type,this.mate.index,s)}this.update(!0),this.next&&this.next.update(!0)}},{key:"setLinked",value:function(e){var t,n,r;if(2===e){if(n=1,!(t=this.next))return;r=this.item}else{if(n=2,!(t=this.prev))return;r=t.item}var a=t.item;a["x"+n]=r.x+(r.x-this.item["x"+e]),a["y"+n]=r.y+(r.y-this.item["y"+e]);var i=[a.x,a.y,a.x1,a.y1,a.x2,a.y2];et(t.type,t.index,i),t.update(!0)}},{key:"moveCtrl",value:function(e,t,n){var r=this.item;r["x"+e]+=t,r["y"+e]+=n;var a=[r.x,r.y,r.x1,r.y1,r.x2,r.y2];et(this.type,this.index,a),this.update(!0)}},{key:"setType",value:function(e,t){et(e,this.index,t),this.type=e,this.item=De.elem.pathSegList.getItem(this.index),this.showCtrlPts(6===e),this.ctrlpts=Je(this),this.update(!0)}}]),e}(),at=function(){function e(t){if(r(this,e),!t||"path"!==t.tagName)throw new Error("svgedit.path.Path constructed without a <path> element");this.elem=t,this.segs=[],this.selected_pts=[],De=this,this.init()}return i(e,[{key:"init",value:function(){Oe(Ke()).find("*").each((function(){Oe(this).attr("display","none")}));var e=this.elem.pathSegList,t=e.numberOfItems;this.segs=[],this.selected_pts=[],this.first_seg=null;for(var n=0;n<t;n++){var r=e.getItem(n),a=new rt(n,r);a.path=this,this.segs.push(a)}for(var i=this.segs,o=null,s=0;s<t;s++){var l=i[s],c=s+1>=t?null:i[s+1],u=s-1<0?null:i[s-1];if(2===l.type){if(u&&1!==u.type){var d=i[o];d.next=i[o+1],d.next.prev=d,d.addGrip()}o=s}else if(c&&1===c.type)l.next=i[o+1],l.next.prev=l,l.mate=i[o],l.addGrip(),sn(this.first_seg)&&(this.first_seg=l);else if(c)1!==l.type&&(l.addGrip(),c&&2!==c.type&&(l.next=c,l.next.prev=l));else if(1!==l.type){var h=i[o];h.next=i[o+1],h.next.prev=h,h.addGrip(),l.addGrip(),this.first_seg||(this.first_seg=i[o])}}return this}},{key:"eachSeg",value:function(e){for(var t=this.segs.length,n=0;n<t;n++){if(!1===e.call(this.segs[n],n))break}}},{key:"addSeg",value:function(e){var t=this.segs[e];if(t.prev){var n,r,a,i=t.prev;switch(t.item.pathSegType){case 4:r=(t.item.x+i.item.x)/2,a=(t.item.y+i.item.y)/2,n=this.elem.createSVGPathSegLinetoAbs(r,a);break;case 6:var o=(i.item.x+t.item.x1)/2,s=(t.item.x1+t.item.x2)/2,l=(t.item.x2+t.item.x)/2,c=(o+s)/2,u=(s+l)/2;r=(c+u)/2;var d=(i.item.y+t.item.y1)/2,h=(t.item.y1+t.item.y2)/2,f=(t.item.y2+t.item.y)/2,p=(d+h)/2,g=(h+f)/2;a=(p+g)/2,n=this.elem.createSVGPathSegCurvetoCubicAbs(r,a,o,d,c,p);var m=[t.item.x,t.item.y,u,g,l,f];et(t.type,e,m)}qe(this.elem,n,e)}}},{key:"deleteSeg",value:function(e){var t=this.segs[e],n=this.elem.pathSegList;t.show(!1);var r=t.next;if(t.mate){var a=[r.item.x,r.item.y];et(2,r.index,a),et(4,t.index,a),n.removeItem(t.mate.index)}else if(t.prev)n.removeItem(e);else{var i=[r.item.x,r.item.y];et(2,t.next.index,i),n.removeItem(e)}}},{key:"removePtFromSelection",value:function(e){var t=this.selected_pts.indexOf(e);-1!==t&&(this.segs[e].select(!1),this.selected_pts.splice(t,1))}},{key:"clearSelection",value:function(){this.eachSeg((function(){this.select(!1)})),this.selected_pts=[]}},{key:"storeD",value:function(){this.last_d=this.elem.getAttribute("d")}},{key:"show",value:function(e){return this.eachSeg((function(){this.show(e)})),e&&this.selectPt(this.first_seg.index),this}},{key:"movePts",value:function(e,t){for(var n=this.selected_pts.length;n--;){this.segs[this.selected_pts[n]].move(e,t)}}},{key:"moveCtrl",value:function(e,t){var n=this.segs[this.selected_pts[0]];n.moveCtrl(this.dragctrl,e,t),Ue&&n.setLinked(this.dragctrl)}},{key:"setSegType",value:function(e){this.storeD();for(var t,n=this.selected_pts.length;n--;){var r=this.selected_pts[n],a=this.segs[r],i=a.prev;if(i){if(!e)t="Toggle Path Segment Type",e=6===a.type?4:6;e=Number(e);var o=a.item.x,s=a.item.y,l=i.item.x,c=i.item.y,u=void 0;switch(e){case 6:if(a.olditem){var d=a.olditem;u=[o,s,d.x1,d.y1,d.x2,d.y2]}else{var h=o-l,f=s-c;u=[o,s,l+h/3,c+f/3,o-h/3,s-f/3]}break;case 4:u=[o,s],a.olditem=a.item}a.setType(e,u)}}De.endChanges(t)}},{key:"selectPt",value:function(e,t){this.clearSelection(),sn(e)&&this.eachSeg((function(t){this.prev&&(e=t)})),this.addPtsToSelection(e),t&&(this.dragctrl=t,Ue&&this.segs[e].setLinked(t))}},{key:"update",value:function(){var e=this.elem;return Jt(e)?(this.matrix=Te(e),this.imatrix=this.matrix.inverse()):(this.matrix=null,this.imatrix=null),this.eachSeg((function(t){this.item=e.pathSegList.getItem(t),this.update()})),this}},{key:"endChanges",value:function(e){U()&&He.resetD(this.elem);var t=new me(this.elem,{d:this.last_d},e);He.endChanges({cmd:t,elem:this.elem})}},{key:"addPtsToSelection",value:function(t){var n=this;Array.isArray(t)||(t=[t]),t.forEach((function(e){n.segs[e].ptgrip&&!n.selected_pts.includes(e)&&e>=0&&n.selected_pts.push(e)})),this.selected_pts.sort();var r=this.selected_pts.length,a=[];for(a.length=r;r--;){var i=this.selected_pts[r],o=this.segs[i];o.select(!0),a[r]=o.ptgrip}var s=e.subpathIsClosed(this.selected_pts[0]);He.addPtsToSelection({grips:a,closedSubpath:s})}}],[{key:"subpathIsClosed",value:function(e){var t=!1;return De.eachSeg((function(n){return n<=e||2!==this.type&&(1!==this.type||(t=!0,!1))})),t}}]),e}(),it=function(e){var t=Fe[e.id];return t||(t=Fe[e.id]=new at(e)),t},ot=function(e){e in Fe&&delete Fe[e]},st=function(e,t){var n=e-be,r=t-xe,a=Math.sqrt(n*n+r*r),i=Math.atan2(r,n)+we;return n=a*Math.cos(i)+be,r=a*Math.sin(i)+xe,n-=ye,r-=_e,a=Math.sqrt(n*n+r*r),i=Math.atan2(r,n)-we,{x:a*Math.cos(i)+ye,y:a*Math.sin(i)+_e}},lt=function(){var e=De.elem;if(we=Jt(e,!0)){var t=De.oldbbox;be=t.x+t.width/2,xe=t.y+t.height/2;var n=Dt(e);ye=n.x+n.width/2,_e=n.y+n.height/2;var r=ye-be,a=_e-xe,i=Math.sqrt(r*r+a*a),o=Math.atan2(a,r)+we;ye=i*Math.cos(o)+be,_e=i*Math.sin(o)+xe;for(var s=e.pathSegList,l=s.numberOfItems;l;){l-=1;var c=s.getItem(l),u=c.pathSegType;if(1!==u){var d=st(c.x,c.y),h=[d.x,d.y];if(!sn(c.x1)&&!sn(c.x2)){var f=st(c.x1,c.y1),p=st(c.x2,c.y2);h.splice(h.length,0,f.x,f.y,p.x,p.y)}et(u,l,h)}}Dt(e);var g=He.getSVGRoot().createSVGTransform(),m=ee(e);g.setRotate(180*we/Math.PI,ye,_e),m.replaceItem(g,0)}},ct=[0,"z","M","m","L","l","C","c","Q","q","A","a","H","h","V","v","S","s","T","t"],ut=function(e,t){for(var n=e.pathSegList,r=n.numberOfItems,a=0,i=0,o="",s=null,l=0;l<r;++l){var c=n.getItem(l),u=c.x||0,d=c.y||0,h=c.x1||0,f=c.y1||0,p=c.x2||0,g=c.y2||0,m=c.pathSegType,v=ct[m][t?"toLowerCase":"toUpperCase"]();switch(m){case 1:o+="z",s&&!t&&(a=s[0],i=s[1]);break;case 12:u-=a;case 13:t?(d=0,a+=u,v="l"):(d=i,a=u+=a,v="L"),o+=dt(v,[[u,d]]);break;case 14:d-=i;case 15:t?(u=0,i+=d,v="l"):(u=a,i=d+=i,v="L"),o+=dt(v,[[u,d]]);break;case 2:case 4:case 18:u-=a,d-=i;case 5:case 3:case 19:t?(a+=u,i+=d):(a=u+=a,i=d+=i),2!==m&&3!==m||(s=[a,i]),o+=dt(v,[[u,d]]);break;case 6:u-=a,h-=a,p-=a,d-=i,f-=i,g-=i;case 7:t?(a+=u,i+=d):(h+=a,p+=a,f+=i,g+=i,a=u+=a,i=d+=i),o+=dt(v,[[h,f],[p,g],[u,d]]);break;case 8:u-=a,h-=a,d-=i,f-=i;case 9:t?(a+=u,i+=d):(h+=a,f+=i,a=u+=a,i=d+=i),o+=dt(v,[[h,f],[u,d]]);break;case 10:u-=a,d-=i;case 11:t?(a+=u,i+=d):(a=u+=a,i=d+=i),o+=dt(v,[[c.r1,c.r2]],[c.angle,c.largeArcFlag?1:0,c.sweepFlag?1:0],[u,d]);break;case 16:u-=a,p-=a,d-=i,g-=i;case 17:t?(a+=u,i+=d):(p+=a,g+=i,a=u+=a,i=d+=i),o+=dt(v,[[p,g],[u,d]])}}return o};function dt(e,t,n,r){Oe.each(t,(function(e,n){t[e]=oe(n)}));var a=e+t.join(" ");return n&&(a+=" "+n.join(" ")),r&&(a+=" "+oe(r)),a}var ht,ft,pt,gt,mt,vt=(pt=!1,gt=null,mt=!1,{mouseDown:function(e,t,n,r){var a;if("path"!==He.getCurrentMode()){if(De){var i;if(De.storeD(),"pathpointgrip_"===(a=e.target.id).substr(0,14)){i=De.cur_pt=Number.parseInt(a.substr(14)),De.dragging=[n,r];var o=De.segs[i];e.shiftKey?o.selected?De.removePtFromSelection(i):De.addPtsToSelection(i):((De.selected_pts.length<=1||!o.selected)&&De.clearSelection(),De.addPtsToSelection(i))}else if(a.startsWith("ctrlpointgrip_")){De.dragging=[n,r];var s=a.split("_")[1].split("c");i=Number(s[0]);var l=Number(s[1]);De.selectPt(i,l)}if(!De.dragging){var c=He.getRubberBox();sn(c)&&(c=He.setRubberBox(He.selectorManager.getRubberBandBox())),u=He.getCurrentZoom(),nn(c,{x:n*u,y:r*u,width:0,height:0,display:"inline"})}}}else{var u,d=n,h=r,f=d/(u=He.getCurrentZoom()),p=h/u,g=tn("path_stretch_line");ht=[f,p],He.getGridSnapping()&&(f=an(f),p=an(p),d=an(d),h=an(h)),g||(g=document.createElementNS(y.SVG,"path"),nn(g,{id:"path_stretch_line",stroke:"#22C","stroke-width":"0.5",fill:"none"}),g=tn("selectorParentGroup").appendChild(g)),g.setAttribute("display","inline");var m,v=He.getDrawnPath();if(v){for(var _=v.pathSegList,b=_.numberOfItems,x=6/u,w=!1;b;){b--;var S=_.getItem(b),k=S.x,C=S.y;if(f>=k-x&&f<=k+x&&p>=C-x&&p<=C+x){w=!0;break}}a=He.getId(),ot(a);var A,E,G=tn(a),P=_.numberOfItems;if(w){if(b<=1&&P>=2){var N=_.getItem(0).x,I=_.getItem(0).y;A=4===(E=g.pathSegList.getItem(1)).pathSegType?v.createSVGPathSegLinetoAbs(N,I):v.createSVGPathSegCurvetoCubicAbs(N,I,E.x1/u,E.y1/u,N,I);var T=v.createSVGPathSegClosePath();_.appendItem(A),_.appendItem(T)}else if(P<3)return!1;if(Oe(g).remove(),He.setDrawnPath(null),He.setStarted(!1),pt){De.matrix&&He.remapElement(G,{},De.matrix.inverse());var L=G.getAttribute("d"),M=Oe(De.elem).attr("d");return Oe(De.elem).attr("d",M+L),Oe(G).remove(),De.matrix&<(),ze(),vt.toEditMode(De.elem),De.selectPt(),!1}}else{if(!Oe.contains(He.getContainer(),He.getMouseTarget(e)))return!1;var O=v.pathSegList.numberOfItems,j=v.pathSegList.getItem(O-1),V=j.x,R=j.y;if(e.shiftKey){var B=Le(V,R,f,p);f=B.x,p=B.y}A=4===(E=g.pathSegList.getItem(1)).pathSegType?v.createSVGPathSegLinetoAbs(He.round(f),He.round(p)):v.createSVGPathSegCurvetoCubicAbs(He.round(f),He.round(p),E.x1/u,E.y1/u,E.x2/u,E.y2/u),v.pathSegList.appendItem(A),f*=u,p*=u,g.setAttribute("d",["M",f,p,f,p].join(" ")),m=O,pt&&(m+=De.segs.length),Qe(m,f,p)}}else{var U="M"+f+","+p+" ";He.setDrawnPath(He.addSVGElementFromJson({element:"path",curStyles:!0,attr:{d:U,id:He.getNextId(),opacity:He.getOpacity()/2}})),g.setAttribute("d",["M",d,h,d,h].join(" ")),m=pt?De.segs.length:0,Qe(m,d,h)}}},mouseMove:function(e,t){var n=He.getCurrentZoom();mt=!0;var r=He.getDrawnPath();if("path"!==He.getCurrentMode())if(De.dragging){var a=Xe({x:De.dragging[0],y:De.dragging[1]},De),i=Xe({x:e,y:t},De),o=i.x-a.x,s=i.y-a.y;De.dragging=[e,t],De.dragctrl?De.moveCtrl(o,s):De.movePts(o,s)}else De.selected_pts=[],De.eachSeg((function(e){if(this.next||this.prev){var t=He.getRubberBox().getBBox(),n=We(this),r={x:n.x,y:n.y,width:0,height:0},a=Me(t,r);this.select(a),a&&De.selected_pts.push(this.index)}}));else{if(!r)return;var l=r.pathSegList,c=l.numberOfItems-1;if(ht){var u=Ze("1c1"),d=Ze("0c2");u.setAttribute("cx",e),u.setAttribute("cy",t),u.setAttribute("display","inline");var h=ht[0],f=ht[1],p=h+(h-e/n),g=f+(f-t/n);d.setAttribute("cx",p*n),d.setAttribute("cy",g*n),d.setAttribute("display","inline");var m=$e(1);if(nn(m,{x1:e,y1:t,x2:p*n,y2:g*n,display:"inline"}),0===c)ft=[e,t];else{var v=l.getItem(c-1),y=v.x,_=v.y;6===v.pathSegType?(y+=y-v.x2,_+=_-v.y2):ft&&(y=ft[0]/n,_=ft[1]/n),et(6,c,[h,f,y,_,p,g],r)}}else{var b=tn("path_stretch_line");if(b){var x=l.getItem(c);if(6===x.pathSegType){var w=x.x+(x.x-x.x2),S=x.y+(x.y-x.y2);et(6,1,[e,t,w*n,S*n,e,t],b)}else ft?et(6,1,[e,t,ft[0],ft[1],e,t],b):et(4,1,[e,t],b)}}}},mouseUp:function(e,t,n,r){var a=He.getDrawnPath();if("path"===He.getCurrentMode())return ht=null,a||(t=tn(He.getId()),He.setStarted(!1),ft=null),{keep:!0,element:t};var i=He.getRubberBox();if(De.dragging){var o=De.cur_pt;De.dragging=!1,De.dragctrl=!1,De.update(),mt&&De.endChanges("Move path point(s)"),e.shiftKey||mt||De.selectPt(o)}else i&&"none"!==i.getAttribute("display")?(i.setAttribute("display","none"),i.getAttribute("width")<=2&&i.getAttribute("height")<=2&&vt.toSelectMode(e.target)):vt.toSelectMode(e.target);mt=!1},toEditMode:function(e){De=it(e),He.setCurrentMode("pathedit"),He.clearSelection(),De.show(!0).update(),De.oldbbox=Dt(De.elem),pt=!1},toSelectMode:function(e){var t=e===De.elem;He.setCurrentMode("select"),De.show(!1),gt=!1,He.clearSelection(),De.matrix&<(),t&&(He.call("selected",[e]),He.addToSelection([e],!0))},addSubPath:function(e){e?(He.setCurrentMode("path"),pt=!0):(vt.clear(!0),vt.toEditMode(De.elem))},select:function(e){gt===e?(vt.toEditMode(e),He.setCurrentMode("pathedit")):gt=e},reorient:function(){var e=He.getSelectedElements()[0];if(e&&0!==Jt(e)){var t=new ve("Reorient path"),n={d:e.getAttribute("d"),transform:e.getAttribute("transform")};t.addSubCommand(new me(e,n)),He.clearSelection(),this.resetOrientation(e),He.addCommandToHistory(t),it(e).show(!1).matrix=null,this.clear(),He.addToSelection([e],!0),He.call("changed",He.getSelectedElements())}},clear:function(e){var t=He.getDrawnPath();if(gt=null,t){var n=tn(He.getId());Oe(tn("path_stretch_line")).remove(),Oe(n).remove(),Oe(tn("pathpointgrip_container")).find("*").attr("display","none"),ft=null,He.setDrawnPath(null),He.setStarted(!1)}else"pathedit"===He.getCurrentMode()&&this.toSelectMode();De&&De.init().show(!1)},resetOrientation:function(e){if(sn(e)||"path"!==e.nodeName)return!1;var t=ee(e),n=Ie(t).matrix;t.clear(),e.removeAttribute("transform");for(var r=e.pathSegList,a=r.numberOfItems,i=function(t){var a=r.getItem(t),i=a.pathSegType;if(1===i)return"continue";var o=[];Oe.each(["",1,2],(function(e,t){var r=a["x"+t],i=a["y"+t];if(void 0!==r&&void 0!==i){var s=Ae(r,i,n);o.splice(o.length,0,s.x,s.y)}})),et(i,t,o,e)},o=0;o<a;++o)i(o);!function(e,t){for(var n=Dt(e),r=0;r<2;r++){var a=0===r?"fill":"stroke",i=e.getAttribute(a);if(i&&i.startsWith("url(")){var o=en(i);if("linearGradient"===o.tagName){var s=o.getAttribute("x1")||0,l=o.getAttribute("y1")||0,c=o.getAttribute("x2")||1,u=o.getAttribute("y2")||0;s=n.width*s+n.x,l=n.height*l+n.y,c=n.width*c+n.x,u=n.height*u+n.y;var d=Ae(s,l,t),h=Ae(c,u,t),f={x1:(d.x-n.x)/n.width,y1:(d.y-n.y)/n.height,x2:(h.x-n.x)/n.width,y2:(h.y-n.y)/n.height},p=o.cloneNode(!0);Oe(p).attr(f),p.id=He.getNextId(),Bt().append(p),e.setAttribute(a,"url(#"+p.id+")")}}}}(e,n)},zoomChange:function(){"pathedit"===He.getCurrentMode()&&De.update()},getNodePoint:function(){var e=De.selected_pts.length?De.selected_pts[0]:1,t=De.segs[e];return{x:t.item.x,y:t.item.y,type:t.type}},linkControlPoints:function(e){Ue=e},clonePathNode:function(){De.storeD();for(var e=De.selected_pts,t=e.length,n=[];t--;){var r=e[t];De.addSeg(r),n.push(r+t),n.push(r+t+1)}De.init().addPtsToSelection(n),De.endChanges("Clone path node(s)")},opencloseSubPath:function(){var e=De.selected_pts;if(1===e.length){var t,n,r=De.elem,a=r.pathSegList,i=e[0],o=null,s=null;if(De.eachSeg((function(e){return 2===this.type&&e<=i&&(s=this.item),e<=i||(2===this.type?(o=e,!1):1!==this.type||(o=!1,!1))})),sn(o)&&(o=De.segs.length-1),!1!==o){var l=r.createSVGPathSegLinetoAbs(s.x,s.y),c=r.createSVGPathSegClosePath();return o===De.segs.length-1?(a.appendItem(l),a.appendItem(c)):(qe(r,c,o),qe(r,l,o)),void De.init().selectPt(o+1)}if(De.segs[i].mate)return a.removeItem(i),a.removeItem(i),void De.init().selectPt(i-1);for(var u=0;u<a.numberOfItems;u++){var d=a.getItem(u);if(2===d.pathSegType)t=u;else if(u===i)a.removeItem(t);else if(1===d.pathSegType&&i<u){n=u-1,a.removeItem(u);break}}for(var h=i-t-1;h--;)qe(r,a.getItem(t),n);var f=a.getItem(t);et(2,t,[f.x,f.y]),De.init().selectPt(0)}},deletePathNode:function(){if(vt.canDeleteNodes){De.storeD();for(var e=De.selected_pts,t=e.length;t--;){var n=e[t];De.deleteSeg(n)}if(function e(){var t=De.elem.pathSegList,n=t.numberOfItems,r=function(e,n){for(;n--;)t.removeItem(e)};if(n<=1)return!0;for(;n--;){var a=t.getItem(n);if(1===a.pathSegType){var i=t.getItem(n-1),o=t.getItem(n-2);if(2===i.pathSegType){r(n-1,2),e();break}if(2===o.pathSegType){r(n-2,3),e();break}}else if(2===a.pathSegType&&n>0){var s=t.getItem(n-1).pathSegType;if(2===s){r(n-1,1),e();break}if(1===s&&t.numberOfItems-1===n){r(n,1),e();break}}}return!1}(),De.elem.pathSegList.numberOfItems<=1)return vt.toSelectMode(De.elem),void He.canvas.deleteSelectedElements();if(De.init(),De.clearSelection(),window.opera){var r=Oe(De.elem);r.attr("d",r.attr("d"))}De.endChanges("Delete path node(s)")}},smoothPolylineIntoPath:function(e){var t,n=e.points,r=n.numberOfItems;if(r>=4){var a=n.getItem(0),i=null,o=[];for(o.push(["M",a.x,",",a.y," C"].join("")),t=1;t<=r-4;t+=3){var s=n.getItem(t),l=n.getItem(t+1),c=n.getItem(t+2);if(i){var u=nt(i,s,a);if(u&&2===u.length){var d=o[o.length-1].split(",");d[2]=u[0].x,d[3]=u[0].y,o[o.length-1]=d.join(","),s=u[1]}}o.push([s.x,s.y,l.x,l.y,c.x,c.y].join(",")),a=c,i=l}for(o.push("L");t<r;){var h=n.getItem(t);o.push([h.x,h.y].join(",")),t++}o=o.join(" "),e=He.addSVGElementFromJson({element:"path",curStyles:!0,attr:{id:He.getId(),d:o,fill:"none"}})}return e},setSegType:function(e){De.setSegType(e)},moveNode:function(e,t){var n=De.selected_pts;if(n.length){De.storeD();var r=De.segs[n[0]],a={x:0,y:0};a[e]=t-r.item[e],r.move(a.x,a.y),De.endChanges("Move path point")}},fixEnd:function(e){for(var t,n=e.pathSegList,r=n.numberOfItems,a=0;a<r;++a){var i=n.getItem(a);if(2===i.pathSegType&&(t=i),1===i.pathSegType){var o=n.getItem(a-1);if(o.x!==t.x||o.y!==t.y){var s=e.createSVGPathSegLinetoAbs(t.x,t.y);qe(e,s,a),vt.fixEnd(e);break}}}U()&&He.resetD(e)},convertPath:ut}),yt=W(jQuery),_t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bt="a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use".split(","),xt=null,wt=null,St=null,kt=null,Ct=function(e){return e.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/,"$1$2")},At=function(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")};function Et(e){if(e=Nt(e),window.btoa)return window.btoa(e);var t=new Array(4*Math.floor((e.length+2)/3)),n=0,r=0;do{var a=e.charCodeAt(n++),i=e.charCodeAt(n++),o=e.charCodeAt(n++),s=a>>2,l=(3&a)<<4|i>>4,c=(15&i)<<2|o>>6,u=63&o;Number.isNaN(i)?(c=64,u=64):Number.isNaN(o)&&(u=64),t[r++]=_t.charAt(s),t[r++]=_t.charAt(l),t[r++]=_t.charAt(c),t[r++]=_t.charAt(u)}while(n<e.length);return t.join("")}function Gt(e){if(window.atob)return Pt(window.atob(e));e=e.replace(/[^A-Za-z\d+/=]/g,"");var t="",n=0;do{var r=_t.indexOf(e.charAt(n++)),a=_t.indexOf(e.charAt(n++)),i=_t.indexOf(e.charAt(n++)),o=_t.indexOf(e.charAt(n++)),s=r<<2|a>>4,l=(15&a)<<4|i>>2,c=(3&i)<<6|o;t+=String.fromCharCode(s),64!==i&&(t+=String.fromCharCode(l)),64!==o&&(t+=String.fromCharCode(c))}while(n<e.length);return Pt(t)}function Pt(e){return decodeURIComponent(escape(e))}var Nt=function(e){return unescape(encodeURIComponent(e))},It=function(e){if("undefined"==typeof Uint8Array||"undefined"==typeof Blob||"undefined"==typeof URL||!URL.createObjectURL)return"";for(var t=e.split(","),n=t[0].match(/:(.*?);/)[1],r=atob(t[1]),a=r.length,i=new Uint8Array(a);a--;)i[a]=r.charCodeAt(a);var o=new Blob([i],{type:n});return URL.createObjectURL(o)},Tt=function(e){return e&&"undefined"!=typeof URL&&URL.createObjectURL?URL.createObjectURL(e):""},Lt=function(){if("undefined"==typeof Blob)return"";var e=new Blob(["<html><head><title>SVG-edit</title></head><body> </body></html>"],{type:"text/html"});return Tt(e)}(),Mt=function(e){var t,n;e.includes("<svg:svg")&&(e=e.replace(/<(\/?)svg:/g,"<$1").replace("xmlns:svg","xmlns"));try{(n=window.DOMParser?new DOMParser:new window.ActiveXObject("Microsoft.XMLDOM")).async=!1}catch(e){throw new Error("XML Parser could not be instantiated")}try{t=n.loadXML?!!n.loadXML(e)&&n:n.parseFromString(e,"text/xml")}catch(e){throw new Error("Error parsing XML string")}return t},Ot=function e(t,n){if(t&&1===t.nodeType){n(t);for(var r=t.childNodes.length;r--;)e(t.childNodes.item(r),n)}},jt=function(e){if(e){if(e.startsWith('url("'))return e.substring(5,e.indexOf('"',6));if(e.startsWith("url('"))return e.substring(5,e.indexOf("'",6));if(e.startsWith("url("))return e.substring(4,e.indexOf(")"))}return null},Vt=function(e){return e.getAttributeNS(y.XLINK,"href")},Rt=function(e,t){e.setAttributeNS(y.XLINK,"xlink:href",t)},Bt=function(){var e=xt.getSVGContent(),t=e.getElementsByTagNameNS(y.SVG,"defs");return t.length>0?t=t[0]:(t=e.ownerDocument.createElementNS(y.SVG,"defs"),e.firstChild?e.insertBefore(t,e.firstChild.nextSibling):e.append(t)),t},Ut=function(e){for(var t=e.pathSegList,n=t.numberOfItems,r=[[],[]],a=t.getItem(0),i=[a.x,a.y],o=function(e,t,n,r){return function(a){return 1-Math.pow(a,3)*i[e]+3-Math.pow(a,2)*a*t[e]+3*(1-a)*Math.pow(a,2)*n[e]+Math.pow(a,3)*r[e]}},s=0;s<n;s++){var l=t.getItem(s);if(void 0!==l.x)if(r[0].push(i[0]),r[1].push(i[1]),l.x1){for(var c=[l.x1,l.y1],u=[l.x2,l.y2],d=[l.x,l.y],h=0;h<2;h++){var f=o(h,c,u,d),p=6*i[h]-12*c[h]+6*u[h],g=-3*i[h]+9*c[h]-9*u[h]+3*d[h],m=3*c[h]-3*i[h];if(0!==g){var v=Math.pow(p,2)-4*m*g;if(!(v<0)){var y=(-p+Math.sqrt(v))/(2*g);y>0&&y<1&&r[h].push(f(y));var _=(-p-Math.sqrt(v))/(2*g);_>0&&_<1&&r[h].push(f(_))}}else{if(0===p)continue;var b=-m/p;b>0&&b<1&&r[h].push(f(b))}}i=d}else r[0].push(l.x),r[1].push(l.y)}var x=Math.min.apply(null,r[0]),w=Math.max.apply(null,r[0])-x,S=Math.min.apply(null,r[1]);return{x:x,y:S,width:w,height:Math.max.apply(null,r[1])-S}};function Ft(e){if(V)try{return e.getBBox()}catch(e){}var t,n,r=yt.data(e,"ref"),a=null;r?(n=yt(r).children().clone().attr("visibility","hidden"),yt(kt).append(n),a=n.filter("line, path")):a=yt(e).find("line, path");var i=!1;if(a.length)if(a.each((function(){var e=this.getBBox();e.width&&e.height||(i=!0)})),i){var o=r?n:yt(e).children();t=Qt(o)}else t=e.getBBox();else t=e.getBBox();return r&&n.remove(),t}var Dt=function(e){var t=e||xt.geSelectedElements()[0];if(1!==e.nodeType)return null;var n,r=t.nodeName,a=null;switch(r){case"text":""===t.textContent?(t.textContent="a",a=t.getBBox(),t.textContent=""):t.getBBox&&(a=t.getBBox());break;case"path":j?t.getBBox&&(a=t.getBBox()):a=Ut(t);break;case"g":case"a":a=Ft(t);break;default:if("use"===r&&(a=Ft(t)),"use"===r||"foreignObject"===r&&U()){if(a||(a=t.getBBox()),!U()){var i=a,o=i.x,s=i.y;a={width:i.width,height:i.height,x:o+Number.parseFloat(t.getAttribute("x")||0),y:s+Number.parseFloat(t.getAttribute("y")||0)}}}else if(bt.includes(r))if(t)try{a=t.getBBox()}catch(e){var l=t.getExtentOfChar(0),c=t.getComputedTextLength();a={x:l.x,y:l.y,width:c,height:l.height}}else{var u=yt(t).closest("foreignObject");u.length&&u[0].getBBox&&(a=u[0].getBBox())}}return a&&(a={x:(n=a).x,y:n.y,width:n.width,height:n.height}),a},Ht=function(e){var t="";return yt.each(e,(function(e,n){var r=h(n,2),a=r[0],i=r[1];t+=a;for(var o=0;o<i.length;o+=2)t+=i[o]+","+i[o+1]+" "})),t},zt=function(e){var t,n,r,a,i=1.81;switch(e.tagName){case"ellipse":case"circle":var o=n=yt(e).attr(["rx","ry","cx","cy"]),s=o.cx,l=o.cy,c=n;r=c.rx,a=c.ry,"circle"===e.tagName&&(r=a=yt(e).attr("r")),t=Ht([["M",[s-r,l]],["C",[s-r,l-a/i,s-r/i,l-a,s,l-a]],["C",[s+r/i,l-a,s+r,l-a/i,s+r,l]],["C",[s+r,l+a/i,s+r/i,l+a,s,l+a]],["C",[s-r/i,l+a,s-r,l+a/i,s-r,l]],["Z",[]]]);break;case"path":t=e.getAttribute("d");break;case"line":t="M"+(n=yt(e).attr(["x1","y1","x2","y2"])).x1+","+n.y1+"L"+n.x2+","+n.y2;break;case"polyline":t="M"+e.getAttribute("points");break;case"polygon":t="M"+e.getAttribute("points")+" Z";break;case"rect":var u=yt(e).attr(["rx","ry"]);r=u.rx,a=u.ry;var d=e.getBBox(),h=d.x,f=d.y,p=d.width,g=d.height;i=4-i,t=Ht(r||a?[["M",[h,f+a]],["C",[h,f+a/i,h+r/i,f,h+r,f]],["L",[h+p-r,f]],["C",[h+p-r/i,f,h+p,f+a/i,h+p,f+a]],["L",[h+p,f+g-a]],["C",[h+p,f+g-a/i,h+p-r/i,f+g,h+p-r,f+g]],["L",[h+r,f+g]],["C",[h+r/i,f+g,h,f+g-a/i,h,f+g-a]],["L",[h,f+a]],["Z",[]]]:[["M",[h,f]],["L",[h+p,f]],["L",[h+p,f+g]],["L",[h,f+g]],["L",[h,f]],["Z",[]]])}return t},qt=function(e){var t={};return yt.each(["marker-start","marker-end","marker-mid","filter","clip-path"],(function(){var n=e.getAttribute(this);n&&(t[this]=n)})),t},Yt=function(e,t,n){var r=t({element:"path",attr:qt(e)}),a=e.getAttribute("transform");a&&r.setAttribute("transform",a);var i=e.parentNode;e.nextSibling?e.before(r):i.append(r);var o=zt(e);o?r.setAttribute("d",o):r.remove(),n.resetOrientation(r);var s=!1;try{s=r.getBBox()}catch(e){}return r.remove(),s};var Wt=function(e,t,n){var r=Dt(e);if(!r)return null;var a=ee(e),i=$t(a),o=Pe(a);if(i||o){var s=!1;if(function(e,t){var n=e%90;return t||!(n>-.001&&n<.001||(n<-89.99||n>89.99))}(i,o)){if(["ellipse","path","line","polyline","polygon"].includes(e.tagName))r=s=Yt(e,t,n);else if("rect"===e.tagName){var l=e.getAttribute("rx"),c=e.getAttribute("ry");(l||c)&&(r=s=Yt(e,t,n))}}if(!s){var u=Ie(a).matrix;r=Ne(r.x,r.y,r.width,r.height,u).aabox}}return r};function Xt(e){var t=e.getAttribute("stroke-width");return isNaN(t)||"none"===e.getAttribute("stroke")?0:t/2}var Qt=function(e,t,n){if(!e||!e.length)return!1;var r;if(yt.each(e,(function(){r||this.parentNode&&(r=Wt(this,t,n))})),void 0===r)return null;var a=r.x+r.width,i=r.y+r.height,o=r.x,s=r.y;if(1===e.length){var l=Xt(e[0]);o-=l,s-=l,a+=l,i+=l}else yt.each(e,(function(e,r){var l=Wt(r,t,n);if(l){var c=Xt(r);o=Math.min(o,l.x-c),s=Math.min(s,l.y-c),1===r.nodeType&&(a=Math.max(a,l.x+l.width+c),i=Math.max(i,l.y+l.height+c))}}));return r.x=o,r.y=s,r.width=a-o,r.height=i-s,r},Kt=function(e){e||(e=yt(xt.getSVGContent()).children());var t=[];return yt(e).children().each((function(e,n){n.getBBox&&t.push(n)})),t.reverse()},Zt=function(e){return e||(e=Kt()),Qt(e,xt.addSVGElementFromJson,xt.pathActions)},$t=function(e,t){if(!e)return 0;for(var n=e.numberOfItems,r=0;r<n;++r){var a=e.getItem(r);if(4===a.type)return t?a.angle*Math.PI/180:a.angle}return 0},Jt=function(e,t){var n=e||xt.getSelectedElements()[0],r=ee(n);return $t(r,t)},en=function(e){return tn(jt(e).substr(1))},tn=I?function(e){return kt.querySelector("#"+e)}:T?function(e){return wt.evaluate('svg:svg[@id="svgroot"]//svg:*[@id="'+e+'"]',St,(function(){return y.SVG}),9,null).singleNodeValue}:function(e){return yt(kt).find("[id="+e+"]")[0]},nn=function(e,t,n,r){for(var a=0,i=Object.entries(t);a<i.length;a++){var o=h(i[a],2),s=o[0],l=o[1],c="xml:"===s.substr(0,4)?y.XML:"xlink:"===s.substr(0,6)?y.XLINK:null;sn(l)?c?e.removeAttributeNS(c,s):e.removeAttribute(s):c?e.setAttributeNS(c,s,l):r?le(e,s,l):e.setAttribute(s,l)}},rn=function(e){var t={"fill-opacity":1,"stop-opacity":1,opacity:1,stroke:"none","stroke-dasharray":"none","stroke-linejoin":"miter","stroke-linecap":"butt","stroke-opacity":1,"stroke-width":1,rx:0,ry:0};"ellipse"===e.nodeName&&(delete t.rx,delete t.ry),Object.entries(t).forEach((function(t){var n=h(t,2),r=n[0],a=n[1];e.getAttribute(r)===String(a)&&e.removeAttribute(r)}))},an=function(e){var t=xt.getBaseUnit(),n=xt.getSnappingStep();return"px"!==t&&(n*=ie()[t]),e=Math.round(e/n)*n},on=function(e){yt(e).click((function(e){e.preventDefault()}))},sn=function(e){return null==e},ln=jQuery,cn={},un=function(){Object.values(cn).forEach((function(e){!function(e){Object.keys(cn).length||ln("#cmenu_canvas").append("<li class='separator'>");var t=e.shortcut||"";ln("#cmenu_canvas").append("<li class='disabled'><a href='#"+e.id+"'>"+e.label+"<span class='shortcut'>"+t+"</span></a></li>")}(e)}))};
|
|
/**
|
|
* Adapted from {@link https://github.com/uupaa/dynamic-import-polyfill/blob/master/importModule.js}.
|
|
* @module importModule
|
|
* @license MIT
|
|
*/
|
|
function dn(e){var t=document.createElement("a");return t.setAttribute("href",e),t.cloneNode(!1).href}function hn(e,t){["id","class","type"].forEach((function(n){n in t&&(e[n]=t[n])}))}function fn(e,t){return pn(e,o({},t,{returnDefault:!0}))}function pn(e,t){return gn.apply(this,arguments)}function gn(){return(gn=n(regeneratorRuntime.mark((function e(t,n){var r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.global,a=n.returnDefault,!(!("svgEditor"in window)||!window.svgEditor||!1!==window.svgEditor.modules)){e.next=4;break}return e.abrupt("return",vn(t,void 0,{returnDefault:a}));case 4:return e.next=6,mn(t);case 6:return e.abrupt("return",window[r]);case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function mn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)?Promise.all(e.map((function(e){return mn(e,t)}))):new Promise((function(n,r){var a=document.createElement("script");function i(){r(new Error("Failed to import: ".concat(e))),s()}function o(){n(),s()}var s=function(){a.removeEventListener("error",i),a.removeEventListener("load",o),a.remove(),a.src=""};a.defer="defer",hn(a,t),a.addEventListener("error",i),a.addEventListener("load",o),a.src=e,document.head.append(a)}))}function vn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.returnDefault,a=void 0!==r&&r;return Array.isArray(e)?Promise.all(e.map((function(e){return vn(e,t)}))):new Promise((function(n,r){var i="$importModule$"+Math.random().toString(32).slice(2),o=document.createElement("script");function s(){r(new Error("Failed to import: ".concat(e))),c()}function l(){n(window[i]),c()}var c=function(){delete window[i],o.removeEventListener("error",s),o.removeEventListener("load",l),o.remove(),URL.revokeObjectURL(o.src),o.src=""};hn(o,t),o.defer="defer",o.type="module",o.addEventListener("error",s),o.addEventListener("load",l);var u=dn(e),d="import * as m from '".concat(u.replace(/'/g,"\\'"),"'; window.").concat(i," = ").concat(a?"m.default || ":"","m;"),h=new Blob([d],{type:"text/javascript"});o.src=URL.createObjectURL(h),document.head.append(o)}))}var yn={true:!0,false:!1,null:null};function _n(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ok:"Ok",cancel:"Cancel"};t("#dialog_container").draggable({cancel:"#dialog_content, #dialog_buttons *",containment:"window"}).css("position","absolute");var r=t("#dialog_box"),a=t("#dialog_buttons"),i=t("#dialog_content");function o(o,s,l,c,u,d){i.html("<p>"+s.replace(/\n/g,"</p><p>")+"</p>").toggleClass("prompt","prompt"===o),a.empty();var h=t('<input type="button" data-ok="" value="'+n.ok+'">').appendTo(a);return new Promise((function(f,p){var g,m;if("alert"!==o&&t('<input type="button" value="'+n.cancel+'">').appendTo(a).click((function(){r.hide(),f(!1)})),"prompt"===o)(g=t('<input type="text">').prependTo(a)).val(l||""),g.bind("keydown","return",(function(){h.click()}));else if("select"===o){var v=t('<div style="text-align:center;">');if(g=t('<select aria-label="'.concat(s,'">')).appendTo(v),d){var y=t("<label>").text(d.label);(m=t('<input type="checkbox">').appendTo(y)).val(d.value),d.tooltip&&y.attr("title",d.tooltip),m.prop("checked",Boolean(d.checked)),v.append(t("<div>").append(y))}t.each(c||[],(function(n,r){"object"===e(r)?g.append(t("<option>").val(r.value).html(r.text)):g.append(t("<option>").html(r))})),i.append(v),l&&g.val(l),u&&g.bind("change","return",u),g.bind("keydown","return",(function(){h.click()}))}else"process"===o&&h.hide();r.show(),h.click((function(){r.hide();var e="prompt"!==o&&"select"!==o||g.val();f(m?{response:e,checked:m.prop("checked")}:e)})).focus(),"prompt"!==o&&"select"!==o||g.focus()}))}return t.alert=function(e){return o("alert",e)},t.confirm=function(e){return o("confirm",e)},t.process_cancel=function(e){return o("process",e)},t.prompt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return o("prompt",e,t)},t.select=function(e,t,n,r,a){return o("select",e,r,t,n,a)},t}var bn=jQuery,xn=function(){function e(t,n,a){if(r(this,e),this.name_=t,this.group_=a?null:n,a){var i=a.ownerDocument;this.group_=i.createElementNS(y.SVG,"g");var o=i.createElementNS(y.SVG,"title");o.textContent=t,this.group_.append(o),n?bn(n).after(this.group_):a.append(this.group_)}wn(this.group_),Ot(this.group_,(function(e){e.setAttribute("style","pointer-events:inherit")})),this.group_.setAttribute("style",a?"pointer-events:all":"pointer-events:none")}return i(e,[{key:"getName",value:function(){return this.name_}},{key:"getGroup",value:function(){return this.group_}},{key:"activate",value:function(){this.group_.setAttribute("style","pointer-events:all")}},{key:"deactivate",value:function(){this.group_.setAttribute("style","pointer-events:none")}},{key:"setVisible",value:function(e){var t=void 0===e||e?"inline":"none";this.group_.getAttribute("display")!==t&&this.group_.setAttribute("display",t)}},{key:"isVisible",value:function(){return"none"!==this.group_.getAttribute("display")}},{key:"getOpacity",value:function(){var e=this.group_.getAttribute("opacity");return sn(e)?1:Number.parseFloat(e)}},{key:"setOpacity",value:function(e){"number"==typeof e&&e>=0&&e<=1&&this.group_.setAttribute("opacity",e)}},{key:"appendChildren",value:function(e){var t,n=m(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;this.group_.append(r)}}catch(e){n.e(e)}finally{n.f()}}},{key:"getTitleElement",value:function(){for(var e=this.group_.childNodes.length,t=0;t<e;++t){var n=this.group_.childNodes.item(t);if(n&&"title"===n.tagName)return n}return null}},{key:"setName",value:function(e,t){var n=this.name_;e=At(e);var r=this.getTitleElement();return r?(bn(r).empty(),r.textContent=e,this.name_=e,t&&t.changeElement(r,{"#text":n}),this.name_):null}},{key:"removeGroup",value:function(){var e=this.group_.remove();return this.group_=void 0,e}}]),e}();function wn(e){var t=e.getAttribute("class");sn(t)||!t.length?e.setAttribute("class",xn.CLASS_NAME):xn.CLASS_REGEX.test(t)||e.setAttribute("class",t+" "+xn.CLASS_NAME)}xn.CLASS_NAME="layer",xn.CLASS_REGEX=new RegExp("(\\s|^)"+xn.CLASS_NAME+"(\\s|$)");var Sn=function(){function e(t){r(this,e),this.undoManager_=t,this.currentBatchCommand_=null,this.batchCommandStack_=[]}return i(e,[{key:"startBatchCommand",value:function(e){return this.undoManager_?(this.currentBatchCommand_=new ve(e),this.batchCommandStack_.push(this.currentBatchCommand_),this):this}},{key:"endBatchCommand",value:function(){if(!this.undoManager_)return this;if(this.currentBatchCommand_){var e=this.currentBatchCommand_;this.batchCommandStack_.pop();var t=this.batchCommandStack_.length;this.currentBatchCommand_=t?this.batchCommandStack_[t-1]:null,this.addCommand_(e)}return this}},{key:"moveElement",value:function(e,t,n,r){return this.undoManager_?(this.addCommand_(new fe(e,t,n,r)),this):this}},{key:"insertElement",value:function(e,t){return this.undoManager_?(this.addCommand_(new pe(e,t)),this):this}},{key:"removeElement",value:function(e,t,n,r){return this.undoManager_?(this.addCommand_(new ge(e,t,n,r)),this):this}},{key:"changeElement",value:function(e,t,n){return this.undoManager_?(this.addCommand_(new me(e,t,n)),this):this}},{key:"addCommand_",value:function(e){if(!this.undoManager_)return this;this.currentBatchCommand_?this.currentBatchCommand_.addSubCommand(e):this.undoManager_.addCommandToHistory(e)}}]),e}();Sn.NO_HISTORY=new Sn;var kn=jQuery,Cn="a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use".split(","),An=1,En=2,Gn=0,Pn=[];function Nn(e){return e||new Sn(Ln.undoMgr)}function In(e){return kn("title",e).text()||(k&&e.querySelectorAll?kn(e.querySelectorAll("title")).text():"")}function Tn(e){for(var t=1;e.includes("Layer "+t);)t++;return"Layer "+t}var Ln,Mn=function(){function e(t,n){if(r(this,e),!t||!t.tagName||!t.namespaceURI||"svg"!==t.tagName||t.namespaceURI!==y.SVG)throw new Error("Error: svgedit.draw.Drawing instance initialized without a <svg> element");this.svgElem_=t,this.obj_num=0,this.idPrefix=n||"svg_",this.releasedNums=[],this.all_layers=[],this.layer_map={},this.current_layer=null,this.nonce_="";var a=this.svgElem_.getAttributeNS(y.SE,"nonce");a&&Gn!==En?this.nonce_=a:Gn===An&&this.setNonce(Math.floor(100001*Math.random()))}return i(e,[{key:"getElem_",value:function(e){return this.svgElem_.querySelector?this.svgElem_.querySelector("#"+e):kn(this.svgElem_).find("[id="+e+"]")[0]}},{key:"getSvgElem",value:function(){return this.svgElem_}},{key:"getNonce",value:function(){return this.nonce_}},{key:"setNonce",value:function(e){this.svgElem_.setAttributeNS(y.XMLNS,"xmlns:se",y.SE),this.svgElem_.setAttributeNS(y.SE,"se:nonce",e),this.nonce_=e}},{key:"clearNonce",value:function(){this.nonce_=""}},{key:"getId",value:function(){return this.nonce_?this.idPrefix+this.nonce_+"_"+this.obj_num:this.idPrefix+this.obj_num}},{key:"getNextId",value:function(){var e=this.obj_num,t=!1;this.releasedNums.length>0?(this.obj_num=this.releasedNums.pop(),t=!0):this.obj_num++;for(var n=this.getId();this.getElem_(n);)t&&(this.obj_num=e,t=!1),this.obj_num++,n=this.getId();return t&&(this.obj_num=e),n}},{key:"releaseId",value:function(e){var t=this.idPrefix+(this.nonce_?this.nonce_+"_":"");if("string"!=typeof e||!e.startsWith(t))return!1;var n=Number.parseInt(e.substr(t.length));return!("number"!=typeof n||n<=0||this.releasedNums.includes(n))&&(this.releasedNums.push(n),!0)}},{key:"getNumLayers",value:function(){return this.all_layers.length}},{key:"hasLayer",value:function(e){return void 0!==this.layer_map[e]}},{key:"getLayerName",value:function(e){return e>=0&&e<this.getNumLayers()?this.all_layers[e].getName():""}},{key:"getCurrentLayer",value:function(){return this.current_layer?this.current_layer.getGroup():null}},{key:"getLayerByName",value:function(e){var t=this.layer_map[e];return t?t.getGroup():null}},{key:"getCurrentLayerName",value:function(){return this.current_layer?this.current_layer.getName():""}},{key:"setCurrentLayerName",value:function(e,t){var n=null;if(this.current_layer){var r=this.current_layer.getName();(n=this.current_layer.setName(e,t))&&(delete this.layer_map[r],this.layer_map[n]=this.current_layer)}return n}},{key:"setCurrentLayerPosition",value:function(e){var t,n=this.getNumLayers();if(!this.current_layer||e<0||e>=n)return null;for(t=0;t<n&&this.all_layers[t]!==this.current_layer;++t);if(t===n)return null;if(t!==e){var r=this.current_layer.getGroup(),a=r.nextSibling,i=null;return e>t?e<n-1&&(i=this.all_layers[e+1].getGroup()):i=this.all_layers[e].getGroup(),this.svgElem_.insertBefore(r,i),this.identifyLayers(),this.setCurrentLayer(this.getLayerName(e)),{currentGroup:r,oldNextSibling:a}}return null}},{key:"mergeLayer",value:function(e){var t=this.current_layer.getGroup(),n=kn(t).prev()[0];if(n){e.startBatchCommand("Merge Layer");var r=t.nextSibling;for(e.removeElement(t,r,this.svgElem_);t.firstChild;){var a=t.firstChild;if("title"!==a.localName){var i=a.nextSibling;n.append(a),e.moveElement(a,i,t)}else e.removeElement(a,a.nextSibling,t),a.remove()}this.current_layer.removeGroup();var o=this.all_layers.indexOf(this.current_layer);if(o>0){var s=this.current_layer.getName();this.current_layer=this.all_layers[o-1],this.all_layers.splice(o,1),delete this.layer_map[s]}e.endBatchCommand()}}},{key:"mergeAllLayers",value:function(e){for(this.current_layer=this.all_layers[this.all_layers.length-1],e.startBatchCommand("Merge all Layers");this.all_layers.length>1;)this.mergeLayer(e);e.endBatchCommand()}},{key:"setCurrentLayer",value:function(e){var t=this.layer_map[e];return!!t&&(this.current_layer&&this.current_layer.deactivate(),this.current_layer=t,this.current_layer.activate(),!0)}},{key:"deleteCurrentLayer",value:function(){if(this.current_layer&&this.getNumLayers()>1){var e=this.current_layer.removeGroup();return this.identifyLayers(),e}return null}},{key:"identifyLayers",value:function(){this.all_layers=[],this.layer_map={};for(var e=this.svgElem_.childNodes.length,t=[],n=[],r=null,a=!1,i=0;i<e;++i){var o=this.svgElem_.childNodes.item(i);if(o&&1===o.nodeType)if("g"===o.tagName){a=!0;var s=In(o);s?(n.push(s),r=new xn(s,o),this.all_layers.push(r),this.layer_map[s]=r):t.push(o)}else Cn.includes(o.nodeName)&&t.push(o)}t.length>0||!a?((r=new xn(Tn(n),null,this.svgElem_)).appendChildren(t),this.all_layers.push(r),this.layer_map[name]=r):r.activate(),this.current_layer=r}},{key:"createLayer",value:function(e,t){this.current_layer&&this.current_layer.deactivate(),(null==e||""===e||this.layer_map[e])&&(e=Tn(Object.keys(this.layer_map)));var n=new xn(e,null,this.svgElem_);return t&&(t.startBatchCommand("Create Layer"),t.insertElement(n.getGroup()),t.endBatchCommand()),this.all_layers.push(n),this.layer_map[e]=n,this.current_layer=n,n.getGroup()}},{key:"cloneLayer",value:function(e,t){var n=this;if(!this.current_layer)return null;this.current_layer.deactivate(),(null==e||""===e||this.layer_map[e])&&(e=Tn(Object.keys(this.layer_map)));var r=this.current_layer.getGroup(),a=new xn(e,r,this.svgElem_),i=a.getGroup();f(r.childNodes).forEach((function(e){"title"!==e.localName&&i.append(n.copyElem(e))})),t&&(t.startBatchCommand("Duplicate Layer"),t.insertElement(i),t.endBatchCommand());var o=this.all_layers.indexOf(this.current_layer);return o>=0?this.all_layers.splice(o+1,0,a):this.all_layers.push(a),this.layer_map[e]=a,this.current_layer=a,i}},{key:"getLayerVisibility",value:function(e){var t=this.layer_map[e];return!!t&&t.isVisible()}},{key:"setLayerVisibility",value:function(e,t){if("boolean"!=typeof t)return null;var n=this.layer_map[e];return n?(n.setVisible(t),n.getGroup()):null}},{key:"getLayerOpacity",value:function(e){var t=this.layer_map[e];return t?t.getOpacity():null}},{key:"setLayerOpacity",value:function(e,t){if(!("number"!=typeof t||t<0||t>1)){var n=this.layer_map[e];n&&n.setOpacity(t)}}},{key:"copyElem",value:function(e){var t=this;return function e(t,n){var r=document.createElementNS(t.namespaceURI,t.nodeName);if(yt.each(t.attributes,(function(e,t){"-moz-math-font-style"!==t.localName&&r.setAttributeNS(t.namespaceURI,t.nodeName,t.value)})),r.removeAttribute("id"),r.id=n(),U()&&"path"===t.nodeName){var a=ut(t);r.setAttribute("d",a)}if(yt.each(t.childNodes,(function(t,a){switch(a.nodeType){case 1:r.append(e(a,n));break;case 3:r.textContent=a.nodeValue}})),yt(t).data("gsvg"))yt(r).data("gsvg",r.firstChild);else if(yt(t).data("symbol")){var i=yt(t).data("symbol");yt(r).data("ref",i).data("symbol",i)}else"image"===r.tagName&&on(r);return r}(e,(function(){return t.getNextId()}))}}]),e}(),On=function(e,t){(Gn=!1===e?En:An)!==An||t.getNonce()?Gn===En&&t.getNonce()&&t.clearNonce():t.setNonce(Math.floor(100001*Math.random()))},jn=function(){Wn(),Ln.getCurrentDrawing().identifyLayers()},Vn=function(e,t){var n=Ln.getCurrentDrawing().createLayer(e,Nn(t));Ln.clearSelection(),Ln.call("changed",[n])},Rn=function(e,t){var n=Ln.getCurrentDrawing().cloneLayer(e,Nn(t));Ln.clearSelection(),Wn(),Ln.call("changed",[n])},Bn=function(){var e=Ln.getCurrentDrawing().getCurrentLayer(),t=e.nextSibling,n=e.parentNode;if(e=Ln.getCurrentDrawing().deleteCurrentLayer()){var r=new ve("Delete Layer");return r.addSubCommand(new ge(e,t,n)),Ln.addCommandToHistory(r),Ln.clearSelection(),Ln.call("changed",[n]),!0}return!1},Un=function(e){var t=Ln.getCurrentDrawing().setCurrentLayer(At(e));return t&&Ln.clearSelection(),t},Fn=function(e){var t=Ln.getCurrentDrawing(),n=t.getCurrentLayer();if(n&&t.setCurrentLayerName(e,Nn()))return Ln.call("changed",[n]),!0;return!1},Dn=function(e){var t=Ln.getCurrentDrawing().setCurrentLayerPosition(e);return!!t&&(Ln.addCommandToHistory(new fe(t.currentGroup,t.oldNextSibling,Ln.getSVGContent())),!0)},Hn=function(e,t){var n=Ln.getCurrentDrawing(),r=n.getLayerVisibility(e),a=n.setLayerVisibility(e,t);if(!a)return!1;var i=r?"inline":"none";return Ln.addCommandToHistory(new me(a,{display:i},"Layer Visibility")),a===n.getCurrentLayer()&&(Ln.clearSelection(),Ln.pathActions.clear()),!0},zn=function(e){var t=Ln.getCurrentDrawing().getLayerByName(e);if(!t)return!1;for(var n=new ve("Move Elements to Layer"),r=Ln.getSelectedElements(),a=r.length;a--;){var i=r[a];if(i){var o=i.nextSibling,s=i.parentNode;t.append(i),n.addSubCommand(new fe(i,o,s))}}return Ln.addCommandToHistory(n),!0},qn=function(e){Ln.getCurrentDrawing().mergeLayer(Nn(e)),Ln.clearSelection(),Wn(),Ln.changeSVGContent()},Yn=function(e){Ln.getCurrentDrawing().mergeAllLayers(Nn(e)),Ln.clearSelection(),Wn(),Ln.changeSVGContent()},Wn=function(){var e=Pn.length;if(e){for(var t=0;t<e;t++){var n=Pn[t],r=Ln.elData(n,"orig_opac");1!==r?n.setAttribute("opacity",r):n.removeAttribute("opacity"),n.setAttribute("style","pointer-events: inherit")}Pn=[],Ln.clearSelection(!0),Ln.call("contextset",null)}Ln.setCurrentGroup(null)},Xn=function(e){Wn(),"string"==typeof e&&(e=tn(e)),Ln.setCurrentGroup(e),kn(e).parentsUntil("#svgcontent").andSelf().siblings().each((function(){var e=this.getAttribute("opacity")||1;Ln.elData(this,"orig_opac",e),this.setAttribute("opacity",.33*e),this.setAttribute("style","pointer-events: none"),Pn.push(this)})),Ln.clearSelection(),Ln.call("contextset",Ln.getCurrentGroup())},Qn=_(),Kn={a:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","id","mask","opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","xlink:href","xlink:title"],circle:["class","clip-path","clip-rule","cx","cy","fill","fill-opacity","fill-rule","filter","id","mask","opacity","r","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],clipPath:["class","clipPathUnits","id"],defs:[],style:["type"],desc:[],ellipse:["class","clip-path","clip-rule","cx","cy","fill","fill-opacity","fill-rule","filter","id","mask","opacity","requiredFeatures","rx","ry","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],feGaussianBlur:["class","color-interpolation-filters","id","requiredFeatures","stdDeviation"],feMorphology:["class","in","operator","radius"],filter:["class","color-interpolation-filters","filterRes","filterUnits","height","id","primitiveUnits","requiredFeatures","width","x","xlink:href","y"],foreignObject:["class","font-size","height","id","opacity","requiredFeatures","style","transform","width","x","y"],g:["class","clip-path","clip-rule","id","display","fill","fill-opacity","fill-rule","filter","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","font-family","font-size","font-style","font-weight","text-anchor"],image:["class","clip-path","clip-rule","filter","height","id","mask","opacity","requiredFeatures","style","systemLanguage","transform","width","x","xlink:href","xlink:title","y"],line:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","id","marker-end","marker-mid","marker-start","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","x1","x2","y1","y2"],linearGradient:["class","id","gradientTransform","gradientUnits","requiredFeatures","spreadMethod","systemLanguage","x1","x2","xlink:href","y1","y2"],marker:["id","class","markerHeight","markerUnits","markerWidth","orient","preserveAspectRatio","refX","refY","systemLanguage","viewBox"],mask:["class","height","id","maskContentUnits","maskUnits","width","x","y"],metadata:["class","id"],path:["class","clip-path","clip-rule","d","fill","fill-opacity","fill-rule","filter","id","marker-end","marker-mid","marker-start","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],pattern:["class","height","id","patternContentUnits","patternTransform","patternUnits","requiredFeatures","style","systemLanguage","viewBox","width","x","xlink:href","y"],polygon:["class","clip-path","clip-rule","id","fill","fill-opacity","fill-rule","filter","id","class","marker-end","marker-mid","marker-start","mask","opacity","points","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],polyline:["class","clip-path","clip-rule","id","fill","fill-opacity","fill-rule","filter","marker-end","marker-mid","marker-start","mask","opacity","points","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],radialGradient:["class","cx","cy","fx","fy","gradientTransform","gradientUnits","id","r","requiredFeatures","spreadMethod","systemLanguage","xlink:href"],rect:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","height","id","mask","opacity","requiredFeatures","rx","ry","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","width","x","y"],stop:["class","id","offset","requiredFeatures","stop-color","stop-opacity","style","systemLanguage"],svg:["class","clip-path","clip-rule","filter","id","height","mask","preserveAspectRatio","requiredFeatures","style","systemLanguage","viewBox","width","x","xmlns","xmlns:se","xmlns:xlink","y"],switch:["class","id","requiredFeatures","systemLanguage"],symbol:["class","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight","id","opacity","preserveAspectRatio","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","viewBox"],text:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight","id","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","text-anchor","transform","x","xml:space","y"],textPath:["class","id","method","requiredFeatures","spacing","startOffset","style","systemLanguage","transform","xlink:href"],title:[],tspan:["class","clip-path","clip-rule","dx","dy","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight","id","mask","opacity","requiredFeatures","rotate","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","text-anchor","textLength","transform","x","xml:space","y"],use:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","height","id","mask","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","transform","width","x","xlink:href","y"],annotation:["encoding"],"annotation-xml":["encoding"],maction:["actiontype","other","selection"],math:["class","id","display","xmlns"],menclose:["notation"],merror:[],mfrac:["linethickness"],mi:["mathvariant"],mmultiscripts:[],mn:[],mo:["fence","lspace","maxsize","minsize","rspace","stretchy"],mover:[],mpadded:["lspace","width","height","depth","voffset"],mphantom:[],mprescripts:[],mroot:[],mrow:["xlink:href","xlink:type","xmlns:xlink"],mspace:["depth","height","width"],msqrt:[],mstyle:["displaystyle","mathbackground","mathcolor","mathvariant","scriptlevel"],msub:[],msubsup:[],msup:[],mtable:["align","columnalign","columnlines","columnspacing","displaystyle","equalcolumns","equalrows","frame","rowalign","rowlines","rowspacing","width"],mtd:["columnalign","columnspan","rowalign","rowspan"],mtext:[],mtr:["columnalign","rowalign"],munder:[],munderover:[],none:[],semantics:[]},Zn={};Object.entries(Kn).forEach((function(e){var t=h(e,2),n=t[0],r=t[1],a={};Object.entries(r).forEach((function(e){var t=h(e,2),n=(t[0],t[1]);if(n.includes(":")){var r=n.split(":");a[r[1]]=y[r[0].toUpperCase()]}else a[n]="xmlns"===n?y.XMLNS:null})),Zn[n]=a}));var $n,Jn,er,tr,nr=function e(t){if(3===t.nodeType&&(t.nodeValue=t.nodeValue.replace(/^\s+|\s+$/g,""),t.nodeValue.length||t.remove()),1===t.nodeType){var n=t.ownerDocument,r=t.parentNode;if(n&&r){var a=Kn[t.nodeName],i=Zn[t.nodeName];if(void 0!==a){for(var o=[],s=t.attributes.length;s--;){var l=t.attributes.item(s),c=l.nodeName,u=l.localName,d=l.namespaceURI;if({}.hasOwnProperty.call(i,u)&&d===i[u]&&d!==y.XMLNS||d===y.XMLNS&&Qn[l.value]||((c.startsWith("se:")||c.startsWith("data-"))&&o.push([c,l.value]),t.removeAttributeNS(d,u)),F())switch(c){case"transform":case"gradientTransform":case"patternTransform":var f=l.value.replace(/(\d)-/g,"$1 -");t.setAttribute(c,f)}if("style"===c){for(var p=l.value.split(";"),g=p.length;g--;){var m=h(p[g].split(":"),2),v=m[0],_=m[1],b=(v||"").trim(),x=(_||"").trim();a.includes(b)&&t.setAttribute(b,x)}t.removeAttribute("style")}}Object.values(o).forEach((function(e){var n=h(e,2),r=n[0],a=n[1];t.setAttributeNS(y.SE,r,a)}));var w=Vt(t);if(w&&["filter","linearGradient","pattern","radialGradient","textPath","use"].includes(t.nodeName)&&"#"!==w[0]&&(Rt(t,""),t.removeAttributeNS(y.XLINK,"href")),"use"===t.nodeName&&!Vt(t))return void t.remove();for(Object.values(["clip-path","fill","filter","marker-end","marker-mid","marker-start","mask","stroke"],(function(e){var n=t.getAttribute(e);n&&(n=jt(n))&&"#"!==n[0]&&(t.setAttribute(e,""),t.removeAttribute(e))})),s=t.childNodes.length;s--;)e(t.childNodes.item(s))}else{for(var S=[];t.hasChildNodes();)S.push(r.insertBefore(t.firstChild,t));t.remove();for(var k=S.length;k--;)e(S[k])}}}},rr=jQuery,ar=[0,"z","M","m","L","l","C","c","Q","q","A","a","H","h","V","v","S","s","T","t"],ir=null,or=function(e,t,n){for(var r=function(e,t){return Ae(e,t,n)},a=function(e){return n.a*e},i=function(e){return n.d*e},o=ir.getGridSnapping()&&"svg"===e.parentNode.parentNode.localName,s=function(){o&&Object.entries(t).forEach((function(e){var n=h(e,2),r=n[0],a=n[1];t[r]=an(a)})),nn(e,t,1e3,!0)},l=Dt(e),c=0;c<2;c++){var u=0===c?"fill":"stroke",d=e.getAttribute(u);if(d&&d.startsWith("url(")&&(n.a<0||n.d<0)){var f=en(d).cloneNode(!0);if(n.a<0){var p=f.getAttribute("x1"),g=f.getAttribute("x2");f.setAttribute("x1",-(p-1)),f.setAttribute("x2",-(g-1))}if(n.d<0){var m=f.getAttribute("y1"),v=f.getAttribute("y2");f.setAttribute("y1",-(m-1)),f.setAttribute("y2",-(v-1))}f.id=ir.getDrawing().getNextId(),Bt().append(f),e.setAttribute(u,"url(#"+f.id+")")}}var y=e.tagName;if("g"===y||"text"===y||"tspan"===y||"use"===y)if(1!==n.a||0!==n.b||0!==n.c||1!==n.d||0===n.e&&0===n.f){var _=ee(e),b=ir.getSVGRoot().createSVGTransform();b.setMatrix(Ge(Ie(_).matrix,n)),_.clear(),_.appendItem(b)}else{var x=Ie(e).matrix,w=Ge(x.inverse(),n,x);t.x=Number.parseFloat(t.x)+w.e,t.y=Number.parseFloat(t.y)+w.f}switch(y){case"foreignObject":case"rect":case"image":if("image"===y&&(n.a<0||n.d<0)){var S=ee(e),k=ir.getSVGRoot().createSVGTransform();k.setMatrix(Ge(Ie(S).matrix,n)),S.clear(),S.appendItem(k)}else{var C=r(t.x,t.y);t.width=a(t.width),t.height=i(t.height),t.x=C.x+Math.min(0,t.width),t.y=C.y+Math.min(0,t.height),t.width=Math.abs(t.width),t.height=Math.abs(t.height)}s();break;case"ellipse":var A=r(t.cx,t.cy);t.cx=A.x,t.cy=A.y,t.rx=a(t.rx),t.ry=i(t.ry),t.rx=Math.abs(t.rx),t.ry=Math.abs(t.ry),s();break;case"circle":var E=r(t.cx,t.cy);t.cx=E.x,t.cy=E.y;var G=Ne(l.x,l.y,l.width,l.height,n),P=G.tr.x-G.tl.x,N=G.bl.y-G.tl.y;t.r=Math.min(P/2,N/2),t.r&&(t.r=Math.abs(t.r)),s();break;case"line":var I=r(t.x1,t.y1),T=r(t.x2,t.y2);t.x1=I.x,t.y1=I.y,t.x2=T.x,t.y2=T.y;case"text":case"tspan":case"use":s();break;case"g":var L=rr(e).data("gsvg");L&&nn(L,t,1e3,!0);break;case"polyline":case"polygon":for(var M=t.points.length,O=0;O<M;++O){var j=t.points[O],V=r(j.x,j.y),R=V.x,B=V.y;t.points[O].x=R,t.points[O].y=B}for(var U="",F=0;F<M;++F){var D=t.points[F];U+=D.x+","+D.y+" "}e.setAttribute("points",U);break;case"path":var H=e.pathSegList,z=H.numberOfItems;t.d=[];for(var q=0;q<z;++q){var Y=H.getItem(q);t.d[q]={type:Y.pathSegType,x:Y.x,y:Y.y,x1:Y.x1,y1:Y.y1,x2:Y.x2,y2:Y.y2,r1:Y.r1,r2:Y.r2,angle:Y.angle,largeArcFlag:Y.largeArcFlag,sweepFlag:Y.sweepFlag}}z=t.d.length;var W=t.d[0],X=r(W.x,W.y);t.d[0].x=X.x,t.d[0].y=X.y;for(var Q=1;Q<z;++Q){var K=t.d[Q];if(K.type%2==0){var Z=r(void 0!==K.x?K.x:X.x,void 0!==K.y?K.y:X.y),$=r(K.x1,K.y1),J=r(K.x2,K.y2);K.x=Z.x,K.y=Z.y,K.x1=$.x,K.y1=$.y,K.x2=J.x,K.y2=J.y,K.r1=a(K.r1),K.r2=i(K.r2)}else K.x=a(K.x),K.y=i(K.y),K.x1=a(K.x1),K.y1=i(K.y1),K.x2=a(K.x2),K.y2=i(K.y2),K.r1=a(K.r1),K.r2=i(K.r2)}var te="";z=t.d.length;for(var ne=0;ne<z;++ne){var re=t.d[ne],ae=re.type;switch(te+=ar[ae],ae){case 13:case 12:te+=re.x+" ";break;case 15:case 14:te+=re.y+" ";break;case 3:case 5:case 19:case 2:case 4:case 18:te+=re.x+","+re.y+" ";break;case 7:case 6:te+=re.x1+","+re.y1+" "+re.x2+","+re.y2+" "+re.x+","+re.y+" ";break;case 9:case 8:te+=re.x1+","+re.y1+" "+re.x+","+re.y+" ";break;case 11:case 10:te+=re.r1+","+re.r2+" "+re.angle+" "+Number(re.largeArcFlag)+" "+Number(re.sweepFlag)+" "+re.x+","+re.y+" ";break;case 17:case 16:te+=re.x2+","+re.y2+" "+re.x+","+re.y+" "}}e.setAttribute("d",te)}},sr=W(jQuery),lr=function(e,t,n){var r=en(e).firstChild,a=ee(r),i=$n.getSVGRoot().createSVGTransform();i.setTranslate(t,n),a.appendItem(i),cr(r)},cr=function e(t){if(sn(t))return null;if("svg"===t.nodeName&&navigator.userAgent.includes("Firefox/20"))return null;var n=$n.getSVGRoot(),r=ee(t);if(r&&r.numberOfItems>0){for(var a=r.numberOfItems,i=a;a--;){var o=r.getItem(a);if(0===o.type)r.removeItem(a);else if(1===o.type){if(Ee(o.matrix)){if(1===i)return t.removeAttribute("transform"),null;r.removeItem(a)}}else 4===o.type&&0===o.angle&&r.removeItem(a)}if(1===r.numberOfItems&&Jt(t))return null}if(!r||0===r.numberOfItems)return t.setAttribute("transform",""),t.removeAttribute("transform"),null;if(r){for(var s=[],l=r.numberOfItems;l--;){var c=r.getItem(l);1===c.type?s.push([c.matrix,l]):s.length&&(s=[])}if(2===s.length){var u=n.createSVGTransformFromMatrix(Ge(s[1][0],s[0][0]));r.removeItem(s[0][1]),r.removeItem(s[1][1]),r.insertItemBefore(u,s[1][1])}if((l=r.numberOfItems)>=2&&1===r.getItem(l-2).type&&2===r.getItem(l-1).type){var d=n.createSVGTransform(),h=Ge(r.getItem(l-2).matrix,r.getItem(l-1).matrix);d.setMatrix(h),r.removeItem(l-2),r.removeItem(l-2),r.appendItem(d)}}switch(t.tagName){case"line":case"polyline":case"polygon":case"path":break;default:if(1===r.numberOfItems&&1===r.getItem(0).type||2===r.numberOfItems&&1===r.getItem(0).type&&4===r.getItem(0).type)return null}var f,p,g=sr(t).data("gsvg"),m=new ve("Transform"),v={},_=null,b=[];switch(t.tagName){case"line":b=["x1","y1","x2","y2"];break;case"circle":b=["cx","cy","r"];break;case"ellipse":b=["cx","cy","rx","ry"];break;case"foreignObject":case"rect":case"image":b=["width","height","x","y"];break;case"use":case"text":case"tspan":b=["x","y"];break;case"polygon":case"polyline":(_={}).points=t.getAttribute("points");var x=t.points,w=x.numberOfItems;v.points=new Array(w);for(var S=0;S<w;++S){var k=x.getItem(S);v.points[S]={x:k.x,y:k.y}}break;case"path":(_={}).d=t.getAttribute("d"),v.d=t.getAttribute("d")}if(b.length?(v=sr(t).attr(b),sr.each(v,(function(e,t){v[e]=ce(e,t)}))):g&&(v={x:sr(g).attr("x")||0,y:sr(g).attr("y")||0}),sn(_)&&(_=sr.extend(!0,{},v),sr.each(_,(function(e,t){_[e]=ce(e,t)}))),_.transform=$n.getStartTransform()||"","g"===t.tagName&&!g||"a"===t.tagName){var C=Dt(t);f={x:C.x+C.width/2,y:C.y+C.height/2},p=Ae(C.x+C.width/2,C.y+C.height/2,Ie(r).matrix);var A=Jt(t);if(A){var E,G=A*Math.PI/180;E=Math.abs(G)>1e-10?Math.sin(G)/(1-Math.cos(G)):2/G;for(var P=0;P<r.numberOfItems;++P){var N=r.getItem(P);if(4===N.type){var I=N.matrix;f.y=(E*I.e+I.f)/2,f.x=(I.e-E*I.f)/2,r.removeItem(P);break}}}var T,L,M=r.numberOfItems,O=0,j=0,V=0;if(M&&(T=r.getItem(0).matrix),M>=3&&3===r.getItem(M-2).type&&2===r.getItem(M-3).type&&2===r.getItem(M-1).type){V=3;for(var R=r.getItem(M-3).matrix,B=r.getItem(M-2).matrix,F=r.getItem(M-1).matrix,D=t.childNodes,H=D.length;H--;){var z=D.item(H);if(O=0,j=0,1===z.nodeType){var q=ee(z);if(!q)continue;var Y=Ie(q).matrix,W=Jt(z);if(L=$n.getStartTransform(),$n.setStartTransform(z.getAttribute("transform")),W||Pe(q)){var X=n.createSVGTransform();X.setMatrix(Ge(R,B,F,Y)),q.clear(),q.appendItem(X)}else{var Q=Ge(Y.inverse(),F,Y),K=n.createSVGMatrix();K.e=-Q.e,K.f=-Q.f;var Z=Ge(K.inverse(),Y.inverse(),R,B,F,Y,Q.inverse()),$=n.createSVGTransform(),J=n.createSVGTransform(),te=n.createSVGTransform();$.setTranslate(Q.e,Q.f),J.setScale(Z.a,Z.d),te.setTranslate(K.e,K.f),q.appendItem(te),q.appendItem(J),q.appendItem($)}m.addSubCommand(e(z)),$n.setStartTransform(L)}}r.removeItem(M-1),r.removeItem(M-2),r.removeItem(M-3)}else if(M>=3&&1===r.getItem(M-1).type){V=3;var ne=Ie(r).matrix,re=n.createSVGTransform();re.setMatrix(ne),r.clear(),r.appendItem(re)}else if((1===M||M>1&&3!==r.getItem(1).type)&&2===r.getItem(0).type){V=2;var ae=Ie(r).matrix;r.removeItem(0);var ie=Ie(r).matrix.inverse(),oe=Ge(ie,ae);if(O=oe.e,j=oe.f,0!==O||0!==j){for(var se=t.childNodes,le=se.length,ue=[];le--;){var de=se.item(le);if(1===de.nodeType){if(de.getAttribute("clip-path")){var he=de.getAttribute("clip-path");ue.includes(he)||(lr(he,O,j),ue.push(he))}L=$n.getStartTransform(),$n.setStartTransform(de.getAttribute("transform"));var fe=ee(de);if(fe){var pe=n.createSVGTransform();pe.setTranslate(O,j),fe.numberOfItems?fe.insertItemBefore(pe,0):fe.appendItem(pe),m.addSubCommand(e(de));for(var ge=t.getElementsByTagNameNS(y.SVG,"use"),ye="#"+de.id,_e=ge.length;_e--;){var be=ge.item(_e);if(ye===Vt(be)){var xe=n.createSVGTransform();xe.setTranslate(-O,-j),ee(be).insertItemBefore(xe,0),m.addSubCommand(e(be))}}$n.setStartTransform(L)}}}$n.setStartTransform(L)}}else{if(1!==M||1!==r.getItem(0).type||A){if(A){var we=n.createSVGTransform();we.setRotate(A,p.x,p.y),r.numberOfItems?r.insertItemBefore(we,0):r.appendItem(we)}return 0===r.numberOfItems&&t.removeAttribute("transform"),null}V=1;for(var Se=r.getItem(0).matrix,ke=t.childNodes,Ce=ke.length;Ce--;){var Ne=ke.item(Ce);if(1===Ne.nodeType){L=$n.getStartTransform(),$n.setStartTransform(Ne.getAttribute("transform"));var Te=ee(Ne);if(!Te)continue;var Le=Ge(Se,Ie(Te).matrix),Me=n.createSVGTransform();Me.setMatrix(Le),Te.clear(),Te.appendItem(Me,0),m.addSubCommand(e(Ne)),$n.setStartTransform(L);var Oe=Ne.getAttribute("stroke-width");if("none"!==Ne.getAttribute("stroke")&&!isNaN(Oe)){var je=(Math.abs(Le.a)+Math.abs(Le.d))/2;Ne.setAttribute("stroke-width",Oe*je)}}}r.clear()}if(2===V){if(A){p={x:f.x+T.e,y:f.y+T.f};var Ve=n.createSVGTransform();Ve.setRotate(A,p.x,p.y),r.numberOfItems?r.insertItemBefore(Ve,0):r.appendItem(Ve)}}else if(3===V){var Re=Ie(r).matrix,Be=n.createSVGTransform();Be.setRotate(A,f.x,f.y);var Ue=Be.matrix,Fe=n.createSVGTransform();Fe.setRotate(A,p.x,p.y);var De=Fe.matrix.inverse(),He=Re.inverse(),ze=Ge(He,De,Ue,Re);if(O=ze.e,j=ze.f,0!==O||0!==j)for(var qe=t.childNodes,Ye=qe.length;Ye--;){var We=qe.item(Ye);if(1===We.nodeType){L=$n.getStartTransform(),$n.setStartTransform(We.getAttribute("transform"));var Xe=ee(We),Qe=n.createSVGTransform();Qe.setTranslate(O,j),Xe.numberOfItems?Xe.insertItemBefore(Qe,0):Xe.appendItem(Qe),m.addSubCommand(e(We)),$n.setStartTransform(L)}}A&&(r.numberOfItems?r.insertItemBefore(Fe,0):r.appendItem(Fe))}}else{var Ke,Ze=Dt(t);if(!Ze&&"path"!==t.tagName)return null;var $e=Jt(t);if($e){f={x:Ze.x+Ze.width/2,y:Ze.y+Ze.height/2},p=Ae(Ze.x+Ze.width/2,Ze.y+Ze.height/2,Ie(r).matrix);for(var Je=$e*Math.PI/180,et=Math.abs(Je)>1e-10?Math.sin(Je)/(1-Math.cos(Je)):2/Je,tt=0;tt<r.numberOfItems;++tt){var nt=r.getItem(tt);if(4===nt.type){var rt=nt.matrix;f.y=(et*rt.e+rt.f)/2,f.x=(rt.e-et*rt.f)/2,r.removeItem(tt);break}}}var at=0,it=r.numberOfItems;if(!U()){var ot=t.getAttribute("fill");if(ot&&ot.startsWith("url(")){var st=en(ot),lt="pattern";if(st.tagName!==lt&&(lt="gradient"),"userSpaceOnUse"===st.getAttribute(lt+"Units")){Ke=Ie(r).matrix;var ct=ee(st),ut=Ie(ct).matrix,dt="matrix("+[(Ke=Ge(Ke,ut)).a,Ke.b,Ke.c,Ke.d,Ke.e,Ke.f].join(",")+")";st.setAttribute(lt+"Transform",dt)}}}if(it>=3&&3===r.getItem(it-2).type&&2===r.getItem(it-3).type&&2===r.getItem(it-1).type)at=3,Ke=Ie(r,it-3,it-1).matrix,r.removeItem(it-1),r.removeItem(it-2),r.removeItem(it-3);else if(4===it&&1===r.getItem(it-1).type){at=3,Ke=Ie(r).matrix;var ht=n.createSVGTransform();ht.setMatrix(Ke),r.clear(),r.appendItem(ht),Ke=n.createSVGMatrix()}else if((1===it||it>1&&3!==r.getItem(1).type)&&2===r.getItem(0).type){at=2;var ft=r.getItem(0).matrix,pt=Ie(r,1).matrix,gt=pt.inverse();Ke=Ge(gt,ft,pt),r.removeItem(0)}else{if(1!==it||1!==r.getItem(0).type||$e){if($e){var mt=n.createSVGTransform();mt.setRotate($e,p.x,p.y),r.numberOfItems?r.insertItemBefore(mt,0):r.appendItem(mt)}return 0===r.numberOfItems&&t.removeAttribute("transform"),null}switch(Ke=Ie(r).matrix,t.tagName){case"line":v=sr(t).attr(["x1","y1","x2","y2"]);case"polyline":case"polygon":if(v.points=t.getAttribute("points"),v.points){var vt=t.points,yt=vt.numberOfItems;v.points=new Array(yt);for(var _t=0;_t<yt;++_t){var bt=vt.getItem(_t);v.points[_t]={x:bt.x,y:bt.y}}}case"path":v.d=t.getAttribute("d"),at=1,r.clear()}}if(1!==at&&2!==at&&3!==at||or(t,v,Ke),2===at){if($e){Pe(r)||(p={x:f.x+Ke.e,y:f.y+Ke.f});var xt=n.createSVGTransform();xt.setRotate($e,p.x,p.y),r.numberOfItems?r.insertItemBefore(xt,0):r.appendItem(xt)}if("text"===t.tagName)for(var wt=t.childNodes,St=wt.length;St--;){var kt=wt.item(St);if("tspan"===kt.tagName){var Ct={x:sr(kt).attr("x")||0,y:sr(kt).attr("y")||0};or(kt,Ct,Ke)}}}else if(3===at&&$e){var At=Ie(r).matrix,Et=n.createSVGTransform();Et.setRotate($e,f.x,f.y);var Gt=Et.matrix,Pt=n.createSVGTransform();Pt.setRotate($e,p.x,p.y);var Nt=Pt.matrix.inverse(),It=At.inverse(),Tt=Ge(It,Nt,Gt,At);or(t,v,Tt),$e&&(r.numberOfItems?r.insertItemBefore(Pt,0):r.appendItem(Pt))}}return 0===r.numberOfItems&&t.removeAttribute("transform"),m.addSubCommand(new me(t,_)),m},ur=jQuery,dr=q()?10:4,hr=function(){function e(t,n,a){r(this,e),this.id=t,this.selectedElement=n,this.locked=!0,this.selectorGroup=Jn.createSVGElement({element:"g",attr:{id:"selectorGroup"+this.id}}),this.selectorRect=this.selectorGroup.appendChild(Jn.createSVGElement({element:"path",attr:{id:"selectedBox"+this.id,fill:"none",stroke:"#22C","stroke-width":"1","stroke-dasharray":"5,5",style:"pointer-events:none"}})),this.gripCoords={nw:null,n:null,ne:null,e:null,se:null,s:null,sw:null,w:null},this.reset(this.selectedElement,a)}return i(e,[{key:"reset",value:function(e,t){this.locked=!0,this.selectedElement=e,this.resize(t),this.selectorGroup.setAttribute("display","inline")}},{key:"showGrips",value:function(t){var n=t?"inline":"none";tr.selectorGripsGroup.setAttribute("display",n);var r=this.selectedElement;this.hasGrips=t,r&&t&&(this.selectorGroup.append(tr.selectorGripsGroup),e.updateGripCursors(Jt(r)))}},{key:"resize",value:function(e){var t=this.selectorRect,n=tr,r=n.selectorGrips,a=this.selectedElement,i=a.getAttribute("stroke-width"),o=Jn.getCurrentZoom(),s=1/o;"none"===a.getAttribute("stroke")||isNaN(i)||(s+=i/2);var l=a.tagName;"text"===l&&(s+=2/o);var c=ee(a),u=Ie(c).matrix;if(u.e*=o,u.f*=o,e||(e=Dt(a)),"g"===l&&!ur.data(a,"gsvg")){var d=Qt([a.childNodes]);d&&(e=d)}var f=e.x,p=e.y,g=e.width,m=e.height;s*=o;var v=Ne(f*o,p*o,g*o,m*o,u),y=v.aabox,_=y.x-s,b=y.y-s,x=y.width+2*s,w=y.height+2*s,S=_+x/2,k=b+w/2,C=Jt(a);if(C){var A=Jn.svgRoot().createSVGTransform();A.setRotate(-C,S,k);var E=A.matrix;v.tl=Ae(v.tl.x,v.tl.y,E),v.tr=Ae(v.tr.x,v.tr.y,E),v.bl=Ae(v.bl.x,v.bl.y,E),v.br=Ae(v.br.x,v.br.y,E);var G=v.tl,P=G.x,N=G.y,I=G.x,T=G.y,L=Math.min,M=Math.max;_=P=L(P,L(v.tr.x,L(v.bl.x,v.br.x)))-s,b=N=L(N,L(v.tr.y,L(v.bl.y,v.br.y)))-s,x=(I=M(I,M(v.tr.x,M(v.bl.x,v.br.x)))+s)-P,w=(T=M(T,M(v.tr.y,M(v.bl.y,v.br.y)))+s)-N}var O="M"+_+","+b+" L"+(_+x)+","+b+" "+(_+x)+","+(b+w)+" "+_+","+(b+w)+"z";t.setAttribute("d",O);var j=C?"rotate("+[C,S,k].join(",")+")":"";this.selectorGroup.setAttribute("transform",j),this.gripCoords={nw:[_,b],ne:[_+x,b],sw:[_,b+w],se:[_+x,b+w],n:[_+x/2,b],w:[_,b+w/2],e:[_+x,b+w/2],s:[_+x/2,b+w]},Object.entries(this.gripCoords).forEach((function(e){var t=h(e,2),n=t[0],a=t[1];r[n].setAttribute("cx",a[0]),r[n].setAttribute("cy",a[1])})),n.rotateGripConnector.setAttribute("x1",_+x/2),n.rotateGripConnector.setAttribute("y1",b),n.rotateGripConnector.setAttribute("x2",_+x/2),n.rotateGripConnector.setAttribute("y2",b-5*dr),n.rotateGrip.setAttribute("cx",_+x/2),n.rotateGrip.setAttribute("cy",b-5*dr)}}],[{key:"updateGripCursors",value:function(e){var t=Object.keys(tr.selectorGrips),n=Math.round(e/45);for(n<0&&(n+=8);n>0;)t.push(t.shift()),n--;Object.values(tr.selectorGrips).forEach((function(e,n){e.setAttribute("style","cursor:"+t[n]+"-resize")}))}}]),e}(),fr=function(){function t(){r(this,t),this.selectorParentGroup=null,this.rubberBandBox=null,this.selectors=[],this.selectorMap={},this.selectorGrips={nw:null,n:null,ne:null,e:null,se:null,s:null,sw:null,w:null},this.selectorGripsGroup=null,this.rotateGripConnector=null,this.rotateGrip=null,this.initGroup()}return i(t,[{key:"initGroup",value:function(){var e=this;if(this.selectorParentGroup&&this.selectorParentGroup.parentNode&&this.selectorParentGroup.remove(),this.selectorParentGroup=Jn.createSVGElement({element:"g",attr:{id:"selectorParentGroup"}}),this.selectorGripsGroup=Jn.createSVGElement({element:"g",attr:{display:"none"}}),this.selectorParentGroup.append(this.selectorGripsGroup),Jn.svgRoot().append(this.selectorParentGroup),this.selectorMap={},this.selectors=[],this.rubberBandBox=null,Object.keys(this.selectorGrips).forEach((function(t){var n=Jn.createSVGElement({element:"circle",attr:{id:"selectorGrip_resize_"+t,fill:"#22C",r:dr,style:"cursor:"+t+"-resize","stroke-width":2,"pointer-events":"all"}});ur.data(n,"dir",t),ur.data(n,"type","resize"),e.selectorGrips[t]=e.selectorGripsGroup.appendChild(n)})),this.rotateGripConnector=this.selectorGripsGroup.appendChild(Jn.createSVGElement({element:"line",attr:{id:"selectorGrip_rotateconnector",stroke:"#22C","stroke-width":"1"}})),this.rotateGrip=this.selectorGripsGroup.appendChild(Jn.createSVGElement({element:"circle",attr:{id:"selectorGrip_rotate",fill:"lime",r:dr,stroke:"#22C","stroke-width":2,style:"cursor:url("+er.imgPath+"rotate.png) 12 12, auto;"}})),ur.data(this.rotateGrip,"type","rotate"),!ur("#canvasBackground").length){var t=h(er.dimensions,2),n=t[0],r=t[1],a=Jn.createSVGElement({element:"svg",attr:{id:"canvasBackground",width:n,height:r,x:0,y:0,overflow:U()?"none":"visible",style:"pointer-events:none"}}),i=Jn.createSVGElement({element:"rect",attr:{width:"100%",height:"100%",x:0,y:0,"stroke-width":1,stroke:"#000",fill:"#FFF",style:"pointer-events:none"}});a.append(i),Jn.svgRoot().insertBefore(a,Jn.svgContent())}}},{key:"requestSelector",value:function(t,n){if(sn(t))return null;var r=this.selectors.length;if("object"===e(this.selectorMap[t.id]))return this.selectorMap[t.id].locked=!0,this.selectorMap[t.id];for(var a=0;a<r;++a)if(this.selectors[a]&&!this.selectors[a].locked)return this.selectors[a].locked=!0,this.selectors[a].reset(t,n),this.selectorMap[t.id]=this.selectors[a],this.selectors[a];return this.selectors[r]=new hr(r,t,n),this.selectorParentGroup.append(this.selectors[r].selectorGroup),this.selectorMap[t.id]=this.selectors[r],this.selectors[r]}},{key:"releaseSelector",value:function(e){if(!sn(e)){var t=this.selectors.length,n=this.selectorMap[e.id];n.locked||console.log("WARNING! selector was released but was already unlocked");for(var r=0;r<t;++r)if(this.selectors[r]&&this.selectors[r]===n){delete this.selectorMap[e.id],n.locked=!1,n.selectedElement=null,n.showGrips(!1);try{n.selectorGroup.setAttribute("display","none")}catch(e){}break}}}},{key:"getRubberBandBox",value:function(){return this.rubberBandBox||(this.rubberBandBox=this.selectorParentGroup.appendChild(Jn.createSVGElement({element:"rect",attr:{id:"selectorRubberBand",fill:"#22C","fill-opacity":.15,stroke:"#22C","stroke-width":.5,display:"none",style:"pointer-events:none"}}))),this.rubberBandBox}}]),t}(),pr=W(jQuery),gr=fe,mr=pe,vr=ge,yr=me,_r=ve,br=Se,xr=de;window.console||(window.console={},window.console.log=function(e){},window.console.dir=function(e){}),window.opera&&(window.console.log=function(e){window.opera.postError(e)},window.console.dir=function(e){});var wr=function t(a,i){r(this,t);var o={show_outside_canvas:!0,selectNew:!0,dimensions:[640,480]};i&&pr.extend(o,i);var s=o.dimensions,l=this,c=a.ownerDocument,u=c.importNode(Mt('<svg id="svgroot" xmlns="'+y.SVG+'" xlinkns="'+y.XLINK+'" width="'+s[0]+'" height="'+s[1]+'" x="'+s[0]+'" y="'+s[1]+'" overflow="visible"><defs><filter id="canvashadow" filterUnits="objectBoundingBox"><feGaussianBlur in="SourceAlpha" stdDeviation="4" result="blur"/><feOffset in="blur" dx="5" dy="5" result="offsetBlur"/><feMerge><feMergeNode in="offsetBlur"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs></svg>').documentElement,!0);a.append(u);var d=c.createElementNS(y.SVG,"svg");(l.clearSvgContentElement=function(){pr(d).empty(),pr(d).attr({id:"svgcontent",width:s[0],height:s[1],x:s[0],y:s[1],overflow:o.show_outside_canvas?"visible":"hidden",xmlns:y.SVG,"xmlns:se":y.SE,"xmlns:xlink":y.XLINK}).appendTo(u);var e=c.createComment(" Created with SVG-edit - https://github.com/SVG-Edit/svgedit");d.append(e)})();var p="svg_";l.setIdPrefix=function(e){p=e},l.current_drawing_=new Mn(d,p);var g=l.getCurrentDrawing=function(){return l.current_drawing_},v=1,b=null,x={shape:{fill:("none"===o.initFill.color?"":"#")+o.initFill.color,fill_paint:null,fill_opacity:o.initFill.opacity,stroke:"#"+o.initStroke.color,stroke_paint:null,stroke_opacity:o.initStroke.opacity,stroke_width:o.initStroke.width,stroke_dasharray:"none",stroke_linejoin:"miter",stroke_linecap:"butt",opacity:o.initOpacity}};x.text=pr.extend(!0,{},x.shape),pr.extend(x.text,{fill:"#000000",stroke_width:o.text&&o.text.stroke_width,font_size:o.text&&o.text.font_size,font_family:o.text&&o.text.font_family});var w=x.shape,S=[],k=this.getJsonFromSvgElement=function(e){if(3===e.nodeType)return e.nodeValue;for(var t,n={element:e.tagName,attr:{},children:[]},r=0;t=e.attributes[r];r++)n.attr[t.name]=t.value;for(var a,i=0;a=e.childNodes[i];i++)n.children[i]=k(a);return n},C=this.addSVGElementFromJson=function(e){if("string"==typeof e)return c.createTextNode(e);var t=tn(e.attr.id),n=g().getCurrentLayer();if(t&&e.element!==t.tagName&&(t.remove(),t=null),!t){var r=e.namespace||y.SVG;t=c.createElementNS(r,e.element),n&&(b||n).append(t)}return e.curStyles&&nn(t,{fill:w.fill,stroke:w.stroke,"stroke-width":w.stroke_width,"stroke-dasharray":w.stroke_dasharray,"stroke-linejoin":w.stroke_linejoin,"stroke-linecap":w.stroke_linecap,"stroke-opacity":w.stroke_opacity,"fill-opacity":w.fill_opacity,opacity:w.opacity/2,style:"pointer-events:inherit"}),nn(t,e.attr),rn(t),e.children&&e.children.forEach((function(e){t.append(C(e))})),t};l.getTransformList=ee,l.matrixMultiply=Ge,l.hasMatrixTransform=Pe,l.transformListToTransform=Ie;var A=function(){return o.baseUnit};!function(e){K=e;var t=document.createElementNS(y.SVG,"svg");document.body.append(t);var n=document.createElementNS(y.SVG,"rect");n.setAttribute("width","1em"),n.setAttribute("height","1ex"),n.setAttribute("x","1in"),t.append(n);var r=n.getBBox();t.remove();var a=r.x;ae={em:r.width,ex:r.height,in:a,cm:a/2.54,mm:a/25.4,pt:a/72,pc:a/6,px:1,"%":0}}({getBaseUnit:A,getElement:tn,getHeight:function(){return d.getAttribute("height")/v},getWidth:function(){return d.getAttribute("width")/v},getRoundDigits:function(){return pe.round_digits}}),l.convertToNum=ce;var E,G=function(){return d},P=this.getSelectedElems=function(){return S},N=vt,I=function(){return u};xt=E={pathActions:N,getSVGContent:G,addSVGElementFromJson:C,getSelectedElements:P,getDOMDocument:function(){return c},getDOMContainer:function(){return a},getSVGRoot:I,getBaseUnit:A,getSnappingStep:function(){return o.snappingStep}},wt=E.getDOMDocument(),St=E.getDOMContainer(),kt=E.getSVGRoot(),l.findDefs=Bt,l.getUrlFromAttr=jt,l.getHref=Vt,l.setHref=Rt,l.getBBox=Dt,l.getRotationAngle=Jt,l.getElem=tn,l.getRefElem=en,l.assignAttributes=nn,this.cleanupElement=rn;var T=function(){return o.gridSnapping};!function(e){ir=e}({getDrawing:function(){return g()},getSVGRoot:I,getGridSnapping:T}),this.remapElement=or,function(e){$n=e}({getSVGRoot:I,getStartTransform:function(){return xe},setStartTransform:function(e){xe=e}}),this.recalculateDimensions=cr;var L=_();l.sanitizeSvg=nr;var M=l.undoMgr=new br({handleHistoryEvent:function(e,t){var n=xr;if(e===n.BEFORE_UNAPPLY||e===n.BEFORE_APPLY)l.clearSelection();else if(e===n.AFTER_APPLY||e===n.AFTER_UNAPPLY){var r=t.elements();l.pathActions.clear(),W("changed",r);var a=t.type(),i=e===n.AFTER_APPLY;if(a===gr.type())(i?t.newParent:t.oldParent)===d&&jn();else if(a===mr.type()||a===vr.type())t.parent===d&&jn(),a===mr.type()?i&&he(t.elem):i||he(t.elem),"use"===t.elem.tagName&&Lt(t.elem);else if(a===yr.type()){"title"===t.elem.tagName&&t.elem.parentNode.parentNode===d&&jn();var o=i?t.newValues:t.oldValues;o.stdDeviation&&l.setBlurOffsets(t.elem.parentNode,o.stdDeviation)}}}}),j=function(e){l.undoMgr.addCommandToHistory(e)},V=this.getZoom=function(){return v},R=this.round=function(e){return Number.parseInt(e*v)/v};!function(e,t){er=e,Jn=t,tr=new fr}(o,{createSVGElement:function(e){return l.addSVGElementFromJson(e)},svgRoot:function(){return u},svgContent:function(){return d},getCurrentZoom:V});var B=this.selectorManager=tr,z=l.getNextId=function(){return g().getNextId()},q=l.getId=function(){return g().getId()},W=function(e,t){if(We[e])return We[e](window,t)},X=this.clearSelection=function(e){S.forEach((function(e){sn(e)||B.releaseSelector(e)})),S=[],e||W("selected",S)},Q=this.addToSelection=function(e,t){if(e.length){for(var n=0;n<S.length&&!sn(S[n]);)++n;for(var r=e.length;r--;){var a=e[r];if(a){var i=Dt(a);if(i&&("a"===a.tagName&&1===a.childNodes.length&&(a=a.firstChild),!S.includes(a))){S[n]=a,n++;var o=B.requestSelector(a,i);S.length>1&&o.showGrips(!1)}}}if(S.length)for(W("selected",S),t||1===S.length?B.requestSelector(S[0]).showGrips(!0):B.requestSelector(S[0]).showGrips(!1),S.sort((function(e,t){return e&&t&&e.compareDocumentPosition?3-(6&t.compareDocumentPosition(e)):sn(e)?1:0}));sn(S[0]);)S.shift(0)}},J=function(){return w.opacity},te=this.getMouseTarget=function(e){if(sn(e))return null;var t=e.target;if(t.correspondingUseElement&&(t=t.correspondingUseElement),[y.MATH,y.HTML].includes(t.namespaceURI)&&"svgcanvas"!==t.id)for(;"foreignObject"!==t.nodeName;)if(!(t=t.parentNode))return u;var n=g().getCurrentLayer();if([u,a,d,n].includes(t))return u;if(pr(t).closest("#selectorParentGroup").length)return B.selectorParentGroup;for(;t.parentNode!==(b||n);)t=t.parentNode;return t};l.pathActions=N,ze({selectorManager:B,canvas:l,call:W,resetD:function(e){e.setAttribute("d",N.convertPath(e))},round:R,clearSelection:X,addToSelection:Q,addCommandToHistory:j,remapElement:or,addSVGElementFromJson:C,getGridSnapping:T,getOpacity:J,getSelectedElements:P,getContainer:function(){return a},setStarted:function(e){be=e},getRubberBox:function(){return je},setRubberBox:function(e){return je=e},addPtsToSelection:function(e){var t=e.closedSubpath,n=e.grips;N.canDeleteNodes=!0,N.closed_subpath=t,W("pointsAdded",{closedSubpath:t,grips:n}),W("selected",n)},endChanges:function(e){var t=e.cmd,n=e.elem;j(t),W("changed",[n])},getCurrentZoom:V,getId:q,getNextId:z,getMouseTarget:te,getCurrentMode:function(){return we},setCurrentMode:function(e){return we=e},getDrawnPath:function(){return gt},setDrawnPath:function(e){return gt=e},getSVGRoot:I});var ne={},re="a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use",le=["clip-path","fill","filter","marker-end","marker-mid","marker-start","mask","stroke"],ue=pr.data,de=document.createElementNS(y.SVG,"animate");pr(de).attr({attributeName:"opacity",begin:"indefinite",dur:1,fill:"freeze"}).appendTo(u);var he=function e(t){var n=pr(t).attr(le);Object.values(n).forEach((function(e){if(e&&e.startsWith("url(")){var t=jt(e).substr(1);tn(t)||(Bt().append(ye[t]),delete ye[t])}}));var r=t.getElementsByTagName("*");if(r.length)for(var a=0,i=r.length;a<i;a++)e(r[a])},fe={},pe={round_digits:5},ge={},me=x.text,ve={},ye={},_e=o.imgPath+"logo.png",be=!1,xe=null,we="select",Se="none",Ce=w,Oe=null,je=null,Ve=[],Be=null;this.runExtension=function(e,t,n){return this.runExtensions(t,n,!1,(function(t){return t===e}))};var Ue=this.runExtensions=function(e,t,n,r){var a=!!n&&[];return pr.each(ve,(function(i,o){r&&!r(i)||o&&e in o&&("function"==typeof t&&(t=t(i)),n?a.push(o[e](t)):a=o[e](t))})),a};this.addExtension=function(){var e=n(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=r.$,i=r.importLocale,"function"==typeof n){e.next=3;break}throw new TypeError("Function argument expected for `svgcanvas.addExtension`");case 3:if(!(t in ve)){e.next=5;break}throw new Error('Cannot add extension "'+t+'", an extension by that name already exists.');case 5:return o=pr.extend(l.getPrivateMethods(),{$:a,importLocale:i,svgroot:u,svgcontent:d,nonce:g().getNonce(),selectorManager:B}),e.next=8,n(o);case 8:return(s=e.sent)&&(s.name=t),ve[t]=s,e.abrupt("return",W("extension_added",s));case 12:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}();var He=this.getIntersectionList=function(e){if(sn(je))return null;var t,n=b||g().getCurrentLayer();if(e)(t=d.createSVGRect()).x=e.x,t.y=e.y,t.width=e.width,t.height=e.height;else{t=je.getBBox();var r=d.createSVGRect();["x","y","width","height","top","right","bottom","left"].forEach((function(e){r[e]=t[e]/v})),t=r}var a=null;if(D()||"function"==typeof u.getIntersectionList&&(t.x+=Number.parseInt(d.getAttribute("x")),t.y+=Number.parseInt(d.getAttribute("y")),a=u.getIntersectionList(t,n)),sn(a)||"function"!=typeof a.item){a=[],Ve.length||(Ve=qe(n));for(var i=Ve.length;i--;)t.width&&Me(t,Ve[i].bbox)&&a.push(Ve[i].elem)}return a};this.getStrokedBBox=Zt,this.getVisibleElements=Kt;var qe=this.getVisibleElementsAndBBoxes=function(e){e||(e=pr(d).children());var t=[];return pr(e).children().each((function(e,n){n.getBBox&&t.push({elem:n,bbox:Zt([n])})})),t.reverse()},Ye=this.groupSvgElem=function(e){var t=document.createElementNS(y.SVG,"g");e.replaceWith(t),pr(t).append(e).data("gsvg",e)[0].id=z()},We={};l.call=W,l.bind=function(e,t){var n=We[e];return We[e]=t,n},this.prepareSvg=function(e){this.sanitizeSvg(e.documentElement),f(e.getElementsByTagNameNS(y.SVG,"path")).forEach((function(e){e.setAttribute("d",N.convertPath(e)),N.fixEnd(e)}))};var Xe=function(e){if(!F())return e;var t=e.cloneNode(!0);return e.before(t),e.remove(),B.releaseSelector(e),S[0]=t,B.requestSelector(t).showGrips(!0),t};this.setRotationAngle=function(e,t){e=Number.parseFloat(e);var n=S[0],r=n.getAttribute("transform"),a=Dt(n),i=a.x+a.width/2,o=a.y+a.height/2,s=ee(n);s.numberOfItems>0&&(4===s.getItem(0).type&&s.removeItem(0));if(0!==e){var l=Ae(i,o,Ie(s).matrix),c=u.createSVGTransform();c.setRotate(e,l.x,l.y),s.numberOfItems?s.insertItemBefore(c,0):s.appendItem(c)}else 0===s.numberOfItems&&n.removeAttribute("transform");if(!t){var d=n.getAttribute("transform");n.setAttribute("transform",r),un("transform",d,S),W("changed",S)}B.requestSelector(S[0]).resize(),hr.updateGripCursors(e)};var Qe=this.recalculateAllSelectedDimensions=function(){for(var e=new _r("none"===Se?"position":"size"),t=S.length;t--;){var n=S[t],r=cr(n);r&&e.addSubCommand(r)}e.isEmpty()||(j(e),W("changed",S))},Ke=function(e){console.log([e.a,e.b,e.c,e.d,e.e,e.f])},Ze=null,$e=this.selectOnly=function(e,t){X(!0),Q(e,t)};this.removeFromSelection=function(e){if(!sn(S[0])&&e.length){for(var t=[],n=S.length,r=0;r<n;++r){var a=S[r];a&&(e.includes(a)?B.releaseSelector(a):t.push(a))}S=t}},this.selectAllInCurrentLayer=function(){var e=g().getCurrentLayer();e&&(we="select",$e(pr(b||e).children()))};var Je,et,tt,nt,rt,at,it,st,lt,ct,ut,dt,ht,ft,pt,gt=null;et={minx:null,miny:null,maxx:null,maxy:null},tt=null,nt=null,rt=null,at=null,it={},st=0,lt={x:0,y:0},ct={x:0,y:0},ut={x:0,y:0},dt={x:0,y:0},ht={x:0,y:0},ft={x:0,y:0},pt=function(e){var t={x:0,y:0},n=lt,r=ct,a=ut,i=dt,o=e*e,s=o*e,l=[[-1,3,-3,1],[3,-6,3,0],[-3,0,3,0],[1,4,1,0]];return t.x=1/6*((n.x*l[0][0]+r.x*l[0][1]+a.x*l[0][2]+i.x*l[0][3])*s+(n.x*l[1][0]+r.x*l[1][1]+a.x*l[1][2]+i.x*l[1][3])*o+(n.x*l[2][0]+r.x*l[2][1]+a.x*l[2][2]+i.x*l[2][3])*e+(n.x*l[3][0]+r.x*l[3][1]+a.x*l[3][2]+i.x*l[3][3])),t.y=1/6*((n.y*l[0][0]+r.y*l[0][1]+a.y*l[0][2]+i.y*l[0][3])*s+(n.y*l[1][0]+r.y*l[1][1]+a.y*l[1][2]+i.y*l[1][3])*o+(n.y*l[2][0]+r.y*l[2][1]+a.y*l[2][2]+i.y*l[2][3])*e+(n.y*l[3][0]+r.y*l[3][1]+a.y*l[3][2]+i.y*l[3][3])),{x:t.x,y:t.y}},pr(a).mousedown((function(e){if(!l.spaceKey&&1!==e.button){var t=2===e.button;e.altKey&&l.cloneSelectedElements(0,0),Ze=pr("#svgcontent g")[0].getScreenCTM().inverse();var n=Ae(e.pageX,e.pageY,Ze),r=n.x*v,a=n.y*v;e.preventDefault(),t&&(we="select",Be=n);var i=r/v,s=a/v,c=te(e);"a"===c.tagName&&1===c.childNodes.length&&(c=c.firstChild);var d=i;rt=tt=i;var h=s;if(at=nt=s,o.gridSnapping&&(i=an(i),s=an(s),tt=an(tt),nt=an(nt)),c===B.selectorParentGroup&&!sn(S[0])){var f=e.target,p=ue(f,"type");"rotate"===p?we="rotate":"resize"===p&&(we="resize",Se=ue(f,"dir")),c=S[0]}xe=c.getAttribute("transform");var g=ee(c);switch(we){case"select":if(be=!0,Se="none",t&&(be=!1),c!==u){if(S.includes(c)||(e.shiftKey||X(!0),Q([c]),Oe=c,N.clear()),!t){var y,_=m(S);try{for(_.s();!(y=_.n()).done;){var b=y.value;if(!sn(b)){var x=ee(b);x.numberOfItems?x.insertItemBefore(u.createSVGTransform(),0):x.appendItem(u.createSVGTransform())}}}catch(e){_.e(e)}finally{_.f()}}}else t||(X(),we="multiselect",sn(je)&&(je=B.getRubberBandBox()),nn(je,{x:rt*=v,y:at*=v,width:0,height:0,display:"inline"}));break;case"zoom":be=!0,sn(je)&&(je=B.getRubberBandBox()),nn(je,{x:d*v,y:d*v,width:0,height:0,display:"inline"});break;case"resize":be=!0,tt=i,nt=s,it=Dt(pr("#selectedBox0")[0]);var k={};pr.each(it,(function(e,t){k[e]=t/v})),it=k;var A=Jt(c)?1:0;if(Pe(g))g.insertItemBefore(u.createSVGTransform(),A),g.insertItemBefore(u.createSVGTransform(),A),g.insertItemBefore(u.createSVGTransform(),A);else if(g.appendItem(u.createSVGTransform()),g.appendItem(u.createSVGTransform()),g.appendItem(u.createSVGTransform()),Y()){var E,G=U();G&&(E=function(e){var t=e.getAttribute("stroke");e.removeAttribute("stroke"),null!==t&&setTimeout((function(){e.setAttribute("stroke",t)}),0)}),c.style.vectorEffect="non-scaling-stroke",G&&E(c);for(var P=c.getElementsByTagName("*"),I=P.length,T=0;T<I;T++)P[T].style&&(P[T].style.vectorEffect="non-scaling-stroke",G&&E(P[T]))}break;case"fhellipse":case"fhrect":case"fhpath":ut.x=d,ut.y=h,ct={x:0,y:0},lt={x:0,y:0},be=!0,C({element:"polyline",curStyles:!0,attr:{points:d+","+h+" ",id:z(),fill:"none",opacity:w.opacity/2,"stroke-linecap":"round",style:"pointer-events:none"}}),et.minx=d,et.maxx=d,et.miny=h,et.maxy=h;break;case"image":be=!0;var L=C({element:"image",attr:{x:i,y:s,width:0,height:0,id:z(),opacity:w.opacity/2,style:"pointer-events:inherit"}});Rt(L,_e),on(L);break;case"square":case"rect":be=!0,tt=i,nt=s,C({element:"rect",curStyles:!0,attr:{x:i,y:s,width:0,height:0,id:z(),opacity:w.opacity/2}});break;case"line":be=!0;var M=0===Number(w.stroke_width)?1:w.stroke_width;C({element:"line",curStyles:!0,attr:{x1:i,y1:s,x2:i,y2:s,id:z(),stroke:w.stroke,"stroke-width":M,"stroke-dasharray":w.stroke_dasharray,"stroke-linejoin":w.stroke_linejoin,"stroke-linecap":w.stroke_linecap,"stroke-opacity":w.stroke_opacity,fill:"none",opacity:w.opacity/2,style:"pointer-events:none"}});break;case"circle":be=!0,C({element:"circle",curStyles:!0,attr:{cx:i,cy:s,r:0,id:z(),opacity:w.opacity/2}});break;case"ellipse":be=!0,C({element:"ellipse",curStyles:!0,attr:{cx:i,cy:s,rx:0,ry:0,id:z(),opacity:w.opacity/2}});break;case"text":be=!0,C({element:"text",curStyles:!0,attr:{x:i,y:s,id:z(),fill:me.fill,"stroke-width":me.stroke_width,"font-size":me.font_size,"font-family":me.font_family,"text-anchor":"middle","xml:space":"preserve",opacity:w.opacity}});break;case"path":case"pathedit":tt*=v,nt*=v,N.mouseDown(e,c,tt,nt),be=!0;break;case"textedit":tt*=v,nt*=v,_t.mouseDown(e,c,tt,nt),be=!0;break;case"rotate":be=!0,l.undoMgr.beginUndoableChange("transform",S)}var O=Ue("mouseDown",{event:e,start_x:tt,start_y:nt,selectedElements:S},!0);pr.each(O,(function(e,t){t&&t.started&&(be=!0)}))}})).mousemove((function(e){if(be&&1!==e.button&&!l.spaceKey){var t,n,r,a,i,s,c,h,f,p,g=S[0],m=Ae(e.pageX,e.pageY,Ze),y=m.x*v,_=m.y*v,b=tn(q()),x=y/v,w=x,k=_/v,C=k;switch(o.gridSnapping&&(w=an(w),C=an(C)),e.preventDefault(),we){case"select":if(null!==S[0]&&(i=w-tt,s=C-nt,o.gridSnapping&&(i=an(i),s=an(s)),0!==i||0!==s)){for(c=S.length,t=0;t<c&&(g=S[t],!sn(g));++t){var A=u.createSVGTransform();p=ee(g),A.setTranslate(i,s),p.numberOfItems?p.replaceItem(A,0):p.appendItem(A),B.requestSelector(g).resize()}W("transition",S)}break;case"multiselect":x*=v,k*=v,nn(je,{x:Math.min(rt,x),y:Math.min(at,k),width:Math.abs(x-rt),height:Math.abs(k-at)});var E=S.slice(),G=[],P=He();for(c=P.length,t=0;t<c;++t){var I=P[t];S.includes(I)||G.push(I);var T=E.indexOf(I);-1!==T&&E.splice(T,1)}E.length>0&&l.removeFromSelection(E),G.length>0&&l.addToSelection(G);break;case"resize":p=ee(g);var L=Pe(p),M=(f=L?it:Dt(g)).x,O=f.y,j=f,V=j.width,R=j.height;if(i=w-tt,s=C-nt,o.gridSnapping&&(i=an(i),s=an(s),R=an(R),V=an(V)),h=Jt(g)){var U=Math.sqrt(i*i+s*s),F=Math.atan2(s,i)-h*Math.PI/180;i=U*Math.cos(F),s=U*Math.sin(F)}Se.includes("n")||Se.includes("s")||(s=0),Se.includes("e")||Se.includes("w")||(i=0);var D=0,H=0,z=R?(R+s)/R:1,Y=V?(V+i)/V:1;Se.includes("n")&&(z=R?(R-s)/R:1,H=R),Se.includes("w")&&(Y=V?(V-i)/V:1,D=V);var X=u.createSVGTransform(),Q=u.createSVGTransform(),K=u.createSVGTransform();if(o.gridSnapping&&(M=an(M),D=an(D),O=an(O),H=an(H)),X.setTranslate(-(M+D),-(O+H)),e.shiftKey&&(1===Y?Y=z:z=Y),Q.setScale(Y,z),K.setTranslate(M+D,O+H),L){var Z=h?1:0;p.replaceItem(X,2+Z),p.replaceItem(Q,1+Z),p.replaceItem(K,Number(Z))}else{var $=p.numberOfItems;p.replaceItem(K,$-3),p.replaceItem(Q,$-2),p.replaceItem(X,$-1)}B.requestSelector(g).resize(),W("transition",S);break;case"zoom":x*=v,k*=v,nn(je,{x:Math.min(rt*v,x),y:Math.min(at*v,k),width:Math.abs(x-rt*v),height:Math.abs(k-at*v)});break;case"text":nn(b,{x:w,y:C});break;case"line":o.gridSnapping&&(w=an(w),C=an(C));var J=w,te=C;e.shiftKey&&(J=(n=Le(tt,nt,J,te)).x,te=n.y),b.setAttribute("x2",J),b.setAttribute("y2",te);break;case"foreignObject":case"square":case"rect":case"image":var ne,re,ae="square"===we||e.shiftKey,ie=Math.abs(w-tt),oe=Math.abs(C-nt);ae?(ie=oe=Math.max(ie,oe),ne=tt<w?tt:tt-ie,re=nt<C?nt:nt-oe):(ne=Math.min(tt,w),re=Math.min(nt,C)),o.gridSnapping&&(ie=an(ie),oe=an(oe),ne=an(ne),re=an(re)),nn(b,{width:ie,height:oe,x:ne,y:re});break;case"circle":var se=pr(b).attr(["cx","cy"]);r=se.cx,a=se.cy;var le=Math.sqrt((w-r)*(w-r)+(C-a)*(C-a));o.gridSnapping&&(le=an(le)),b.setAttribute("r",le);break;case"ellipse":var ce=pr(b).attr(["cx","cy"]);r=ce.cx,a=ce.cy,o.gridSnapping&&(w=an(w),r=an(r),C=an(C),a=an(a)),b.setAttribute("rx",Math.abs(w-r));var ue=Math.abs(e.shiftKey?w-r:C-a);b.setAttribute("ry",ue);break;case"fhellipse":case"fhrect":et.minx=Math.min(x,et.minx),et.maxx=Math.max(x,et.maxx),et.miny=Math.min(k,et.miny),et.maxy=Math.max(k,et.maxy);case"fhpath":if(dt.x=x,dt.y=k,lt.x&<.y)for(t=0;t<9;t++)if(Je=t/10,ht=pt((t+1)/10),ft=ht,ht=pt(Je),(st+=Math.sqrt((ft.x-ht.x)*(ft.x-ht.x)+(ft.y-ht.y)*(ft.y-ht.y)))>.8){st-=.8;var de=d.createSVGPoint();de.x=ht.x,de.y=ht.y,b.points.appendItem(de)}lt={x:ct.x,y:ct.y},ct={x:ut.x,y:ut.y},ut={x:dt.x,y:dt.y};break;case"path":case"pathedit":if(w*=v,C*=v,o.gridSnapping&&(w=an(w),C=an(C),tt=an(tt),nt=an(nt)),e.shiftKey){var he,fe,pe=De;pe?(he=pe.dragging?pe.dragging[0]:tt,fe=pe.dragging?pe.dragging[1]:nt):(he=tt,fe=nt);var ge=n=Le(he,fe,w,C);w=ge.x,C=ge.y}je&&"none"!==je.getAttribute("display")&&(x*=v,k*=v,nn(je,{x:Math.min(rt*v,x),y:Math.min(at*v,k),width:Math.abs(x-rt*v),height:Math.abs(k-at*v)})),N.mouseMove(w,C);break;case"textedit":w*=v,C*=v,_t.mouseMove(y,_);break;case"rotate":r=(f=Dt(g)).x+f.width/2,a=f.y+f.height/2;var me=Te(g),ve=Ae(r,a,me);r=ve.x,a=ve.y,h=(Math.atan2(a-C,r-w)*(180/Math.PI)-90)%360,o.gridSnapping&&(h=an(h)),e.shiftKey&&(h=45*Math.round(h/45)),l.setRotationAngle(h<-180?360+h:h,!0),W("transition",S)}Ue("mouseMove",{event:e,mouse_x:y,mouse_y:_,selected:g})}})).click((function(e){return e.preventDefault(),!1})).dblclick((function(e){var t=e.target.parentNode;if(t!==b){var n=te(e),r=n.tagName;if("text"===r&&"textedit"!==we){var a=Ae(e.pageX,e.pageY,Ze);_t.select(n,a.x,a.y)}"g"!==r&&"a"!==r||!Jt(n)||(fn(n),n=S[0],X(!0)),b&&Wn(),"g"!==t.tagName&&"a"!==t.tagName||t===g().getCurrentLayer()||n===B.selectorParentGroup||Xn(n)}})).mouseup((function(e){if(2!==e.button){var t=Oe;if(Oe=null,be){var n,r,a=Ae(e.pageX,e.pageY,Ze),i=a.x*v,s=a.y*v,c=i/v,u=s/v,d=tn(q()),h=!1,f=c,p=u;switch(be=!1,we){case"resize":case"multiselect":sn(je)||(je.setAttribute("display","none"),Ve=[]),we="select";case"select":if(!sn(S[0])){if(sn(S[1])){var m=S[0];switch(m.tagName){case"g":case"use":case"image":case"foreignObject":break;default:Ce.fill=m.getAttribute("fill"),Ce.fill_opacity=m.getAttribute("fill-opacity"),Ce.stroke=m.getAttribute("stroke"),Ce.stroke_opacity=m.getAttribute("stroke-opacity"),Ce.stroke_width=m.getAttribute("stroke-width"),Ce.stroke_dasharray=m.getAttribute("stroke-dasharray"),Ce.stroke_linejoin=m.getAttribute("stroke-linejoin"),Ce.stroke_linecap=m.getAttribute("stroke-linecap")}"text"===m.tagName&&(me.font_size=m.getAttribute("font-size"),me.font_family=m.getAttribute("font-family")),B.requestSelector(m).showGrips(!0)}if(Qe(),f!==rt||p!==at)for(var y=S.length,_=0;_<y&&!sn(S[_]);++_)S[_].firstChild||B.requestSelector(S[_]).resize();else r=e.target,"path"===S[0].nodeName&&sn(S[1])?N.select(S[0]):e.shiftKey&&t!==r&&l.removeFromSelection([r]);if(Y()){var b=S[0];b&&(b.removeAttribute("style"),Ot(b,(function(e){e.removeAttribute("style")})))}}return;case"zoom":sn(je)||je.setAttribute("display","none");var x=e.shiftKey?.5:2;return void W("zoomed",{x:Math.min(rt,f),y:Math.min(at,p),width:Math.abs(f-rt),height:Math.abs(p-at),factor:x});case"fhpath":st=0,lt={x:0,y:0},ct={x:0,y:0},ut={x:0,y:0},dt={x:0,y:0};var k=d.getAttribute("points"),A=k.indexOf(",");(h=A>=0?k.includes(",",A+1):k.includes(" ",k.indexOf(" ")+1))&&(d=N.smoothPolylineIntoPath(d));break;case"line":n=pr(d).attr(["x1","x2","y1","y2"]),h=n.x1!==n.x2||n.y1!==n.y2;break;case"foreignObject":case"square":case"rect":case"image":n=pr(d).attr(["width","height"]),h=n.width||n.height||"image"===we;break;case"circle":h="0"!==d.getAttribute("r");break;case"ellipse":n=pr(d).attr(["rx","ry"]),h=n.rx||n.ry;break;case"fhellipse":et.maxx-et.minx>0&&et.maxy-et.miny>0&&(d=C({element:"ellipse",curStyles:!0,attr:{cx:(et.minx+et.maxx)/2,cy:(et.miny+et.maxy)/2,rx:(et.maxx-et.minx)/2,ry:(et.maxy-et.miny)/2,id:q()}}),W("changed",[d]),h=!0);break;case"fhrect":et.maxx-et.minx>0&&et.maxy-et.miny>0&&(d=C({element:"rect",curStyles:!0,attr:{x:et.minx,y:et.miny,width:et.maxx-et.minx,height:et.maxy-et.miny,id:q()}}),W("changed",[d]),h=!0);break;case"text":h=!0,$e([d]),_t.start(d);break;case"path":d=null,be=!0;var E=N.mouseUp(e,d,i,s);d=E.element,h=E.keep;break;case"pathedit":h=!0,d=null,N.mouseUp(e);break;case"textedit":h=!1,d=null,_t.mouseUp(e,i,s);break;case"rotate":h=!0,d=null,we="select";var G=l.undoMgr.finishUndoableChange();G.isEmpty()||j(G),Qe(),W("changed",S)}var P=Ue("mouseUp",{event:e,mouse_x:i,mouse_y:s},!0);if(pr.each(P,(function(e,t){t&&(h=t.keep||h,d=t.element,be=t.started||be)})),h||sn(d)){if(!sn(d)){l.addedNew=!0;var I,T=.2;if(de.beginElement&&Number.parseFloat(d.getAttribute("opacity"))!==w.opacity){I=pr(de).clone().attr({to:w.opacity,dur:T}).appendTo(d);try{I[0].beginElement()}catch(e){}}else T=0;setTimeout((function(){I&&I.remove(),d.setAttribute("opacity",w.opacity),d.setAttribute("style","pointer-events:inherit"),rn(d),"path"===we?N.toEditMode(d):o.selectNew&&$e([d],!0),j(new mr(d)),W("changed",[d])}),1e3*T)}}else{for(g().releaseId(q()),d.remove(),d=null,r=e.target;r&&r.parentNode&&r.parentNode.parentNode&&"g"===r.parentNode.parentNode.tagName;)r=r.parentNode;"path"===we&>||!r||!r.parentNode||"selectorParentGroup"===r.parentNode.id||"svgcanvas"===r.id||"svgroot"===r.id||(l.setMode("select"),$e([r],!0))}xe=null}}})),pr(a).bind("mousewheel DOMMouseScroll",(function(e){if(e.shiftKey){e.preventDefault();var t=e.originalEvent;Ze=pr("#svgcontent g")[0].getScreenCTM().inverse();var n=pr("#workarea"),r=o.showRulers?16:0,a=Ae(t.pageX,t.pageY,Ze),i=n.width(),s=n.height(),c=i-15-r,u=s-15-r,d=c*Ze.a,h=u*Ze.d,f=n.offset(),p=f.left+r,g=f.top+r,m=t.wheelDelta?t.wheelDelta:t.detail?-t.detail:0;if(m){var y,_,b=Math.max(3/4,Math.min(4/3,m));b>1?(y=Math.ceil(c/d*b*100)/100,_=Math.ceil(u/h*b*100)/100):(y=Math.floor(c/d*b*100)/100,_=Math.floor(u/h*b*100)/100);var x=Math.min(y,_);if((x=Math.min(10,Math.max(.01,x)))!==v){b=x/v;var w=Ae(p,g,Ze),S={x:(a.x-(a.x-w.x)/b)*x-r+i/2,y:(a.y-(a.y-w.y)/b)*x-r+s/2};l.setZoom(x),pr("#zoom").val((100*x).toFixed(1)),W("updateCanvas",{center:!1,newCtr:S}),W("zoomDone")}}}}));var mt,_t=l.textActions=function(){var e,t,n,r,a,i,o,s,c,d,h=[];function f(e){var o=""===t.value;if(pr(t).focus(),!arguments.length)if(o)e=0;else{if(t.selectionEnd!==t.selectionStart)return;e=t.selectionEnd}var s=h[e];o||t.setSelectionRange(e,e),(n=tn("text_cursor"))||(n=document.createElementNS(y.SVG,"line"),nn(n,{id:"text_cursor",stroke:"#333","stroke-width":1}),n=tn("selectorParentGroup").appendChild(n)),a||(a=setInterval((function(){var e="none"===n.getAttribute("display");n.setAttribute("display",e?"inline":"none")}),600));var l=x(s.x,i.y),c=x(s.x,i.y+i.height);nn(n,{x1:l.x,y1:l.y,x2:c.x,y2:c.y,visibility:"visible",display:"inline"}),r&&r.setAttribute("d","")}function p(e,a,o){if(e!==a){o||t.setSelectionRange(e,a),(r=tn("text_selectblock"))||(r=document.createElementNS(y.SVG,"path"),nn(r,{id:"text_selectblock",fill:"green",opacity:.5,style:"pointer-events:none"}),tn("selectorParentGroup").append(r));var s=h[e],l=h[a];n.setAttribute("visibility","hidden");var c=x(s.x,i.y),u=x(s.x+(l.x-s.x),i.y),d=x(s.x,i.y+i.height),p=x(s.x+(l.x-s.x),i.y+i.height),g="M"+c.x+","+c.y+" L"+u.x+","+u.y+" "+p.x+","+p.y+" "+d.x+","+d.y+"z";nn(r,{d:g,display:"inline"})}else f(a)}function g(t,n){var r=u.createSVGPoint();if(r.x=t,r.y=n,1===h.length)return 0;var a=e.getCharNumAtPosition(r);a<0?(a=h.length-2,t<=h[0].x&&(a=0)):a>=h.length-2&&(a=h.length-2);var i=h[a];return t>i.x+i.width/2&&a++,a}function m(e,t){f(g(e,t))}function _(e,n,r){var a=t.selectionStart,i=g(e,n);p(Math.min(a,i),Math.max(a,i),!r)}function b(e,t){var n={x:e,y:t};if(n.x/=v,n.y/=v,o){var r=Ae(n.x,n.y,o.inverse());n.x=r.x,n.y=r.y}return n}function x(e,t){var n={x:e,y:t};if(o){var r=Ae(n.x,n.y,o);n.x=r.x,n.y=r.y}return n.x*=v,n.y*=v,n}function w(t){p(0,e.textContent.length),pr(this).unbind(t)}function k(t){if(d&&e){var n=Ae(t.pageX,t.pageY,Ze),r=b(n.x*v,n.y*v),a=g(r.x,r.y),i=e.textContent,o=i.substr(0,a).replace(/[a-z\d]+$/i,"").length,s=i.substr(a).match(/^[a-z\d]+/i);p(o,(s?s[0].length:0)+a),pr(t.target).click(w),setTimeout((function(){pr(t.target).unbind("click",w)}),300)}}return{select:function(t,n,r){e=t,_t.toEditMode(n,r)},start:function(t){e=t,_t.toEditMode()},mouseDown:function(e,n,r,a){var i=b(r,a);t.focus(),m(i.x,i.y),s=r,c=a},mouseMove:function(e,t){var n=b(e,t);_(n.x,n.y)},mouseUp:function(t,n,r){var a=b(n,r);_(a.x,a.y,!0),t.target!==e&&n<s+2&&n>s-2&&r<c+2&&r>c-2&&_t.toSelectMode(!0)},setCursor:f,toEditMode:function(t,n){if(d=!1,we="textedit",B.requestSelector(e).showGrips(!1),B.requestSelector(e),_t.init(),pr(e).css("cursor","text"),arguments.length){var r=b(t,n);m(r.x,r.y)}else f();setTimeout((function(){d=!0}),300)},toSelectMode:function(i){we="select",clearInterval(a),a=null,r&&pr(r).attr("display","none"),n&&pr(n).attr("visibility","hidden"),pr(e).css("cursor","move"),i&&(X(),pr(e).css("cursor","move"),W("selected",[e]),Q([e],!0)),e&&!e.textContent.length&&l.deleteSelectedElements(),pr(t).blur(),e=!1},setInputElem:function(e){t=e},clear:function(){"textedit"===we&&_t.toSelectMode()},init:function(n){if(e){var r,a;e.parentNode||(e=S[0],B.requestSelector(e).showGrips(!1));var s=e.textContent.length,c=e.getAttribute("transform");for(i=Dt(e),o=c?Te(e):null,(h=[]).length=s,t.focus(),pr(e).unbind("dblclick",k).dblclick(k),s||(a={x:i.x+i.width/2,width:0}),r=0;r<s;r++){var u=e.getStartPositionOfChar(r);if(a=e.getEndPositionOfChar(r),!O){var d=l.contentW*v;u.x-=d,a.x-=d,u.x/=v,a.x/=v}h[r]={x:u.x,y:i.y,width:a.x-u.x,height:i.height}}h.push({x:a.x,width:0}),p(t.selectionStart,t.selectionEnd,!0)}}}}(),bt=this.removeUnusedDefElems=function(){var e=d.getElementsByTagNameNS(y.SVG,"defs");if(!e||!e.length)return 0;var t,n,r=[],a=0,i=["fill","stroke","filter","marker-start","marker-mid","marker-end"],o=i.length,s=d.getElementsByTagNameNS(y.SVG,"*"),l=s.length;for(t=0;t<l;t++){var c=s[t];for(n=0;n<o;n++){var u=jt(c.getAttribute(i[n]));u&&r.push(u.substr(1))}var h=Vt(c);h&&h.startsWith("#")&&r.push(h.substr(1))}var f=pr(e).find("linearGradient, radialGradient, filter, marker, svg, symbol");for(t=f.length;t--;){var p=f[t],g=p.id;r.includes(g)||(ye[g]=p,p.remove(),a++)}return a};function Pt(){X();var e=[],t=[],n={feGaussianBlur:ne.exportNoBlur,foreignObject:ne.exportNoforeignObject,"[stroke-dasharray]":ne.exportNoDashArray},r=pr(d);return"font"in pr("<canvas>")[0].getContext("2d")||(n.text=ne.exportNoText),pr.each(n,(function(n,a){r.find(n).length&&(t.push(n),e.push(a))})),{issues:e,issueCodes:t}}this.svgCanvasToString=function(){for(;bt()>0;);N.clear(!0),pr.each(d.childNodes,(function(e,t){e&&8===t.nodeType&&t.data.includes("Created with")&&d.firstChild.before(t)})),b&&(Wn(),$e([b]));var e=[];pr(d).find("g:data(gsvg)").each((function(){for(var t=this.attributes,n=t.length,r=0;r<n;r++)"id"!==t[r].nodeName&&"style"!==t[r].nodeName||n--;if(n<=0){var a=this.firstChild;e.push(a),pr(this).replaceWith(a)}}));var t=this.svgToString(d,0);return e.length&&pr(e).each((function(){Ye(this)})),t},this.svgToString=function(e,t){var n=[],r=o.baseUnit,a=new RegExp("^-?[\\d\\.]+"+r+"$");if(e){rn(e);var i=f(e.attributes),s=e.childNodes;i.sort((function(e,t){return e.name>t.name?-1:1}));for(var l=0;l<t;l++)n.push(" ");if(n.push("<"),n.push(e.nodeName),"svgcontent"===e.id){var c=Xt();"px"!==r&&(c.w=se(c.w,r)+r,c.h=se(c.h,r)+r),n.push(' width="'+c.w+'" height="'+c.h+'" xmlns="'+y.SVG+'"');var u={};pr(e).find("*").andSelf().each((function(){var e=this.namespaceURI;e&&!u[e]&&L[e]&&"xmlns"!==L[e]&&"xml"!==L[e]&&(u[e]=!0,n.push(" xmlns:"+L[e]+'="'+e+'"')),pr.each(this.attributes,(function(e,t){var r=t.namespaceURI;r&&!u[r]&&"xmlns"!==L[r]&&"xml"!==L[r]&&(u[r]=!0,n.push(" xmlns:"+L[r]+'="'+r+'"'))}))}));for(var d=i.length,h=["width","height","xmlns","x","y","viewBox","id","overflow"];d--;){var p=i[d],g=At(p.value);p.nodeName.startsWith("xmlns:")||(""===g||h.includes(p.localName)||p.namespaceURI&&!L[p.namespaceURI]||(n.push(" "),n.push(p.nodeName),n.push('="'),n.push(g),n.push('"')))}}else{if("defs"===e.nodeName&&!e.firstChild)return"";for(var m=["-moz-math-font-style","_moz-math-font-style"],v=i.length-1;v>=0;v--){var _=i[v],b=At(_.value);if(!m.includes(_.localName)){if("null"===b){var x=_.localName.replace(/-[a-z]/g,(function(e){return e[1].toUpperCase()}));if(Object.prototype.hasOwnProperty.call(e.style,x))continue}if(""!==b){if(b.startsWith("pointer-events"))continue;if("class"===_.localName&&b.startsWith("se_"))continue;if(n.push(" "),"d"===_.localName&&(b=N.convertPath(e,!0)),isNaN(b)?a.test(b)&&(b=oe(b)+r):b=oe(b),pe.apply&&"image"===e.nodeName&&"href"===_.localName&&pe.images&&"embed"===pe.images){var w=fe[b];w&&(b=w)}_.namespaceURI&&_.namespaceURI!==y.SVG&&!L[_.namespaceURI]||(n.push(_.nodeName),n.push('="'),n.push(b),n.push('"'))}}}}if(e.hasChildNodes()){n.push(">"),t++;for(var S=!1,k=0;k<s.length;k++){var C=s.item(k);switch(C.nodeType){case 1:n.push("\n"),n.push(this.svgToString(C,t));break;case 3:var A=C.nodeValue.replace(/^\s+|\s+$/g,"");""!==A&&(S=!0,n.push(String(At(A))));break;case 4:n.push("\n"),n.push(new Array(t+1).join(" ")),n.push("<![CDATA["),n.push(C.nodeValue),n.push("]]>");break;case 8:n.push("\n"),n.push(new Array(t+1).join(" ")),n.push("\x3c!--"),n.push(C.data),n.push("--\x3e")}}if(t--,!S){n.push("\n");for(var E=0;E<t;E++)n.push(" ")}n.push("</"),n.push(e.nodeName),n.push(">")}else n.push("/>")}return n.join("")},this.embedImage=function(e){return new Promise((function(t,n){pr(new Image).load((function(r,a,i){if("error"!==a){var o=document.createElement("canvas");o.width=this.width,o.height=this.height,o.getContext("2d").drawImage(this,0,0);try{var s=";svgedit_url="+encodeURIComponent(e);s=o.toDataURL().replace(";base64",s+";base64"),fe[e]=s}catch(t){fe[e]=!1}_e=e,t(fe[e])}else n(new Error("Error loading image: "+i.status+" "+i.statusText))})).attr("src",e)}))},this.setGoodImage=function(e){_e=e},this.open=function(){},this.save=function(e){X(),e&&pr.extend(pe,e),pe.apply=!0;var t=this.svgCanvasToString();W("saved",t)},this.rasterExport=function(){var e=n(regeneratorRuntime.mark((function e(t,n,r){var a,i,s,c,u,d,h,f,p,g=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=g.length>3&&void 0!==g[3]?g[3]:{},s="image/"+(i="ICO"===t?"BMP":t||"PNG").toLowerCase(),c=Pt(),u=c.issues,d=c.issueCodes,h=this.svgCanvasToString(),mt){e.next=10;break}return e.next=8,pn(o.canvgPath+"canvg.js",{global:"canvg"});case 8:f=e.sent,mt=f.canvg;case 10:return pr("#export_canvas").length||pr("<canvas>",{id:"export_canvas"}).hide().appendTo("body"),(p=pr("#export_canvas")[0]).width=l.contentW,p.height=l.contentH,e.next=16,mt(p,h);case 16:return e.abrupt("return",new Promise((function(e,o){var l,c=i.toLowerCase(),f=n?p.toDataURL("image/"+c,n):p.toDataURL("image/"+c);function g(){var i={datauri:f,bloburl:l,svg:h,issues:u,issueCodes:d,type:t,mimeType:s,quality:n,exportWindowName:r};a.avoidEvent||W("exported",i),e(i)}p.toBlob?p.toBlob((function(e){l=Tt(e),g()}),s,n):(l=It(f),g())})));case 17:case"end":return e.stop()}}),e,this)})));return function(t,n,r){return e.apply(this,arguments)}}(),this.exportPDF=function(){var e=n(regeneratorRuntime.mark((function e(t){var n,r,a,i,s,l,c,u,d,h,f,p,g=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=g.length>1&&void 0!==g[1]?g[1]:H()?"save":void 0,window.jsPDF){e.next=7;break}return e.next=4,mn(["jspdf/underscore-min.js","../../svgedit-myfix/editor/jspdf/jspdf-1.0.150.debug.js"]);case 4:return r=!("svgEditor"in window)||!window.svgEditor||!1!==window.svgEditor.modules,e.next=7,mn(o.jspdfPath+"jspdf.plugin.svgToPdf.js",{type:r?"module":"text/javascript"});case 7:return a=Xt(),i=a.w>a.h?"landscape":"portrait",s="pt",l=jsPDF({orientation:i,unit:s,format:[a.w,a.h]}),c=Qt(),l.setProperties({title:c}),u=Pt(),d=u.issues,h=u.issueCodes,f=this.svgCanvasToString(),l.addSVG(f,0,0),(p={svg:f,issues:d,issueCodes:h,exportWindowName:t,outputType:n=n||"dataurlstring"}).output=l.output(n,"save"===n?t||"svg.pdf":void 0),W("exportedPDF",p),e.abrupt("return",p);case 21:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}(),this.getSvgString=function(){return pe.apply=!1,this.svgCanvasToString()},this.randomizeIds=function(e){arguments.length>0&&!1===e?On(!1,g()):On(!0,g())};var Nt=this.uniquifyElems=function(e){var t={},n=["filter","linearGradient","pattern","radialGradient","symbol","textPath","use"];for(var r in Ot(e,(function(e){if(1===e.nodeType){e.id&&(e.id in t||(t[e.id]={elem:null,attrs:[],hrefs:[]}),t[e.id].elem=e),pr.each(le,(function(n,r){var a=e.getAttributeNode(r);if(a){var i=jt(a.value),o=i?i.substr(1):null;o&&(o in t||(t[o]={elem:null,attrs:[],hrefs:[]}),t[o].attrs.push(a))}}));var r=Vt(e);if(r&&n.includes(e.nodeName)){var a=r.substr(1);a&&(a in t||(t[a]={elem:null,attrs:[],hrefs:[]}),t[a].hrefs.push(e))}}})),t)if(r){var a=t[r].elem;if(a){var i=z();a.id=i;for(var o=t[r].attrs,s=o.length;s--;){var l=o[s];l.ownerElement.setAttribute(l.name,"url(#"+i+")")}for(var c=t[r].hrefs,u=c.length;u--;){var d=c[u];Rt(d,"#"+i)}}}},Lt=this.setUseData=function(e){var t=pr(e);"use"!==e.tagName&&(t=t.find("use")),t.each((function(){var e=Vt(this).substr(1),t=tn(e);t&&(pr(this).data("ref",t),"symbol"!==t.tagName&&"svg"!==t.tagName||pr(this).data("symbol",t).data("ref",t))}))},Ft=this.convertGradients=function(e){var t=pr(e).find("linearGradient, radialGradient");!t.length&&U()&&(t=pr(e).find("*").filter((function(){return this.tagName.includes("Gradient")}))),t.each((function(){if("userSpaceOnUse"===pr(this).attr("gradientUnits")){var e=pr(d).find('[fill="url(#'+this.id+')"],[stroke="url(#'+this.id+')"]');if(!e.length)return;var t=Dt(e[0]);if(!t)return;if("linearGradient"===this.tagName){var n=pr(this).attr(["x1","y1","x2","y2"]),r=this.gradientTransform.baseVal;if(r&&r.numberOfItems>0){var a=Ie(r).matrix,i=Ae(n.x1,n.y1,a),o=Ae(n.x2,n.y2,a);n.x1=i.x,n.y1=i.y,n.x2=o.x,n.y2=o.y,this.removeAttribute("gradientTransform")}pr(this).attr({x1:(n.x1-t.x)/t.width,y1:(n.y1-t.y)/t.height,x2:(n.x2-t.x)/t.width,y2:(n.y2-t.y)/t.height}),this.removeAttribute("gradientUnits")}}}))},Ht=this.convertToGroup=function(e){e||(e=S[0]);var t,n=pr(e),r=new _r;if(n.data("gsvg")){var a=e.firstChild,i=pr(a).attr(["x","y"]);pr(e.firstChild.firstChild).unwrap(),pr(e).removeData("gsvg");var o=ee(e),s=u.createSVGTransform();s.setTranslate(i.x,i.y),o.appendItem(s),cr(e),W("selected",[e])}else if(n.data("symbol")){e=n.data("symbol"),t=n.attr("transform");var l=n.attr(["x","y"]),h=e.getAttribute("viewBox");if(h){var f=h.split(" ");l.x-=Number(f[0]),l.y-=Number(f[1])}t+=" translate("+(l.x||0)+","+(l.y||0)+")";var p=n.prev();r.addSubCommand(new vr(n[0],n[0].nextSibling,n[0].parentNode)),n.remove();var g,m=pr(d).find("use:data(symbol)").length,v=c.createElementNS(y.SVG,"g"),_=e.childNodes;for(g=0;g<_.length;g++)v.append(_[g].cloneNode(!0));if(F()){var b=pr(Bt()).children("linearGradient,radialGradient,pattern").clone();pr(v).append(b)}t&&v.setAttribute("transform",t);var x=e.parentNode;if(Nt(v),F()&&pr(Bt()).append(pr(v).find("linearGradient,radialGradient,pattern")),v.id=z(),p.after(v),x){if(!m){var w=e.nextSibling;e.remove(),r.addSubCommand(new vr(e,w,x))}r.addSubCommand(new mr(v))}Lt(v),F()?Ft(Bt()):Ft(v),function(e,t){if(e&&1===e.nodeType){for(var n=e.childNodes.length;n--;)Ot(e.childNodes.item(n),t);t(e)}}(v,(function(e){try{cr(e)}catch(e){console.log(e)}})),pr(v).find(re).each((function(){this.id||(this.id=z())})),$e([v]);var k=fn(v,!0);k&&r.addSubCommand(k),j(r)}else console.log("Unexpected element to ungroup:",e)};this.setSvgString=function(e,t){try{var n=Mt(e);if(n.firstElementChild&&n.firstElementChild.namespaceURI!==y.SVG)return!1;this.prepareSvg(n);var r=new _r("Change Source"),a=d.nextSibling;d.remove();var i=d;r.addSubCommand(new vr(i,a,u)),d=c.adoptNode?c.adoptNode(n.documentElement):c.importNode(n.documentElement,!0),u.append(d);var s=pr(d);l.current_drawing_=new Mn(d,p);var h=g().getNonce();h?W("setnonce",h):W("unsetnonce"),s.find("image").each((function(){var e=this;on(e);var t=Vt(this);if(t){if(t.startsWith("data:")){var n=t.match(/svgedit_url=(.*?);/);if(n){var r=decodeURIComponent(n[1]);pr(new Image).load((function(){e.setAttributeNS(y.XLINK,"xlink:href",r)})).attr("src",r)}}l.embedImage(t)}})),s.find("svg").each((function(){if(!pr(this).closest("defs").length){Nt(this);var e=this.parentNode;1===e.childNodes.length&&"g"===e.nodeName?(pr(e).data("gsvg",this),e.id=e.id||z()):Ye(this)}})),F()&&s.find("linearGradient, radialGradient, pattern").appendTo(Bt()),Lt(s),Ft(s[0]);var f={id:"svgcontent",overflow:o.show_outside_canvas?"visible":"hidden"},m=!1;if(s.attr("viewBox")){var _=s.attr("viewBox").split(" ");f.width=_[2],f.height=_[3]}else pr.each(["width","height"],(function(e,t){var n=s.attr(t)||"100%";"%"===String(n).substr(-1)?m=!0:f[t]=ce(t,n)}));if(jn(),s.children().find(re).each((function(){this.id||(this.id=z())})),m){var b=Zt();f.width=b.width+b.x,f.height=b.height+b.y}f.width<=0&&(f.width=100),f.height<=0&&(f.height=100),s.attr(f),this.contentW=f.width,this.contentH=f.height,r.addSubCommand(new mr(d));var x=s.attr(["width","height"]);r.addSubCommand(new yr(u,x)),v=1,Z={},X(),Fe={},u.append(B.selectorParentGroup),t||j(r),W("changed",[d])}catch(e){return console.log(e),!1}return!0},this.importSvgString=function(e){var t,n,r;try{var a=Et(e.length+e).substr(0,32),i=!1;ge[a]&&pr(ge[a].symbol).parents("#svgroot").length&&(i=!0);var o,s=new _r("Import Image");if(i)o=ge[a].symbol,n=ge[a].xform;else{var l,u=Mt(e);this.prepareSvg(u),l=c.adoptNode?c.adoptNode(u.documentElement):c.importNode(u.documentElement,!0),Nt(l);var h=ce("width",l.getAttribute("width")),f=ce("height",l.getAttribute("height")),p=l.getAttribute("viewBox"),v=p?p.split(" "):[0,0,h,f];for(t=0;t<4;++t)v[t]=Number(v[t]);var _=Number(d.getAttribute("height"));n="translate(0) "+(n=f>h?"scale("+_/3/v[3]+")":"scale("+_/3/v[2]+")")+" translate(0)",o=c.createElementNS(y.SVG,"symbol");var x=Bt();for(F()&&pr(l).find("linearGradient, radialGradient, pattern").appendTo(x);l.firstChild;){var w=l.firstChild;o.append(w)}var S,k=m(l.attributes);try{for(k.s();!(S=k.n()).done;){var C=S.value;o.setAttribute(C.nodeName,C.value)}}catch(e){k.e(e)}finally{k.f()}o.id=z(),ge[a]={symbol:o,xform:n},Bt().append(o),s.addSubCommand(new mr(o))}(r=c.createElementNS(y.SVG,"use")).id=z(),Rt(r,"#"+o.id),(b||g().getCurrentLayer()).append(r),s.addSubCommand(new mr(r)),X(),r.setAttribute("transform",n),cr(r),pr(r).data("symbol",o).data("ref",o),Q([r]),j(s),W("changed",[d])}catch(e){return console.log(e),null}return r};var Wt={identifyLayers:jn,createLayer:Vn,cloneLayer:Rn,deleteCurrentLayer:Bn,setCurrentLayer:Un,renameCurrentLayer:Fn,setCurrentLayerPosition:Dn,setLayerVisibility:Hn,moveSelectedToLayer:zn,mergeLayer:qn,mergeAllLayers:Yn,leaveContext:Wn,setContext:Xn};Object.entries(Wt).forEach((function(e){var t=h(e,2),n=t[0],r=t[1];l[n]=r})),function(e){Ln=e}({pathActions:N,getCurrentGroup:function(){return b},setCurrentGroup:function(e){b=e},getSelectedElements:P,getSVGContent:G,undoMgr:M,elData:ue,getCurrentDrawing:g,clearSelection:X,call:W,addCommandToHistory:j,changeSVGContent:function(){W("changed",[d])}}),this.clear=function(){N.clear(),X(),l.clearSvgContentElement(),l.current_drawing_=new Mn(d),l.createLayer("Layer 1"),l.undoMgr.resetUndoStack(),B.initGroup(),je=B.getRubberBandBox(),W("cleared")},this.linkControlPoints=N.linkControlPoints,this.getContentElem=function(){return d},this.getRootElem=function(){return u};var Xt=this.getResolution=function(){return{w:d.getAttribute("width")/v,h:d.getAttribute("height")/v,zoom:v}};this.getSnapToGrid=function(){return o.gridSnapping},this.getVersion=function(){return"svgcanvas.js ($Rev$)"},this.setUiStrings=function(e){Object.assign(ne,e.notification),pr=_n(pr,e.common),Re(e)},this.setConfig=function(e){Object.assign(o,e)},this.getTitle=function(e){if(e=e||S[0]){var t,n=m((e=pr(e).data("gsvg")||pr(e).data("symbol")||e).childNodes);try{for(n.s();!(t=n.n()).done;){var r=t.value;if("title"===r.nodeName)return r.textContent}}catch(e){n.e(e)}finally{n.f()}return""}},this.setGroupTitle=function(e){var t=S[0];t=pr(t).data("gsvg")||t;var n,r=pr(t).children("title"),a=new _r("Set Label");if(e.length)r.length?(n=r[0],a.addSubCommand(new yr(n,{"#text":n.textContent})),n.textContent=e):((n=c.createElementNS(y.SVG,"title")).textContent=e,pr(t).prepend(n),a.addSubCommand(new mr(n)));else{var i=r.nextSibling;a.addSubCommand(new vr(r[0],i,t)),r.remove()}j(a)};var Qt=this.getDocumentTitle=function(){return l.getTitle(d)};this.setDocumentTitle=function(e){var t,n=d.childNodes,r=!1,a="",i=new _r("Change Image Title"),o=m(n);try{for(o.s();!(t=o.n()).done;){var s=t.value;if("title"===s.nodeName){a=(r=s).textContent;break}}}catch(e){o.e(e)}finally{o.f()}r||(r=c.createElementNS(y.SVG,"title"),d.insertBefore(r,d.firstChild)),e.length?r.textContent=e:r.remove(),i.addSubCommand(new yr(r,{"#text":a})),j(i)},this.getEditorNS=function(e){return e&&d.setAttribute("xmlns:se",y.SE),y.SE},this.setResolution=function(e,t){var n,r=Xt(),a=r.w,i=r.h;if("fit"===e){var o=Zt();if(!o)return!1;n=new _r("Fit Canvas to Content");var s=Kt();Q(s);var c=[],u=[];pr.each(s,(function(e,t){c.push(-1*o.x),u.push(-1*o.y)}));var h=l.moveSelectedElements(c,u,!0);n.addSubCommand(h),X(),e=Math.round(o.width),t=Math.round(o.height)}return e===a&&t===i||(n||(n=new _r("Change Image Dimensions")),e=ce("width",e),t=ce("height",t),d.setAttribute("width",e),d.setAttribute("height",t),this.contentW=e,this.contentH=t,n.addSubCommand(new yr(d,{width:a,height:i})),d.setAttribute("viewBox",[0,0,e/v,t/v].join(" ")),n.addSubCommand(new yr(d,{viewBox:["0 0",a,i].join(" ")})),j(n),W("changed",[d])),!0},this.getOffset=function(){return pr(d).attr(["x","y"])},this.setBBoxZoom=function(t,n,r){var a,i=.85,o=function(e){if(!e)return!1;var t=Math.round(n/e.width*100*i)/100,a=Math.round(r/e.height*100*i)/100,o=Math.min(t,a);return l.setZoom(o),{zoom:o,bbox:e}};if("object"===e(t)){if(0===(a=t).width||0===a.height){var s=a.zoom?a.zoom:v*a.factor;return l.setZoom(s),{zoom:v,bbox:a}}return o(a)}switch(t){case"selection":if(!S[0])return;var c=pr.map(S,(function(e){if(e)return e}));a=Zt(c);break;case"canvas":var u=Xt();i=.95,a={width:u.w,height:u.h,x:0,y:0};break;case"content":a=Zt();break;case"layer":a=Zt(Kt(g().getCurrentLayer()));break;default:return}return o(a)},this.setZoom=function(e){var t=Xt();d.setAttribute("viewBox","0 0 "+t.w/e+" "+t.h/e),v=e,pr.each(S,(function(e,t){t&&B.requestSelector(t).resize()})),N.zoomChange(),Ue("zoomChanged",e)},this.getMode=function(){return we},this.setMode=function(e){N.clear(!0),_t.clear(),Ce=S[0]&&"text"===S[0].nodeName?me:w,we=e},this.getColor=function(e){return Ce[e]},this.setColor=function(e,t,n){w[e]=t,Ce[e+"_paint"]={type:"solidColor"};var r=[];function a(e){"g"!==e.nodeName&&r.push(e)}for(var i=S.length;i--;){var o=S[i];o&&("g"===o.tagName?Ot(o,a):"fill"===e?"polyline"!==o.tagName&&"line"!==o.tagName&&r.push(o):r.push(o))}r.length>0&&(n?cn(e,t,r):(un(e,t,r),W("changed",r)))};var $t=this.setGradient=function(e){if(Ce[e+"_paint"]&&"solidColor"!==Ce[e+"_paint"].type){var t=l[e+"Grad"],n=ln(t),r=Bt();n?t=n:(t=r.appendChild(c.importNode(t,!0))).id=z(),l.setColor(e,"url(#"+t.id+")")}},ln=function(e){for(var t=Bt(),n=pr(t).find("linearGradient, radialGradient"),r=n.length,a=["r","cx","cy","fx","fy"];r--;){var i=n[r];if("linearGradient"===e.tagName){if(e.getAttribute("x1")!==i.getAttribute("x1")||e.getAttribute("y1")!==i.getAttribute("y1")||e.getAttribute("x2")!==i.getAttribute("x2")||e.getAttribute("y2")!==i.getAttribute("y2"))continue}else if("continue"===function(){var t=pr(e).attr(a),n=pr(i).attr(a),r=!1;if(pr.each(a,(function(e,a){t[a]!==n[a]&&(r=!0)})),r)return"continue"}())continue;var o=e.getElementsByTagNameNS(y.SVG,"stop"),s=i.getElementsByTagNameNS(y.SVG,"stop");if(o.length===s.length){for(var l=o.length;l--;){var c=o[l],u=s[l];if(c.getAttribute("offset")!==u.getAttribute("offset")||c.getAttribute("stop-opacity")!==u.getAttribute("stop-opacity")||c.getAttribute("stop-color")!==u.getAttribute("stop-color"))break}if(-1===l)return i}}return null};this.setPaint=function(e,t){var n=new pr.jGraduate.Paint(t);switch(this.setPaintOpacity(e,n.alpha/100,!0),Ce[e+"_paint"]=n,n.type){case"solidColor":this.setColor(e,"none"!==n.solidColor?"#"+n.solidColor:"none");break;case"linearGradient":case"radialGradient":l[e+"Grad"]=n[n.type],$t(e)}},this.setStrokePaint=function(e){this.setPaint("stroke",e)},this.setFillPaint=function(e){this.setPaint("fill",e)},this.getStrokeWidth=function(){return Ce.stroke_width},this.setStrokeWidth=function(e){if(0===e&&["line","path"].includes(we))l.setStrokeWidth(1);else{Ce.stroke_width=e;for(var t=[],n=S.length;n--;){var r=S[n];r&&("g"===r.tagName?Ot(r,a):t.push(r))}t.length>0&&(un("stroke-width",e,t),W("changed",S))}function a(e){"g"!==e.nodeName&&t.push(e)}},this.setStrokeAttr=function(e,t){w[e.replace("-","_")]=t;for(var n=[],r=S.length;r--;){var a=S[r];a&&("g"===a.tagName?Ot(a,(function(e){"g"!==e.nodeName&&n.push(e)})):n.push(a))}n.length>0&&(un(e,t,n),W("changed",S))},this.getStyle=function(){return w},this.getOpacity=J,this.setOpacity=function(e){w.opacity=e,un("opacity",e)},this.getFillOpacity=function(){return w.fill_opacity},this.getStrokeOpacity=function(){return w.stroke_opacity},this.setPaintOpacity=function(e,t,n){w[e+"_opacity"]=t,n?cn(e+"-opacity",t):un(e+"-opacity",t)},this.getPaintOpacity=function(e){return"fill"===e?this.getFillOpacity():this.getStrokeOpacity()},this.getBlur=function(e){var t=0;if(e&&e.getAttribute("filter")){var n=tn(e.id+"_blur");n&&(t=n.firstChild.getAttribute("stdDeviation"))}return t},function(){var e=null,t=null,n=!1;function r(){var n=l.undoMgr.finishUndoableChange();e.addSubCommand(n),j(e),e=null,t=null}l.setBlurNoUndo=function(e){if(t)if(0===e)cn("filter",""),n=!0;else{var r=S[0];n&&cn("filter","url(#"+r.id+"_blur)"),U()&&(r.removeAttribute("filter"),r.setAttribute("filter","url(#"+r.id+"_blur)")),cn("stdDeviation",e,[t.firstChild]),l.setBlurOffsets(t,e)}else l.setBlur(e)},l.setBlurOffsets=function(e,t){t>3?nn(e,{x:"-50%",y:"-50%",width:"200%",height:"200%"}):U()||(e.removeAttribute("x"),e.removeAttribute("y"),e.removeAttribute("width"),e.removeAttribute("height"))},l.setBlur=function(n,a){if(e)r();else{var i=S[0],o=i.id;t=tn(o+"_blur"),n-=0;var s=new _r;if(t)0===n&&(t=null);else{var c=C({element:"feGaussianBlur",attr:{in:"SourceGraphic",stdDeviation:n}});(t=C({element:"filter",attr:{id:o+"_blur"}})).append(c),Bt().append(t),s.addSubCommand(new mr(t))}var u={filter:i.getAttribute("filter")};if(0===n)return i.removeAttribute("filter"),void s.addSubCommand(new yr(i,u));un("filter","url(#"+o+"_blur)"),s.addSubCommand(new yr(i,u)),l.setBlurOffsets(t,n),e=s,l.undoMgr.beginUndoableChange("stdDeviation",[t?t.firstChild:null]),a&&(l.setBlurNoUndo(n),r())}}}(),this.getBold=function(){var e=S[0];return!(sn(e)||"text"!==e.tagName||!sn(S[1]))&&"bold"===e.getAttribute("font-weight")},this.setBold=function(e){var t=S[0];!sn(t)&&"text"===t.tagName&&sn(S[1])&&un("font-weight",e?"bold":"normal"),S[0].textContent||_t.setCursor()},this.getItalic=function(){var e=S[0];return!(sn(e)||"text"!==e.tagName||!sn(S[1]))&&"italic"===e.getAttribute("font-style")},this.setItalic=function(e){var t=S[0];!sn(t)&&"text"===t.tagName&&sn(S[1])&&un("font-style",e?"italic":"normal"),S[0].textContent||_t.setCursor()},this.getFontFamily=function(){return me.font_family},this.setFontFamily=function(e){me.font_family=e,un("font-family",e),S[0]&&!S[0].textContent&&_t.setCursor()},this.setFontColor=function(e){me.fill=e,un("fill",e)},this.getFontColor=function(){return me.fill},this.getFontSize=function(){return me.font_size},this.setFontSize=function(e){me.font_size=e,un("font-size",e),S[0].textContent||_t.setCursor()},this.getText=function(){var e=S[0];return sn(e)?"":e.textContent},this.setTextContent=function(e){un("#text",e),_t.init(e),_t.setCursor()},this.setImageURL=function(e){var t=S[0];if(t){var n=pr(t).attr(["width","height"]),r=!n.width||!n.height,a=Vt(t);if(a!==e||r){var i=new _r("Change Image URL");Rt(t,e),i.addSubCommand(new yr(t,{"#href":a})),pr(new Image).load((function(){var e=pr(t).attr(["width","height"]);pr(t).attr({width:this.width,height:this.height}),B.requestSelector(t).resize(),i.addSubCommand(new yr(t,e)),j(i),W("changed",[t])})).attr("src",e)}}},this.setLinkURL=function(e){var t=S[0];if(t){if("a"!==t.tagName){var n=pr(t).parents("a");if(!n.length)return;t=n[0]}var r=Vt(t);if(r!==e){var a=new _r("Change Link URL");Rt(t,e),a.addSubCommand(new yr(t,{"#href":r})),j(a)}}},this.setRectRadius=function(e){var t=S[0];if(!sn(t)&&"rect"===t.tagName){var n=t.getAttribute("rx");n!==String(e)&&(t.setAttribute("rx",e),t.setAttribute("ry",e),j(new yr(t,{rx:n,ry:n},"Radius")),W("changed",[t]))}},this.makeHyperlink=function(e){l.groupSelectedElements("a",e)},this.removeHyperlink=function(){l.ungroupSelectedElement()},this.setSegType=function(e){N.setSegType(e)},this.convertToPath=function(e,t){if(!sn(e))return t?Yt(e,C,N):function(e,t,n,r,a,i,o,s){var l=new o.BatchCommand("Convert element to Path"),c=n({element:"path",attr:t=yt.extend({},t,qt(e))}),u=e.getAttribute("transform");u&&c.setAttribute("transform",u);var d=e.id,h=e.parentNode;e.nextSibling?e.before(c):h.append(c);var f=zt(e);if(f){if(c.setAttribute("d",f),u){var p=ee(c);Pe(p)&&r.resetOrientation(c)}var g=e.nextSibling;return l.addSubCommand(new o.RemoveElementCommand(e,g,parent)),l.addSubCommand(new o.InsertElementCommand(c)),a(),e.remove(),c.setAttribute("id",d),c.removeAttribute("visibility"),i([c],!0),s(l),c}return c.remove(),null}(e,{fill:w.fill,"fill-opacity":w.fill_opacity,stroke:w.stroke,"stroke-width":w.stroke_width,"stroke-dasharray":w.stroke_dasharray,"stroke-linejoin":w.stroke_linejoin,"stroke-linecap":w.stroke_linecap,"stroke-opacity":w.stroke_opacity,opacity:w.opacity,visibility:"hidden"},C,N,X,Q,ke,j);var n=S;pr.each(n,(function(e,t){t&&l.convertToPath(t)}))};var cn=function(e,t,n){"pathedit"===we&&N.moveNode(e,t);for(var r=(n=n||S).length,a=["g","polyline","path"],i=function(){var i=n[r];if(sn(i))return"continue";if(("x"===e||"y"===e)&&a.includes(i.tagName)){var o=Zt([i]),s="x"===e?t-o.x:0,c="y"===e?t-o.y:0;return l.moveSelectedElements(s*v,c*v,!0),"continue"}var d="#text"===e?i.textContent:i.getAttribute(e);if(sn(d)&&(d=""),d!==String(t)){"#text"===e?(i.textContent=t,/rotate/.test(i.getAttribute("transform"))&&(i=Xe(i))):"#href"===e?Rt(i,t):i.setAttribute(e,t),"textedit"===we&&"#text"!==e&&i.textContent.length&&_t.toSelectMode(i),F()&&"text"===i.nodeName&&/rotate/.test(i.getAttribute("transform"))&&(String(t).startsWith("url")||["font-size","font-family","x","y"].includes(e)&&i.textContent)&&(i=Xe(i)),S.includes(i)&&setTimeout((function(){i.parentNode&&B.requestSelector(i).resize()}),0);var h=Jt(i);if(0!==h&&"transform"!==e)for(var f=ee(i),p=f.numberOfItems;p--;){if(4===f.getItem(p).type){f.removeItem(p);var g=Dt(i),m=Ae(g.x+g.width/2,g.y+g.height/2,Ie(f).matrix),y=m.x,_=m.y,b=u.createSVGTransform();b.setRotate(h,y,_),f.insertItemBefore(b,p);break}}}};r--;)i()},un=this.changeSelectedAttribute=function(e,t,n){n=n||S,l.undoMgr.beginUndoableChange(e,n),cn(e,t,n);var r=l.undoMgr.finishUndoableChange();r.isEmpty()||j(r)};this.deleteSelectedElements=function(){for(var e=new _r("Delete Elements"),t=S.length,n=[],r=0;r<t;++r){var a=S[r];if(sn(a))break;var i=a.parentNode,o=a;B.releaseSelector(o),ot(o.id),"a"===i.tagName&&1===i.childNodes.length&&(o=i,i=i.parentNode);var s=o.nextSibling;o.remove();var l=o;n.push(a),e.addSubCommand(new vr(l,s,i))}S=[],e.isEmpty()||j(e),W("changed",n),X()},this.cutSelectedElements=function(){l.copySelectedElements(),l.deleteSelectedElements()};var dn="svgedit_clipboard";function hn(){var e=sessionStorage.getItem(dn);localStorage.setItem(dn,e),setTimeout((function(){localStorage.removeItem(dn)}),1)}window.addEventListener("storage",(function(e){e.newValue&&(e.key===dn+"_startup"?(localStorage.removeItem(dn+"_startup"),hn()):e.key===dn&&sessionStorage.setItem(dn,e.newValue))}),!1),localStorage.setItem(dn+"_startup",Math.random()),this.copySelectedElements=function(){var e=JSON.stringify(S.map((function(e){return k(e)})));sessionStorage.setItem(dn,e),hn();var t=pr("#cmenu_canvas");t.enableContextMenuItems&&t.enableContextMenuItems("#paste,#paste_in_place")},this.pasteElements=function(e,t,n){var r=JSON.parse(sessionStorage.getItem(dn));if(r){var a=r.length;if(a){var i=[],o=new _r("Paste elements"),s={};for(r.forEach((function e(t){t.attr&&t.attr.id&&(s[t.attr.id]=z(),t.attr.id=s[t.attr.id]),t.children&&t.children.forEach(e)})),Ue("IDsUpdated",{elems:r,changes:s},!0).forEach((function(e){e&&"remove"in e&&e.remove.forEach((function(e){r=r.filter((function(t){return t.attr.id!==e}))}))}));a--;){var c=r[a];if(c){var u=C(c);i.push(u),o.addSubCommand(new mr(u)),he(u)}}if($e(i),"in_place"!==e){var d,h;e?"point"===e&&(d=t,h=n):(d=Be.x,h=Be.y);var f=Zt(i),p=d-(f.x+f.width/2),g=h-(f.y+f.height/2),m=[],v=[];pr.each(i,(function(e,t){m.push(p),v.push(g)}));var y=l.moveSelectedElements(m,v,!1);y&&o.addSubCommand(y)}j(o),W("changed",i)}}},this.groupSelectedElements=function(e,t){e||(e="g");var n,r="";switch(e){case"a":r="Make hyperlink",n=t||"";break;default:e="g",r="Group Elements"}var a=new _r(r),i=C({element:e,attr:{id:z()}});"a"===e&&Rt(i,n),a.addSubCommand(new mr(i));for(var o=S.length;o--;){var s=S[o];if(!sn(s)){"a"===s.parentNode.tagName&&1===s.parentNode.childNodes.length&&(s=s.parentNode);var l=s.nextSibling,c=s.parentNode;i.append(s),a.addSubCommand(new gr(s,l,c))}}a.isEmpty()||j(a),$e([i],!0)};var fn=this.pushGroupProperties=function(e,t){for(var n,r,a,i=e.childNodes,o=i.length,s=e.getAttribute("transform"),c=ee(e),d=Ie(c).matrix,h=new _r("Push group properties"),f=Jt(e),p=pr(e).attr(["filter","opacity"]),m=g(),v=0;v<o;v++){var y=i[v];if(1===y.nodeType){if(null!==p.opacity&&1!==p.opacity){var _=Math.round((y.getAttribute("opacity")||1)*p.opacity*100)/100;un("opacity",_,[y])}if(p.filter){var b=this.getBlur(y),x=b;r||(r=this.getBlur(e)),b?b=Number(r)+Number(b):0===b&&(b=r),x?n=en(y.getAttribute("filter")):n?(n=m.copyElem(n),Bt().append(n)):n=en(p.filter);var w="feGaussianBlur"===n.firstChild.tagName?"blur":"filter";n.id=y.id+"_"+w,un("filter","url(#"+n.id+")",[y]),b&&(un("stdDeviation",b,[n.firstChild]),l.setBlurOffsets(n,b))}var S=ee(y);if(y.tagName.includes("Gradient")&&(S=null),S&&"defs"!==y.tagName&&c.numberOfItems){if(f&&1===c.numberOfItems){var k=c.getItem(0).matrix,C=u.createSVGMatrix(),A=Jt(y);A&&(C=S.getItem(0).matrix);var E=Dt(y),G=Ie(S).matrix,P=Ae(E.x+E.width/2,E.y+E.height/2,G),N=f+A,I=u.createSVGTransform();I.setRotate(N,P.x,P.y);var T=Ge(k,C,I.matrix.inverse());if(A&&S.removeItem(0),N&&(S.numberOfItems?S.insertItemBefore(I,0):S.appendItem(I)),T.e||T.f){var L=u.createSVGTransform();L.setTranslate(T.e,T.f),S.numberOfItems?S.insertItemBefore(L,0):S.appendItem(L)}}else{var M=y.getAttribute("transform");(a={}).transform=M||"";var O=u.createSVGTransform(),j=Ie(S).matrix,V=j.inverse(),R=Ge(V,d,j);O.setMatrix(R),S.appendItem(O)}var B=cr(y);B&&h.addSubCommand(B)}}}if(s&&((a={}).transform=s,e.setAttribute("transform",""),e.removeAttribute("transform"),h.addSubCommand(new yr(e,a))),t&&!h.isEmpty())return h};this.ungroupSelectedElement=function(){var e=S[0];if(e)if(pr(e).data("gsvg")||pr(e).data("symbol"))Ht(e);else{if("use"===e.tagName){var t=tn(Vt(e).substr(1));return pr(e).data("symbol",t).data("ref",t),void Ht(e)}var n=pr(e).parents("a");if(n.length&&(e=n[0]),"g"===e.tagName||"a"===e.tagName){var r=new _r("Ungroup Elements"),a=fn(e,!0);a&&r.addSubCommand(a);for(var i=e.parentNode,o=e.nextSibling,s=new Array(e.childNodes.length),l=0;e.firstChild;){var c=e.firstChild,u=c.nextSibling,d=c.parentNode;if("title"!==c.tagName)o?o.before(c):e.after(c),s[l++]=c,r.addSubCommand(new gr(c,u,d));else{var h=c.nextSibling;r.addSubCommand(new vr(c,h,d)),c.remove()}}X();var f=e.nextSibling;e.remove(),r.addSubCommand(new vr(e,f,i)),r.isEmpty()||j(r),Q(s)}}},this.moveToTopSelectedElement=function(){var e=h(S,1)[0];if(!sn(e)){var t=e,n=t.parentNode,r=t.nextSibling;r!==(t=t.parentNode.appendChild(t)).nextSibling&&(j(new gr(t,r,n,"top")),W("changed",[t]))}},this.moveToBottomSelectedElement=function(){var e=h(S,1)[0];if(!sn(e)){var t=e,n=t.parentNode,r=t.nextSibling,a=t.parentNode.firstChild;"title"===a.tagName&&(a=a.nextSibling),"defs"===a.tagName&&(a=a.nextSibling),r!==(t=t.parentNode.insertBefore(t,a)).nextSibling&&(j(new gr(t,r,n,"bottom")),W("changed",[t]))}},this.moveUpDownSelected=function(e){var t=S[0];if(t){var n,r;Ve=[];var a=pr(He(Zt([t]))).toArray();if("Down"===e&&a.reverse(),pr.each(a,(function(){return r?(n=this,!1):(this===t&&(r=!0),!0)})),n){var i=t,o=i.parentNode,s=i.nextSibling;pr(n)["Down"===e?"before":"after"](i),s!==i.nextSibling&&(j(new gr(i,s,o,"Move "+e)),W("changed",[i]))}}},this.moveSelectedElements=function(e,t,n){e.constructor!==Array&&(e/=v,t/=v),n=n||!0;for(var r=new _r("position"),a=S.length;a--;){var i=S[a];if(!sn(i)){var o=u.createSVGTransform(),s=ee(i);e.constructor===Array?o.setTranslate(e[a],t[a]):o.setTranslate(e,t),s.numberOfItems?s.insertItemBefore(o,0):s.appendItem(o);var l=cr(i);l&&r.addSubCommand(l),B.requestSelector(i).resize()}}if(!r.isEmpty())return n&&j(r),W("changed",S),r},this.cloneSelectedElements=function(e,t){var n,r,a=new _r("Clone Elements"),i=S.length;for(S.sort((function(e,t){return pr(t).index()-pr(e).index()})),n=0;n<i&&(r=S[n],!sn(r));++n);var o=S.slice(0,n);this.clearSelection(!0);var s=g();for(n=o.length;n--;)r=o[n]=s.copyElem(o[n]),(b||s.getCurrentLayer()).append(r),a.addSubCommand(new mr(r));a.isEmpty()||(Q(o.reverse()),this.moveSelectedElements(e,t,!1),j(a))},this.alignSelectedElements=function(e,t){var n=[],r=S.length;if(r){for(var a=Number.MAX_VALUE,i=Number.MIN_VALUE,o=Number.MAX_VALUE,s=Number.MIN_VALUE,c=Number.MIN_VALUE,u=Number.MIN_VALUE,d=0;d<r&&!sn(S[d]);++d){var h=S[d];switch(n[d]=Zt([h]),t){case"smallest":(("l"===e||"c"===e||"r"===e)&&(c===Number.MIN_VALUE||c>n[d].width)||("t"===e||"m"===e||"b"===e)&&(u===Number.MIN_VALUE||u>n[d].height))&&(a=n[d].x,o=n[d].y,i=n[d].x+n[d].width,s=n[d].y+n[d].height,c=n[d].width,u=n[d].height);break;case"largest":(("l"===e||"c"===e||"r"===e)&&(c===Number.MIN_VALUE||c<n[d].width)||("t"===e||"m"===e||"b"===e)&&(u===Number.MIN_VALUE||u<n[d].height))&&(a=n[d].x,o=n[d].y,i=n[d].x+n[d].width,s=n[d].y+n[d].height,c=n[d].width,u=n[d].height);break;default:n[d].x<a&&(a=n[d].x),n[d].y<o&&(o=n[d].y),n[d].x+n[d].width>i&&(i=n[d].x+n[d].width),n[d].y+n[d].height>s&&(s=n[d].y+n[d].height)}}"page"===t&&(a=0,o=0,i=l.contentW,s=l.contentH);for(var f=new Array(r),p=new Array(r),g=0;g<r&&!sn(S[g]);++g){var m=n[g];switch(f[g]=0,p[g]=0,e){case"l":f[g]=a-m.x;break;case"c":f[g]=(a+i)/2-(m.x+m.width/2);break;case"r":f[g]=i-(m.x+m.width);break;case"t":p[g]=o-m.y;break;case"m":p[g]=(o+s)/2-(m.y+m.height/2);break;case"b":p[g]=s-(m.y+m.height)}}this.moveSelectedElements(f,p)}},this.contentW=Xt().w,this.contentH=Xt().h,this.updateCanvas=function(e,t){u.setAttribute("width",e),u.setAttribute("height",t);var n=pr("#canvasBackground")[0],r=d.getAttribute("x"),a=d.getAttribute("y"),i=(e-this.contentW*v)/2,o=(t-this.contentH*v)/2;nn(d,{width:this.contentW*v,height:this.contentH*v,x:i,y:o,viewBox:"0 0 "+this.contentW+" "+this.contentH}),nn(n,{width:d.getAttribute("width"),height:d.getAttribute("height"),x:i,y:o});var s=tn("background_image");return s&&nn(s,{width:"100%",height:"100%"}),B.selectorParentGroup.setAttribute("transform","translate("+i+","+o+")"),Ue("canvasUpdated",{new_x:i,new_y:o,old_x:r,old_y:a,d_x:i-r,d_y:o-a}),{x:i,y:o,old_x:r,old_y:a,d_x:i-r,d_y:o-a}},this.setBackground=function(e,t){var n=tn("canvasBackground"),r=pr(n).find("rect")[0],a=tn("background_image"),i=tn("background_pattern");if(r.setAttribute("fill","chessboard"===e?"#fff":e),"chessboard"===e){if(!i){i=c.createElementNS(y.SVG,"foreignObject"),nn(i,{id:"background_pattern",width:"100%",height:"100%",preserveAspectRatio:"xMinYMin",style:"pointer-events:none"});var o=document.createElement("div");nn(o,{style:"pointer-events:none;width:100%;height:100%;background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAP///9bW1iH5BAAAAAAALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7);"}),i.appendChild(o),n.append(i)}}else i&&i.remove();t?(a||(a=c.createElementNS(y.SVG,"image"),nn(a,{id:"background_image",width:"100%",height:"100%",preserveAspectRatio:"xMinYMin",style:"pointer-events:none"})),Rt(a,t),n.append(a)):a&&a.remove()},this.cycleElement=function(e){var t,n=S[0],r=!1,a=Kt(b||g().getCurrentLayer());if(a.length){if(sn(n))r=a[t=e?a.length-1:0];else for(var i=a.length;i--;)if(a[i]===n){(t=e?i-1:i+1)>=a.length?t=0:t<0&&(t=a.length-1),r=a[t];break}$e([r],!0),W("selected",S)}},this.clear(),this.getPrivateMethods=function(){return{addCommandToHistory:j,BatchCommand:_r,ChangeElementCommand:yr,decode64:Gt,dropXMLInternalSubset:Ct,encode64:Et,ffClone:Xe,findDefs:Bt,findDuplicateGradient:ln,getElem:tn,getPathBBox:Ut,getTypeMap:ie,getUrlFromAttr:jt,identifyLayers:jn,InsertElementCommand:mr,isChrome:H,isIdentity:Ee,isIE:D,logMatrix:Ke,MoveElementCommand:gr,NS:y,preventClickDefault:on,RemoveElementCommand:vr,SVGEditTransformList:$,text2xml:Mt,transformBox:Ne,transformPoint:Ae,walkTree:Ot}}};
|
|
/**
|
|
* @file SVG Icon Loader 2.0
|
|
*
|
|
* jQuery Plugin for loading SVG icons from a single file
|
|
*
|
|
* Adds {@link external:jQuery.svgIcons}, {@link external:jQuery.getSvgIcon}, {@link external:jQuery.resizeSvgIcons}
|
|
*
|
|
* How to use:
|
|
|
|
1. Create the SVG master file that includes all icons:
|
|
|
|
The master SVG icon-containing file is an SVG file that contains
|
|
`<g>` elements. Each `<g>` element should contain the markup of an SVG
|
|
icon. The `<g>` element has an ID that should
|
|
correspond with the ID of the HTML element used on the page that should contain
|
|
or optionally be replaced by the icon. Additionally, one empty element should be
|
|
added at the end with id "svg_eof".
|
|
|
|
2. Optionally create fallback raster images for each SVG icon.
|
|
|
|
3. Include the jQuery and the SVG Icon Loader scripts on your page.
|
|
|
|
4. Run `$.svgIcons()` when the document is ready. See its signature
|
|
|
|
5. To access an icon at a later point without using the callback, use this:
|
|
`$.getSvgIcon(id (string), uniqueClone (boolean))`;
|
|
|
|
This will return the icon (as jQuery object) with a given ID.
|
|
|
|
6. To resize icons at a later point without using the callback, use this:
|
|
`$.resizeSvgIcons(resizeOptions)` (use the same way as the "resize" parameter)
|
|
*
|
|
* @module jQuerySVGIcons
|
|
* @license MIT
|
|
* @copyright (c) 2009 Alexis Deveria
|
|
* {@link http://a.deveria.com}
|
|
* @example
|
|
$(function () {
|
|
$.svgIcons('my_icon_set.svg'); // The SVG file that contains all icons
|
|
// No options have been set, so all icons will automatically be inserted
|
|
// into HTML elements that match the same IDs.
|
|
});
|
|
|
|
* @example
|
|
$(function () {
|
|
// The SVG file that contains all icons
|
|
$.svgIcons('my_icon_set.svg', {
|
|
callback (icons) { // Custom callback function that sets click
|
|
// events for each icon
|
|
$.each(icons, function (id, icon) {
|
|
icon.click(function () {
|
|
alert('You clicked on the icon with id ' + id);
|
|
});
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
* @example
|
|
$(function () {
|
|
// The SVGZ file that contains all icons
|
|
$.svgIcons('my_icon_set.svgz', {
|
|
w: 32, // All icons will be 32px wide
|
|
h: 32, // All icons will be 32px high
|
|
fallback_path: 'icons/', // All fallback files can be found here
|
|
fallback: {
|
|
'#open_icon': 'open.png', // The "open.png" will be appended to the
|
|
// HTML element with ID "open_icon"
|
|
'#close_icon': 'close.png',
|
|
'#save_icon': 'save.png'
|
|
},
|
|
placement: {'.open_icon': 'open'}, // The "open" icon will be added
|
|
// to all elements with class "open_icon"
|
|
resize: {
|
|
'#save_icon .svg_icon': 64 // The "save" icon will be resized to 64 x 64px
|
|
},
|
|
|
|
callback (icons) { // Sets background color for "close" icon
|
|
icons.close.css('background', 'red');
|
|
},
|
|
|
|
svgz: true // Indicates that an SVGZ file is being used
|
|
});
|
|
});
|
|
*/
|
|
var Sr=Boolean(window.opera),kr=function(e,t,n){var r,a=e.find("defs");if(!a.length)return e;r=Sr?a.find("*").filter((function(){return Boolean(this.id)})):a.find("[id]");var i=e[0].getElementsByTagName("*"),o=i.length;return r.each((function(e){var n=this.id,r="x"+n+t+e;this.id=r;var a="url(#"+n+")",s="url(#"+r+")";for(e=0;e<o;e++){var l=i[e];l.getAttribute("fill")===a&&l.setAttribute("fill",s),l.getAttribute("stroke")===a&&l.setAttribute("stroke",s),l.getAttribute("filter")===a&&l.setAttribute("filter",s)}})),e};
|
|
/**
|
|
* @file jGraduate 0.4
|
|
*
|
|
* jQuery Plugin for a gradient picker
|
|
*
|
|
* @module jGraduate
|
|
* @copyright 2010 Jeff Schiller {@link http://blog.codedread.com/}, 2010 Alexis Deveria {@link http://a.deveria.com/}
|
|
*
|
|
* @license Apache-2.0
|
|
* @example
|
|
* // The Paint object is described below.
|
|
* $.jGraduate.Paint(); // constructs a 'none' color
|
|
* @example $.jGraduate.Paint({copy: o}); // creates a copy of the paint o
|
|
* @example $.jGraduate.Paint({hex: '#rrggbb'}); // creates a solid color paint with hex = "#rrggbb"
|
|
* @example $.jGraduate.Paint({linearGradient: o, a: 50}); // creates a linear gradient paint with opacity=0.5
|
|
* @example $.jGraduate.Paint({radialGradient: o, a: 7}); // creates a radial gradient paint with opacity=0.07
|
|
* @example $.jGraduate.Paint({hex: '#rrggbb', linearGradient: o}); // throws an exception?
|
|
*/
|
|
var Cr="http://www.w3.org/2000/svg",Ar="http://www.w3.org/1999/xlink";
|
|
/**
|
|
* @file jPicker (Adapted from version 1.1.6)
|
|
*
|
|
* jQuery Plugin for Photoshop style color picker
|
|
*
|
|
* @module jPicker
|
|
* @copyright (c) 2010 Christopher T. Tillman
|
|
* Digital Magic Productions, Inc. ({@link http://www.digitalmagicpro.com/})
|
|
* FREE to use, alter, copy, sell, and especially ENHANCE
|
|
* @license MIT
|
|
*
|
|
* Painstakingly ported from John Dyers' excellent work on his own color picker based on the Prototype framework.
|
|
*
|
|
* John Dyers' website: {@link http://johndyer.name}
|
|
* Color Picker page: {@link http://johndyer.name/photoshop-like-javascript-color-picker/}
|
|
*/
|
|
function Er(e,t){return void 0===t&&(t=0),Math.round(e*Math.pow(10,t))/Math.pow(10,t)}window.console||(window.console={log:function(e){},dir:function(e){}});var Gr,Pr,Nr=function(e){return null==e},Ir=jQuery,Tr=function(e,t,n){var r=Ir("#svg_editor").parent();Object.entries(t).forEach((function(t){var a=h(t,2),i=a[0],o=a[1];if(o){n&&(i="#"+i);var s=r.find(i);if(s.length){var l=s[0];switch(e){case"aria-label":l.setAttribute("aria-label",o);break;case"content":f(l.childNodes).some((function(e){return!(3!==e.nodeType||!e.textContent.trim())&&(e.textContent=o,!0)}));break;case"title":l.title=o}}else console.log("Missing element for localization: "+i)}else console.log(i)}))},Lr=function(){var e=n(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,l,c,u,d;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Pr.addLangData(Gr);case 2:if(n=e.sent,Ir.each(n,(function(e,n){n.data&&(t=Ir.merge(t,n.data))})),t.tools){e.next=6;break}return e.abrupt("return",void 0);case 6:return a=(r=t).tools,i=r.properties,o=r.config,s=r.layers,l=r.common,c=r.ui,Tr("content",{curve_segments:i.curve_segments,fitToContent:a.fitToContent,fit_to_all:a.fit_to_all,fit_to_canvas:a.fit_to_canvas,fit_to_layer_content:a.fit_to_layer_content,fit_to_sel:a.fit_to_sel,icon_large:o.icon_large,icon_medium:o.icon_medium,icon_small:o.icon_small,icon_xlarge:o.icon_xlarge,image_opt_embed:o.image_opt_embed,image_opt_ref:o.image_opt_ref,includedImages:o.included_images,largest_object:a.largest_object,layersLabel:s.layers,page:a.page,relativeToLabel:a.relativeTo,selLayerLabel:s.move_elems_to,selectedPredefined:o.select_predefined,selected_objects:a.selected_objects,smallest_object:a.smallest_object,straight_segments:i.straight_segments,svginfo_bg_url:o.editor_img_url+":",svginfo_bg_note:o.editor_bg_note,svginfo_change_background:o.background,svginfo_dim:o.doc_dims,svginfo_editor_prefs:o.editor_prefs,svginfo_height:l.height,svginfo_icons:o.icon_size,svginfo_image_props:o.image_props,svginfo_lang:o.language,svginfo_title:o.doc_title,svginfo_width:l.width,tool_docprops_cancel:l.cancel,tool_docprops_save:l.ok,tool_source_cancel:l.cancel,tool_source_save:l.ok,tool_prefs_cancel:l.cancel,tool_prefs_save:l.ok,sidepanel_handle:s.layers.split("").join(" "),tool_clear:a.new_doc,tool_docprops:a.docprops,tool_export:a.export_img,tool_import:a.import_doc,tool_open:a.open_doc,tool_save:a.save_doc,tool_editor_prefs:o.editor_prefs,tool_editor_homepage:a.editor_homepage,svginfo_units_rulers:o.units_and_rulers,svginfo_rulers_onoff:o.show_rulers,svginfo_unit:o.base_unit,svginfo_grid_settings:o.grid,svginfo_snap_onoff:o.snapping_onoff,svginfo_snap_step:o.snapping_stepsize,svginfo_grid_color:o.grid_color},!0),u={},["cut","copy","paste","paste_in_place","delete","group","ungroup","move_front","move_up","move_down","move_back"].forEach((function(e){u['#cmenu_canvas a[href="#'+e+'"]']=a[e]})),["dupe","merge_down","merge_all"].forEach((function(e){u['#cmenu_layers a[href="#'+e+'"]']=s[e]})),u['#cmenu_layers a[href="#delete"]']=s.del,Tr("content",u),d={},Object.entries({tool_blur:i.blur,tool_position:a.align_to_page,tool_font_family:i.font_family,zoom_panel:c.zoom_level,stroke_linejoin:i.linejoin_miter,stroke_linecap:i.linecap_butt,tool_opacity:i.opacity}).forEach((function(e){var t=h(e,2),n=t[0],r=t[1];d["#"+n+" button"]=r})),Object.entries({group_opacity:i.opacity,zoom:c.zoom_level}).forEach((function(e){var t=h(e,2),n=t[0],r=t[1];d["#"+n]=r})),Tr("aria-label",d),Tr("title",{align_relative_to:a.align_relative_to,circle_cx:i.circle_cx,circle_cy:i.circle_cy,circle_r:i.circle_r,cornerRadiusLabel:i.corner_radius,ellipse_cx:i.ellipse_cx,ellipse_cy:i.ellipse_cy,ellipse_rx:i.ellipse_rx,ellipse_ry:i.ellipse_ry,fill_color:i.fill_color,font_family:i.font_family,idLabel:i.id,image_height:i.image_height,image_url:i.image_url,image_width:i.image_width,layer_delete:s.del,layer_down:s.move_down,layer_new:s.new,layer_rename:s.rename,layer_moreopts:l.more_opts,layer_up:s.move_up,line_x1:i.line_x1,line_x2:i.line_x2,line_y1:i.line_y1,line_y2:i.line_y2,linecap_butt:i.linecap_butt,linecap_round:i.linecap_round,linecap_square:i.linecap_square,linejoin_bevel:i.linejoin_bevel,linejoin_miter:i.linejoin_miter,linejoin_round:i.linejoin_round,main_icon:a.main_menu,palette:c.palette_info,zoom_panel:c.zoom_level,path_node_x:i.node_x,path_node_y:i.node_y,rect_height_tool:i.rect_height,rect_width_tool:i.rect_width,seg_type:i.seg_type,selLayerNames:s.move_selected,selected_x:i.pos_x,selected_y:i.pos_y,stroke_color:i.stroke_color,stroke_style:i.stroke_style,stroke_width:i.stroke_width,svginfo_title:o.doc_title,text:i.text_contents,toggle_stroke_tools:c.toggle_stroke_tools,tool_add_subpath:a.add_subpath,tool_alignbottom:a.align_bottom,tool_aligncenter:a.align_center,tool_alignleft:a.align_left,tool_alignmiddle:a.align_middle,tool_alignright:a.align_right,tool_aligntop:a.align_top,tool_angle:i.angle,tool_blur:i.blur,tool_bold:i.bold,tool_circle:a.mode_circle,tool_clone:a.clone,tool_clone_multi:a.clone,tool_delete:a.del,tool_delete_multi:a.del,tool_ellipse:a.mode_ellipse,tool_fhellipse:a.mode_fhellipse,tool_fhpath:a.mode_fhpath,tool_fhrect:a.mode_fhrect,tool_font_size:i.font_size,tool_group_elements:a.group_elements,tool_make_link:a.make_link,tool_link_url:a.set_link_url,tool_image:a.mode_image,tool_italic:i.italic,tool_line:a.mode_line,tool_move_bottom:a.move_bottom,tool_move_top:a.move_top,tool_node_clone:a.node_clone,tool_node_delete:a.node_delete,tool_node_link:a.node_link,tool_opacity:i.opacity,tool_openclose_path:a.openclose_path,tool_path:a.mode_path,tool_position:a.align_to_page,tool_rect:a.mode_rect,tool_redo:a.redo,tool_reorient:a.reorient_path,tool_select:a.mode_select,tool_source:a.source_save,tool_square:a.mode_square,tool_text:a.mode_text,tool_topath:a.to_path,tool_undo:a.undo,tool_ungroup:a.ungroup,tool_wireframe:a.wireframe_mode,tool_zoom:a.mode_zoom,url_notice:a.no_embed},!0),e.abrupt("return",{langParam:Gr,langData:t});case 19:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Mr=function(){var e=n(regeneratorRuntime.mark((function e(t,n,r){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t?Gr=t:navigator.userLanguage?Gr=navigator.userLanguage:navigator.language&&(Gr=navigator.language),console.log("Lang: "+Gr),n.includes(Gr)||"test"===Gr||(Gr="en"),a=r.langPath+"lang."+Gr+".js",e.t0=Lr,e.next=7,fn(a,{global:"svgEditorLang_"+Gr.replace(/-/g,"_")});case 7:return e.t1=e.sent,e.abrupt("return",(0,e.t0)(e.t1));case 9:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}();function Or(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e))&&"[object Arguments]"!==Object.prototype.toString.call(e))return;var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function jr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.before,r=t.after,a=t.favicon,i=t.canvas,o=t.image,s=void 0===o||o,l=t.acceptErrors;function c(e){var t={};if(Array.isArray(e)){var o=Or(e,2);e=o[0];var c=o[1];t=void 0===c?{}:c}var u=t.favicon,d=void 0===u?a:u,h=t,f=h.before,p=void 0===f?n:f,g=h.after,m=void 0===g?r:g,v=h.canvas,y=void 0===v?i:v,_=h.image,b=void 0===_?s:_;function x(){p?p.before(w):m?m.after(w):document.head.appendChild(w)}var w=document.createElement("link");return new Promise((function(n,r){var a=r;if(l&&(a="function"==typeof l?function(a){l({error:a,stylesheetURL:e,options:t,resolve:n,reject:r})}:n),e.endsWith(".css")?d=!1:e.endsWith(".ico")&&(d=!0),d){if(w.rel="shortcut icon",w.type="image/x-icon",!1===b)return w.href=e,x(),void n(w);var i=document.createElement("canvas");i.width=16,i.height=16;var o=i.getContext("2d"),s=document.createElement("img");return s.addEventListener("error",(function(e){r(e)})),s.addEventListener("load",(function(){o.drawImage(s,0,0),w.href=y?i.toDataURL("image/x-icon"):e,x(),n(w)})),void(s.src=e)}w.rel="stylesheet",w.type="text/css",w.href=e,x(),w.addEventListener("error",(function(e){a(e)})),w.addEventListener("load",(function(){n(w)}))}))}return e=Array.isArray(e)?e:[e],Promise.all(e.map((function(e){return c(e)})))}var Vr={},Rr=[function(e){function t(t){if("string"==typeof t.data){var n=t.handler,r=t.data.toLowerCase().split(" ");t.handler=function(t){if(this===t.target||27===t.which||!/textarea|select/i.test(t.target.nodeName)&&"text"!==t.target.type){var a="keypress"!==t.type&&e.hotkeys.specialKeys[t.which],i=String.fromCharCode(t.which).toLowerCase(),o="",s={};t.altKey&&"alt"!==a&&(o+="alt+"),t.ctrlKey&&"ctrl"!==a&&(o+="ctrl+"),t.metaKey&&!t.ctrlKey&&"meta"!==a&&(o+="meta+"),t.shiftKey&&"shift"!==a&&(o+="shift+"),a?s[o+a]=!0:(s[o+i]=!0,s[o+e.hotkeys.shiftNums[i]]=!0,"shift+"===o&&(s[e.hotkeys.shiftNums[i]]=!0));for(var l=0,c=r.length;l<c;l++)if(s[r[l]])return n.apply(this,arguments)}}}}return e.hotkeys={version:"0.8",specialKeys:{8:"backspace",9:"tab",13:"return",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"del",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",109:"-",110:".",111:"/",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",144:"numlock",145:"scroll",191:"/",224:"meta",219:"[",221:"]"},shiftNums:{"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":": ","'":'"',",":"<",".":">","/":"?","\\":"|"}},e.each(["keydown","keyup","keypress"],(function(){e.event.special[this]={add:t}})),e},function(e){var t={};return e.svgIcons=function(n){var r,a,i,o,s,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c="http://www.w3.org/2000/svg",u="http://www.w3.org/1999/xlink",d=l.w||24,h=l.h||24,f=!1,p=!1,g=0,m="data:image/svg+xml;charset=utf-8;base64,";if(l.svgz){o=e('<object data="'+n+'" type=image/svg+xml>').appendTo("body").hide();try{a=o[0].contentDocument,o.load(y),y(0,!0)}catch(e){w()}}else{var v=new DOMParser;e.ajax({url:n,dataType:"string",success:function(t){t?(a=v.parseFromString(t,"text/xml"),e((function(){y("ajax")}))):e(w)},error:function(t){window.opera?e((function(){w()})):t.responseText?((a=v.parseFromString(t.responseText,"text/xml")).childNodes.length||e(w),e((function(){y("ajax")}))):e(w)}})}function y(t,n){if("ajax"!==t){if(p)return;var s=(a=o[0].contentDocument)&&a.getElementById("svg_eof");if(!(s||n&&s))return void(++g<50?setTimeout(y,20):(w(),p=!0));p=!0}if(r=e(a.firstChild).children(),l.no_img)setTimeout((function(){f||x()}),500);else{var c=m+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzUiIGhlaWdodD0iMjc1Ij48L3N2Zz4%3D";i=e(new Image).attr({src:c,width:0,height:0,alt:l.testIconAlt||"icon"}).appendTo("body").load((function(){x(!0)})).error((function(){x()}))}}function _(e,t,n,r){if(Sr&&t.css("visibility","hidden"),l.replace){r&&t.attr("id",n);var a=e.attr("class");if(a&&t.attr("class","svg_icon "+a),!e.alt){var i="icon";l.alts&&(i=l.alts[n]||i),t.attr("alt",i)}e.replaceWith(t)}else e.append(t);Sr&&setTimeout((function(){t.removeAttr("style")}),1)}function b(e,n){void 0!==l.id_match&&!1===l.id_match||_(s,e,n,!0),t[n]=e}function x(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],a=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!f){var p;if(l.no_img&&(n=!1),n&&(p=e(document.createElement("div"))).hide().appendTo("body"),a){var g=l.fallback_path||"";e.each(a,(function(t,n){s=e("#"+t);var r="icon";l.alts&&(r=l.alts[t]||r),b(e(new Image).attr({class:"svg_icon",src:g+n,width:d,height:h,alt:r}),t)}))}else for(var v=r.length,y=0;y<v;y++){var x=r[y],w=x.id;if("svg_eof"===w)break;s=e("#"+w);var S=document.createElementNS(c,"svg");S.setAttribute("viewBox",[0,0,d,h].join(" "));var k=x.getElementsByTagNameNS(c,"svg")[0],C=k.getAttribute("width"),A=k.getAttribute("height");k.removeAttribute("width"),k.removeAttribute("height");var E=k.getAttribute("viewBox");E||k.setAttribute("viewBox",[0,0,C,A].join(" ")),S.setAttribute("xmlns",c),S.setAttribute("width",d),S.setAttribute("height",h),S.setAttribute("xmlns:xlink",u),S.setAttribute("class","svg_icon"),Sr||(k=k.cloneNode(!0)),S.append(k);var G=void 0;if(n){p.empty().append(S);var P=m+Et(unescape(encodeURIComponent((new XMLSerializer).serializeToString(S)))),N="icon";l.alts&&(N=l.alts[w]||N),G=e(new Image).attr({class:"svg_icon",src:P,alt:N})}else G=kr(e(S),y);b(G,w)}l.placement&&e.each(l.placement,(function(r,a){t[a]&&e(r).each((function(r){var i=t[a].clone();r>0&&!n&&(i=kr(i,r)),_(e(this),i,a)}))})),a||(n&&p.remove(),o&&o.remove(),i&&i.remove()),l.resize&&e.resizeSvgIcons(l.resize),f=!0,l.callback&&l.callback(t)}}function w(){if(n.includes(".svgz")){var t=n.replace(".svgz",".svg");window.console&&console.log(".svgz failed, trying with .svg"),e.svgIcons(t,l)}else l.fallback&&x(!1,l.fallback)}},e.getSvgIcon=function(e,n){var r=t[e];return n&&r&&(r=kr(r,0).clone(!0)),r},e.resizeSvgIcons=function(t){var n=!e(".svg_icon:first").length;e.each(t,(function(t,r){var a=Array.isArray(r),i=a?r[0]:r,o=a?r[1]:r;n&&(t=t.replace(/\.svg_icon/g,"svg")),e(t).each((function(){this.setAttribute("width",i),this.setAttribute("height",o),window.opera&&window.widget&&(this.parentNode.style.width=i+"px",this.parentNode.style.height=o+"px")}))}))},e},function(t){t.loadingStylesheets||(t.loadingStylesheets=[]),t.loadingStylesheets.includes("jgraduate/css/jGraduate.css")||t.loadingStylesheets.push("jgraduate/css/jGraduate.css"),t.jGraduate={Paint:function e(t){r(this,e);var n=t||{};if(this.alpha=isNaN(n.alpha)?100:n.alpha,n.copy)switch(this.type=n.copy.type,this.alpha=n.copy.alpha,this.solidColor=null,this.linearGradient=null,this.radialGradient=null,this.type){case"none":break;case"solidColor":this.solidColor=n.copy.solidColor;break;case"linearGradient":this.linearGradient=n.copy.linearGradient.cloneNode(!0);break;case"radialGradient":this.radialGradient=n.copy.radialGradient.cloneNode(!0)}else n.linearGradient?(this.type="linearGradient",this.solidColor=null,this.radialGradient=null,this.linearGradient=n.linearGradient.cloneNode(!0)):n.radialGradient?(this.type="radialGradient",this.solidColor=null,this.linearGradient=null,this.radialGradient=n.radialGradient.cloneNode(!0)):n.solidColor?(this.type="solidColor",this.solidColor=n.solidColor):(this.type="none",this.solidColor=null,this.linearGradient=null,this.radialGradient=null)}},t.fn.jGraduateDefaults={paint:new t.jGraduate.Paint,window:{pickerTitle:"Drag markers to pick a paint"},images:{clientPath:"images/"},newstop:"inverse"};var n=navigator.userAgent.includes("Gecko/");function a(e,t,r){var a=document.createElementNS(Cr,e);return function(e,t){n?Object.entries(t).forEach((function(t){var n=h(t,2),r=n[0],a=n[1];e.setAttribute(r,a)})):Object.entries(t).forEach((function(t){var n=h(t,2),r=n[0],a=n[1],i=e[r];i&&"SVGLength"===i.constructor?i.baseVal.value=a:e.setAttribute(r,a)}))}(a,t),r&&r.append(a),a}return t.fn.jGraduate=function(n,r,i){return this.each((function(){var o=t(this),s=t.extend(!0,{},t.fn.jGraduateDefaults,n||{}),l=o.attr("id"),c="#"+o.attr("id")+" ";if(c){var u=function(){switch(o.paint.type){case"radialGradient":o.paint.linearGradient=null;break;case"linearGradient":o.paint.radialGradient=null;break;case"solidColor":o.paint.radialGradient=o.paint.linearGradient=null}"function"==typeof o.okCallback&&o.okCallback(o.paint),o.hide()},d=function(){"function"==typeof o.cancelCallback&&o.cancelCallback(),o.hide()};t.extend(!0,o,{paint:new t.jGraduate.Paint({copy:s.paint}),okCallback:"function"==typeof r?r:null,cancelCallback:"function"==typeof i?i:null});var h=null,f=t(window);"none"===o.paint.type&&(o.paint=new t.jGraduate.Paint({solidColor:"ffffff"})),o.addClass("jGraduate_Picker"),o.html('<ul class="jGraduate_tabs"><li class="jGraduate_tab_color jGraduate_tab_current" data-type="col">Solid Color</li><li class="jGraduate_tab_lingrad" data-type="lg">Linear Gradient</li><li class="jGraduate_tab_radgrad" data-type="rg">Radial Gradient</li></ul><div class="jGraduate_colPick"></div><div class="jGraduate_gradPick"></div><div class="jGraduate_LightBox"></div><div id="'+l+'_jGraduate_stopPicker" class="jGraduate_stopPicker"></div>');var p=t(c+"> .jGraduate_colPick"),g=t(c+"> .jGraduate_gradPick");g.html('<div id="'+l+'_jGraduate_Swatch" class="jGraduate_Swatch"><h2 class="jGraduate_Title">'+s.window.pickerTitle+'</h2><div id="'+l+'_jGraduate_GradContainer" class="jGraduate_GradContainer"></div><div id="'+l+'_jGraduate_StopSlider" class="jGraduate_StopSlider"></div></div><div class="jGraduate_Form jGraduate_Points jGraduate_lg_field"><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Begin Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+l+'_jGraduate_x1" size="3" title="Enter starting x value between 0.0 and 1.0"/><label>y:</label><input type="text" id="'+l+'_jGraduate_y1" size="3" title="Enter starting y value between 0.0 and 1.0"/></div></div><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">End Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+l+'_jGraduate_x2" size="3" title="Enter ending x value between 0.0 and 1.0"/><label>y:</label><input type="text" id="'+l+'_jGraduate_y2" size="3" title="Enter ending y value between 0.0 and 1.0"/></div></div></div><div class="jGraduate_Form jGraduate_Points jGraduate_rg_field"><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Center Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+l+'_jGraduate_cx" size="3" title="Enter x value between 0.0 and 1.0"/><label>y:</label><input type="text" id="'+l+'_jGraduate_cy" size="3" title="Enter y value between 0.0 and 1.0"/></div></div><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Focal Point</label><div class="jGraduate_Form_Section"><label>Match center: <input type="checkbox" checked="checked" id="'+l+'_jGraduate_match_ctr"/></label><br/><label>x:</label><input type="text" id="'+l+'_jGraduate_fx" size="3" title="Enter x value between 0.0 and 1.0"/><label>y:</label><input type="text" id="'+l+'_jGraduate_fy" size="3" title="Enter y value between 0.0 and 1.0"/></div></div></div><div class="jGraduate_StopSection jGraduate_SpreadMethod"><label class="jGraduate_Form_Heading">Spread method</label><div class="jGraduate_Form_Section"><select class="jGraduate_spreadMethod"><option value=pad selected>Pad</option><option value=reflect>Reflect</option><option value=repeat>Repeat</option></select></div></div><div class="jGraduate_Form"><div class="jGraduate_Slider jGraduate_RadiusField jGraduate_rg_field"><label class="prelabel">Radius:</label><div id="'+l+'_jGraduate_Radius" class="jGraduate_SliderBar jGraduate_Radius" title="Click to set radius"><img id="'+l+'_jGraduate_RadiusArrows" class="jGraduate_RadiusArrows" src="'+s.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+l+'_jGraduate_RadiusInput" size="3" value="100"/>%</label></div><div class="jGraduate_Slider jGraduate_EllipField jGraduate_rg_field"><label class="prelabel">Ellip:</label><div id="'+l+'_jGraduate_Ellip" class="jGraduate_SliderBar jGraduate_Ellip" title="Click to set Ellip"><img id="'+l+'_jGraduate_EllipArrows" class="jGraduate_EllipArrows" src="'+s.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+l+'_jGraduate_EllipInput" size="3" value="0"/>%</label></div><div class="jGraduate_Slider jGraduate_AngleField jGraduate_rg_field"><label class="prelabel">Angle:</label><div id="'+l+'_jGraduate_Angle" class="jGraduate_SliderBar jGraduate_Angle" title="Click to set Angle"><img id="'+l+'_jGraduate_AngleArrows" class="jGraduate_AngleArrows" src="'+s.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+l+'_jGraduate_AngleInput" size="3" value="0"/>deg</label></div><div class="jGraduate_Slider jGraduate_OpacField"><label class="prelabel">Opac:</label><div id="'+l+'_jGraduate_Opac" class="jGraduate_SliderBar jGraduate_Opac" title="Click to set Opac"><img id="'+l+'_jGraduate_OpacArrows" class="jGraduate_OpacArrows" src="'+s.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+l+'_jGraduate_OpacInput" size="3" value="100"/>%</label></div></div><div class="jGraduate_OkCancel"><input type="button" id="'+l+'_jGraduate_Ok" class="jGraduate_Ok" value="OK"/><input type="button" id="'+l+'_jGraduate_Cancel" class="jGraduate_Cancel" value="Cancel"/></div>');var m={};t(".jGraduate_SliderBar").width(145);var v,y=t("#"+l+"_jGraduate_GradContainer")[0],_=a("svg",{id:l+"_jgraduate_svg",width:256,height:256,xmlns:Cr},y),b=o.paint.type,x=o.paint[b],w=x,S=o.paint.alpha,k="solidColor"===b;switch(b){case"solidColor":case"linearGradient":if(k||(w.id=l+"_lg_jgraduate_grad",x=w=_.appendChild(w)),a("radialGradient",{id:l+"_rg_jgraduate_grad"},_),"linearGradient"===b)break;case"radialGradient":k||(w.id=l+"_rg_jgraduate_grad",x=w=_.appendChild(w)),a("linearGradient",{id:l+"_lg_jgraduate_grad"},_)}if(k){x=w=t("#"+l+"_lg_jgraduate_grad")[0],Ie(0,"#"+(h=o.paint[b]),1);var C=e(s.newstop);if("string"===C)switch(s.newstop){case"same":Ie(1,"#"+h,1);break;case"inverse":for(var A="",E=0;E<6;E+=2){var G=(255-Number.parseInt(h.substr(E,2),16)).toString(16);G.length<2&&(G=0+G),A+=G}Ie(1,"#"+A,1);break;case"white":Ie(1,"#ffffff",1);break;case"black":Ie(1,"#000000",1)}else if("object"===C){var P="opac"in s.newstop?s.newstop.opac:1;Ie(1,s.newstop.color||"#"+h,P)}}var N,I=Number.parseFloat(x.getAttribute("x1")||0),T=Number.parseFloat(x.getAttribute("y1")||0),L=Number.parseFloat(x.getAttribute("x2")||1),M=Number.parseFloat(x.getAttribute("y2")||0),O=Number.parseFloat(x.getAttribute("cx")||.5),j=Number.parseFloat(x.getAttribute("cy")||.5),V=Number.parseFloat(x.getAttribute("fx")||O),R=Number.parseFloat(x.getAttribute("fy")||j),B=a("rect",{id:l+"_jgraduate_rect",x:0,y:0,width:256,height:256,fill:"url(#"+l+"_jgraduate_grad)","fill-opacity":S/100},_),U=t("<div/>").attr({class:"grad_coord jGraduate_lg_field",title:"Begin Stop"}).text(1).css({top:256*T,left:256*I}).data("coord","start").appendTo(y),F=U.clone().text(2).css({top:256*M,left:256*L}).attr("title","End stop").data("coord","end").appendTo(y),D=t("<div/>").attr({class:"grad_coord jGraduate_rg_field",title:"Center stop"}).text("C").css({top:256*j,left:256*O}).data("coord","center").appendTo(y),H=D.clone().text("F").css({top:256*R,left:256*V,display:"none"}).attr("title","Focus point").data("coord","focus").appendTo(y);H[0].id=l+"_jGraduate_focusCoord",t.each(["x1","y1","x2","y2","cx","cy","fx","fy"],(function(e,n){var r=isNaN(n[1]),a=w.getAttribute(n);a||(a=r?"0.5":"x2"===n?"1.0":"0.0"),m[n]=t("#"+l+"_jGraduate_"+n).val(a).change((function(){isNaN(Number.parseFloat(this.value))||this.value<0?this.value=0:this.value>1&&(this.value=1),("f"!==n[0]||N)&&(r&&"radialGradient"===b||!r&&"linearGradient"===b)&&w.setAttribute(n,this.value);var e=r?"c"===n[0]?D:H:"1"===n[1]?U:F,t=n.includes("x")?"left":"top";e.css(t,256*this.value)})).change()}));var z,q,Y,W,X=t("#"+l+"_jGraduate_StopSlider"),Q=a("path",{d:"m9.75,-6l-19.5,19.5m0,-19.5l19.5,19.5",fill:"none",stroke:"#D00","stroke-width":5,display:"none"},void 0),K=1,Z=1,$=0,J=O,ee=j,te=a("svg",{width:"100%",height:45},X[0]),ne=a("pattern",{width:16,height:16,patternUnits:"userSpaceOnUse",id:"jGraduate_trans"},te),re=a("image",{width:16,height:16},ne),ae=s.images.clientPath+"map-opacity.png";re.setAttributeNS(Ar,"xlink:href",ae),t(te).click((function(e){if(W=X.offset(),"path"!==e.target.tagName){var t=e.pageX-W.left-8;Ie((t=t<10?10:t>266?266:t)/256,0,0,!0),e.stopPropagation()}})),t(te).mouseover((function(){te.append(Q)})),v=a("g",{},te),a("line",{x1:10,y1:15,x2:266,y2:15,"stroke-width":2,stroke:"#000"},te);var ie,oe,se,le,ce=g.find(".jGraduate_spreadMethod").change((function(){w.setAttribute("spreadMethod",t(this).val())})),ue=null,de=function(e){var t=e.pageX-ie.left,n=e.pageY-ie.top;t=t<0?0:t>256?256:t,n=n<0?0:n>256?256:n,ue.css("left",t).css("top",n);var r=t/256,a=n/256,i=ue.data("coord"),o=w;switch(i){case"start":m.x1.val(r),m.y1.val(a),o.setAttribute("x1",r),o.setAttribute("y1",a);break;case"end":m.x2.val(r),m.y2.val(a),o.setAttribute("x2",r),o.setAttribute("y2",a);break;case"center":m.cx.val(r),m.cy.val(a),o.setAttribute("cx",r),o.setAttribute("cy",a),J=r,ee=a,Me();break;case"focus":m.fx.val(r),m.fy.val(a),o.setAttribute("fx",r),o.setAttribute("fy",a),Me()}e.preventDefault()},he=function e(){ue=null,f.unbind("mousemove",de).unbind("mouseup",e)},fe=(z=w.getElementsByTagNameNS(Cr,"stop")).length;if(fe<2){for(;fe<2;)w.append(document.createElementNS(Cr,"stop")),++fe;z=w.getElementsByTagNameNS(Cr,"stop")}for(var pe=0;pe<fe;pe++)Ie(0,0,0,0,z[pe]);if(ce.val(w.getAttribute("spreadMethod")||"pad"),N=!1,B.setAttribute("fill-opacity",S/100),t("#"+l+" div.grad_coord").mousedown((function(e){e.preventDefault(),ue=t(this),ie=ue.parent().offset(),f.mousemove(de).mouseup(he)})),t("#"+l+"_jGraduate_Ok").bind("click",(function(){o.paint.type=b,o.paint[b]=w.cloneNode(!0),o.paint.solidColor=null,u()})),t("#"+l+"_jGraduate_Cancel").bind("click",(function(e){d()})),"radialGradient"===b&&(N?H.show():(H.hide(),m.fx.val(""),m.fy.val(""))),t("#"+l+"_jGraduate_match_ctr")[0].checked=!N,t("#"+l+"_jGraduate_match_ctr").change((function(){N=!this.checked,H.toggle(N),m.fx.val(""),m.fy.val("");var e=w;if(N){var t=oe||.5,n=se||.5;e.setAttribute("fx",t),e.setAttribute("fy",n),m.fx.val(t),m.fy.val(n)}else oe=e.getAttribute("fx"),se=e.getAttribute("fy"),e.removeAttribute("fx"),e.removeAttribute("fy")})),(fe=(z=w.getElementsByTagNameNS(Cr,"stop")).length)<2){for(;fe<2;)w.append(document.createElementNS(Cr,"stop")),++fe;z=w.getElementsByTagNameNS(Cr,"stop")}var ge=0,me=0;if("radialGradient"===b){var ve=w.gradientTransform.baseVal;if(2===ve.numberOfItems){var ye=ve.getItem(0),_e=ve.getItem(1);if(2===ye.type&&3===_e.type){var be=_e.matrix;1!==be.a?ge=Math.round(100*-(1-be.a)):1!==be.d&&(ge=Math.round(100*(1-be.d)))}}else if(3===ve.numberOfItems){var xe=ve.getItem(0),we=ve.getItem(1),Se=ve.getItem(2);if(4===xe.type&&2===we.type&&3===Se.type){me=Math.round(xe.angle);var ke=Se.matrix;1!==ke.a?ge=Math.round(100*-(1-ke.a)):1!==ke.d&&(ge=Math.round(100*(1-ke.d)))}}}var Ce={radius:{handle:"#"+l+"_jGraduate_RadiusArrows",input:"#"+l+"_jGraduate_RadiusInput",val:100*(w.getAttribute("r")||.5)},opacity:{handle:"#"+l+"_jGraduate_OpacArrows",input:"#"+l+"_jGraduate_OpacInput",val:o.paint.alpha||100},ellip:{handle:"#"+l+"_jGraduate_EllipArrows",input:"#"+l+"_jGraduate_EllipInput",val:ge},angle:{handle:"#"+l+"_jGraduate_AngleArrows",input:"#"+l+"_jGraduate_AngleInput",val:me}};t.each(Ce,(function(e,n){var r=t(n.handle);r.mousedown((function(a){var i=r.parent();le={type:e,elem:r,input:t(n.input),parent:i,offset:i.offset()},f.mousemove(Ae).mouseup(Ee),a.preventDefault()})),t(n.input).val(n.val).change((function(){var t="radialGradient"===b,n=Number(this.value),a=0;switch(e){case"radius":t&&w.setAttribute("r",n/100),a=Math.pow(n/100,.4)/2*145;break;case"opacity":o.paint.alpha=n,B.setAttribute("fill-opacity",n/100),a=1.45*n;break;case"ellip":if(K=Z=1,0===n){a=72.5;break}n>99.5&&(n=99.5),n>0?Z=1-n/100:K=-n/100-1,a=(n+100)/2*145/100,t&&Me();break;case"angle":a=($=n)/180,a+=.5,a*=145,t&&Me()}a>145?a=145:a<0&&(a=0),r.css({"margin-left":a-5})})).change()}));for(var Ae=function(e){!function(e){var t=le.offset.left,n=le.parent,r=e.pageX-t-Number.parseInt(n.css("border-left-width"));r>145&&(r=145),r<=0&&(r=0);var a=r-5;switch(r/=145,le.type){case"radius":(r=Math.pow(2*r,2.5))>.98&&r<1.02&&(r=1),r<=.01&&(r=.01),w.setAttribute("r",r);break;case"opacity":o.paint.alpha=Number.parseInt(100*r),B.setAttribute("fill-opacity",r);break;case"ellip":K=1,Z=1,r<.5?K=(r/=.5)<=0?.01:r:r>.5&&(Z=(r=2-(r/=.5))<=0?.01:r),Me(),Z===(r-=1)+1&&(r=Math.abs(r));break;case"angle":r-=.5,$=r*=180,Me(),r/=100}le.elem.css({"margin-left":a}),r=Math.round(100*r),le.input.val(r)}(e),e.preventDefault()},Ee=function e(t){f.unbind("mousemove",Ae).unbind("mouseup",e),le=null},Ge=(255*o.paint.alpha/100).toString(16);Ge.length<2;)Ge="0"+Ge;Ge=Ge.split(".")[0],h="none"===o.paint.solidColor?"":o.paint.solidColor+Ge,k||(h=z[0].getAttribute("stop-color")),t.extend(t.fn.jPicker.defaults.window,{alphaSupport:!0,effects:{type:"show",speed:0}}),p.jPicker({window:{title:s.window.pickerTitle},images:{clientPath:s.images.clientPath},color:{active:h,alphaSupport:!0}},(function(e){o.paint.type="solidColor",o.paint.alpha=e.val("ahex")?Math.round(e.val("a")/255*100):100,o.paint.solidColor=e.val("hex")?e.val("hex"):"none",o.paint.radialGradient=null,u()}),null,(function(){d()}));var Pe,Ne=t(c+" .jGraduate_tabs li");switch(Ne.click((function(){Ne.removeClass("jGraduate_tab_current"),t(this).addClass("jGraduate_tab_current"),t(c+" > div").hide();var e=t(this).attr("data-type");if(t(c+" .jGraduate_gradPick").show(),"rg"===e||"lg"===e){t(".jGraduate_"+e+"_field").show(),t(".jGraduate_"+("lg"===e?"rg":"lg")+"_field").hide(),t("#"+l+"_jgraduate_rect")[0].setAttribute("fill","url(#"+l+"_"+e+"_jgraduate_grad)"),b="lg"===e?"linearGradient":"radialGradient",t("#"+l+"_jGraduate_OpacInput").val(o.paint.alpha).change();var n=t("#"+l+"_"+e+"_jgraduate_grad")[0];if(w!==n){var r=t(w).find("stop");t(n).empty().append(r),w=n;var a=ce.val();w.setAttribute("spreadMethod",a)}N="rg"===e&&null!==w.getAttribute("fx")&&!(O===V&&j===R),t("#"+l+"_jGraduate_focusCoord").toggle(N),N&&(t("#"+l+"_jGraduate_match_ctr")[0].checked=!1)}else t(c+" .jGraduate_gradPick").hide(),t(c+" .jGraduate_colPick").show()})),t(c+" > div").hide(),Ne.removeClass("jGraduate_tab_current"),o.paint.type){case"linearGradient":Pe=t(c+" .jGraduate_tab_lingrad");break;case"radialGradient":Pe=t(c+" .jGraduate_tab_radgrad");break;default:Pe=t(c+" .jGraduate_tab_color")}o.show(),setTimeout((function(){Pe.addClass("jGraduate_tab_current").click()}),10)}else t.alert("Container element must have an id attribute to maintain unique id strings for sub-elements.");function Ie(e,n,r,i,o){var c=o||a("stop",{"stop-color":n,"stop-opacity":r,offset:e},w);o?(n=o.getAttribute("stop-color"),r=o.getAttribute("stop-opacity"),e=o.getAttribute("offset")):w.append(c),null===r&&(r=1);var u="M-6.2,0.9c3.6-4,6.7-4.3,6.7-12.4c-0.2,7.9,3.1,8.8,6.5,12.4c3.5,3.8,2.9,9.6,0,12.3c-3.1,2.8-10.4,2.7-13.2,0C-9.6,9.9-9.4,4.4-6.2,0.9z",d=a("path",{d:u,fill:"url(#jGraduate_trans)",transform:"translate("+(10+256*e)+", 26)"},v),h=a("path",{d:u,fill:n,"fill-opacity":r,transform:"translate("+(10+256*e)+", 26)",stroke:"#000","stroke-width":1.5},v);return t(h).mousedown((function(e){return Te(this),Y=q,f.mousemove(Oe).mouseup(Le),W=X.offset(),e.preventDefault(),!1})).data("stop",c).data("bg",d).dblclick((function(){t("div.jGraduate_LightBox").show();for(var e=this,r=Number(c.getAttribute("stop-opacity"))||1,a=c.getAttribute("stop-color")||1,i=(255*Number.parseFloat(r)).toString(16);i.length<2;)i="0"+i;n=a.substr(1)+i,t("#"+l+"_jGraduate_stopPicker").css({left:100,bottom:15}).jPicker({window:{title:"Pick the start color and opacity for the gradient"},images:{clientPath:s.images.clientPath},color:{active:n,alphaSupport:!0}},(function(n,i){a=n.val("hex")?"#"+n.val("hex"):"none",r=null!==n.val("a")?n.val("a")/256:1,e.setAttribute("fill",a),e.setAttribute("fill-opacity",r),c.setAttribute("stop-color",a),c.setAttribute("stop-opacity",r),t("div.jGraduate_LightBox").hide(),t("#"+l+"_jGraduate_stopPicker").hide()}),null,(function(){t("div.jGraduate_LightBox").hide(),t("#"+l+"_jGraduate_stopPicker").hide()}))})),t(w).find("stop").each((function(){var r=t(this);if(Number(this.getAttribute("offset"))>e){if(!n){var a=this.getAttribute("stop-color"),i=this.getAttribute("stop-opacity");c.setAttribute("stop-color",a),h.setAttribute("fill",a),c.setAttribute("stop-opacity",null===i?1:i),h.setAttribute("fill-opacity",null===i?1:i)}return r.before(c),!1}return!0})),i&&Te(h),c}function Te(e){q&&q.setAttribute("stroke","#000"),e.setAttribute("stroke","blue"),q=e}function Le(){f.unbind("mousemove",Oe),"none"!==Q.getAttribute("display")&&function(){Q.setAttribute("display","none");var e=t(q),n=e.data("stop"),r=e.data("bg");t([q,n,r]).remove()}(),Y=null}function Me(){var e=$?"rotate("+$+","+J+","+ee+") ":"";if(1===K&&1===Z)w.removeAttribute("gradientTransform");else{var t=-J*(K-1),n=-ee*(Z-1);w.setAttribute("gradientTransform",e+"translate("+t+","+n+") scale("+K+","+Z+")")}}function Oe(e){var n=e.pageX-W.left,r=e.pageY-W.top,a="translate("+(n=n<10?10:n>266?266:n)+", 26)";r<-60||r>130?(Q.setAttribute("display","block"),Q.setAttribute("transform",a)):Q.setAttribute("display","none"),Y.setAttribute("transform",a),t.data(Y,"bg").setAttribute("transform",a);var i=(n-10)/256;t.data(Y,"stop").setAttribute("offset",i);var o=0;t(w).find("stop").each((function(e){var n=this.getAttribute("offset"),r=t(this);n<o&&(r.prev().before(r),z=t(w).find("stop")),o=n}))}}))},t},function(e){return e.loadingStylesheets||(e.loadingStylesheets=[]),e.loadingStylesheets.includes("spinbtn/jQuery.SpinButton.css")||e.loadingStylesheets.push("spinbtn/jQuery.SpinButton.css"),e.fn.SpinButton=function(t){function n(t,n){for(var r=document.body,a=t[n];(t=t.offsetParent)&&t!==r;)e.browser.msie&&"relative"===t.currentStyle.position||(a+=t[n]);return a}return t=t||{},this.each((function(){this.repeating=!1,this.spinCfg={min:isNaN(Number.parseFloat(t.min))?null:Number(t.min),max:isNaN(Number.parseFloat(t.max))?null:Number(t.max),step:t.step?Number(t.step):1,stepfunc:t.stepfunc||!1,page:t.page?Number(t.page):10,upClass:t.upClass||"up",downClass:t.downClass||"down",reset:t.reset||this.value,delay:t.delay?Number(t.delay):500,interval:t.interval?Number(t.interval):100,_btn_width:20,_direction:null,_delay:null,_repeat:null,callback:t.callback||null},this.spinCfg.smallStep=t.smallStep||this.spinCfg.step/2,this.adjustValue=function(e){var t;t=isNaN(this.value)?this.spinCfg.reset:"function"==typeof this.spinCfg.stepfunc?this.spinCfg.stepfunc(this,e):Number((Number(this.value)+Number(e)).toFixed(5)),null!==this.spinCfg.min&&(t=Math.max(t,this.spinCfg.min)),null!==this.spinCfg.max&&(t=Math.min(t,this.spinCfg.max)),this.value=t,"function"==typeof this.spinCfg.callback&&this.spinCfg.callback(this)},e(this).addClass(t.spinClass||"spin-button").mousemove((function(r){var a=r.pageX||r.x,i=r.pageY||r.y,o=r.target,s=t.stateObj.tool_scale||1,l=e(o).height()/2,c=a>n(o,"offsetLeft")+o.offsetWidth*s-this.spinCfg._btn_width?i<n(o,"offsetTop")+l*s?1:-1:0;if(c!==this.spinCfg._direction){switch(c){case 1:e(this).removeClass(this.spinCfg.downClass).addClass(this.spinCfg.upClass);break;case-1:e(this).removeClass(this.spinCfg.upClass).addClass(this.spinCfg.downClass);break;default:e(this).removeClass(this.spinCfg.upClass).removeClass(this.spinCfg.downClass)}this.spinCfg._direction=c}})).mouseout((function(){e(this).removeClass(this.spinCfg.upClass).removeClass(this.spinCfg.downClass),this.spinCfg._direction=null,window.clearInterval(this.spinCfg._repeat),window.clearTimeout(this.spinCfg._delay)})).mousedown((function(e){var t=this;if(0===e.button&&0!==this.spinCfg._direction){var n=e.shiftKey?this.spinCfg.smallStep:this.spinCfg.step,r=function(){t.adjustValue(t.spinCfg._direction*n)};r(),this.spinCfg._delay=window.setTimeout((function(){r(),t.spinCfg._repeat=window.setInterval(r,t.spinCfg.interval)}),this.spinCfg.delay)}})).mouseup((function(e){window.clearInterval(this.spinCfg._repeat),window.clearTimeout(this.spinCfg._delay)})).dblclick((function(t){e.browser.msie&&this.adjustValue(this.spinCfg._direction*this.spinCfg.step)})).keydown((function(e){switch(e.keyCode){case 38:this.adjustValue(this.spinCfg.step);break;case 40:this.adjustValue(-this.spinCfg.step);break;case 33:this.adjustValue(this.spinCfg.page);break;case 34:this.adjustValue(-this.spinCfg.page)}})).keypress((function(e){if(this.repeating)switch(e.keyCode){case 38:this.adjustValue(this.spinCfg.step);break;case 40:this.adjustValue(-this.spinCfg.step);break;case 33:this.adjustValue(this.spinCfg.page);break;case 34:this.adjustValue(-this.spinCfg.page)}else this.repeating=!0})).keyup((function(e){switch(this.repeating=!1,e.keyCode){case 38:case 40:case 33:case 34:case 13:this.adjustValue(0)}})).bind("mousewheel",(function(e){e.wheelDelta>=120?this.adjustValue(this.spinCfg.step):e.wheelDelta<=-120&&this.adjustValue(-this.spinCfg.step),e.preventDefault()})).change((function(e){this.adjustValue(0)})),this.addEventListener&&this.addEventListener("DOMMouseScroll",(function(e){e.detail>0?this.adjustValue(-this.spinCfg.step):e.detail<0&&this.adjustValue(this.spinCfg.step),e.preventDefault()}))}))},e},W,function(e){var t=e(window),n=e(document);return e.extend(e.fn,{contextMenu:function(r,a){return void 0!==r.menu&&(void 0===r.inSpeed&&(r.inSpeed=150),void 0===r.outSpeed&&(r.outSpeed=75),0===r.inSpeed&&(r.inSpeed=-1),0===r.outSpeed&&(r.outSpeed=-1),e(this).each((function(){var i=e(this),o=e(i).offset(),s=e("#"+r.menu);s.addClass("contextMenu"),e(this).bind("mousedown",(function(l){e(this).mouseup((function(c){var u=e(this);if(u.unbind("mouseup"),2===l.button||r.allowLeft||l.ctrlKey&&z()){if(c.stopPropagation(),e(".contextMenu").hide(),i.hasClass("disabled"))return!1;var d=c.pageX,h=c.pageY,f=t.width()-s.width(),p=t.height()-s.height();d>f-15&&(d=f-15),h>p-30&&(h=p-30),n.unbind("click"),s.css({top:h,left:d}).fadeIn(r.inSpeed),s.find("A").mouseover((function(){s.find("LI.hover").removeClass("hover"),e(this).parent().addClass("hover")})).mouseout((function(){s.find("LI.hover").removeClass("hover")})),n.keypress((function(e){switch(e.keyCode){case 38:s.find("LI.hover").length?(s.find("LI.hover").removeClass("hover").prevAll("LI:not(.disabled)").eq(0).addClass("hover"),s.find("LI.hover").length||s.find("LI:last").addClass("hover")):s.find("LI:last").addClass("hover");break;case 40:s.find("LI.hover").length?(s.find("LI.hover").removeClass("hover").nextAll("LI:not(.disabled)").eq(0).addClass("hover"),s.find("LI.hover").length||s.find("LI:first").addClass("hover")):s.find("LI:first").addClass("hover");break;case 13:s.find("LI.hover A").trigger("click");break;case 27:n.trigger("click")}})),s.find("A").unbind("mouseup"),s.find("LI:not(.disabled) A").mouseup((function(){return n.unbind("click").unbind("keypress"),e(".contextMenu").hide(),a&&a(e(this).attr("href").substr(1),e(u),{x:d-o.left,y:h-o.top,docX:d,docY:h}),!1})),setTimeout((function(){n.click((function(){return n.unbind("click").unbind("keypress"),s.fadeOut(r.outSpeed),!1}))}),0)}}))})),e.browser.mozilla?e("#"+r.menu).each((function(){e(this).css({MozUserSelect:"none"})})):e.browser.msie?e("#"+r.menu).each((function(){e(this).bind("selectstart.disableTextSelect",(function(){return!1}))})):e("#"+r.menu).each((function(){e(this).bind("mousedown.disableTextSelect",(function(){return!1}))})),e(i).add(e("UL.contextMenu")).bind("contextmenu",(function(){return!1}))})),e(this))},disableContextMenuItems:function(t){return void 0===t?(e(this).find("LI").addClass("disabled"),e(this)):(e(this).each((function(){if(void 0!==t){var n,r=m(t.split(","));try{for(r.s();!(n=r.n()).done;){var a=n.value;e(this).find('A[href="'+a+'"]').parent().addClass("disabled")}}catch(e){r.e(e)}finally{r.f()}}})),e(this))},enableContextMenuItems:function(t){return void 0===t?(e(this).find("LI.disabled").removeClass("disabled"),e(this)):(e(this).each((function(){if(void 0!==t){var n,r=m(t.split(","));try{for(r.s();!(n=r.n()).done;){var a=n.value;e(this).find('A[href="'+a+'"]').parent().removeClass("disabled")}}catch(e){r.e(e)}finally{r.f()}}})),e(this))},disableContextMenu:function(){return e(this).each((function(){e(this).addClass("disabled")})),e(this)},enableContextMenu:function(){return e(this).each((function(){e(this).removeClass("disabled")})),e(this)},destroyContextMenu:function(){return e(this).each((function(){e(this).unbind("mousedown").unbind("mouseup")})),e(this)}}),e},function(t){t.loadingStylesheets||(t.loadingStylesheets=[]);t.loadingStylesheets.includes("jgraduate/css/jPicker.css")||t.loadingStylesheets.push("jgraduate/css/jPicker.css");var n=function e(n,a){r(this,e);var i=this;function o(e){k.forEach((function(t){t.call(i,i,e)}))}function s(e){var r=n.offset();f={l:0|r.left,t:0|r.top},clearTimeout(p),p=setTimeout((function(){u.call(i,e)}),0),t(document).bind("mousemove",l).bind("mouseup",c),e.preventDefault()}function l(e){return clearTimeout(p),p=setTimeout((function(){u.call(i,e)}),0),e.stopPropagation(),e.preventDefault(),!1}function c(e){return t(document).unbind("mouseup",c).unbind("mousemove",l),e.stopPropagation(),e.preventDefault(),!1}function u(e){var t=n.w,r=n.h,a=e.pageX-f.l,o=e.pageY-f.t;a<0?a=0:a>t&&(a=t),o<0?o=0:o>r&&(o=r),d.call(i,"xy",{x:a/t*_+v,y:o/r*w+b})}function d(e,t,n){if(!(void 0!==t))switch(Nr(e)&&(e="xy"),e.toLowerCase()){case"x":return g;case"y":return m;case"xy":default:return{x:g,y:m}}if(Nr(n)||n!==i){var r,a,s=!1;switch(Nr(e)&&(e="xy"),e.toLowerCase()){case"x":r=t&&(t.x&&0|t.x||0|t)||0;break;case"y":a=t&&(t.y&&0|t.y||0|t)||0;break;case"xy":default:r=t&&t.x&&0|t.x||0,a=t&&t.y&&0|t.y||0}Nr(r)||(r<v?r=v:r>y&&(r=y),g!==r&&(g=r,s=!0)),Nr(a)||(a<b?a=b:a>x&&(a=x),m!==a&&(m=a,s=!0)),s&&o.call(i,n||i)}}function h(e){"function"==typeof e&&k.push(e)}var f,p,g=0,m=0,v=0,y=100,_=100,b=0,x=100,w=100,S=n.find("img:first"),k=[];t.extend(!0,i,{val:d,range:function(e,t){var n,r,a,i;if(!(void 0!==t))switch(Nr(e)&&(e="all"),e.toLowerCase()){case"minx":return v;case"maxx":return y;case"rangex":return{minX:v,maxX:y,rangeX:_};case"miny":return b;case"maxy":return x;case"rangey":return{minY:b,maxY:x,rangeY:w};case"all":default:return{minX:v,maxX:y,rangeX:_,minY:b,maxY:x,rangeY:w}}switch(Nr(e)&&(e="all"),e.toLowerCase()){case"minx":n=t&&(t.minX&&0|t.minX||0|t)||0;break;case"maxx":r=t&&(t.maxX&&0|t.maxX||0|t)||0;break;case"rangex":n=t&&t.minX&&0|t.minX||0,r=t&&t.maxX&&0|t.maxX||0;break;case"miny":a=t&&(t.minY&&0|t.minY||0|t)||0;break;case"maxy":i=t&&(t.maxY&&0|t.maxY||0|t)||0;break;case"rangey":a=t&&t.minY&&0|t.minY||0,i=t&&t.maxY&&0|t.maxY||0;break;case"all":default:n=t&&t.minX&&0|t.minX||0,r=t&&t.maxX&&0|t.maxX||0,a=t&&t.minY&&0|t.minY||0,i=t&&t.maxY&&0|t.maxY||0}Nr(n)||v===n||(_=y-(v=n)),Nr(r)||y===r||(_=(y=r)-v),Nr(a)||b===a||(w=x-(b=a)),Nr(i)||x===i||(w=(x=i)-b)},bind:h,unbind:function(e){if("function"==typeof e)for(var t;t=k.includes(e);)k.splice(t,1)},destroy:function(){t(document).unbind("mouseup",c).unbind("mousemove",l),n.unbind("mousedown",s),n=null,S=null,k=null}}),S.src=a.arrow&&a.arrow.image,S.w=a.arrow&&a.arrow.width||S.width(),S.h=a.arrow&&a.arrow.height||S.height(),n.w=a.map&&a.map.width||n.width(),n.h=a.map&&a.map.height||n.height(),n.bind("mousedown",s),h.call(i,(function(){var e=n.w,t=n.h,r=S.w,a=S.h,i=0,o=0;setTimeout((function(){_>0&&(i=g===y?e:g/_*e|0),w>0&&(o=m===x?t:m/w*t|0),r>=e?i=(e>>1)-(r>>1):i-=r>>1,a>=t?o=(t>>1)-(a>>1):o-=a>>1,S.css({left:i+"px",top:o+"px"})}))}))},a=function e(n,a,i,o){r(this,e);var s=this,l=n.find("td.Text input");function c(e){if(""!==e.target.value||e.target===w.get(0)||(Nr(i)||e.target===i.get(0))&&!Nr(i)){if(!h(e))return e;switch(e.target){case g.get(0):switch(e.keyCode){case 38:return g.val(f.call(s,1+(g.val()<<0),0,255)),a.val("r",g.val(),e.target),!1;case 40:return g.val(f.call(s,(g.val()<<0)-1,0,255)),a.val("r",g.val(),e.target),!1}break;case m.get(0):switch(e.keyCode){case 38:return m.val(f.call(s,1+(m.val()<<0),0,255)),a.val("g",m.val(),e.target),!1;case 40:return m.val(f.call(s,(m.val()<<0)-1,0,255)),a.val("g",m.val(),e.target),!1}break;case v.get(0):switch(e.keyCode){case 38:return v.val(f.call(s,1+(v.val()<<0),0,255)),a.val("b",v.val(),e.target),!1;case 40:return v.val(f.call(s,(v.val()<<0)-1,0,255)),a.val("b",v.val(),e.target),!1}break;case y&&y.get(0):switch(e.keyCode){case 38:return y.val(f.call(s,Number.parseFloat(y.val())+1,0,100)),a.val("a",Er(255*y.val()/100,o),e.target),!1;case 40:return y.val(f.call(s,Number.parseFloat(y.val())-1,0,100)),a.val("a",Er(255*y.val()/100,o),e.target),!1}break;case _.get(0):switch(e.keyCode){case 38:return _.val(f.call(s,1+(_.val()<<0),0,360)),a.val("h",_.val(),e.target),!1;case 40:return _.val(f.call(s,(_.val()<<0)-1,0,360)),a.val("h",_.val(),e.target),!1}break;case b.get(0):switch(e.keyCode){case 38:return b.val(f.call(s,1+(b.val()<<0),0,100)),a.val("s",b.val(),e.target),!1;case 40:return b.val(f.call(s,(b.val()<<0)-1,0,100)),a.val("s",b.val(),e.target),!1}break;case x.get(0):switch(e.keyCode){case 38:return x.val(f.call(s,1+(x.val()<<0),0,100)),a.val("v",x.val(),e.target),!1;case 40:return x.val(f.call(s,(x.val()<<0)-1,0,100)),a.val("v",x.val(),e.target),!1}}}}function u(e){if(""!==e.target.value||e.target===w.get(0)||(Nr(i)||e.target===i.get(0))&&!Nr(i)){if(!h(e))return e;switch(e.target){case g.get(0):g.val(f.call(s,g.val(),0,255)),a.val("r",g.val(),e.target);break;case m.get(0):m.val(f.call(s,m.val(),0,255)),a.val("g",m.val(),e.target);break;case v.get(0):v.val(f.call(s,v.val(),0,255)),a.val("b",v.val(),e.target);break;case y&&y.get(0):y.val(f.call(s,y.val(),0,100)),a.val("a",Er(255*y.val()/100,o),e.target);break;case _.get(0):_.val(f.call(s,_.val(),0,360)),a.val("h",_.val(),e.target);break;case b.get(0):b.val(f.call(s,b.val(),0,100)),a.val("s",b.val(),e.target);break;case x.get(0):x.val(f.call(s,x.val(),0,100)),a.val("v",x.val(),e.target);break;case w.get(0):w.val(w.val().replace(/[^a-fA-F\d]/g,"").toLowerCase().substring(0,6)),i&&i.val(w.val()),a.val("hex",""!==w.val()?w.val():null,e.target);break;case i&&i.get(0):i.val(i.val().replace(/[^a-fA-F\d]/g,"").toLowerCase().substring(0,6)),w.val(i.val()),a.val("hex",""!==i.val()?i.val():null,e.target);break;case S&&S.get(0):S.val(S.val().replace(/[^a-fA-F\d]/g,"").toLowerCase().substring(0,2)),a.val("a",Nr(S.val())?null:Number.parseInt(S.val(),16),e.target)}}}function d(e){if(!Nr(a.val()))switch(e.target){case g.get(0):g.val(a.val("r"));break;case m.get(0):m.val(a.val("g"));break;case v.get(0):v.val(a.val("b"));break;case y&&y.get(0):y.val(Er(100*a.val("a")/255,o));break;case _.get(0):_.val(a.val("h"));break;case b.get(0):b.val(a.val("s"));break;case x.get(0):x.val(a.val("v"));break;case w.get(0):case i&&i.get(0):w.val(a.val("hex")),i&&i.val(a.val("hex"));break;case S&&S.get(0):S.val(a.val("ahex").substring(6))}}function h(e){switch(e.keyCode){case 9:case 16:case 29:case 37:case 39:return!1;case"c".charCodeAt():case"v".charCodeAt():if(e.ctrlKey)return!1}return!0}function f(e,t,n){return""===e||isNaN(e)?t:e>n?n:e<t?t:e}function p(e,t){var n=e.val("all");t!==g.get(0)&&g.val(Nr(n)?"":n.r),t!==m.get(0)&&m.val(Nr(n)?"":n.g),t!==v.get(0)&&v.val(Nr(n)?"":n.b),y&&t!==y.get(0)&&y.val(Nr(n)?"":Er(100*n.a/255,o)),t!==_.get(0)&&_.val(Nr(n)?"":n.h),t!==b.get(0)&&b.val(Nr(n)?"":n.s),t!==x.get(0)&&x.val(Nr(n)?"":n.v),t!==w.get(0)&&(i&&t!==i.get(0)||!i)&&w.val(Nr(n)?"":n.hex),i&&t!==i.get(0)&&t!==w.get(0)&&i.val(Nr(n)?"":n.hex),S&&t!==S.get(0)&&S.val(Nr(n)?"":n.ahex.substring(6))}var g=l.eq(3),m=l.eq(4),v=l.eq(5),y=l.length>7?l.eq(6):null,_=l.eq(0),b=l.eq(1),x=l.eq(2),w=l.eq(l.length>7?7:6),S=l.length>7?l.eq(8):null;t.extend(!0,s,{destroy:function(){g.add(m).add(v).add(y).add(_).add(b).add(x).add(w).add(i).add(S).unbind("keyup",u).unbind("blur",d),g.add(m).add(v).add(y).add(_).add(b).add(x).unbind("keydown",c),a.unbind(p),g=null,m=null,v=null,y=null,_=null,b=null,x=null,w=null,S=null}}),g.add(m).add(v).add(y).add(_).add(b).add(x).add(w).add(i).add(S).bind("keyup",u).bind("blur",d),g.add(m).add(v).add(y).add(_).add(b).add(x).bind("keydown",c),a.bind(p)};t.jPicker={List:[],Color:function(n){var r=this;function a(e){for(var t=0;t<g.length;t++)g[t].call(r,r,e)}function i(t,n,g){var m=Boolean(n);if(m&&""===n.ahex&&(n.ahex="00000000"),!m){var v;if((Nr(t)||""===t)&&(t="all"),Nr(o))return null;switch(t.toLowerCase()){case"ahex":return l.rgbaToHex({r:o,g:s,b:c,a:u});case"hex":return i("ahex").substring(0,6);case"all":return{r:o,g:s,b:c,a:u,h:d,s:h,v:p,hex:i.call(r,"hex"),ahex:i.call(r,"ahex")};default:v={};var y=t.length;f(t).forEach((function(e){switch(e){case"r":1===y?v=o:v.r=o;break;case"g":1===y?v=s:v.g=s;break;case"b":1===y?v=c:v.b=c;break;case"a":1===y?v=u:v.a=u;break;case"h":1===y?v=d:v.h=d;break;case"s":1===y?v=h:v.s=h;break;case"v":1===y?v=p:v.v=p}}))}return"object"!==e(v)||Object.keys(v).length?v:i.call(r,"all")}if(Nr(g)||g!==r){Nr(t)&&(t="");var _=!1;if(Nr(n))return Nr(o)||(o=null,_=!0),Nr(s)||(s=null,_=!0),Nr(c)||(c=null,_=!0),Nr(u)||(u=null,_=!0),Nr(d)||(d=null,_=!0),Nr(h)||(h=null,_=!0),Nr(p)||(p=null,_=!0),void(_&&a.call(r,g||r));switch(t.toLowerCase()){case"ahex":case"hex":var b=l.hexToRgba(n&&(n.ahex||n.hex)||n||"none");i.call(r,"rgba",{r:b.r,g:b.g,b:b.b,a:"ahex"===t?b.a:Nr(u)?255:u},g);break;default:if(n&&(!Nr(n.ahex)||!Nr(n.hex)))return void i.call(r,"ahex",n.ahex||n.hex||"00000000",g);var x={},w=!1,S=!1;if(void 0===n.r||t.includes("r")||(t+="r"),void 0===n.g||t.includes("g")||(t+="g"),void 0===n.b||t.includes("b")||(t+="b"),void 0===n.a||t.includes("a")||(t+="a"),void 0===n.h||t.includes("h")||(t+="h"),void 0===n.s||t.includes("s")||(t+="s"),void 0===n.v||t.includes("v")||(t+="v"),f(t).forEach((function(e){switch(e){case"r":if(S)return;w=!0,x.r=n.r&&0|n.r||0|n||0,x.r<0?x.r=0:x.r>255&&(x.r=255),o!==x.r&&(o=x.r,_=!0);break;case"g":if(S)return;w=!0,x.g=n&&n.g&&0|n.g||n&&0|n||0,x.g<0?x.g=0:x.g>255&&(x.g=255),s!==x.g&&(s=x.g,_=!0);break;case"b":if(S)return;w=!0,x.b=n&&n.b&&0|n.b||n&&0|n||0,x.b<0?x.b=0:x.b>255&&(x.b=255),c!==x.b&&(c=x.b,_=!0);break;case"a":x.a=n&&!Nr(n.a)?0|n.a:0|n,x.a<0?x.a=0:x.a>255&&(x.a=255),u!==x.a&&(u=x.a,_=!0);break;case"h":if(w)return;S=!0,x.h=n&&n.h&&0|n.h||n&&0|n||0,x.h<0?x.h=0:x.h>360&&(x.h=360),d!==x.h&&(d=x.h,_=!0);break;case"s":if(w)return;S=!0,x.s=Nr(n.s)?0|n:0|n.s,x.s<0?x.s=0:x.s>100&&(x.s=100),h!==x.s&&(h=x.s,_=!0);break;case"v":if(w)return;S=!0,x.v=Nr(n.v)?0|n:0|n.v,x.v<0?x.v=0:x.v>100&&(x.v=100),p!==x.v&&(p=x.v,_=!0)}})),_){if(w){o=o||0,s=s||0,c=c||0;var k=l.rgbToHsv({r:o,g:s,b:c});d=k.h,h=k.s,p=k.v}else if(S){d=d||0,h=Nr(h)?100:h,p=Nr(p)?100:p;var C=l.hsvToRgb({h:d,s:h,v:p});o=C.r,s=C.g,c=C.b}u=Nr(u)?255:u,a.call(r,g||r)}}}}var o,s,c,u,d,h,p,g=[];t.extend(!0,r,{val:i,bind:function(e){"function"==typeof e&&g.push(e)},unbind:function(e){if("function"==typeof e)for(var t;t=g.includes(e);)g.splice(t,1)},destroy:function(){g=null}}),n&&(Nr(n.ahex)?Nr(n.hex)?Nr(n.r)||Nr(n.g)||Nr(n.b)?Nr(n.h)||Nr(n.s)||Nr(n.v)||i("hsv"+(Nr(n.a)?"":"a"),n):i("rgb"+(Nr(n.a)?"":"a"),n):i((Nr(n.a)?"":"a")+"hex",Nr(n.a)?n:{ahex:n.hex+l.intToHex(n.a)}):i("ahex",n))},ColorMethods:{hexToRgba:function(e){if(""===e||"none"===e)return{r:null,g:null,b:null,a:null};var t="00",n="00",r="00",a="255";return 6===(e=this.validateHex(e)).length&&(e+="ff"),e.length>6?(t=e.substring(0,2),n=e.substring(2,4),r=e.substring(4,6),a=e.substring(6,e.length)):(e.length>4&&(t=e.substring(4,e.length),e=e.substring(0,4)),e.length>2&&(n=e.substring(2,e.length),e=e.substring(0,2)),e.length>0&&(r=e.substring(0,e.length))),{r:this.hexToInt(t),g:this.hexToInt(n),b:this.hexToInt(r),a:this.hexToInt(a)}},validateHex:function(e){return(e=e.toLowerCase().replace(/[^a-f\d]/g,"")).length>8&&(e=e.substring(0,8)),e},rgbaToHex:function(e){return this.intToHex(e.r)+this.intToHex(e.g)+this.intToHex(e.b)+this.intToHex(e.a)},intToHex:function(e){var t=(0|e).toString(16);return 1===t.length&&(t="0"+t),t.toLowerCase()},hexToInt:function(e){return Number.parseInt(e,16)},rgbToHsv:function(e){var t,n=e.r/255,r=e.g/255,a=e.b/255,i={h:0,s:0,v:0},o=0,s=0;return n>=r&&n>=a?(s=n,o=r>a?a:r):r>=a&&r>=n?(s=r,o=n>a?a:n):(s=a,o=r>n?n:r),i.v=s,i.s=s?(s-o)/s:0,i.s?(t=s-o,i.h=n===s?(r-a)/t:r===s?2+(a-n)/t:4+(n-r)/t,i.h=Number.parseInt(60*i.h),i.h<0&&(i.h+=360)):i.h=0,i.s=100*i.s|0,i.v=100*i.v|0,i},hsvToRgb:function(e){var t={r:0,g:0,b:0,a:100},n=e.h,r=e.s,a=e.v;if(0===r)t.r=t.g=t.b=0===a?0:255*a/100|0;else{360===n&&(n=0);var i=0|(n/=60),o=n-i,s=(a/=100)*(1-(r/=100)),l=a*(1-r*o),c=a*(1-r*(1-o));switch(i){case 0:t.r=a,t.g=c,t.b=s;break;case 1:t.r=l,t.g=a,t.b=s;break;case 2:t.r=s,t.g=a,t.b=c;break;case 3:t.r=s,t.g=l,t.b=a;break;case 4:t.r=c,t.g=s,t.b=a;break;case 5:t.r=a,t.g=s,t.b=l}t.r=255*t.r|0,t.g=255*t.g|0,t.b=255*t.b|0}return t}}};var i=t.jPicker,o=i.Color,s=i.List,l=i.ColorMethods;return t.fn.jPicker=function(r,i,c,u){return this.each((function(){var d=this,h=t.extend(!0,{},t.fn.jPicker.defaults,r);"input"===t(d).get(0).nodeName.toLowerCase()&&(t.extend(!0,h,{window:{bindToInput:!0,expandable:!0,input:t(d)}}),""===t(d).val()?(h.color.active=new o({hex:null}),h.color.current=new o({hex:null})):l.validateHex(t(d).val())&&(h.color.active=new o({hex:t(d).val(),a:h.color.active.val("a")}),h.color.current=new o({hex:t(d).val(),a:h.color.active.val("a")}))),h.window.expandable?t(d).after('<span class="jPicker"><span class="Icon"><span class="Color"> </span><span class="Alpha"> </span><span class="Image" title="Click To Open Color Picker"> </span><span class="Container"> </span></span></span>'):h.window.liveUpdate=!1;var f=Number.parseFloat(navigator.appVersion.split("MSIE")[1])<7&&document.body.filters;function p(e){var t,n,r=z.active,a=r.val("hex");switch(h.color.mode=e,e){case"h":if(setTimeout((function(){w.call(d,K,"transparent"),k.call(d,$,0),C.call(d,$,100),k.call(d,J,260),C.call(d,J,100),w.call(d,Z,"transparent"),k.call(d,te,0),C.call(d,te,100),k.call(d,ne,260),C.call(d,ne,100),k.call(d,re,260),C.call(d,re,100),k.call(d,ae,260),C.call(d,ae,100),k.call(d,oe,260),C.call(d,oe,100)}),0),se.range("all",{minX:0,maxX:100,minY:0,maxY:100}),le.range("rangeY",{minY:0,maxY:360}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("s"),y:100-r.val("v")},se),le.val("y",360-r.val("h"),le);break;case"s":if(setTimeout((function(){w.call(d,K,"transparent"),k.call(d,$,-260),k.call(d,J,-520),k.call(d,te,-260),k.call(d,ne,-520),k.call(d,oe,260),C.call(d,oe,100)}),0),se.range("all",{minX:0,maxX:360,minY:0,maxY:100}),le.range("rangeY",{minY:0,maxY:100}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("h"),y:100-r.val("v")},se),le.val("y",100-r.val("s"),le);break;case"v":if(setTimeout((function(){w.call(d,K,"000000"),k.call(d,$,-780),k.call(d,J,260),w.call(d,Z,a),k.call(d,te,-520),k.call(d,ne,260),C.call(d,ne,100),k.call(d,oe,260),C.call(d,oe,100)}),0),se.range("all",{minX:0,maxX:360,minY:0,maxY:100}),le.range("rangeY",{minY:0,maxY:100}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("h"),y:100-r.val("s")},se),le.val("y",100-r.val("v"),le);break;case"r":if(t=-1040,n=-780,se.range("all",{minX:0,maxX:255,minY:0,maxY:255}),le.range("rangeY",{minY:0,maxY:255}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("b"),y:255-r.val("g")},se),le.val("y",255-r.val("r"),le);break;case"g":if(t=-1560,n=-1820,se.range("all",{minX:0,maxX:255,minY:0,maxY:255}),le.range("rangeY",{minY:0,maxY:255}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("b"),y:255-r.val("r")},se),le.val("y",255-r.val("g"),le);break;case"b":if(t=-2080,n=-2860,se.range("all",{minX:0,maxX:255,minY:0,maxY:255}),le.range("rangeY",{minY:0,maxY:255}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("r"),y:255-r.val("g")},se),le.val("y",255-r.val("b"),le);break;case"a":if(setTimeout((function(){w.call(d,K,"transparent"),k.call(d,$,-260),k.call(d,J,-520),k.call(d,te,260),k.call(d,ne,260),C.call(d,ne,100),k.call(d,oe,0),C.call(d,oe,100)}),0),se.range("all",{minX:0,maxX:360,minY:0,maxY:100}),le.range("rangeY",{minY:0,maxY:255}),Nr(r.val("ahex")))break;se.val("xy",{x:r.val("h"),y:100-r.val("v")},se),le.val("y",255-r.val("a"),le);break;default:throw new Error("Invalid Mode")}switch(e){case"h":break;case"s":case"v":case"a":setTimeout((function(){C.call(d,$,100),C.call(d,te,100),k.call(d,re,260),C.call(d,re,100),k.call(d,ae,260),C.call(d,ae,100)}),0);break;case"r":case"g":case"b":setTimeout((function(){w.call(d,K,"transparent"),w.call(d,Z,"transparent"),C.call(d,te,100),C.call(d,$,100),k.call(d,$,t),k.call(d,J,t-260),k.call(d,te,n-780),k.call(d,ne,n-520),k.call(d,re,n),k.call(d,ae,n-260),k.call(d,oe,260),C.call(d,oe,100)}),0)}Nr(r.val("ahex"))||g.call(d,r)}function g(e,t){(Nr(t)||t!==le&&t!==se)&&y.call(d,e,t),setTimeout((function(){_.call(d,e),b.call(d,e),x.call(d,e)}),0)}function m(e,t){var n=z.active;if(t===se||!Nr(n.val())){var r=e.val("all");switch(h.color.mode){case"h":n.val("sv",{s:r.x,v:100-r.y},t);break;case"s":case"a":n.val("hv",{h:r.x,v:100-r.y},t);break;case"v":n.val("hs",{h:r.x,s:100-r.y},t);break;case"r":n.val("gb",{g:255-r.y,b:r.x},t);break;case"g":n.val("rb",{r:255-r.y,b:r.x},t);break;case"b":n.val("rg",{r:r.x,g:255-r.y},t)}}}function v(e,t){var n=z.active;if(t===le||!Nr(n.val()))switch(h.color.mode){case"h":n.val("h",{h:360-e.val("y")},t);break;case"s":n.val("s",{s:100-e.val("y")},t);break;case"v":n.val("v",{v:100-e.val("y")},t);break;case"r":n.val("r",{r:255-e.val("y")},t);break;case"g":n.val("g",{g:255-e.val("y")},t);break;case"b":n.val("b",{b:255-e.val("y")},t);break;case"a":n.val("a",255-e.val("y"),t)}}function y(e,t){if(t!==se)switch(h.color.mode){case"h":var n=e.val("sv");se.val("xy",{x:Nr(n)?100:n.s,y:100-(Nr(n)?100:n.v)},t);break;case"s":case"a":var r=e.val("hv");se.val("xy",{x:r&&r.h||0,y:100-(Nr(r)?100:r.v)},t);break;case"v":var a=e.val("hs");se.val("xy",{x:a&&a.h||0,y:100-(Nr(a)?100:a.s)},t);break;case"r":var i=e.val("bg");se.val("xy",{x:i&&i.b||0,y:255-(i&&i.g||0)},t);break;case"g":var o=e.val("br");se.val("xy",{x:o&&o.b||0,y:255-(o&&o.r||0)},t);break;case"b":var s=e.val("rg");se.val("xy",{x:s&&s.r||0,y:255-(s&&s.g||0)},t)}if(t!==le)switch(h.color.mode){case"h":le.val("y",360-(e.val("h")||0),t);break;case"s":var l=e.val("s");le.val("y",100-(Nr(l)?100:l),t);break;case"v":var c=e.val("v");le.val("y",100-(Nr(c)?100:c),t);break;case"r":le.val("y",255-(e.val("r")||0),t);break;case"g":le.val("y",255-(e.val("g")||0),t);break;case"b":le.val("y",255-(e.val("b")||0),t);break;case"a":var u=e.val("a");le.val("y",255-(Nr(u)?255:u),t)}}function _(e){try{var t=e.val("all");ue.css({backgroundColor:t&&"#"+t.hex||"transparent"}),C.call(d,ue,t&&Er(100*t.a/255,4)||0)}catch(e){}}function b(e){switch(h.color.mode){case"h":w.call(d,K,new o({h:e.val("h")||0,s:100,v:100}).val("hex"));break;case"s":case"a":var t=e.val("s");C.call(d,J,100-(Nr(t)?100:t));break;case"v":var n=e.val("v");C.call(d,$,Nr(n)?100:n);break;case"r":C.call(d,J,Er((e.val("r")||0)/255*100,4));break;case"g":C.call(d,J,Er((e.val("g")||0)/255*100,4));break;case"b":C.call(d,J,Er((e.val("b")||0)/255*100))}var r=e.val("a");C.call(d,ee,Er(100*(255-(r||0))/255,4))}function x(e){switch(h.color.mode){case"h":var t=e.val("a");C.call(d,ie,Er(100*(255-(t||0))/255,4));break;case"s":var n=e.val("hva"),r=new o({h:n&&n.h||0,s:100,v:Nr(n)?100:n.v});w.call(d,Z,r.val("hex")),C.call(d,ne,100-(Nr(n)?100:n.v)),C.call(d,ie,Er(100*(255-(n&&n.a||0))/255,4));break;case"v":var a=e.val("hsa"),i=new o({h:a&&a.h||0,s:Nr(a)?100:a.s,v:100});w.call(d,Z,i.val("hex")),C.call(d,ie,Er(100*(255-(a&&a.a||0))/255,4));break;case"r":case"g":case"b":var s=e.val("rgba"),l=0,c=0;"r"===h.color.mode?(l=s&&s.b||0,c=s&&s.g||0):"g"===h.color.mode?(l=s&&s.b||0,c=s&&s.r||0):"b"===h.color.mode&&(l=s&&s.r||0,c=s&&s.g||0);var u=c>l?l:c;C.call(d,ne,l>c?Er((l-c)/(255-c)*100,4):0),C.call(d,re,c>l?Er((c-l)/(255-l)*100,4):0),C.call(d,ae,Er(u/255*100,4)),C.call(d,ie,Er(100*(255-(s&&s.a||0))/255,4));break;case"a":var f=e.val("a");w.call(d,Z,e.val("hex")||"000000"),C.call(d,ie,Nr(f)?100:0),C.call(d,oe,Nr(f)?0:100)}}function w(e,t){e.css({backgroundColor:t&&6===t.length&&"#"+t||"transparent"})}function S(e,t){f&&(t.includes("AlphaBar.png")||t.includes("Bars.png")||t.includes("Maps.png"))?(e.attr("pngSrc",t),e.css({backgroundImage:"none",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+t+"', sizingMethod='scale')"})):e.css({backgroundImage:"url('"+t+"')"})}function k(e,t){e.css({top:t+"px"})}function C(e,t){if(e.css({visibility:t>0?"visible":"hidden"}),t>0&&t<100)if(f){var n=e.attr("pngSrc");!Nr(n)&&(n.includes("AlphaBar.png")||n.includes("Bars.png")||n.includes("Maps.png"))?e.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+n+"', sizingMethod='scale') progid:DXImageTransform.Microsoft.Alpha(opacity="+t+")"}):e.css({opacity:Er(t/100,4)})}else e.css({opacity:Er(t/100,4)});else if(0===t||100===t)if(f){var r=e.attr("pngSrc");!Nr(r)&&(r.includes("AlphaBar.png")||r.includes("Bars.png")||r.includes("Maps.png"))?e.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+r+"', sizingMethod='scale')"}):e.css({opacity:""})}else e.css({opacity:""})}function A(){z.active.val("ahex",z.current.val("ahex"))}function E(){z.current.val("ahex",z.active.val("ahex"))}function G(e){t(this).parents("tbody:first").find('input:radio[value!="'+e.target.value+'"]').removeAttr("checked"),p.call(d,e.target.value)}function P(){A.call(d)}function N(){A.call(d),h.window.expandable&&U.call(d),"function"==typeof u&&u.call(d,z.active,fe)}function I(){E.call(d),h.window.expandable&&U.call(d),"function"==typeof i&&i.call(d,z.active,he)}function T(){B.call(d)}function L(e){var t=e.val("hex");de.css({backgroundColor:t&&"#"+t||"transparent"}),C.call(d,de,Er(100*(e.val("a")||0)/255,4))}function M(e){var t=e.val("hex"),n=e.val("va");ge.css({backgroundColor:t&&"#"+t||"transparent"}),C.call(d,me,Er(100*(255-(n&&n.a||0))/255,4)),h.window.bindToInput&&h.window.updateInputColor&&h.window.input.css({backgroundColor:t&&"#"+t||"transparent",color:Nr(n)||n.v>75?"#000000":"#ffffff"})}function O(e){q=Number.parseInt(Q.css("left")),Y=Number.parseInt(Q.css("top")),W=e.pageX,X=e.pageY,t(document).bind("mousemove",j).bind("mouseup",V),e.preventDefault()}function j(e){return Q.css({left:q-(W-e.pageX)+"px",top:Y-(X-e.pageY)+"px"}),h.window.expandable&&!t.support.boxModel&&Q.prev().css({left:Q.css("left"),top:Q.css("top")}),e.stopPropagation(),e.preventDefault(),!1}function V(e){return t(document).unbind("mousemove",j).unbind("mouseup",V),e.stopPropagation(),e.preventDefault(),!1}function R(e){return e.preventDefault(),e.stopPropagation(),z.active.val("ahex",t(this).attr("title")||null,e.target),!1}function B(){function e(){if(h.window.expandable&&!t.support.boxModel){var e=Q.find("table:first");Q.before("<iframe/>"),Q.prev().css({width:e.width(),height:Q.height(),opacity:0,position:"absolute",left:Q.css("left"),top:Q.css("top")})}}switch(z.current.val("ahex",z.active.val("ahex")),h.window.expandable&&(t(document.body).children("div.jPicker.Container").css({zIndex:10}),Q.css({zIndex:20})),h.window.effects.type){case"fade":Q.fadeIn(h.window.effects.speed.show,e);break;case"slide":Q.slideDown(h.window.effects.speed.show,e);break;case"show":default:Q.show(h.window.effects.speed.show,e)}}function U(){function e(){h.window.expandable&&Q.css({zIndex:10}),h.window.expandable&&!t.support.boxModel&&Q.prev().remove()}switch(h.window.effects.type){case"fade":Q.fadeOut(h.window.effects.speed.hide,e);break;case"slide":Q.slideUp(h.window.effects.speed.hide,e);break;case"show":default:Q.hide(h.window.effects.speed.hide,e)}}function F(){var r=h.window,i=r.expandable?t(d).next().find(".Container:first"):null;(Q=r.expandable?t("<div/>"):t(d)).addClass("jPicker Container"),r.expandable&&Q.hide(),Q.get(0).onselectstart=function(e){return"input"===e.target.nodeName.toLowerCase()};var s=z.active.val("all");r.alphaPrecision<0?r.alphaPrecision=0:r.alphaPrecision>2&&(r.alphaPrecision=2);var l='<table class="jPicker" cellpadding="0" cellspacing="0">\n <tbody>\n '.concat(r.expandable?'<tr><td class="Move" colspan="5"> </td></tr>':"",'\n <tr>\n <td rowspan="9"><h2 class="Title">').concat(r.title||H.text.title,'</h2><div class="Map"><span class="Map1"> </span><span class="Map2"> </span><span class="Map3"> </span><img src="').concat(D.clientPath+D.colorMap.arrow.file,'" class="Arrow"/></div></td>\n <td rowspan="9"><div class="Bar"><span class="Map1"> </span><span class="Map2"> </span><span class="Map3"> </span><span class="Map4"> </span><span class="Map5"> </span><span class="Map6"> </span><img src="').concat(D.clientPath+D.colorBar.arrow.file,'" class="Arrow"/></div></td>\n <td colspan="2" class="Preview">').concat(H.text.newColor,'<div><span class="Active" title="').concat(H.tooltips.colors.newColor,'"> </span><span class="Current" title="').concat(H.tooltips.colors.currentColor,'"> </span></div>').concat(H.text.currentColor,'</td>\n <td rowspan="9" class="Button"><input type="button" class="Ok" value="').concat(H.text.ok,'" title="').concat(H.tooltips.buttons.ok,'"/><input type="button" class="Cancel" value="').concat(H.text.cancel,'" title="').concat(H.tooltips.buttons.cancel,'"/><hr/><div class="Grid"> </div></td>\n </tr>\n <tr class="Hue">\n <td class="Radio"><label title="').concat(H.tooltips.hue.radio,'"><input type="radio" value="h"').concat("h"===h.color.mode?' checked="checked"':"",'/>H:</label></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.h,'" title="').concat(H.tooltips.hue.textbox,'"/> °</td>\n </tr>\n <tr class="Saturation">\n <td class="Radio"><label title="').concat(H.tooltips.saturation.radio,'"><input type="radio" value="s"').concat("s"===h.color.mode?' checked="checked"':"",'/>S:</label></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.s,'" title="').concat(H.tooltips.saturation.textbox,'"/> %</td>\n </tr>\n <tr class="Value">\n <td class="Radio"><label title="').concat(H.tooltips.value.radio,'"><input type="radio" value="v"').concat("v"===h.color.mode?' checked="checked"':"",'/>V:</label><br/><br/></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.v,'" title="').concat(H.tooltips.value.textbox,'"/> %<br/><br/></td>\n </tr>\n <tr class="Red">\n <td class="Radio"><label title="').concat(H.tooltips.red.radio,'"><input type="radio" value="r"').concat("r"===h.color.mode?' checked="checked"':"",'/>R:</label></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.r,'" title="').concat(H.tooltips.red.textbox,'"/></td>\n </tr>\n <tr class="Green">\n <td class="Radio"><label title="').concat(H.tooltips.green.radio,'"><input type="radio" value="g"').concat("g"===h.color.mode?' checked="checked"':"",'/>G:</label></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.g,'" title="').concat(H.tooltips.green.textbox,'"/></td>\n </tr>\n <tr class="Blue">\n <td class="Radio"><label title="').concat(H.tooltips.blue.radio,'"><input type="radio" value="b"').concat("b"===h.color.mode?' checked="checked"':"",'/>B:</label></td>\n <td class="Text"><input type="text" maxlength="3" value="').concat(Nr(s)?"":s.b,'" title="').concat(H.tooltips.blue.textbox,'"/></td>\n </tr>\n <tr class="Alpha">\n <td class="Radio">').concat(r.alphaSupport?'<label title="'.concat(H.tooltips.alpha.radio,'"><input type="radio" value="a"').concat("a"===h.color.mode?' checked="checked"':"","/>A:</label>"):" ",'</td>\n <td class="Text">').concat(r.alphaSupport?'<input type="text" maxlength="'.concat(3+r.alphaPrecision,'" value="').concat(Nr(s)?"":Er(100*s.a/255,r.alphaPrecision),'" title="').concat(H.tooltips.alpha.textbox,'"/> %'):" ",'</td>\n </tr>\n <tr class="Hex">\n <td colspan="2" class="Text"><label title="').concat(H.tooltips.hex.textbox,'">#:<input type="text" maxlength="6" class="Hex" value="').concat(Nr(s)?"":s.hex,'"/></label>').concat(r.alphaSupport?'<input type="text" maxlength="2" class="AHex" value="'.concat(Nr(s)?"":s.ahex.substring(6),'" title="').concat(H.tooltips.hex.alpha,'"/></td>'):" ","\n </tr>\n </tbody></table>");r.expandable?(Q.html(l),t(document.body).children("div.jPicker.Container").length?t(document.body).children("div.jPicker.Container:last").after(Q):t(document.body).prepend(Q),Q.mousedown((function(){t(document.body).children("div.jPicker.Container").css({zIndex:10}),Q.css({zIndex:20})})),Q.css({left:"left"===r.position.x?i.offset().left-530-("center"===r.position.y?25:0)+"px":"center"===r.position.x?i.offset().left-260+"px":"right"===r.position.x?i.offset().left-10+("center"===r.position.y?25:0)+"px":"screenCenter"===r.position.x?(t(document).width()>>1)-260+"px":i.offset().left+Number.parseInt(r.position.x)+"px",position:"absolute",top:"top"===r.position.y?i.offset().top-312+"px":"center"===r.position.y?i.offset().top-156+"px":"bottom"===r.position.y?i.offset().top+25+"px":i.offset().top+Number.parseInt(r.position.y)+"px"})):(Q=t(d)).html(l);var u=Q.find("tbody:first");K=u.find("div.Map:first"),Z=u.find("div.Bar:first");var f=K.find("span"),y=Z.find("span");$=f.filter(".Map1:first"),J=f.filter(".Map2:first"),ee=f.filter(".Map3:first"),te=y.filter(".Map1:first"),ne=y.filter(".Map2:first"),re=y.filter(".Map3:first"),ae=y.filter(".Map4:first"),ie=y.filter(".Map5:first"),oe=y.filter(".Map6:first"),(se=new n(K,{map:{width:D.colorMap.width,height:D.colorMap.height},arrow:{image:D.clientPath+D.colorMap.arrow.file,width:D.colorMap.arrow.width,height:D.colorMap.arrow.height}})).bind(m),(le=new n(Z,{map:{width:D.colorBar.width,height:D.colorBar.height},arrow:{image:D.clientPath+D.colorBar.arrow.file,width:D.colorBar.arrow.width,height:D.colorBar.arrow.height}})).bind(v),ce=new a(u,z.active,r.expandable&&r.bindToInput?r.input:null,r.alphaPrecision);var _=Nr(s)?null:s.hex,b=u.find(".Preview"),x=u.find(".Button");if(ue=b.find(".Active:first").css({backgroundColor:_&&"#"+_||"transparent"}),de=b.find(".Current:first").css({backgroundColor:_&&"#"+_||"transparent"}).bind("click",P),C.call(d,de,Er(100*z.current.val("a")/255,4)),he=x.find(".Ok:first").bind("click",I),fe=x.find(".Cancel:first").bind("click",N),pe=x.find(".Grid:first"),setTimeout((function(){S.call(d,$,D.clientPath+"Maps.png"),S.call(d,J,D.clientPath+"Maps.png"),S.call(d,ee,D.clientPath+"map-opacity.png"),S.call(d,te,D.clientPath+"Bars.png"),S.call(d,ne,D.clientPath+"Bars.png"),S.call(d,re,D.clientPath+"Bars.png"),S.call(d,ae,D.clientPath+"Bars.png"),S.call(d,ie,D.clientPath+"bar-opacity.png"),S.call(d,oe,D.clientPath+"AlphaBar.png"),S.call(d,b.find("div:first"),D.clientPath+"preview-opacity.png")}),0),u.find("td.Radio input").bind("click",G),z.quickList&&z.quickList.length>0){for(var w="",k=0;k<z.quickList.length;k++){"string"===e(z.quickList[k]).toString().toLowerCase()&&(z.quickList[k]=new o({hex:z.quickList[k]}));var A=z.quickList[k].val("a"),E=z.quickList[k].val("ahex");!r.alphaSupport&&E&&(E=E.substring(0,6)+"ff");var j=z.quickList[k].val("hex");E||(E="00000000"),w+='<span class="QuickColor" title="#'+E+'" style="background-color:'+(j&&"#"+j||"")+";"+(j?"":"background-image:url("+D.clientPath+"NoColor.png)")+(r.alphaSupport&&A&&A<255?";opacity:"+Er(A/255,4)+";filter:Alpha(opacity="+Er(A/2.55,4)+")":"")+'"> </span>'}S.call(d,pe,D.clientPath+"bar-opacity.png"),pe.html(w),pe.find(".QuickColor").click(R)}p.call(d,h.color.mode),z.active.bind(g),"function"==typeof c&&z.active.bind(c),z.current.bind(L),r.expandable?(d.icon=i.parents(".Icon:first"),ge=d.icon.find(".Color:first").css({backgroundColor:_&&"#"+_||"transparent"}),me=d.icon.find(".Alpha:first"),S.call(d,me,D.clientPath+"bar-opacity.png"),C.call(d,me,Er(100*(255-(Nr(s)?0:s.a))/255,4)),ve=d.icon.find(".Image:first").css({backgroundImage:"url('"+D.clientPath+D.picker.file+"')"}).bind("click",T),r.bindToInput&&r.updateInputColor&&r.input.css({backgroundColor:_&&"#"+_||"transparent",color:Nr(s)||s.v>75?"#000000":"#ffffff"}),ye=u.find(".Move:first").bind("mousedown",O),z.active.bind(M)):B.call(d)}var D=h.images,H=h.localization,z={active:"string"===e(h.color.active).toString().toLowerCase()?new o({ahex:!h.window.alphaSupport&&h.color.active?h.color.active.substring(0,6)+"ff":h.color.active}):new o({ahex:!h.window.alphaSupport&&h.color.active.val("ahex")?h.color.active.val("ahex").substring(0,6)+"ff":h.color.active.val("ahex")}),current:"string"===e(h.color.active).toString().toLowerCase()?new o({ahex:!h.window.alphaSupport&&h.color.active?h.color.active.substring(0,6)+"ff":h.color.active}):new o({ahex:!h.window.alphaSupport&&h.color.active.val("ahex")?h.color.active.val("ahex").substring(0,6)+"ff":h.color.active.val("ahex")}),quickList:h.color.quickList};"function"!=typeof i&&(i=null),"function"!=typeof c&&(c=null),"function"!=typeof u&&(u=null);var q=null,Y=null,W=null,X=null,Q=null,K=null,Z=null,$=null,J=null,ee=null,te=null,ne=null,re=null,ae=null,ie=null,oe=null,se=null,le=null,ce=null,ue=null,de=null,he=null,fe=null,pe=null,ge=null,me=null,ve=null,ye=null;t.extend(!0,d,{commitCallback:i,liveCallback:c,cancelCallback:u,color:z,show:B,hide:U,destroy:function(){Q.find("td.Radio input").unbind("click",G),de.unbind("click",P),fe.unbind("click",N),he.unbind("click",I),h.window.expandable&&(ve.unbind("click",T),ye.unbind("mousedown",O),d.icon=null),Q.find(".QuickColor").unbind("click",R),K=null,Z=null,$=null,J=null,ee=null,te=null,ne=null,re=null,ae=null,ie=null,oe=null,se.destroy(),se=null,le.destroy(),le=null,ce.destroy(),ce=null,ue=null,de=null,he=null,fe=null,pe=null,i=null,u=null,c=null,Q.html("");for(var e=0;e<s.length;e++)s[e]===d&&(s.splice(e,1),e--)}}),s.push(d),setTimeout((function(){F.call(d)}),0)}))},t.fn.jPicker.defaults={window:{title:null,effects:{type:"slide",speed:{show:"slow",hide:"fast"}},position:{x:"screenCenter",y:"top"},expandable:!1,liveUpdate:!0,alphaSupport:!1,alphaPrecision:0,updateInputColor:!0},color:{mode:"h",active:new o({ahex:"#ffcc00ff"}),quickList:[new o({h:360,s:33,v:100}),new o({h:360,s:66,v:100}),new o({h:360,s:100,v:100}),new o({h:360,s:100,v:75}),new o({h:360,s:100,v:50}),new o({h:180,s:0,v:100}),new o({h:30,s:33,v:100}),new o({h:30,s:66,v:100}),new o({h:30,s:100,v:100}),new o({h:30,s:100,v:75}),new o({h:30,s:100,v:50}),new o({h:180,s:0,v:90}),new o({h:60,s:33,v:100}),new o({h:60,s:66,v:100}),new o({h:60,s:100,v:100}),new o({h:60,s:100,v:75}),new o({h:60,s:100,v:50}),new o({h:180,s:0,v:80}),new o({h:90,s:33,v:100}),new o({h:90,s:66,v:100}),new o({h:90,s:100,v:100}),new o({h:90,s:100,v:75}),new o({h:90,s:100,v:50}),new o({h:180,s:0,v:70}),new o({h:120,s:33,v:100}),new o({h:120,s:66,v:100}),new o({h:120,s:100,v:100}),new o({h:120,s:100,v:75}),new o({h:120,s:100,v:50}),new o({h:180,s:0,v:60}),new o({h:150,s:33,v:100}),new o({h:150,s:66,v:100}),new o({h:150,s:100,v:100}),new o({h:150,s:100,v:75}),new o({h:150,s:100,v:50}),new o({h:180,s:0,v:50}),new o({h:180,s:33,v:100}),new o({h:180,s:66,v:100}),new o({h:180,s:100,v:100}),new o({h:180,s:100,v:75}),new o({h:180,s:100,v:50}),new o({h:180,s:0,v:40}),new o({h:210,s:33,v:100}),new o({h:210,s:66,v:100}),new o({h:210,s:100,v:100}),new o({h:210,s:100,v:75}),new o({h:210,s:100,v:50}),new o({h:180,s:0,v:30}),new o({h:240,s:33,v:100}),new o({h:240,s:66,v:100}),new o({h:240,s:100,v:100}),new o({h:240,s:100,v:75}),new o({h:240,s:100,v:50}),new o({h:180,s:0,v:20}),new o({h:270,s:33,v:100}),new o({h:270,s:66,v:100}),new o({h:270,s:100,v:100}),new o({h:270,s:100,v:75}),new o({h:270,s:100,v:50}),new o({h:180,s:0,v:10}),new o({h:300,s:33,v:100}),new o({h:300,s:66,v:100}),new o({h:300,s:100,v:100}),new o({h:300,s:100,v:75}),new o({h:300,s:100,v:50}),new o({h:180,s:0,v:0}),new o({h:330,s:33,v:100}),new o({h:330,s:66,v:100}),new o({h:330,s:100,v:100}),new o({h:330,s:100,v:75}),new o({h:330,s:100,v:50}),new o]},images:{clientPath:"/jPicker/images/",colorMap:{width:256,height:256,arrow:{file:"mappoint.gif",width:15,height:15}},colorBar:{width:20,height:256,arrow:{file:"rangearrows.gif",width:20,height:7}},picker:{file:"picker.gif",width:25,height:24}},localization:{text:{title:"Drag Markers To Pick A Color",newColor:"new",currentColor:"current",ok:"OK",cancel:"Cancel"},tooltips:{colors:{newColor:"New Color - Press “OK” To Commit",currentColor:"Click To Revert To Original Color"},buttons:{ok:"Commit To This Color Selection",cancel:"Cancel And Revert To Original Color"},hue:{radio:"Set To “Hue” Color Mode",textbox:"Enter A “Hue” Value (0-360°)"},saturation:{radio:"Set To “Saturation” Color Mode",textbox:"Enter A “Saturation” Value (0-100%)"},value:{radio:"Set To “Value” Color Mode",textbox:"Enter A “Value” Value (0-100%)"},red:{radio:"Set To “Red” Color Mode",textbox:"Enter A “Red” Value (0-255)"},green:{radio:"Set To “Green” Color Mode",textbox:"Enter A “Green” Value (0-255)"},blue:{radio:"Set To “Blue” Color Mode",textbox:"Enter A “Blue” Value (0-255)"},alpha:{radio:"Set To “Alpha” Color Mode",textbox:"Enter A “Alpha” Value (0-100)"},hex:{textbox:"Enter A “Hex” Color Value (#000000-#ffffff)",alpha:"Enter A “Alpha” Value (#00-#ff)"}}}},t}].reduce((function(e,t){return t(e)}),jQuery);Rr.loadingStylesheets.includes("svg-editor.css")||Rr.loadingStylesheets.push("svg-editor.css");Rr.loadingStylesheets.some((function(e){return!Array.isArray(e)||"images/logo.png"!==e[0]}))&&Rr.loadingStylesheets.push(["images/logo.png",{favicon:!0}]),Vr.tool_scale=1,Vr.exportWindowCt=0,Vr.langChanged=!1,Vr.showSaveWarning=!1,Vr.storagePromptState="ignore";var Br,Ur=[],Fr={lang:"",iconsize:"",bkgd_color:"#FFF",bkgd_url:"",img_save:"embed",save_notice_done:!1,export_notice_done:!1},Dr=["ext-connector.js","ext-eyedropper.js","ext-grid.js","ext-imagelib.js","ext-markers.js","ext-overview_window.js","ext-panning.js","ext-polygon.js","ext-shapes.js","ext-star.js","ext-storage.js"],Hr={canvasName:"default",canvas_expansion:3,initFill:{color:"FF0000",opacity:1},initStroke:{width:5,color:"000000",opacity:1},text:{stroke_width:0,font_size:24,font_family:"serif"},initOpacity:1,colorPickerCSS:null,initTool:"select",exportWindowType:"new",wireframe:!1,showlayers:!1,no_save_warning:!1,langPath:"locale/",extPath:"extensions/",canvgPath:"canvg/",jspdfPath:"jspdf/",imgPath:"images/",jGraduatePath:"jgraduate/images/",extIconsPath:"extensions/",dimensions:[640,480],gridSnapping:!1,gridColor:"#000",baseUnit:"px",snappingStep:10,showRulers:!0,preventAllURLConfig:!1,preventURLContentLoading:!1,lockExtensions:!1,noDefaultExtensions:!1,showGrid:!1,noStorageOnLoad:!1,forceStorage:!1,emptyStorageOnDecline:!1,avoidClientSide:!1,avoidClientSideDownload:!1,avoidClientSideOpen:!1},zr=Vr.uiStrings={},qr={},Yr=!1,Wr=!1,Xr=!1,Qr={},Kr={extensions:[],stylesheets:[],allowedOrigins:[]};function Zr(e){return $r.apply(this,arguments)}function $r(){return($r=n(regeneratorRuntime.mark((function e(t){var n,r,a=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=a.length>1&&void 0!==a[1]?a[1]:{},r=n.noAlert,!(!1!==Br.setSvgString(t))){e.next=4;break}return e.abrupt("return");case 4:if(r){e.next=8;break}return e.next=7,Rr.alert(zr.notification.errorLoadingSVG);case 7:return e.abrupt("return");case 8:throw new Error("Error loading SVG");case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Jr(e){var t=e.defaultLang,r=e.defaultName;return function(){var e=n(regeneratorRuntime.mark((function e(){var n,a,i,o,s,l,c=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=function(e){return fn("".concat(Kr.extPath,"ext-locale/").concat(i,"/").concat(e,".js"),{global:"svgEditorExtensionLocale_".concat(i,"_").concat(e.replace(/-/g,"_"))})},n=c.length>0&&void 0!==c[0]?c[0]:{},a=n.name,i=void 0===a?r:a,o=n.lang,s=void 0===o?t:o,e.prev=2,e.next=5,l(s);case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),e.abrupt("return",l("en"));case 11:case"end":return e.stop()}}),e,null,[[2,8]])})));return function(){return e.apply(this,arguments)}}()}Vr.pref=function(e,t,n){return n||t?(Qr[e]=t,void(Vr.curPrefs=Qr)):e in Qr?Qr[e]:Fr[e]},Vr.putLocale=Mr,Vr.readLang=Lr,Vr.setStrings=Tr,Vr.loadContentAndPrefs=function(){if(Kr.forceStorage||!Kr.noStorageOnLoad&&document.cookie.match(/(?:^|;\s*)svgeditstore=(?:prefsAndContent|prefsOnly)/)){if(Vr.storage&&(Kr.forceStorage||!Kr.noStorageOnLoad&&document.cookie.match(/(?:^|;\s*)svgeditstore=prefsAndContent/))){var e="svgedit-"+Kr.canvasName,t=Vr.storage.getItem(e);t&&Vr.loadFromString(t)}Object.keys(Fr).forEach((function(e){var t,n="svg-edit-"+e;if(Vr.storage){var r=Vr.storage.getItem(n);r&&(Fr[e]=String(r))}else if(window.widget)Fr[e]=window.widget.preferenceForKey(n);else{var a=document.cookie.match(new RegExp("(?:^|;\\s*)"+(t=encodeURIComponent(n),String(t).replace(/[.\\+*?[^\]$(){}=!<>|:-]/g,"\\$&"))+"=([^;]+)"));Fr[e]=a?decodeURIComponent(a[1]):""}}))}},Vr.setConfig=function(t,n){function r(t,n,r){t[n]&&"object"===e(t[n])?Rr.extend(!0,t[n],r):t[n]=r}n=n||{},Object.entries(t).forEach((function(t){var a=h(t,2),i=a[0],o=a[1];if({}.hasOwnProperty.call(Fr,i)){if(!1===n.overwrite&&(Kr.preventAllURLConfig||{}.hasOwnProperty.call(Qr,i)))return;!0===n.allowInitialUserOverride?Fr[i]=o:Vr.pref(i,o)}else if(["extensions","stylesheets","allowedOrigins"].includes(i)){if(!1===n.overwrite&&(Kr.preventAllURLConfig||["allowedOrigins","stylesheets"].includes(i)||"extensions"===i&&Kr.lockExtensions))return;Kr[i]=Kr[i].concat(o)}else if({}.hasOwnProperty.call(Hr,i)){if(!1===n.overwrite&&(Kr.preventAllURLConfig||{}.hasOwnProperty.call(Kr,i)))return;if({}.hasOwnProperty.call(Kr,i)){if(!1===n.overwrite)return;r(Kr,i,o)}else!0===n.allowInitialUserOverride?r(Hr,i,o):Hr[i]&&"object"===e(Hr[i])?(Kr[i]=Array.isArray(Hr[i])?[]:{},Rr.extend(!0,Kr[i],o)):Kr[i]=o}})),Vr.curConfig=Kr},Vr.setCustomHandlers=function(e){return Vr.ready((function(){e.open&&(Rr('#tool_open > input[type="file"]').remove(),Rr("#tool_open").show(),Br.open=e.open),e.save&&(Vr.showSaveWarning=!1,Br.bind("saved",e.save)),e.exportImage&&(Wr=e.exportImage,Br.bind("exported",Wr)),e.exportPDF&&(Xr=e.exportPDF,Br.bind("exportedPDF",Xr))}))},Vr.randomizeIds=function(e){Br.randomizeIds(e)},Vr.init=function(){!("svgEditor"in window)||!window.svgEditor||!1!==window.svgEditor.modules||Object.assign(Hr,{langPath:"../dist/locale/",extPath:"../dist/extensions/",canvgPath:"../dist/",jspdfPath:"../dist/"});try{"localStorage"in window&&(Vr.storage=localStorage)}catch(e){}var e=[];function t(){(Kr=Rr.extend(!0,{},Hr,Kr)).noDefaultExtensions||(Kr.extensions=Kr.extensions.concat(Dr)),["extensions","stylesheets","allowedOrigins"].forEach((function(e){Kr[e]=Rr.grep(Kr[e],(function(t,n){return n===Kr[e].indexOf(t)}))})),Vr.curConfig=Kr}Rr("#lang_select option").each((function(){e.push(this.value)})),function(){var e,n,r,a=new URL(location),i=a.search,o=a.searchParams;if(i){if(e=o.toString(),n=!0,r={},e.replace(/\+/g," ").split("&").forEach((function(e){var t=e.split("="),a=decodeURIComponent(t[0]),i=a.split("]["),o=i.length-1;if(/\[/.test(i[0])&&/\]$/.test(i[o])?(i[o]=i[o].replace(/\]$/,""),o=(i=i.shift().split("[").concat(i)).length-1):o=0,t.length>=2){var s=decodeURIComponent(t.slice(1).join("="));if(n&&(s=s&&!isNaN(s)?+s:"undefined"===s?void 0:void 0!==yn[s]?yn[s]:s),o)for(var l=r,c=0;c<=o;c++)l=l[a=""===i[c]?l.length:i[c]]=c<o?l[a]||(i[c+1]&&isNaN(i[c+1])?{}:[]):s;else Array.isArray(r[a])?r[a].push(s):void 0!==r[a]?r[a]=[r[a],s]:r[a]=s}else a&&(r[a]=n?void 0:"")})),qr=r,["initStroke","initFill"].forEach((function(e){o.has("".concat(e,"[color]"))&&(qr[e].color=o.get("".concat(e,"[color]")))})),o.has("bkgd_color")&&(qr.bkgd_color="#"+o.get("bkgd_color")),qr.dimensions&&(qr.dimensions=qr.dimensions.split(",")),qr.extensions&&(qr.extensions=qr.extensions.match(/[:/\\]/)?"":qr.extensions.split(",")),["langPath","extPath","canvgPath","jspdfPath","imgPath","jGraduatePath","extIconsPath"].forEach((function(e){qr[e]&&delete qr[e]})),Vr.setConfig(qr,{overwrite:!1}),t(),!Kr.preventURLContentLoading){var s=qr.source;if(!s){var l=o.get("source");l&&l.startsWith("data:")&&(s=l)}if(s)return void(s.startsWith("data:")?Vr.loadFromDataURI(s):Vr.loadFromString(s));if(qr.url)return void Vr.loadFromURL(qr.url)}qr.noStorageOnLoad&&!Kr.forceStorage||Vr.loadContentAndPrefs()}else t(),Vr.loadContentAndPrefs()}(),Qr=Rr.extend(!0,{},Fr,Qr),Vr.curPrefs=Qr;var a=Vr.setIcon=function(e,t,n){var r="string"==typeof t?Rr.getSvgIcon(t,!0):t.clone();r?Rr(e).empty().append(r):console.log("NOTE: Icon image missing: "+t)},o=function(){var t=n(regeneratorRuntime.mark((function t(){var r,a,i,o,s,l;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Vr.putLocale(Vr.pref("lang"),e,Kr);case 2:return r=t.sent,a=r.langParam,i=r.langData,t.next=7,Gn(a,i);case 7:return o=zr.common,s=o.ok,l=o.cancel,_n(Rr,{ok:s,cancel:l}),Rr.svgIcons(Kr.imgPath+"svg_edit_icons.svg",{w:24,h:24,id_match:!1,no_img:!U(),fallback_path:Kr.imgPath,fallback:{logo:"logo.png",select:"select.png",select_node:"select_node.png",square:"square.png",rect:"rect.png",fh_rect:"freehand-square.png",circle:"circle.png",ellipse:"ellipse.png",fh_ellipse:"freehand-circle.png",pencil:"fhpath.png",pen:"line.png",text:"text.png",path:"path.png",add_subpath:"add_subpath.png",close_path:"closepath.png",open_path:"openpath.png",image:"image.png",zoom:"zoom.png",arrow_right:"flyouth.png",arrow_right_big:"arrow_right_big.png",arrow_down:"dropdown.gif",fill:"fill.png",stroke:"stroke.png",opacity:"opacity.png",new_image:"clear.png",save:"save.png",export:"export.png",open:"open.png",import:"import.png",docprops:"document-properties.png",source:"source.png",wireframe:"wireframe.png",undo:"undo.png",redo:"redo.png",clone:"clone.png",delete:"delete.png",go_up:"go-up.png",go_down:"go-down.png",context_menu:"context_menu.png",move_bottom:"move_bottom.png",move_top:"move_top.png",to_path:"to_path.png",link_controls:"link_controls.png",reorient:"reorient.png",group_elements:"shape_group_elements.png",ungroup:"shape_ungroup.png",unlink_use:"unlink_use.png",width:"width.png",height:"height.png",c_radius:"c_radius.png",angle:"angle.png",blur:"blur.png",fontsize:"fontsize.png",align:"align.png",align_left:"align-left.png",align_center:"align-center.png",align_right:"align-right.png",align_top:"align-top.png",align_middle:"align-middle.png",align_bottom:"align-bottom.png",linecap_butt:"linecap_butt.png",linecap_square:"linecap_square.png",linecap_round:"linecap_round.png",linejoin_miter:"linejoin_miter.png",linejoin_bevel:"linejoin_bevel.png",linejoin_round:"linejoin_round.png",eye:"eye.png",no_color:"no_color.png",ok:"save.png",cancel:"cancel.png",warning:"warning.png",node_delete:"node_delete.png",node_clone:"node_clone.png",globe_link:"globe_link.png",config:"config.png"},placement:{"#logo":"logo","#tool_clear div,#layer_new":"new_image","#tool_save div":"save","#tool_export div":"export","#tool_open div":"open","#tool_import div":"import","#tool_source":"source","#tool_docprops > div":"docprops","#tool_editor_prefs > div":"config","#tool_editor_homepage > div":"globe_link","#tool_wireframe":"wireframe","#tool_undo":"undo","#tool_redo":"redo","#tool_select":"select","#tool_fhpath":"pencil","#tool_line":"pen","#tool_rect,#tools_rect_show":"rect","#tool_square":"square","#tool_fhrect":"fh_rect","#tool_ellipse,#tools_ellipse_show":"ellipse","#tool_circle":"circle","#tool_fhellipse":"fh_ellipse","#tool_path":"path","#tool_text,#layer_rename":"text","#tool_image":"image","#tool_zoom":"zoom","#tool_clone,#tool_clone_multi":"clone","#tool_node_clone":"node_clone","#layer_delete,#tool_delete,#tool_delete_multi":"delete","#tool_node_delete":"node_delete","#tool_add_subpath":"add_subpath","#tool_openclose_path":"open_path","#tool_move_top":"move_top","#tool_move_bottom":"move_bottom","#tool_topath":"to_path","#tool_node_link":"link_controls","#tool_reorient":"reorient","#tool_group_elements":"group_elements","#tool_ungroup":"ungroup","#tool_unlink_use":"unlink_use","#tool_alignleft, #tool_posleft":"align_left","#tool_aligncenter, #tool_poscenter":"align_center","#tool_alignright, #tool_posright":"align_right","#tool_aligntop, #tool_postop":"align_top","#tool_alignmiddle, #tool_posmiddle":"align_middle","#tool_alignbottom, #tool_posbottom":"align_bottom","#cur_position":"align","#linecap_butt,#cur_linecap":"linecap_butt","#linecap_round":"linecap_round","#linecap_square":"linecap_square","#linejoin_miter,#cur_linejoin":"linejoin_miter","#linejoin_round":"linejoin_round","#linejoin_bevel":"linejoin_bevel","#url_notice":"warning","#layer_up":"go_up","#layer_down":"go_down","#layer_moreopts":"context_menu","#layerlist td.layervis":"eye","#tool_source_save,#tool_docprops_save,#tool_prefs_save":"ok","#tool_source_cancel,#tool_docprops_cancel,#tool_prefs_cancel":"cancel","#rwidthLabel, #iwidthLabel":"width","#rheightLabel, #iheightLabel":"height","#cornerRadiusLabel span":"c_radius","#angleLabel":"angle","#linkLabel,#tool_make_link,#tool_make_link_multi":"globe_link","#zoomLabel":"zoom","#tool_fill label":"fill","#tool_stroke .icon_label":"stroke","#group_opacityLabel":"opacity","#blurLabel":"blur","#font_sizeLabel":"fontsize",".flyout_arrow_horiz":"arrow_right",".dropdown button, #main_button .dropdown":"arrow_down","#palette .palette_item:first, #fill_bg, #stroke_bg":"no_color"},resize:{"#logo .svg_icon":28,".flyout_arrow_horiz .svg_icon":5,".layer_button .svg_icon, #layerlist td.layervis .svg_icon":14,".dropdown button .svg_icon":7,"#main_button .dropdown .svg_icon":9,".palette_item:first .svg_icon":15,"#fill_bg .svg_icon, #stroke_bg .svg_icon":16,".toolbar_button button .svg_icon":16,".stroke_tool div div .svg_icon":20,"#tools_bottom label .svg_icon":18},callback:function(e){return n(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=function(e){switch(e){case"jgraduate/css/jPicker.css":return 1;case"jgraduate/css/jGraduate.css":return 2;case"svg-editor.css":return 3;case"spinbtn/jQuery.SpinButton.css":return 4;default:return 1/0}},Rr(".toolbar_button button > svg, .toolbar_button button > img").each((function(){Rr(this).parent().prepend(this)})),(t=Rr("#tools_left")).length&&(n=t.offset().top+t.outerHeight()),r=Vr.pref("iconsize"),Vr.setIconSize(r||(Rr(window).height()<n?"s":"m")),Rr(".tools_flyout").each((function(){var e=Rr("#"+this.id+"_show"),t=e.attr("data-curopt");if(!e.children("svg, img").length){var n=Rr(t).children().clone();n.length&&(n[0].removeAttribute("style"),e.append(n))}})),i=Rr.loadingStylesheets.sort((function(e,t){var n=a(e),r=a(t);return n===r?0:n>r})),Kr.stylesheets.length&&(i=f(new Set(Kr.stylesheets)),(o=i.indexOf("@default"))>-1&&(s=i).splice.apply(s,[o,1].concat(f(Rr.loadingStylesheets)))),e.next=11,jr(i,{acceptErrors:function(e){var t=e.stylesheetURL,n=e.reject,r=e.resolve;Rr.loadingStylesheets.includes(t)?n(new Error("Missing expected stylesheet: ".concat(t))):r()}});case 11:return Rr("#svg_container")[0].style.visibility="visible",e.next=14,Vr.runCallbacks();case 14:case"end":return e.stop()}}),e)})))()}}),t.prev=10,t.next=13,Promise.all(Kr.extensions.map(function(){var e=n(regeneratorRuntime.mark((function e(t){var n,r,i,o,s,l,c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.match(/^ext-(.+)\.js/)){e.next=3;break}return e.abrupt("return",void 0);case 3:return r=Kr.extPath+t,e.prev=4,e.next=7,fn(r,{global:"svgEditorExtension_"+n[1].replace(/-/g,"_")});case 7:return i=e.sent,o=i.name,s=void 0===o?n[1]:o,l=i.init,c=Jr({defaultLang:a,defaultName:s}),e.abrupt("return",Vr.addExtension(s,l&&l.bind(Vr),{$:Rr,importLocale:c}));case 13:return e.prev=13,e.t0=e.catch(4),console.log(e.t0),console.error("Extension failed to load: "+t+"; "+e.t0),e.abrupt("return",void 0);case 18:case"end":return e.stop()}}),e,null,[[4,13]])})));return function(t){return e.apply(this,arguments)}}()));case 13:Br.bind("extensions_added",(function(e,t){ea=!0,bn.setAll(),Rr(".flyout_arrow_horiz:empty").each((function(){Rr(this).append(Rr.getSvgIcon("arrow_right",!0).width(5).height(5))})),"ignore"===Vr.storagePromptState&&J(!0),ta.forEach((function(e){Br.call("message",e)}))})),Br.call("extensions_added"),t.next=20;break;case 17:t.prev=17,t.t0=t.catch(10),console.log(t.t0);case 20:case"end":return t.stop()}}),t,null,[[10,17]])})));return function(){return t.apply(this,arguments)}}(),s={tool_scale:Vr.tool_scale},l=function(){Rr(".tools_flyout").each((function(){var e=Rr("#"+this.id+"_show"),t=e.offset(),n=t.left,r=t.top,a=e.outerWidth();Rr(this).css({left:(n+a)*Vr.tool_scale,top:r})}))},c=function(){var e=/^(?:Moz|Webkit|Khtml|O|ms|Icab)(?=[A-Z])/,t=document.getElementsByTagName("script")[0];for(var n in t.style)if(e.test(n))return n.match(e)[0];return"WebkitOpacity"in t.style?"Webkit":"KhtmlOpacity"in t.style?"Khtml":""}(),u=Vr.setIconSize=function(e){var t="#tools_top .toolset, #editor_panel > *, #history_panel > *, #main_button, #tools_left > *, #path_node_panel > *, #multiselected_panel > *, #g_panel > *, #tool_font_size > *, .tools_flyout",n=Rr(t),r=1;if("number"==typeof e)r=e;else{r={s:.75,m:1,l:1.25,xl:1.5}[e]}s.tool_scale=Vr.tool_scale=r,l();var a=n.parents(":hidden");a.css("visibility","hidden").show(),function(e,t){var n=["top","left","bottom","right"];e.each((function(){for(var e=Rr(this),r=e.outerWidth()*(t-1),a=e.outerHeight()*(t-1),i=0;i<4;i++){var o=n[i],s=e.data("orig_margin-"+o);sn(s)&&(s=Number.parseInt(e.css("margin-"+o)),e.data("orig_margin-"+o,s));var l=s*t;"right"===o?l+=r:"bottom"===o&&(l+=a),e.css("margin-"+o,l)}}))}(n,r),a.css("visibility","visible").hide(),Vr.pref("iconsize",e),Rr("#iconsize").val(e);var i={"#tools_top":{left:50+Rr("#main_button").width(),height:72},"#tools_left":{width:31,top:74},"div#workarea":{left:38,top:74}},o=Rr("#tool_size_rules");if(o.length?o.empty():o=Rr('<style id="tool_size_rules"></style>').appendTo("head"),"m"!==e){var u="";Rr.each(i,(function(t,n){t="#svg_editor "+t.replace(/,/g,", #svg_editor"),u+=t+"{",Rr.each(n,(function(t,n){var a;"number"==typeof n?a=n*r+"px":(n[e]||n.all)&&(a=n[e]||n.all),u+=t+":"+a+";"})),u+="}"}));var d="-"+c.toLowerCase()+"-";u+=t+"{"+d+"transform: scale("+r+");} #svg_editor div.toolset .toolset {"+d+"transform: scale(1); margin: 1px !important;} #svg_editor .ui-slider {"+d+"transform: scale("+1/r+");}",o.text(u)}l()};Vr.canvas=Br=new wr(document.getElementById("svgcanvas"),Kr);var d,p,g=z()?"meta+":"ctrl+",m=Br.pathActions,v=Br.undoMgr,_=Rr("#workarea"),b=Rr("#cmenu_canvas"),x={fill:null,stroke:null},w=null,S=Kr.imgPath+"logo.png",k="crosshair",C="crosshair",A="toolbars";!function(){var e=window.opener||window.parent;if(e)try{var t=new e.CustomEvent("svgEditorReady",{bubbles:!0,cancelable:!0});e.document.documentElement.dispatchEvent(t)}catch(e){}}();for(var E=function(){var e=Rr(".tool_button_current");e.length&&"tool_select"!==e[0].id&&(e.removeClass("tool_button_current").addClass("tool_button"),Rr("#tool_select").addClass("tool_button_current").removeClass("tool_button"),Rr("#styleoverrides").text("\n #svgcanvas svg * {\n cursor: move;\n pointer-events: all;\n }\n #svgcanvas svg {\n cursor: default;\n }\n ")),Br.setMode("select"),_.css("cursor","auto")},G=Rr("title:first").text(),P=[],N=.1;N<1e5;N*=10)P.push(N),P.push(2*N),P.push(5*N);var I=function(e){var t,n=[],r=Br.getCurrentDrawing().getNumLayers();for(t=0;t<r;t++)n[t]=Br.getCurrentDrawing().getLayerName(t);e?n.forEach((function(t){t!==e&&Br.getCurrentDrawing().setLayerOpacity(t,.5)})):n.forEach((function(e){Br.getCurrentDrawing().setLayerOpacity(e,1)}))},T=function(){Br.clearSelection();for(var e=Rr("#layerlist tbody").empty(),t=Rr("#selLayerNames").empty(),n=Br.getCurrentDrawing(),r=n.getCurrentLayerName(),a=Rr.getSvgIcon("eye"),i=Br.getCurrentDrawing().getNumLayers();i--;){var o=n.getLayerName(i),s=Rr('<tr class="layer">').toggleClass("layersel",o===r),l=Rr('<td class="layervis">').toggleClass("layerinvis",!n.getLayerVisibility(o)),c=Rr('<td class="layername">'+o+"</td>");e.append(s.append(l,c)),t.append('<option value="'+o+'">'+o+"</option>")}if(void 0!==a){var u=a.clone();Rr("td.layervis",e).append(u),Rr.resizeSvgIcons({"td.layervis .svg_icon":14})}Rr("#layerlist td.layername").mouseup((function(e){Rr("#layerlist tr.layer").removeClass("layersel"),Rr(this.parentNode).addClass("layersel"),Br.setCurrentLayer(this.textContent),e.preventDefault()})).mouseover((function(){I(this.textContent)})).mouseout((function(){I()})),Rr("#layerlist td.layervis").click((function(){var e=Rr(this.parentNode).prevAll().length,t=Rr("#layerlist tr.layer:eq("+e+") td.layername").text(),n=Rr(this).hasClass("layerinvis");Br.setLayerVisibility(t,n),Rr(this).toggleClass("layerinvis")}));for(var d=5-Rr("#layerlist tr.layer").size();d-- >0;)e.append('<tr><td style="color:white">_</td><td/></tr>')},L=!1,M="",O=function(e,t){L||(L=!0,M=Br.getSvgString(),Rr("#save_output_btns").toggle(Boolean(t)),Rr("#tool_source_back").toggle(!t),Rr("#svg_source_textarea").val(M),Rr("#svg_source_editor").fadeIn(),Rr("#svg_source_textarea").focus())},j=null,V=!1,R=function(){window.opera&&Rr("<p/>").hide().appendTo("body").remove()};function B(e,t){var n=e.id,r=h(n.split("_"),2),i=r[0],o=r[1];t&&Br.setStrokeAttr("stroke-"+i,o),R(),a("#cur_"+i,n,20),Rr(e).addClass("current").siblings().removeClass("current")}var Y=Vr.toolButtonClick=function(e,t){if(Rr(e).hasClass("disabled"))return!1;if(Rr(e).parent().hasClass("tools_flyout"))return!0;return t||Rr(".tools_flyout").fadeOut("normal"),Rr("#styleoverrides").text(""),_.css("cursor","auto"),Rr(".tool_button_current").removeClass("tool_button_current").addClass("tool_button"),Rr(e).addClass("tool_button_current").removeClass("tool_button"),!0},W=Vr.clickSelect=function(){Y("#tool_select")&&(Br.setMode("select"),Rr("#styleoverrides").text("\n #svgcanvas svg * {\n cursor: move;\n pointer-events: all;\n }\n #svgcanvas svg {\n cursor: default;\n }\n "))},X=Vr.setImageURL=function(e){e||(e=S),Br.setImageURL(e),Rr("#image_url").val(e),e.startsWith("data:")?(Rr("#image_url").hide(),Rr("#change_image_url").show()):(Br.embedImage(e,(function(t){Rr("#url_notice").toggle(!t),S=e})),Rr("#image_url").show(),Rr("#change_image_url").hide())};function Q(e,t){Vr.pref("bkgd_color",e),Vr.pref("bkgd_url",t,!0),Br.setBackground(e,t)}function K(){return Z.apply(this,arguments)}function Z(){return(Z=n(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=o.length>0&&void 0!==o[0]?o[0]:{},n=t.cancelDeletes,r=void 0!==n&&n,a=(a=Br.getHref(j)).startsWith("data:")?"":a,e.next=5,Rr.prompt(zr.notification.enterNewImgURL,a);case 5:(i=e.sent)?X(i):r&&Br.deleteSelectedElements();case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function $(e,t){var n,r;t||(t=Br.getZoom()),e||(e=Rr("#svgcanvas"));var a=Br.getContentElem(),i=ie()[Kr.baseUnit];for(n=0;n<2;n++){var o=0===n,s=o?"x":"y",l=o?"width":"height",c=Number(a.getAttribute(s)),u=Rr("#ruler_"+s+" canvas:first"),d=u.clone();u.replaceWith(d);var h=d[0],f=e[l](),p=f;h.parentNode.style[l]=p+"px";var g=h.getContext("2d"),m=void 0,v=void 0,y=void 0;if(g.fillStyle="rgb(200,0,0)",g.fillRect(0,0,h.width,h.height),d.siblings().remove(),f>=3e4){y=Number.parseInt(f/3e4)+1,(m=[])[0]=g;var _=void 0;for(r=1;r<y;r++)h[l]=3e4,_=h.cloneNode(!0),h.parentNode.append(_),m[r]=_.getContext("2d");_[l]=f%3e4,f=3e4}h[l]=f;var b=i*t,x=50/b,w=1;for(r=0;r<P.length&&(w=v=P[r],!(x<=v));r++);var S=w*b;g.font="9px sans-serif";for(var k=c/b%w*b,C=k-S,A=0;k<p;){C+=S;var E=Math.round(k)+.5;o?(g.moveTo(E,15),g.lineTo(E,0)):(g.moveTo(15,E),g.lineTo(0,E)),v=(C-c)/b;var G=void 0;if(w>=1)G=Math.round(v);else{var N=String(w).split(".")[1].length;G=v.toFixed(N)}if(0!==G&&1e3!==G&&G%1e3==0&&(G=G/1e3+"K"),o)g.fillText(G,k+2,8);else{var I=String(G).split("");for(r=0;r<I.length;r++)g.fillText(I[r],1,k+9+9*r)}var T=S/10;for(r=1;r<10;r++){var L=Math.round(k+T*r)+.5;if(m&&L>f){if(A++,g.stroke(),A>=y){r=10,k=p;continue}g=m[A],k-=3e4,L=Math.round(k+T*r)+.5}var M=r%2?12:10;o?(g.moveTo(L,15),g.lineTo(L,M)):(g.moveTo(15,L),g.lineTo(M,L))}k+=S}g.strokeStyle="#000",g.stroke()}}var J=Vr.updateCanvas=function(e,t){var n=Br.getZoom(),r=_,a=Rr("#svgcanvas"),i=_.width(),o=_.height(),s=i,l=o,c=r[0].scrollLeft+s/2,u=r[0].scrollTop+l/2,d=Kr.canvas_expansion;i=Math.max(s,Br.contentW*n*d),o=Math.max(l,Br.contentH*n*d),i===s&&o===l?_.css("overflow","hidden"):_.css("overflow","scroll");var h=a.height()/2,f=a.width()/2;a.width(i).height(o);var p=o/2,g=i/2,m=Br.updateCanvas(i,o),v=g/f,y=i/2-s/2,b=o/2-l/2;t?(t.x+=m.x,t.y+=m.y):t={x:g+(c-f)*v,y:p+(u-h)*v};e?Br.contentW>r.width()?(_[0].scrollLeft=m.x-10,_[0].scrollTop=m.y-10):(r[0].scrollLeft=y,r[0].scrollTop=b):(r[0].scrollLeft=t.x-s/2,r[0].scrollTop=t.y-l/2),Kr.showRulers&&($(a,n),_.scroll()),!0!==qr.storagePrompt&&"ignore"===Vr.storagePromptState&&Rr("#dialog_box").hide()},ee=function(){var e="none"===Br.getColor("fill"),t="none"===Br.getColor("stroke"),n=["#tool_fhpath","#tool_line"],r=["#tools_rect .tool_button","#tools_ellipse .tool_button","#tool_text","#tool_path"];t?n.forEach((function(e){Rr(e).hasClass("tool_button_current")&&W(),Rr(e).addClass("disabled")})):n.forEach((function(e){Rr(e).removeClass("disabled")})),t&&e?r.forEach((function(e){Rr(e).hasClass("tool_button_current")&&W(),Rr(e).addClass("disabled")})):r.forEach((function(e){Rr(e).removeClass("disabled")})),Br.runExtensions("toolButtonStateUpdate",{nofill:e,nostroke:t}),Rr(".tools_flyout").each((function(){var e=Rr("#"+this.id+"_show"),t=!1;Rr(this).children().each((function(){Rr(this).hasClass("disabled")||(t=!0)})),e.toggleClass("disabled",!t)})),R()},te=function(){var e=j;sn(e)||e.parentNode||(e=null);var t=Br.getCurrentDrawing().getCurrentLayerName(),n=Br.getMode(),r="px"!==Kr.baseUnit?Kr.baseUnit:null,i="pathedit"===n,o=Rr("#cmenu_canvas li");if(Rr("#selected_panel, #multiselected_panel, #g_panel, #rect_panel, #circle_panel,#ellipse_panel, #line_panel, #text_panel, #image_panel, #container_panel, #use_panel, #a_panel").hide(),sn(e))V?(Rr("#multiselected_panel").show(),o.enableContextMenuItems("#group").disableContextMenuItems("#ungroup")):o.disableContextMenuItems("#delete,#cut,#copy,#group,#ungroup,#move_front,#move_up,#move_down,#move_back");else{var s=e.nodeName,l=Br.getRotationAngle(e);Rr("#angle").val(l);var c=Br.getBlur(e);if(Rr("#blur").val(c),Rr("#blur_slider").slider("option","value",c),Br.addedNew&&"image"===s&&"image"===Br.getMode()&&(Br.getHref(e).startsWith("data:")||K({cancelDeletes:!0})),i||"pathedit"===n){var u=m.getNodePoint();if(Rr("#tool_add_subpath").removeClass("push_button_pressed").addClass("tool_button"),Rr("#tool_node_delete").toggleClass("disabled",!m.canDeleteNodes),a("#tool_openclose_path",m.closed_subpath?"open_path":"close_path"),u){var d=Rr("#seg_type");r&&(u.x=se(u.x),u.y=se(u.y)),Rr("#path_node_x").val(u.x),Rr("#path_node_y").val(u.y),u.type?d.val(u.type).removeAttr("disabled"):d.val(4).attr("disabled","disabled")}return}if(Rr("#selected_panel").show(),["line","circle","ellipse"].includes(s))Rr("#xy_panel").hide();else{var h,f;if(["g","polyline","path"].includes(s)){var p=Br.getStrokedBBox([e]);p&&(h=p.x,f=p.y)}else h=e.getAttribute("x"),f=e.getAttribute("y");r&&(h=se(h),f=se(f)),Rr("#selected_x").val(h||0),Rr("#selected_y").val(f||0),Rr("#xy_panel").show()}var g=!["image","text","path","g","use"].includes(s);Rr("#tool_topath").toggle(g),Rr("#tool_reorient").toggle("path"===s),Rr("#tool_reorient").toggleClass("disabled",0===l);var y={g:[],a:[],rect:["rx","width","height"],image:["width","height"],circle:["cx","cy","r"],ellipse:["cx","cy","rx","ry"],line:["x1","y1","x2","y2"],text:[],use:[]},_=e.tagName,x=null;if("a"===_&&(x=Br.getHref(e),Rr("#g_panel").show()),"a"===e.parentNode.tagName&&(Rr(e).siblings().length||(Rr("#a_panel").show(),x=Br.getHref(e.parentNode))),Rr("#tool_make_link, #tool_make_link").toggle(!x),x&&Rr("#link_url").val(x),y[_]){var w=y[_];if(Rr("#"+_+"_panel").show(),Rr.each(w,(function(t,n){var r=e.getAttribute(n);if("px"!==Kr.baseUnit&&e[n]){var a=e[n].baseVal.value;r=se(a)}Rr("#"+_+"_"+n).val(r||0)})),"text"===_)Rr("#text_panel").css("display","inline"),Rr("#tool_font_size").css("display","inline"),Br.getItalic()?Rr("#tool_italic").addClass("push_button_pressed").removeClass("tool_button"):Rr("#tool_italic").removeClass("push_button_pressed").addClass("tool_button"),Br.getBold()?Rr("#tool_bold").addClass("push_button_pressed").removeClass("tool_button"):Rr("#tool_bold").removeClass("push_button_pressed").addClass("tool_button"),Rr("#font_family").val(e.getAttribute("font-family")),Rr("#font_size").val(e.getAttribute("font-size")),Rr("#text").val(e.textContent),Br.addedNew&&setTimeout((function(){Rr("#text").focus().select()}),100);else if("image"===_&&"image"===Br.getMode())X(Br.getHref(e));else if("g"===_||"use"===_){Rr("#container_panel").show();var S=Br.getTitle(),k=Rr("#g_title")[0];k.value=S,function(e){var t=Math.min(Math.max(12+6*e.value.length,50),300);Rr(e).width(t)}(k),Rr("#g_title").prop("disabled","use"===_)}}o[("g"===_?"en":"dis")+"ableContextMenuItems"]("#ungroup"),o[("g"!==_&&V?"en":"dis")+"ableContextMenuItems"]("#group")}Rr("#tool_undo").toggleClass("disabled",0===v.getUndoStackSize()),Rr("#tool_redo").toggleClass("disabled",0===v.getRedoStackSize()),Br.addedNew=!1,e&&!i||V?(Rr("#selLayerNames").removeAttr("disabled").val(t),b.enableContextMenuItems("#delete,#cut,#copy,#move_front,#move_up,#move_down,#move_back")):Rr("#selLayerNames").attr("disabled","disabled")},ne=function(){if(!$t){var e="\n #workarea.wireframe #svgcontent * {\n stroke-width: ".concat(1/Br.getZoom(),"px;\n }\n ");Rr("#wireframe_rules").text(_.hasClass("wireframe")?e:"")}},re="",ae=function(e){e=e||Br.getDocumentTitle();var t=G+(e?": "+e:"");Rr("title:first").text(t)};var oe=function(){ne()},le=Br.zoomChanged=function(e,t,n){var r=_,a=Br.setBBoxZoom(t,r.width()-15,r.height()-15);if(a){var i=a.zoom,o=a.bbox;i<.001?ce({value:.1}):(Rr("#zoom").val((100*i).toFixed(1)),n?J():J(!1,{x:o.x*i+o.width*i/2,y:o.y*i+o.height*i/2}),"zoom"===Br.getMode()&&o.width&&E(),oe())}},ce=function(e){var t=e.value/100;if(t<.001)e.value=.1;else{var n=Br.getZoom(),r=_;le(window,{width:0,height:0,x:(r[0].scrollLeft+r.width()/2)/n,y:(r[0].scrollTop+r.height()/2)/n,zoom:t},!0)}};Rr("#cur_context_panel").delegate("a","click",(function(){var e=Rr(this);return e.attr("data-root")?Br.leaveContext():Br.setContext(e.text()),Br.clearSelection(),!1}));var de=function(){x.fill.prep(),x.stroke.prep()},he={},fe=function(){Rr(".tools_flyout").each((function(){var e=Rr("#"+this.id+"_show");if(!e.data("isLibrary")){var t=Rr(this).children().map((function(){return this.title})).get();e[0].title=t.join(" / ")}}))},pe={},ge=function(e){Rr.each(e,(function(t,n){var r;pe[t]||(pe[t]=[]),(r=pe[t]).push.apply(r,f(n));var a,i=Rr(t).children().not(".tool_button_evt_handled"),o=t+"_show",s=Rr(o),l=!1;i.addClass("tool_button tool_button_evt_handled").unbind("click mousedown mouseup").each((function(){var t="#"+this.getAttribute("id"),r=Object.entries(n).find((function(e){var n=h(e,2);n[0];return n[1].sel===t})),a=h(r,2),i=a[0],c=a[1];he[c.sel]=c.fn,c.isDefault&&(l=i);var u=function(t){var n,r=c;if("keydown"===t.type){var a=Rr(r.parent+"_show").hasClass("tool_button_current"),i=Rr(r.parent+"_show").attr("data-curopt");Object.entries(e[c.parent]).some((function(n){var o=h(n,2),s=o[0],l=o[1];return l.sel===i&&(t.shiftKey&&a?(s=Number.parseInt(s),r=pe[c.parent][s+1]||e[c.parent][0]):r=l,!0)}))}return!Rr(this).hasClass("disabled")&&(Y(o)&&r.fn(),(n=r.icon?Rr.getSvgIcon(r.icon,!0):Rr(r.sel).children().eq(0).clone())[0].setAttribute("width",s.width()),n[0].setAttribute("height",s.height()),s.children(":not(.flyout_arrow_horiz)").remove(),s.append(n).attr("data-curopt",r.sel),!0)};return Rr(this).mouseup(u),c.key&&Rr(document).bind("keydown",c.key[0]+" shift+"+c.key[0],u),!0})),l?s.attr("data-curopt",n[l].sel):s.attr("data-curopt")||s.attr("data-curopt",n[0].sel),s.mousedown((function(e){if(s.hasClass("disabled"))return!1;var n=Rr(t),r=Rr(o).position().left+34,i=-1*n.width(),l=n.data("shown_popop")?200:0;return a=setTimeout((function(){s.data("isLibrary")?n.css("left",r).show():n.css("left",i).show().animate({left:r},150),n.data("shown_popop",!0)}),l),e.preventDefault(),!0})).mouseup((function(e){clearTimeout(a);var t=Rr(this).attr("data-curopt");s.data("isLibrary")&&Rr(o.replace("_show","")).is(":visible")?Y(o,!0):Y(o)&&he[t]&&he[t]()}))})),fe(),l()},me=function(e,t){return Rr("<div>",{class:"tools_flyout",id:e}).appendTo("#svg_editor").append(t)},ve=function(e,t,n,r){var i=Rr(e),o=r.dropUp,s=Rr(t);o&&Rr(e).addClass("dropup"),s.find("li").bind("mouseup",(function(){r.seticon&&(a("#cur_"+i[0].id,Rr(this).children()),Rr(this).addClass("current").siblings().removeClass("current"));for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];n.apply.apply(n,[this].concat(t))}));var l=!1;Rr(window).mouseup((function(e){l||(i.removeClass("down"),s.hide(),s.css({top:0,left:0})),l=!1})),i.bind("mousedown",(function(){var e=i.offset();o?(e.top-=s.height(),e.left+=8):e.top+=i.height(),s.offset(e),i.hasClass("down")?(s.hide(),s.css({top:0,left:0})):(s.show(),l=!0),i.toggleClass("down")})).hover((function(){l=!0})).mouseout((function(){l=!1})),r.multiclick&&s.mousedown((function(){l=!0}))},ye=[],_e=function(){var e=n(regeneratorRuntime.mark((function e(t,n){var r,a,i,o,s,l,c,h,f,p,g;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=function(){d&&(clearTimeout(d),d=null),a||(d=setTimeout((function(){a=!0,u(Vr.pref("iconsize"))}),50))},n){e.next=3;break}return e.abrupt("return",void 0);case 3:if(r=!1,a=!1,!n.langReady){e.next=14;break}if(!Vr.langChanged){e.next=13;break}return i=Vr.pref("lang"),e.next=10,n.langReady({lang:i,uiStrings:zr,importLocale:Jr({defaultLang:i,defaultName:n.name})});case 10:En.push(n.name),e.next=14;break;case 13:ye.push(n);case 14:if(s=function(){n.callback&&!r&&(r=!0,n.callback.call(Vr))},l=[],n.context_tools&&Rr.each(n.context_tools,(function(e,t){var n,r=t.container_id?' id="'+t.container_id+'"':"",a=Rr("#"+t.panel);switch(a.length||(a=Rr("<div>",{id:t.panel}).appendTo("#tools_top")),t.type){case"tool_button":n='<div class="tool_button">'+t.id+"</div>";var i=Rr(n).appendTo(a);t.events&&Rr.each(t.events,(function(e,t){Rr(i).bind(e,t)}));break;case"select":n="<label"+r+'><select id="'+t.id+'">',Rr.each(t.options,(function(e,r){var a=e===t.defval?" selected":"";n+='<option value="'+e+'"'+a+">"+r+"</option>"}));var o=Rr(n+="</select></label>").appendTo(a).find("select");Rr.each(t.events,(function(e,t){Rr(o).bind(e,t)}));break;case"button-select":n='<div id="'+t.id+'" class="dropdown toolset" title="'+t.title+'"><div id="cur_'+t.id+'" class="icon_label"></div><button></button></div>';var s=Rr('<ul id="'+t.id+'_opts"></ul>').appendTo("#option_lists");t.colnum&&s.addClass("optcols"+t.colnum),Rr(n).appendTo(a).children(),l.push({elem:"#"+t.id,list:"#"+t.id+"_opts",title:t.title,callback:t.events.change,cur:"#cur_"+t.id});break;case"input":n="<label"+r+'><span id="'+t.id+'_label">'+t.label+':</span><input id="'+t.id+'" title="'+t.title+'" size="'+(t.size||"4")+'" value="'+(t.defval||"")+'" type="text"/></label>';var c=Rr(n).appendTo(a).find("input");t.spindata&&c.SpinButton(t.spindata),t.events&&Rr.each(t.events,(function(e,t){c.bind(e,t)}))}})),c=n.svgicons,!n.buttons){e.next=24;break}if(h={},f={},p={},g={},Rr.each(n.buttons,(function(e,t){for(var n,r,a,i,o,s,l,u=t.id,d=e;Rr("#"+u).length;)u=t.id+"_"+ ++d;if(c){h[u]=t.icon,f[u]=t.title;var m=t.svgicon||t.id;"app_menu"===t.type?p["#"+u+" > div"]=m:p["#"+u]=m}else n=Rr('<img src="'+t.icon+(t.title?'" alt="'+t.title:"")+'">');switch(t.type){case"mode_flyout":case"mode":r="tool_button",a="#tools_left";break;case"context":r="tool_button",a="#"+t.panel,Rr(a).length||Rr("<div>",{id:t.panel}).appendTo("#tools_top");break;case"app_menu":r="",a="#main_menu ul"}var v,y=Rr(t.list||"app_menu"===t.type?"<li/>":"<div/>").attr("id",u).attr("title",t.title).addClass(r);if(t.includeWith||t.list){if(t.list){if(y.addClass("push_button"),Rr("#"+t.list+"_opts").append(y),t.isDefault){Rr("#cur_"+t.list).append(y.children().clone());var _=t.svgicon||t.id;p["#cur_"+t.list]=_}}else if(t.includeWith){var b,x=t.includeWith;i=(l=Rr(x.button)).parent(),l.parent().hasClass("tools_flyout")||(b=l[0].id.replace("tool_","tools_"),o=l.clone().attr("id",b+"_show").append(Rr("<div>",{class:"flyout_arrow_horiz"})),l.before(o),i=me(b,l)),s=bn.getButtonData(x.button),x.isDefault&&(p["#"+b+"_show"]=t.id);var w=g["#"+i[0].id]=[{sel:"#"+u,fn:t.events.click,icon:t.id,key:t.key,isDefault:Boolean(t.includeWith&&t.includeWith.isDefault)},s],S="position"in x?x.position:"last",k=i.children().length;!isNaN(S)&&S>=0&&S<k?i.children().eq(S).before(y):(i.append(y),w.reverse())}}else"position"in t?Rr(a).children().eq(t.position).length?Rr(a).children().eq(t.position).before(y):Rr(a).children().last().after(y):y.appendTo(a),"mode_flyout"===t.type?(i=(l=Rr(y)).parent(),l.parent().hasClass("tools_flyout")||(v=l[0].id.replace("tool_","tools_"),o=l.clone().attr("id",v+"_show").append(Rr("<div>",{class:"flyout_arrow_horiz"})),l.before(o),(i=me(v,l)).data("isLibrary",!0),o.data("isLibrary",!0)),p["#"+v+"_show"]=t.id,g["#"+i[0].id]=[{sel:"#"+u,fn:t.events.click,icon:t.id,isDefault:!0}]):"app_menu"===t.type&&y.append("<div>").append(t.title);c||y.append(n),t.list||Rr.each(t.events,(function(e,n){"click"===e&&"mode"===t.type?(q()&&"click"===e&&(e="mousedown"),t.includeWith?y.bind(e,n):y.bind(e,(function(){Y(y)&&n()})),t.key&&(Rr(document).bind("keydown",t.key,n),t.title&&y.attr("title",t.title+" ["+t.key+"]"))):y.bind(e,n)})),ge(g)})),Rr.each(l,(function(){ve(this.elem,this.list,this.callback,{seticon:!0})})),!c){e.next=24;break}return e.abrupt("return",new Promise((function(e,t){Rr.svgIcons(c,{w:24,h:24,id_match:!1,no_img:!U(),fallback:h,placement:p,callback:function(t){"m"!==Vr.pref("iconsize")&&o(),s(),e()}})})));case 24:return e.abrupt("return",s());case 25:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();Br.bind("selected",(function(e,t){var n=Br.getMode();"select"===n&&E();var r="pathedit"===n;j=1===t.length||sn(t[1])?t[0]:null,V=t.length>=2&&!sn(t[1]),sn(j)||r||function(){var e,t;if(!sn(j))switch(j.tagName){case"use":case"image":case"foreignObject":break;case"g":case"a":var n=j.getElementsByTagName("*"),r=null;for(e=0,t=n.length;e<t;e++){var a=n[e].getAttribute("stroke-width");0===e?r=a:r!==a&&(r=null)}Rr("#stroke_width").val(null===r?"":r),x.fill.update(!0),x.stroke.update(!0);break;default:x.fill.update(!0),x.stroke.update(!0),Rr("#stroke_width").val(j.getAttribute("stroke-width")||1),Rr("#stroke_style").val(j.getAttribute("stroke-dasharray")||"none");var i=j.getAttribute("stroke-linejoin")||"miter";Rr("#linejoin_"+i).length&&B(Rr("#linejoin_"+i)[0]),i=j.getAttribute("stroke-linecap")||"butt",Rr("#linecap_"+i).length&&B(Rr("#linecap_"+i)[0])}if(!sn(j)){var o=100*(j.getAttribute("opacity")||1);Rr("#group_opacity").val(o),Rr("#opac_slider").slider("option","value",o),Rr("#elem_id").val(j.id),Rr("#elem_class").val(j.getAttribute("class"))}ee()}(),function(e,t){Rr("#path_node_panel").toggle(e),Rr("#tools_bottom_2,#tools_bottom_3").toggle(!e),e?(Rr(".tool_button_current").removeClass("tool_button_current").addClass("tool_button"),Rr("#tool_select").addClass("tool_button_current").removeClass("tool_button"),a("#tool_select","select_node"),V=!1,t.length&&(j=t[0])):setTimeout((function(){a("#tool_select","select")}),1e3)}(r,t),te(),Br.runExtensions("selectedChanged",{elems:t,selectedElement:j,multiselected:V})})),Br.bind("transition",(function(e,t){var n=Br.getMode(),r=t[0];if(r){if(!(V=t.length>=2&&!sn(t[1])))switch(n){case"rotate":var a=Br.getRotationAngle(r);Rr("#angle").val(a),Rr("#tool_reorient").toggleClass("disabled",0===a)}Br.runExtensions("elementTransition",{elems:t})}})),Br.bind("changed",(function(e,t){var n=Br.getMode();"select"===n&&E(),t.forEach((function(e){var t=e&&"svg"===e.tagName;t||function(e){return e&&"g"===e.tagName&&xn.CLASS_REGEX.test(e.getAttribute("class"))}(e)?(T(),t&&J()):e&&j&&sn(j.parentNode)&&(j=e)})),Vr.showSaveWarning=!0,te(),j&&"select"===n&&(x.fill.update(),x.stroke.update()),Br.runExtensions("elementChanged",{elems:t})})),Br.bind("saved",(function(e,t){if(Vr.showSaveWarning=!1,t='<?xml version="1.0"?>\n'+t,D())O(0,!0);else{var n=document.createElement("a");n.href="data:image/svg+xml;base64,"+Et(t),n.download="icon.svg",n.style.display="none",document.body.append(n),n.click();var r=Vr.pref("save_notice_done");if("all"!==r){var a=zr.notification.saveFromBrowser.replace("%s","SVG");F()?t.includes("<defs")?(a+="\n\n"+zr.notification.defsFailOnSave,Vr.pref("save_notice_done","all"),r="all"):Vr.pref("save_notice_done","part"):Vr.pref("save_notice_done","all"),"part"!==r&&Rr.alert(a)}}})),Br.bind("exported",(function(e,t){var n=t.issues,r=t.exportWindowName;if((w=window.open(Lt||"",r))&&!w.closed){if(w.location.href=t.bloburl||t.datauri,"all"!==Vr.pref("export_notice_done")){var a=zr.notification.saveFromBrowser.replace("%s",t.type);if(n.length){a+="\n\n"+zr.notification.noteTheseIssues+"\n • "+n.join("\n • ")}Vr.pref("export_notice_done","all"),w.alert(a)}}else Rr.alert(zr.notification.popupWindowBlocked)})),Br.bind("exportedPDF",(function(e,t){if(t.output){var n=t.exportWindowName;n&&(w=window.open("",n)),w&&!w.closed?w.location.href=t.output:Rr.alert(zr.notification.popupWindowBlocked)}})),Br.bind("zoomed",le),Br.bind("zoomDone",oe),Br.bind("updateCanvas",(function(e,t){var n=t.center,r=t.newCtr;J(n,r)})),Br.bind("contextset",(function(e,t){var n="";if(t){var r="";n='<a href="#" data-root="y">'+Br.getCurrentDrawing().getCurrentLayerName()+"</a>",Rr(t).parentsUntil("#svgcontent > g").andSelf().each((function(){this.id&&(r+=" > "+this.id,n+=this!==t?' > <a href="#">'+this.id+"</a>":" > "+this.id)})),re=r}else re=null;Rr("#cur_context_panel").toggle(Boolean(t)).html(n),ae()})),Br.bind("extension_added",_e),Br.textActions.setInputElem(Rr("#text")[0]);var be='<div class="palette_item" data-rgb="none"></div>';Rr.each(["#000000","#3f3f3f","#7f7f7f","#bfbfbf","#ffffff","#ff0000","#ff7f00","#ffff00","#7fff00","#00ff00","#00ff7f","#00ffff","#007fff","#0000ff","#7f00ff","#ff00ff","#ff007f","#7f0000","#7f3f00","#7f7f00","#3f7f00","#007f00","#007f3f","#007f7f","#003f7f","#00007f","#3f007f","#7f007f","#7f003f","#ffaaaa","#ffd4aa","#ffffaa","#d4ffaa","#aaffaa","#aaffd4","#aaffff","#aad4ff","#aaaaff","#d4aaff","#ffaaff","#ffaad4"],(function(e,t){be+='<div class="palette_item" style="background-color: '+t+';" data-rgb="'+t+'"></div>'})),Rr("#palette").append(be);be="",Rr.each(["#FFF","#888","#000","chessboard"],(function(e,t){be+="chessboard"===t?'<div class="color_block" data-bgcolor="'+t+'" style="background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAP///9bW1iH5BAAAAAAALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7);"></div>':'<div class="color_block" data-bgcolor="'+t+'" style="background-color:'+t+';"></div>'})),Rr("#bg_blocks").append(be);var xe=Rr("#bg_blocks div"),we="cur_background";xe.each((function(){Rr(this).click((function(){xe.removeClass(we),Rr(this).addClass(we)}))})),Q(Vr.pref("bkgd_color"),Vr.pref("bkgd_url")),Rr("#image_save_opts input").val([Vr.pref("img_save")]);var Se=function(e,t){sn(t)&&(t=e.value),Rr("#group_opacity").val(t),e&&e.handle||Rr("#opac_slider").slider("option","value",t),Br.setOpacity(t/100)},ke=function(e,t,n){sn(t)&&(t=e.value),Rr("#blur").val(t);var r=!1;e&&e.handle||(Rr("#blur_slider").slider("option","value",t),r=!0),n?Br.setBlurNoUndo(t):Br.setBlur(t,r)};Rr("#stroke_style").change((function(){Br.setStrokeAttr("stroke-dasharray",Rr(this).val()),R()})),Rr("#stroke_linejoin").change((function(){Br.setStrokeAttr("stroke-linejoin",Rr(this).val()),R()})),Rr("select").change((function(){Rr(this).blur()}));var Ce,Ae,Ee,Ge,Pe,Ne=!1;Rr("#selLayerNames").change(n(regeneratorRuntime.mark((function e(){var t,n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.options[this.selectedIndex].value,n=zr.notification.QmoveElemsToLayer.replace("%s",t),r=function(e){e&&(Ne=!0,Br.moveSelectedToLayer(t),Br.clearSelection(),T())},!t){e.next=14;break}if(!Ne){e.next=8;break}r(!0),e.next=14;break;case 8:return e.next=10,Rr.confirm(n);case 10:if(e.sent){e.next=13;break}return e.abrupt("return");case 13:r(!0);case 14:case"end":return e.stop()}}),e,this)})))),Rr("#font_family").change((function(){Br.setFontFamily(this.value)})),Rr("#seg_type").change((function(){Br.setSegType(Rr(this).val())})),Rr("#text").bind("keyup input",(function(){Br.setTextContent(this.value)})),Rr("#image_url").change((function(){X(this.value)})),Rr("#link_url").change((function(){this.value.length?Br.setLinkURL(this.value):Br.removeHyperlink()})),Rr("#g_title").change((function(){Br.setGroupTitle(this.value)})),Rr(".attr_changer").change((function(){var e=this.getAttribute("data-attr"),t=this.value;if(!ue(e,t,j))return this.value=j.getAttribute(e),Rr.alert(zr.notification.invalidAttrValGiven),!1;if("id"!==e&&"class"!==e)if(isNaN(t))t=Br.convertToNum(e,t);else if("px"!==Kr.baseUnit){var n=ie();(j[e]||"pathedit"===Br.getMode()||"x"===e||"y"===e)&&(t*=n[Kr.baseUnit])}if("id"===e){var r=j;Br.clearSelection(),r.id=t,Br.addToSelection([r],!0)}else Br.changeSelectedAttribute(e,t);return this.blur(),!0})),Rr("#palette").mouseover((function(){var e=Rr('<input type="hidden">');Rr(this).append(e),e.focus().remove()})),Rr(".palette_item").mousedown((function(e){var t,n=e.shiftKey||2===e.button?"stroke":"fill",r=Rr(this).data("rgb");"none"===r||"transparent"===r||"initial"===r?(r="none",t=new Rr.jGraduate.Paint):t=new Rr.jGraduate.Paint({alpha:100,solidColor:r.substr(1)}),x[n].setPaint(t),Br.setColor(n,r),"none"!==r&&1!==Br.getPaintOpacity(n)&&Br.setPaintOpacity(n,1),ee()})).bind("contextmenu",(function(e){e.preventDefault()})),Rr("#toggle_stroke_tools").on("click",(function(){Rr("#tools_bottom").toggleClass("expanded")})),Ce=_[0],Ae=null,Ee=null,Ge=!1,Pe=!1,Rr("#svgcanvas").bind("mousemove mouseup",(function(e){return!1===Ge||(Ce.scrollLeft-=e.clientX-Ae,Ce.scrollTop-=e.clientY-Ee,Ae=e.clientX,Ee=e.clientY,"mouseup"===e.type&&(Ge=!1),!1)})).mousedown((function(e){return 1!==e.button&&!0!==Pe||(Ge=!0,Ae=e.clientX,Ee=e.clientY,!1)})),Rr(window).mouseup((function(){Ge=!1})),Rr(document).bind("keydown","space",(function(e){Br.spaceKey=Pe=!0,e.preventDefault()})).bind("keyup","space",(function(e){e.preventDefault(),Br.spaceKey=Pe=!1})).bind("keydown","shift",(function(e){"zoom"===Br.getMode()&&_.css("cursor",C)})).bind("keyup","shift",(function(e){"zoom"===Br.getMode()&&_.css("cursor",k)})),Vr.setPanning=function(e){Br.spaceKey=Pe=e},function(){var e=Rr("#main_icon"),t=Rr("#main_icon span"),n=Rr("#main_menu"),r=!1,a=0,i=!0,o=!1;Rr(window).mouseup((function(t){r||(e.removeClass("buttondown"),"INPUT"!==t.target.tagName?n.fadeOut(200):o||(o=!0,Rr(t.target).click((function(){n.css("margin-left","-9999px").show()})))),r=!1})).mousedown((function(e){Rr(e.target).closest("div.tools_flyout, .contextMenu").length||Rr(".tools_flyout:visible,.contextMenu").fadeOut(250)})),t.bind("mousedown",(function(){e.hasClass("buttondown")?n.fadeOut(200):(n.css("margin-left",0).show(),a||(a=n.height()),n.css("height",0).animate({height:a},200),r=!0),e.toggleClass("buttondown buttonup")})).hover((function(){r=!0})).mouseout((function(){r=!1}));var s=Rr("#main_menu li");s.mouseover((function(){i="rgba(0, 0, 0, 0)"===Rr(this).css("background-color"),s.unbind("mouseover"),i&&s.mouseover((function(){this.style.backgroundColor="#FFC"})).mouseout((function(){return this.style.backgroundColor="transparent",!0}))}))}(),Vr.addDropDown=function(e,t,n){if(Rr(e).length){var r=Rr(e).find("button"),a=Rr(e).find("ul").attr("id",Rr(e)[0].id+"-list");n?Rr(e).addClass("dropup"):Rr("#option_lists").append(a),a.find("li").bind("mouseup",t);var i=!1;Rr(window).mouseup((function(e){i||(r.removeClass("down"),a.hide()),i=!1})),r.bind("mousedown",(function(){if(r.hasClass("down"))a.hide();else{if(!n){var t=Rr(e).position();a.css({top:t.top+24,left:t.left-10})}a.show(),i=!0}r.toggleClass("down")})).hover((function(){i=!0})).mouseout((function(){i=!1}))}},Vr.addDropDown("#font_family_dropdown",(function(){Rr("#font_family").val(Rr(this).text()).change()})),Vr.addDropDown("#opacity_dropdown",(function(){if(!Rr(this).find("div").length){var e=Number.parseInt(Rr(this).text().split("%")[0]);Se(!1,e)}}),!0),Rr("#opac_slider").slider({start:function(){Rr("#opacity_dropdown li:not(.special)").hide()},stop:function(){Rr("#opacity_dropdown li").show(),Rr(window).mouseup()},slide:function(e,t){Se(t)}}),Vr.addDropDown("#blur_dropdown",Rr.noop);var Ie,Te,Le=!1;Rr("#blur_slider").slider({max:10,step:.1,stop:function(e,t){Le=!1,ke(t),Rr("#blur_dropdown li").show(),Rr(window).mouseup()},start:function(){Le=!0},slide:function(e,t){ke(t,null,Le)}}),Vr.addDropDown("#zoom_dropdown",(function(){var e=Rr(this),t=e.data("val");t?le(window,t):ce({value:Number.parseFloat(e.text())})}),!0),ve("#stroke_linecap","#linecap_opts",(function(){B(this,!0)}),{dropUp:!0}),ve("#stroke_linejoin","#linejoin_opts",(function(){B(this,!0)}),{dropUp:!0}),ve("#tool_position","#position_opts",(function(){var e=this.id.replace("tool_pos","").charAt(0);Br.alignSelectedElements(e,"page")}),{multiclick:!0}),Te=function(){Rr(Ie).blur()},Rr("#svg_editor").find("button, select, input:not(#text)").focus((function(){Ie=this,A="toolbars",_.mousedown(Te)})).blur((function(){A="canvas",_.unbind("mousedown",Te),"textedit"===Br.getMode()&&Rr("#text").focus()}));var Me,Oe=function(){Y("#tool_fhpath")&&Br.setMode("fhpath")},je=function(){Y("#tool_line")&&Br.setMode("line")},Ve=function(){Y("#tool_square")&&Br.setMode("square")},Re=function(){Y("#tool_rect")&&Br.setMode("rect")},Be=function(){Y("#tool_fhrect")&&Br.setMode("fhrect")},Ue=function(){Y("#tool_circle")&&Br.setMode("circle")},Fe=function(){Y("#tool_ellipse")&&Br.setMode("ellipse")},De=function(){Y("#tool_fhellipse")&&Br.setMode("fhellipse")},He=function(){Y("#tool_image")&&Br.setMode("image")},ze=function(){Y("#tool_zoom")&&(Br.setMode("zoom"),_.css("cursor",k))},qe=function(e){var t=Br.getResolution();e=e?t.zoom*e:1,Rr("#zoom").val(100*e),Br.setZoom(e),oe(),J(!0)},Ye=function(){Y("#tool_zoom")&&(qe(),E())},We=function(){Y("#tool_text")&&Br.setMode("text")},Xe=function(){Y("#tool_path")&&Br.setMode("path")},Qe=function(){sn(j)&&!V||Br.deleteSelectedElements()},Ke=function(){sn(j)&&!V||Br.cutSelectedElements()},Ze=function(){sn(j)&&!V||Br.copySelectedElements()},$e=function(){var e=Br.getZoom(),t=(_[0].scrollLeft+_.width()/2)/e-Br.contentW,n=(_[0].scrollTop+_.height()/2)/e-Br.contentH;Br.pasteElements("point",t,n)},Je=function(){sn(j)||Br.moveToTopSelectedElement()},et=function(){sn(j)||Br.moveToBottomSelectedElement()},tt=function(e){sn(j)||Br.moveUpDownSelected(e)},nt=function(){sn(j)||Br.convertToPath()},rt=function(){sn(j)||m.reorient()},at=function(){var e=n(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(sn(j)&&!V){e.next=5;break}return e.next=3,Rr.prompt(zr.notification.enterNewLinkURL,"http://");case 3:(t=e.sent)&&Br.makeHyperlink(t);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),it=function(e,t){if(!sn(j)||V){if(Kr.gridSnapping){var n=Br.getZoom()*Kr.snappingStep;e*=n,t*=n}Br.moveSelectedElements(e,t)}},ot=function(){Rr("#tool_node_link").toggleClass("push_button_pressed tool_button");var e=Rr("#tool_node_link").hasClass("push_button_pressed");m.linkControlPoints(e)},st=function(){m.getNodePoint()&&m.clonePathNode()},lt=function(){m.getNodePoint()&&m.deletePathNode()},ct=function(){var e=Rr("#tool_add_subpath"),t=!e.hasClass("push_button_pressed");e.toggleClass("push_button_pressed tool_button"),m.addSubPath(t)},ut=function(){m.opencloseSubPath()},dt=function(){Br.cycleElement(1)},ht=function(){Br.cycleElement(0)},ft=function(e,t){if(!sn(j)&&!V){e||(t*=-1);var n=Number.parseFloat(Rr("#angle").val())+t;Br.setRotationAngle(n),te()}},pt=function(){var e=n(regeneratorRuntime.mark((function e(){var t,n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=h(Kr.dimensions,2),n=t[0],r=t[1],e.next=3,Rr.confirm(zr.notification.QwantToClear);case 3:if(e.sent){e.next=6;break}return e.abrupt("return");case 6:E(),Br.clear(),Br.setResolution(n,r),J(!0),qe(),T(),te(),de(),Br.runExtensions("onNewDocument");case 15:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),gt=function(){return Br.setBold(!Br.getBold()),te(),!1},mt=function(){return Br.setItalic(!Br.getItalic()),te(),!1},vt=function(){var e=n(regeneratorRuntime.mark((function e(){var t,n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=function(){var e,t,r=zr.notification.loadingImage;if("new"===Kr.exportWindowType&&Vr.exportWindowCt++,n=Kr.canvasName+Vr.exportWindowCt,Me)t=Me;else{if(e='<!DOCTYPE html><html>\n <head>\n <meta charset="utf-8">\n <title>'.concat(r,"</title>\n </head>\n <body><h1>").concat(r,"</h1></body>\n <html>"),"undefined"!=typeof URL&&URL.createObjectURL){var a=new Blob([e],{type:"text/html"});t=URL.createObjectURL(a)}else t="data:text/html;base64;charset=utf-8,"+Et(e);Me=t}w=window.open(t,n)},e.next=3,Rr.select("Select an image type for export: ",["PNG","JPEG","BMP","WEBP","PDF"],(function(){var e=Rr(this);"JPEG"===e.val()||"WEBP"===e.val()?Rr("#image-slider").length||Rr("<div><label>".concat(zr.ui.quality,'\n <input id="image-slider"\n type="range" min="1" max="100" value="92" />\n </label></div>')).appendTo(e.parent()):Rr("#image-slider").parent().remove()}));case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return");case 6:if(a=H(),"PDF"!==t){e.next=12;break}Xr||a||r(),Br.exportPDF(n),e.next=16;break;case 12:return Wr||r(),i=Number.parseInt(Rr("#image-slider").val())/100,e.next=16,Br.rasterExport(t,i,n);case 16:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),yt=function(){Br.open()},_t=function(){},bt=function(){v.getUndoStackSize()>0&&(v.undo(),T())},xt=function(){v.getRedoStackSize()>0&&(v.redo(),T())},wt=function(){V?Br.groupSelectedElements():j&&Br.ungroupSelectedElement()},St=function(){Br.cloneSelectedElements(20,20)},kt=function(){var e=this.id.replace("tool_align","").charAt(0);Br.alignSelectedElements(e,Rr("#align_relative_to").val())},Ct=function(){if(Rr("#tool_wireframe").toggleClass("push_button_pressed tool_button"),_.toggleClass("wireframe"),!$t){var e=Rr("#wireframe_rules");e.length?e.empty():Rr('<style id="wireframe_rules"></style>').appendTo("head"),ne()}};Rr("#svg_docprops_container, #svg_prefs_container").draggable({cancel:"button,fieldset",containment:"window"}).css("position","absolute");var At,Gt,Pt=!1,Nt=!1,It=function(){if(!Pt){Pt=!0,Rr("#image_save_opts input").val([Vr.pref("img_save")]);var e=Br.getResolution();"px"!==Kr.baseUnit&&(e.w=se(e.w)+Kr.baseUnit,e.h=se(e.h)+Kr.baseUnit),Rr("#canvas_width").val(e.w),Rr("#canvas_height").val(e.h),Rr("#canvas_title").val(Br.getDocumentTitle()),Rr("#svg_docprops").show()}},Tt=function(){if(!Nt){Nt=!0,Rr("#main_menu").hide();var e=Qr.bkgd_color,t=Vr.pref("bkgd_url");xe.each((function(){var t=Rr(this),n=t.data("bgcolor")===e;t.toggleClass(we,n)})),e||xe.eq(0).addClass(we),t&&Rr("#canvas_bg_url").val(t),Rr("#grid_snapping_on").prop("checked",Kr.gridSnapping),Rr("#grid_snapping_step").attr("value",Kr.snappingStep),Rr("#grid_color").attr("value",Kr.gridColor),Rr("#svg_prefs").show()}},Mt=function(){window.open("https://github.com/SVG-Edit/svgedit","_blank")},Ot=function(){Rr("#svg_source_editor").hide(),L=!1,Rr("#svg_source_textarea").blur()},jt=function(){var e=n(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(L){e.next=2;break}return e.abrupt("return");case 2:if(t=function(){Br.clearSelection(),Ot(),qe(),T(),ae(),de()},Br.setSvgString(Rr("#svg_source_textarea").val())){e.next=11;break}return e.next=6,Rr.confirm(zr.notification.QerrorsRevertToSource);case 6:if(e.sent){e.next=9;break}return e.abrupt("return");case 9:return t(),e.abrupt("return");case 11:t(),E();case 13:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Vt=function(){Rr("#svg_docprops").hide(),Rr("#canvas_width,#canvas_height").removeAttr("disabled"),Rr("#resolution")[0].selectedIndex=0,Rr("#image_save_opts input").val([Vr.pref("img_save")]),Pt=!1},Rt=function(){Rr("#svg_prefs").hide(),Nt=!1},Bt=function(){var e=Rr("#canvas_title").val();ae(e),Br.setDocumentTitle(e);var t=Rr("#canvas_width"),n=t.val(),r=Rr("#canvas_height"),a=r.val();return"fit"===n||ue("width",n)?(t.parent().removeClass("error"),"fit"===a||ue("height",a)?(r.parent().removeClass("error"),Br.setResolution(n,a)?(Vr.pref("img_save",Rr("#image_save_opts :checked").val()),J(),Vt(),!0):(Rr.alert(zr.notification.noContentToFitTo),!1)):(r.parent().addClass("error"),Rr.alert(zr.notification.invalidAttrValGiven),!1)):(t.parent().addClass("error"),Rr.alert(zr.notification.invalidAttrValGiven),!1)},Ut=Vr.savePreferences=n(regeneratorRuntime.mark((function t(){var n,r,a,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(Q(Rr("#bg_blocks div.cur_background").data("bgcolor")||"#FFF",Rr("#canvas_bg_url").val()),!(n=Rr("#lang_select").val())||n===Vr.pref("lang")){t.next=11;break}return t.next=6,Vr.putLocale(n,e,Kr);case 6:return r=t.sent,a=r.langParam,i=r.langData,t.next=11,Gn(a,i);case 11:u(Rr("#iconsize").val()),Kr.gridSnapping=Rr("#grid_snapping_on")[0].checked,Kr.snappingStep=Rr("#grid_snapping_step").val(),Kr.gridColor=Rr("#grid_color").val(),Kr.showRulers=Rr("#show_rulers")[0].checked,Rr("#rulers").toggle(Kr.showRulers),Kr.showRulers&&$(),Kr.baseUnit=Rr("#base_unit").val(),Br.setConfig(Kr),J(),Rt();case 22:case"end":return t.stop()}}),t)}))),Ft=Rr.noop,Dt=function(){var e=n(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(Rr("#dialog_box").hide(),L||Pt||Nt){e.next=4;break}return re&&Br.leaveContext(),e.abrupt("return");case 4:if(!L){e.next=15;break}if(M===Rr("#svg_source_textarea").val()){e.next=12;break}return e.next=8,Rr.confirm(zr.notification.QignoreSourceChanges);case 8:e.sent&&Ot(),e.next=13;break;case 12:Ot();case 13:e.next=16;break;case 15:Pt?Vt():Nt&&Rt();case 16:Ft();case 17:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Ht={width:Rr(window).width(),height:Rr(window).height()};if(D()&&(Ft=function(){0===_[0].scrollLeft&&0===_[0].scrollTop&&(_[0].scrollLeft=p.left,_[0].scrollTop=p.top)},p={left:_[0].scrollLeft,top:_[0].scrollTop},Rr(window).resize(Ft),Vr.ready((function(){return new Promise((function(e,t){setTimeout((function(){Ft(),e()}),500)}))})),_.scroll((function(){p={left:_[0].scrollLeft,top:_[0].scrollTop}}))),Rr(window).resize((function(e){Rr.each(Ht,(function(e,t){var n=Rr(window)[e]();_[0]["scroll"+("width"===e?"Left":"Top")]-=(n-t)/2,Ht[e]=n})),l()})),_.scroll((function(){Rr("#ruler_x").length&&(Rr("#ruler_x")[0].scrollLeft=_[0].scrollLeft),Rr("#ruler_y").length&&(Rr("#ruler_y")[0].scrollTop=_[0].scrollTop)})),Rr("#url_notice").click((function(){Rr.alert(this.title)})),Rr("#change_image_url").click(K),At="tool_button_current",Gt="",Rr.each(["clear","open","save","source","delete","delete_multi","paste","clone","clone_multi","move_top","move_bottom"],(function(e,t){Gt+=(e?",":"")+"#tool_"+t})),Rr(Gt).mousedown((function(){Rr(this).addClass(At)})).bind("mousedown mouseout",(function(){Rr(this).removeClass(At)})),Rr("#tool_undo, #tool_redo").mousedown((function(){Rr(this).hasClass("disabled")||Rr(this).addClass(At)})).bind("mousedown mouseout",(function(){Rr(this).removeClass(At)})),z()&&!window.opera)for(var zt=["tool_clear","tool_save","tool_source","tool_undo","tool_redo","tool_clone"],qt=zt.length;qt--;){var Yt=document.getElementById(zt[qt]);if(Yt){var Wt=Yt.title,Xt=Wt.indexOf("Ctrl+");Yt.title=[Wt.substr(0,Xt),"Cmd+",Wt.substr(Xt+5)].join("")}}var Qt=function(e){var t="stroke_color"===e.attr("id")?"stroke":"fill",n="stroke"===t?zr.ui.pick_stroke_paint_opacity:zr.ui.pick_fill_paint_opacity,r=e.offset(),a=x[t].paint;Rr("#color_picker").draggable({cancel:".jGraduate_tabs, .jGraduate_colPick, .jGraduate_gradPick, .jPicker",containment:"window"}).css(Kr.colorPickerCSS||{left:r.left-140,bottom:40}).jGraduate({paint:a,window:{pickerTitle:n},images:{clientPath:Kr.jGraduatePath},newstop:"inverse"},(function(e){a=new Rr.jGraduate.Paint(e),x[t].setPaint(a),Br.setPaint(t,a),Rr("#color_picker").hide()}),(function(){Rr("#color_picker").hide()}))},Kt=function(){function e(t,n){r(this,e);var a=Kr["fill"===n?"initFill":"initStroke"],i=(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg">\n <rect width="16.5" height="16.5"\n fill="#'.concat(a.color,'" opacity="').concat(a.opacity,'"/>\n <defs><linearGradient id="gradbox_').concat(e.ctr++,'"/></defs>\n </svg>'),"text/xml").documentElement;(i=Rr(t)[0].appendChild(document.importNode(i,!0))).setAttribute("width",16.5),this.rect=i.firstElementChild,this.defs=i.getElementsByTagName("defs")[0],this.grad=this.defs.firstElementChild,this.paint=new Rr.jGraduate.Paint({solidColor:a.color}),this.type=n}return i(e,[{key:"setPaint",value:function(e,t){this.paint=e;var n=e.type,r=e.alpha/100,a="none";switch(n){case"solidColor":a="none"!==e[n]?"#"+e[n]:e[n];break;case"linearGradient":case"radialGradient":this.grad.remove(),this.grad=this.defs.appendChild(e[n]),a="url(#"+(this.grad.id="gradbox_"+this.type)+")"}this.rect.setAttribute("fill",a),this.rect.setAttribute("opacity",r),t&&(Br.setColor(this.type,this._paintColor,!0),Br.setPaintOpacity(this.type,this._paintOpacity,!0))}},{key:"update",value:function(e){if(j){var t=this.type;switch(j.tagName){case"use":case"image":case"foreignObject":return;case"g":case"a":for(var n=j.getElementsByTagName("*"),r=null,a=0,i=n.length;a<i;a++){var o=n[a].getAttribute(t);if(0===a)r=o;else if(r!==o){r=null;break}}if(null===r)return void(this._paintColor=null);this._paintColor=r,this._paintOpacity=1;break;default:this._paintOpacity=Number.parseFloat(j.getAttribute(t+"-opacity")),Number.isNaN(this._paintOpacity)&&(this._paintOpacity=1);var s="fill"===t?"black":"none";this._paintColor=j.getAttribute(t)||s}e&&(Br.setColor(t,this._paintColor,!0),Br.setPaintOpacity(t,this._paintOpacity,!0)),this._paintOpacity*=100;var l=function(e,t,n){var r={alpha:t};if(e.startsWith("url(#")){var a=Br.getRefElem(e);r[(a=a?a.cloneNode(!0):Rr("#"+n+"_color defs *")[0]).tagName]=a}else e.startsWith("#")?r.solidColor=e.substr(1):r.solidColor="none";return new Rr.jGraduate.Paint(r)}(this._paintColor,this._paintOpacity,t);this.setPaint(l)}}},{key:"prep",value:function(){switch(this.paint.type){case"linearGradient":case"radialGradient":var e=new Rr.jGraduate.Paint({copy:this.paint});Br.setPaint(this.type,e)}}}]),e}();Kt.ctr=0,x.fill=new Kt("#fill_color","fill"),x.stroke=new Kt("#stroke_color","stroke"),Rr("#stroke_width").val(Kr.initStroke.width),Rr("#group_opacity").val(100*Kr.initOpacity);var Zt=x.fill.rect.cloneNode(!1);Zt.setAttribute("style","vector-effect:non-scaling-stroke");var $t="non-scaling-stroke"===Zt.style.vectorEffect;Zt.removeAttribute("style");var Jt,en,tn=x.fill.rect.ownerDocument.createElementNS(y.SVG,"feGaussianBlur");function nn(){Br.deleteCurrentLayer()&&(te(),T(),Rr("#layerlist tr.layer").removeClass("layersel"),Rr("#layerlist tr.layer:first").addClass("layersel"))}function rn(){return(rn=n(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Br.getCurrentDrawing().getCurrentLayerName()+" copy",e.next=3,Rr.prompt(zr.notification.enterUniqueLayerName,t);case 3:if(n=e.sent){e.next=6;break}return e.abrupt("return");case 6:if(!Br.getCurrentDrawing().hasLayer(n)){e.next=9;break}return Rr.alert(zr.notification.dupeLayerName),e.abrupt("return");case 9:Br.cloneLayer(n),te(),T();case 12:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function an(e){var t=Br.getCurrentDrawing().getNumLayers(),n=Rr("#layerlist tr.layersel").index();(n>0||n<t-1)&&(n+=e,Br.setCurrentLayerPosition(t-n-1),T())}void 0===tn.stdDeviationX&&Rr("#tool_blur").hide(),Rr(tn).remove(),Jt="-"+c.toLowerCase()+"-zoom-",en=Jt+"in",_.css("cursor",en),_.css("cursor")===en&&(k=en,C=Jt+"out"),_.css("cursor","auto"),setTimeout((function(){Br.embedImage("images/logo.png",(function(e){e||(Rr("#image_save_opts [value=embed]").attr("disabled","disabled"),Rr("#image_save_opts input").val(["ref"]),Vr.pref("img_save","ref"),Rr("#image_opt_embed").css("color","#666").attr("title",zr.notification.featNotSupported))}))}),1e3),Rr("#fill_color, #tool_fill .icon_label").click((function(){Qt(Rr("#fill_color")),ee()})),Rr("#stroke_color, #tool_stroke .icon_label").click((function(){Qt(Rr("#stroke_color")),ee()})),Rr("#group_opacityLabel").click((function(){Rr("#opacity_dropdown button").mousedown(),Rr(window).mouseup()})),Rr("#zoomLabel").click((function(){Rr("#zoom_dropdown button").mousedown(),Rr(window).mouseup()})),Rr("#tool_move_top").mousedown((function(e){Rr("#tools_stacking").show(),e.preventDefault()})),Rr(".layer_button").mousedown((function(){Rr(this).addClass("layer_buttonpressed")})).mouseout((function(){Rr(this).removeClass("layer_buttonpressed")})).mouseup((function(){Rr(this).removeClass("layer_buttonpressed")})),Rr(".push_button").mousedown((function(){Rr(this).hasClass("disabled")||Rr(this).addClass("push_button_pressed").removeClass("push_button")})).mouseout((function(){Rr(this).removeClass("push_button_pressed").addClass("push_button")})).mouseup((function(){Rr(this).removeClass("push_button_pressed").addClass("push_button")})),Rr("#layer_new").click(n(regeneratorRuntime.mark((function e(){var t,n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Br.getCurrentDrawing().getNumLayers();do{t=zr.layers.layer+" "+ ++n}while(Br.getCurrentDrawing().hasLayer(t));return e.next=4,Rr.prompt(zr.notification.enterUniqueLayerName,t);case 4:if(r=e.sent){e.next=7;break}return e.abrupt("return");case 7:if(!Br.getCurrentDrawing().hasLayer(r)){e.next=10;break}return Rr.alert(zr.notification.dupeLayerName),e.abrupt("return");case 10:Br.createLayer(r),te(),T();case 13:case"end":return e.stop()}}),e)})))),Rr("#layer_delete").click(nn),Rr("#layer_up").click((function(){an(-1)})),Rr("#layer_down").click((function(){an(1)})),Rr("#layer_rename").click(n(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Rr("#layerlist tr.layersel td.layername").text(),e.next=3,Rr.prompt(zr.notification.enterNewLayerName,"");case 3:if(n=e.sent){e.next=6;break}return e.abrupt("return");case 6:if(t!==n&&!Br.getCurrentDrawing().hasLayer(n)){e.next=9;break}return Rr.alert(zr.notification.layerHasThatName),e.abrupt("return");case 9:Br.renameCurrentLayer(n),T();case 11:case"end":return e.stop()}}),e)}))));var on=-1,ln=!1,un=!1,dn=function(e){var t=Rr("#ruler_x");Rr("#sidepanels").width("+="+e),Rr("#layerpanel").width("+="+e),t.css("right",Number.parseInt(t.css("right"))+e),_.css("right",Number.parseInt(_.css("right"))+e),Br.runExtensions("workareaResized")},hn=function(e){if(un&&-1!==on){ln=!0;var t=on-e.pageX,n=Rr("#sidepanels").width();n+t>300?t=300-n:n+t<2&&(t=2-n),0!==t&&(on-=t,dn(t))}},pn=function(e){var t=window.devicePixelRatio||1,n=Rr("#sidepanels").width();dn(((t<1?n:n/t)>2||e?0:150*(t<1?1:t))-n)};Rr("#sidepanel_handle").mousedown((function(e){on=e.pageX,Rr(window).mousemove(hn),un=!1,setTimeout((function(){un=!0}),20)})).mouseup((function(e){ln||pn(),on=-1,ln=!1})),Rr(window).mouseup((function(){on=-1,ln=!1,Rr("#svg_editor").unbind("mousemove",hn)})),T();Rr(window).bind("load resize",(function(){_.css("line-height",_.height()+"px")})),Rr("#resolution").change((function(){var e=Rr("#canvas_width,#canvas_height");if(this.selectedIndex)if("content"===this.value)e.val("fit").attr("disabled","disabled");else{var t=this.value.split("x");Rr("#canvas_width").val(t[0]),Rr("#canvas_height").val(t[1]),e.removeAttr("disabled")}else"fit"===Rr("#canvas_width").val()&&e.removeAttr("disabled").val(100)})),Rr("input,select").attr("autocomplete","off");var gn,mn,vn=["#tool_source_cancel","#tool_docprops_cancel","#tool_prefs_cancel",".overlay"],bn=(gn=[{sel:"#tool_select",fn:W,evt:"click",key:["V",!0]},{sel:"#tool_fhpath",fn:Oe,evt:"click",key:["Q",!0]},{sel:"#tool_line",fn:je,evt:"click",key:["L",!0],parent:"#tools_line",prepend:!0},{sel:"#tool_rect",fn:Re,evt:"mouseup",key:["R",!0],parent:"#tools_rect",icon:"rect"},{sel:"#tool_square",fn:Ve,evt:"mouseup",parent:"#tools_rect",icon:"square"},{sel:"#tool_fhrect",fn:Be,evt:"mouseup",parent:"#tools_rect",icon:"fh_rect"},{sel:"#tool_ellipse",fn:Fe,evt:"mouseup",key:["E",!0],parent:"#tools_ellipse",icon:"ellipse"},{sel:"#tool_circle",fn:Ue,evt:"mouseup",parent:"#tools_ellipse",icon:"circle"},{sel:"#tool_fhellipse",fn:De,evt:"mouseup",parent:"#tools_ellipse",icon:"fh_ellipse"},{sel:"#tool_path",fn:Xe,evt:"click",key:["P",!0]},{sel:"#tool_text",fn:We,evt:"click",key:["T",!0]},{sel:"#tool_image",fn:He,evt:"mouseup"},{sel:"#tool_zoom",fn:ze,evt:"mouseup",key:["Z",!0]},{sel:"#tool_clear",fn:pt,evt:"mouseup",key:["N",!0]},{sel:"#tool_save",fn:function(){var e;L?jt():(e={images:Vr.pref("img_save"),round_digits:6},Br.save(e))},evt:"mouseup",key:["S",!0]},{sel:"#tool_export",fn:vt,evt:"mouseup"},{sel:"#tool_open",fn:yt,evt:"mouseup",key:["O",!0]},{sel:"#tool_import",fn:_t,evt:"mouseup"},{sel:"#tool_source",fn:O,evt:"click",key:["U",!0]},{sel:"#tool_wireframe",fn:Ct,evt:"click",key:["F",!0]},{key:["esc",!1,!1],fn:function(){vn.every((function(e){return Rr(e+":hidden").length}))&&Br.clearSelection()},hidekey:!0},{sel:vn.join(","),fn:Dt,evt:"click",key:["esc",!1,!1],hidekey:!0},{sel:"#tool_source_save",fn:jt,evt:"click"},{sel:"#tool_docprops_save",fn:Bt,evt:"click"},{sel:"#tool_docprops",fn:It,evt:"click"},{sel:"#tool_prefs_save",fn:Ut,evt:"click"},{sel:"#tool_editor_prefs",fn:Tt,evt:"click"},{sel:"#tool_editor_homepage",fn:Mt,evt:"click"},{sel:"#tool_open",fn:function(){window.dispatchEvent(new CustomEvent("openImage"))},evt:"click"},{sel:"#tool_import",fn:function(){window.dispatchEvent(new CustomEvent("importImage"))},evt:"click"},{sel:"#tool_delete,#tool_delete_multi",fn:Qe,evt:"click",key:["del/backspace",!0]},{sel:"#tool_reorient",fn:rt,evt:"click"},{sel:"#tool_node_link",fn:ot,evt:"click"},{sel:"#tool_node_clone",fn:st,evt:"click"},{sel:"#tool_node_delete",fn:lt,evt:"click"},{sel:"#tool_openclose_path",fn:ut,evt:"click"},{sel:"#tool_add_subpath",fn:ct,evt:"click"},{sel:"#tool_move_top",fn:Je,evt:"click",key:"ctrl+shift+]"},{sel:"#tool_move_bottom",fn:et,evt:"click",key:"ctrl+shift+["},{sel:"#tool_topath",fn:nt,evt:"click"},{sel:"#tool_make_link,#tool_make_link_multi",fn:at,evt:"click"},{sel:"#tool_undo",fn:bt,evt:"click"},{sel:"#tool_redo",fn:xt,evt:"click"},{sel:"#tool_clone,#tool_clone_multi",fn:St,evt:"click",key:["D",!0]},{sel:"#tool_group_elements",fn:wt,evt:"click",key:["G",!0]},{sel:"#tool_ungroup",fn:wt,evt:"click"},{sel:"#tool_unlink_use",fn:wt,evt:"click"},{sel:"[id^=tool_align]",fn:kt,evt:"click"},{sel:"#tool_bold",fn:gt,evt:"mousedown"},{sel:"#tool_italic",fn:mt,evt:"mousedown"},{sel:"#sidepanel_handle",fn:pn,key:["X"]},{sel:"#copy_save_done",fn:Dt,evt:"click"},{key:"ctrl+left",fn:function(){ft(0,1)}},{key:"ctrl+right",fn:function(){ft(1,1)}},{key:"ctrl+shift+left",fn:function(){ft(0,5)}},{key:"ctrl+shift+right",fn:function(){ft(1,5)}},{key:"shift+O",fn:ht},{key:"shift+P",fn:dt},{key:[g+"up",!0],fn:function(){qe(2)}},{key:[g+"down",!0],fn:function(){qe(.5)}},{key:[g+"]",!0],fn:function(){tt("Up")}},{key:[g+"[",!0],fn:function(){tt("Down")}},{key:["up",!0],fn:function(){it(0,-1)}},{key:["down",!0],fn:function(){it(0,1)}},{key:["left",!0],fn:function(){it(-1,0)}},{key:["right",!0],fn:function(){it(1,0)}},{key:"shift+up",fn:function(){it(0,-10)}},{key:"shift+down",fn:function(){it(0,10)}},{key:"shift+left",fn:function(){it(-10,0)}},{key:"shift+right",fn:function(){it(10,0)}},{key:["alt+up",!0],fn:function(){Br.cloneSelectedElements(0,-1)}},{key:["alt+down",!0],fn:function(){Br.cloneSelectedElements(0,1)}},{key:["alt+left",!0],fn:function(){Br.cloneSelectedElements(-1,0)}},{key:["alt+right",!0],fn:function(){Br.cloneSelectedElements(1,0)}},{key:["alt+shift+up",!0],fn:function(){Br.cloneSelectedElements(0,-10)}},{key:["alt+shift+down",!0],fn:function(){Br.cloneSelectedElements(0,10)}},{key:["alt+shift+left",!0],fn:function(){Br.cloneSelectedElements(-10,0)}},{key:["alt+shift+right",!0],fn:function(){Br.cloneSelectedElements(10,0)}},{key:"a",fn:function(){Br.selectAllInCurrentLayer()}},{key:g+"a",fn:function(){Br.selectAllInCurrentLayer()}},{key:g+"z",fn:bt},{key:g+"shift+z",fn:xt},{key:g+"y",fn:xt},{key:g+"x",fn:Ke},{key:g+"c",fn:Ze},{key:g+"v",fn:$e}],mn={"4/Shift+4":"#tools_rect_show","5/Shift+5":"#tools_ellipse_show"},{setAll:function(){var e={};Rr.each(gn,(function(t,n){var r;if(n.sel){if(!(r=Rr(n.sel)).length)return!0;if(n.evt&&(q()&&"click"===n.evt&&(n.evt="mousedown"),r[n.evt](n.fn)),n.parent&&Rr(n.parent+"_show").length){var a=Rr(n.parent);a.length||(a=me(n.parent.substr(1))),n.prepend&&(r[0].style.margin="initial"),a[n.prepend?"prepend":"append"](r),Array.isArray(e[n.parent])||(e[n.parent]=[]),e[n.parent].push(n)}}if(n.key){var i,o=!1;Array.isArray(n.key)?(i=n.key[0],n.key.length>1&&(o=n.key[1])):i=n.key,i=String(i);var s=n.fn;if(Rr.each(i.split("/"),(function(e,t){Rr(document).bind("keydown",t,(function(e){return s(),o&&e.preventDefault(),!1}))})),n.sel&&!n.hidekey&&r.attr("title")){var l=r.attr("title").split("[")[0]+" ("+i+")";mn[i]=n.sel,r.parents("#main_menu").length||r.attr("title",l)}}return!0})),ge(e),Rr(".attr_changer, #image_url").bind("keydown","return",(function(e){Rr(this).change(),e.preventDefault()})),Rr(window).bind("keydown","tab",(function(e){"canvas"===A&&(e.preventDefault(),dt())})).bind("keydown","shift+tab",(function(e){"canvas"===A&&(e.preventDefault(),ht())})),Rr("#tool_zoom").dblclick(Ye)},setTitles:function(){Rr.each(mn,(function(e,t){var n=Rr(t).parents("#main_menu").length;Rr(t).each((function(){var t;t=n?Rr(this).text().split(" [")[0]:this.title.split(" [")[0];var r="";Rr.each(e.split("/"),(function(e,t){var n=t.split("+"),a="";n.length>1&&(a=n[0]+"+",t=n[1]),r+=(e?"/":"")+a+(zr["key_"+t]||t)})),n?this.lastChild.textContent=t+" ["+r+"]":this.title=t+" ["+r+"]"}))}))},getButtonData:function(e){return Object.values(gn).find((function(t){return t.sel===e}))}});Vr.ready((function(){var e=Kr.initTool,t=Rr("#tools_left, #svg_editor .tools_flyout"),n=t.find("#tool_"+e),r=t.find("#"+e);(n.length?n:r.length?r:Rr("#tool_select")).click().mouseup(),Kr.wireframe&&Rr("#tool_wireframe").click(),Kr.showlayers&&pn(),Rr("#rulers").toggle(Boolean(Kr.showRulers)),Kr.showRulers&&(Rr("#show_rulers")[0].checked=!0),Kr.baseUnit&&Rr("#base_unit").val(Kr.baseUnit),Kr.gridSnapping&&(Rr("#grid_snapping_on")[0].checked=!0),Kr.snappingStep&&Rr("#grid_snapping_step").val(Kr.snappingStep),Kr.gridColor&&Rr("#grid_color").val(Kr.gridColor)})),Rr("#rect_rx").SpinButton({min:0,max:1e3,stateObj:s,callback:function(e){Br.setRectRadius(e.value)}}),Rr("#stroke_width").SpinButton({min:0,max:99,smallStep:.1,stateObj:s,callback:function(e){var t=e.value;0===t&&j&&["line","polyline"].includes(j.nodeName)&&(t=e.value=1),Br.setStrokeWidth(t)}}),Rr("#angle").SpinButton({min:-180,max:180,step:5,stateObj:s,callback:function(e){Br.setRotationAngle(e.value),Rr("#tool_reorient").toggleClass("disabled",0===Number.parseInt(e.value))}}),Rr("#font_size").SpinButton({min:.001,stepfunc:function(e,t){var n=Number(e.value),r=n+t,a=r>=n;return 0===t?n:n>=24?a?Math.round(1.1*n):Math.round(n/1.1):n<=1?a?2*n:n/2:r},stateObj:s,callback:function(e){Br.setFontSize(e.value)}}),Rr("#group_opacity").SpinButton({min:0,max:100,step:5,stateObj:s,callback:Se}),Rr("#blur").SpinButton({min:0,max:10,step:.1,stateObj:s,callback:ke}),Rr("#zoom").SpinButton({min:.001,max:1e4,step:50,stepfunc:function(e,t){var n=Number(e.value);if(0===n)return 100;var r=n+t;return 0===t?n:n>=100?r:r>=n?2*n:n/2},stateObj:s,callback:ce}).val(100*Br.getZoom()),Rr("#workarea").contextMenu({menu:"cmenu_canvas",inSpeed:0},(function(e,t,n){switch(e){case"delete":Qe();break;case"cut":Ke();break;case"copy":Ze();break;case"paste":Br.pasteElements();break;case"paste_in_place":Br.pasteElements("in_place");break;case"group":case"group_elements":Br.groupSelectedElements();break;case"ungroup":Br.ungroupSelectedElement();break;case"move_front":Je();break;case"move_up":tt("Up");break;case"move_down":tt("Down");break;case"move_back":et();break;default:Boolean(cn[e])&&function(e){return cn[e].action}(e).call()}}));var wn=function(e,t,n){switch(e){case"dupe":!function(){rn.apply(this,arguments)}();break;case"delete":nn();break;case"merge_down":Rr("#layerlist tr.layersel").index()!==Br.getCurrentDrawing().getNumLayers()-1&&(Br.mergeLayer(),te(),T());break;case"merge_all":Br.mergeAllLayers(),te(),T()}};function Sn(){var e;try{e=localStorage.getItem("svgedit_clipboard")}catch(e){}b[(e?"en":"dis")+"ableContextMenuItems"]("#paste,#paste_in_place")}if(Rr("#layerlist").contextMenu({menu:"cmenu_layers",inSpeed:0},wn),Rr("#layer_moreopts").contextMenu({menu:"cmenu_layers",inSpeed:0,allowLeft:!0},wn),Rr(".contextMenu li").mousedown((function(e){e.preventDefault()})),Rr("#cmenu_canvas li").disableContextMenu(),b.enableContextMenuItems("#delete,#cut,#copy"),Sn(),window.addEventListener("storage",(function(e){"svgedit_clipboard"===e.key&&Sn()})),window.addEventListener("beforeunload",(function(e){return 0===v.getUndoStackSize()&&(Vr.showSaveWarning=!1),!(!Kr.no_save_warning&&Vr.showSaveWarning)||(e.returnValue=zr.notification.unsavedChanges,zr.notification.unsavedChanges)})),Vr.canvas.getUIStrings=function(){return zr},Vr.openPrep=function(){return Rr("#main_menu").hide(),0===v.getUndoStackSize()||Rr.confirm(zr.notification.QwantToOpen)},window.FileReader){var kn=function(e){Rr.process_cancel(zr.notification.loadingImage),e.stopPropagation(),e.preventDefault(),Rr("#workarea").removeAttr("style"),Rr("#main_menu").hide();var t,n="drop"===e.type?e.dataTransfer.files[0]:this.files[0];n?n.type.includes("image")&&(n.type.includes("svg")?((t=new FileReader).onloadend=function(e){var t=Br.importSvgString(e.target.result,!0);Br.ungroupSelectedElement(),Br.ungroupSelectedElement(),Br.groupSelectedElements(),Br.alignSelectedElements("m","page"),Br.alignSelectedElements("c","page"),Br.selectOnly([t]),Rr("#dialog_box").hide()},t.readAsText(n)):((t=new FileReader).onloadend=function(e){var t=e.target.result,n=100,r=100,a=new Image;a.style.opacity=0,a.addEventListener("load",(function(){var e,i,o;n=a.offsetWidth||a.naturalWidth||a.width,r=a.offsetHeight||a.naturalHeight||a.height,e=n,i=r,o=Br.addSVGElementFromJson({element:"image",attr:{x:0,y:0,width:e,height:i,id:Br.getNextId(),style:"pointer-events:inherit"}}),Br.setHref(o,t),Br.selectOnly([o]),Br.alignSelectedElements("m","page"),Br.alignSelectedElements("c","page"),te(),Rr("#dialog_box").hide()})),a.src=t},t.readAsDataURL(n))):Rr("#dialog_box").hide()};_[0].addEventListener("dragenter",(function(e){e.stopPropagation(),e.preventDefault()})),_[0].addEventListener("dragover",(function(e){e.stopPropagation(),e.preventDefault()})),_[0].addEventListener("dragleave",(function(e){e.stopPropagation(),e.preventDefault()})),_[0].addEventListener("drop",kn);var Cn=Rr('<input type="file">').change(function(){var e=n(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Vr.openPrep();case 2:if(e.sent){e.next=5;break}return e.abrupt("return");case 5:Br.clear(),1===this.files.length&&(Rr.process_cancel(zr.notification.loadingImage),(r=new FileReader).onloadend=function(){var e=n(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.target,e.next=3,Zr(n.result);case 3:J();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),r.readAsText(this.files[0]));case 7:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}());Rr("#tool_open").show(),Rr(window).on("openImage",(function(){return Cn.click()}));var An=Rr('<input type="file">').change(kn);Rr("#tool_import").show(),Rr(window).on("importImage",(function(){return An.click()}))}J(!0);var En=[],Gn=Vr.setLang=function(){var e=n(regeneratorRuntime.mark((function e(t,n){var r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(Vr.langChanged=!0,Vr.pref("lang",t),Rr("#lang_select").val(t),n){e.next=5;break}return e.abrupt("return");case 5:if(document.documentElement.lang=n.lang,Rr.extend(zr,n),r=Rr("#layerlist tr.layersel td.layername").text(),a=r===zr.common.layer+" 1",Br.setUiStrings(n),bn.setTitles(),a&&(Br.renameCurrentLayer(zr.common.layer+" 1"),T()),!ye.length){e.next=18;break}return e.next=15,Promise.all(ye.map((function(e){return En.push(e.name),e.langReady({lang:t,uiStrings:zr,importLocale:Jr({defaultLang:t,defaultName:e.name})})})));case 15:ye.length=0,e.next=19;break;case 18:En.forEach((function(e){Br.runExtension(e,"langReady",{lang:t,uiStrings:zr,importLocale:Jr({defaultLang:t,defaultName:e})})}));case 19:Br.runExtensions("langChanged",t),fe(),i={"#stroke_color":"#tool_stroke .icon_label, #tool_stroke .color_block","#fill_color":"#tool_fill label, #tool_fill .color_block","#linejoin_miter":"#cur_linejoin","#linecap_butt":"#cur_linecap"},Rr.each(i,(function(e,t){Rr(t).attr("title",Rr(e)[0].title)})),Rr("#multiselected_panel div[id^=tool_align]").each((function(){Rr("#tool_pos"+this.id.substr(10))[0].title=this.title}));case 24:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();!function(e){Pr=e}({addLangData:function(e){return Br.runExtensions("addLangData",(function(t){return{lang:e,importLocale:Jr({defaultLang:e,defaultName:t})}}),!0)},curConfig:Kr}),"file:"===document.location.protocol?setTimeout(o,100):o()},Vr.ready=function(e){return new Promise((function(t,n){Yr?t(e()):Ur.push([e,t,n])}))},Vr.runCallbacks=n(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,Promise.all(Ur.map((function(e){return(0,h(e,1)[0])()})));case 3:e.next=9;break;case 5:throw e.prev=5,e.t0=e.catch(0),Ur.forEach((function(e){(0,h(e,3)[2])()})),e.t0;case 9:Ur.forEach((function(e){(0,h(e,2)[1])()})),Yr=!0;case 11:case"end":return e.stop()}}),e,null,[[0,5]])}))),Vr.loadFromString=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.noAlert;return Vr.ready(n(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,Zr(e,{noAlert:r});case 3:t.next=9;break;case 5:if(t.prev=5,t.t0=t.catch(0),!r){t.next=9;break}throw t.t0;case 9:case"end":return t.stop()}}),t,null,[[0,5]])}))))},Vr.disableUI=function(e){},Vr.loadFromURL=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.cache,r=t.noAlert;return Vr.ready((function(){return new Promise((function(t,a){Rr.ajax({url:e,dataType:"text",cache:Boolean(n),beforeSend:function(){Rr.process_cancel(zr.notification.loadingImage)},success:function(e){t(Zr(e,{noAlert:r}))},error:function(e,n,i){404!==e.status&&e.responseText?t(Zr(e.responseText,{noAlert:r})):r?a(new Error("URLLoadFail")):(Rr.alert(zr.notification.URLLoadFail+": \n"+i),t())},complete:function(){Rr("#dialog_box").hide()}})}))}))},Vr.loadFromDataURI=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.noAlert;return Vr.ready((function(){var t=!1,r=e.match(/^data:image\/svg\+xml;base64,/);r?t=!0:r=e.match(/^data:image\/svg\+xml(?:;|;utf8)?,/),r&&(r=r[0]);var a=e.slice(r.length);return Zr(t?Gt(a):decodeURIComponent(a),{noAlert:n})}))},Vr.addExtension=function(e,t,n){if(!Br)throw new Error("Extension added too early");return Br.addExtension.call(this,e,t,n)},Vr.ready((function(){un()}));var ea=!1,ta=[];window.addEventListener("message",(function(e){var t={data:e.data,origin:e.origin};ea?Br.call("message",t):ta.push(t)})),n(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,Promise.resolve();case 3:Vr.init(),e.next=9;break;case 6:e.prev=6,e.t0=e.catch(0),console.error(e.t0);case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))();export default Vr;
|
|
//# sourceMappingURL=index-es.min.js.map
|