svgedit/dist/editor/extensions/ext-connector/ext-connector.js

11 lines
57 KiB
JavaScript
Raw Normal View History

2020-09-11 23:27:47 +00:00
var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function createCommonjsModule(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function commonjsRequire(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==e&&r.path)}},r.exports),r.exports}var check=function(t){return t&&t.Math==Math&&t},e=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof t&&t)||Function("return this")(),fails=function(t){try{return!!t()}catch(t){return!0}},r=!fails((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),n={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i={f:o&&!n.call({1:2},1)?function propertyIsEnumerable(t){var e=o(this,t);return!!e&&e.enumerable}:n},createPropertyDescriptor=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},a={}.toString,classofRaw=function(t){return a.call(t).slice(8,-1)},c="".split,u=fails((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==classofRaw(t)?c.call(t,""):Object(t)}:Object,requireObjectCoercible=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},toIndexedObject=function(t){return u(requireObjectCoercible(t))},isObject=function(t){return"object"==typeof t?null!==t:"function"==typeof t},toPrimitive=function(t,e){if(!isObject(t))return t;var r,n;if(e&&"function"==typeof(r=t.toString)&&!isObject(n=r.call(t)))return n;if("function"==typeof(r=t.valueOf)&&!isObject(n=r.call(t)))return n;if(!e&&"function"==typeof(r=t.toString)&&!isObject(n=r.call(t)))return n;throw TypeError("Can't convert object to primitive value")},s={}.hasOwnProperty,has=function(t,e){return s.call(t,e)},f=e.document,l=isObject(f)&&isObject(f.createElement),documentCreateElement=function(t){return l?f.createElement(t):{}},p=!r&&!fails((function(){return 7!=Object.defineProperty(documentCreateElement("div"),"a",{get:function(){return 7}}).a})),h=Object.getOwnPropertyDescriptor,d={f:r?h:function getOwnPropertyDescriptor(t,e){if(t=toIndexedObject(t),e=toPrimitive(e,!0),p)try{return h(t,e)}catch(t){}if(has(t,e))return createPropertyDescriptor(!i.f.call(t,e),t[e])}},anObject=function(t){if(!isObject(t))throw TypeError(String(t)+" is not an object");return t},v=Object.defineProperty,y={f:r?v:function defineProperty(t,e,r){if(anObject(t),e=toPrimitive(e,!0),anObject(r),p)try{return v(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},g=r?function(t,e,r){return y.f(t,e,createPropertyDescriptor(1,r))}:function(t,e,r){return t[e]=r,t},setGlobal=function(t,r){try{g(e,t,r)}catch(n){e[t]=r}return r},m=e["__core-js_shared__"]||setGlobal("__core-js_shared__",{}),b=Function.toString;"function"!=typeof m.inspectSource&&(m.inspectSource=function(t){return b.call(t)});var S,x,w,_=m.inspectSource,E=e.WeakMap,O="function"==typeof E&&/native code/.test(_(E)),j=createCommonjsModule((function(t){(t.exports=function(t,e){return m[t]||(m[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})})),A=0,I=Math.random(),uid=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++A+I).toString(36)},P=j("keys"),sharedKey=function(t){return P[t]||(P[t]=uid(t))},k={},T=e.WeakMap;if(O){var N=new T,L=N.get,C=N.has,R=N.set;S=function(t,e){return R.call(N,t,e),e},x=function(t){return L.call(N,t)||{}},w=function(t){return C.call(N,t)}}else{var M=sharedKey("state");k[M]=!0,S=function(t,e){return g(t,M,e),e},x=function(t){return has(t,M)?t[M]:{}},w=function(t){return has(t,M)}}var G,D,B={set:S,get:x,has:w,enforce:function(t){return w(t)?x(t):S(t,{})},getterFor:function(t){return function(e){var r;if(!isObject(e)||(r=x(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return r}}},U=createCommonjsModule((function(t){var r=B.get,n=B.enforc
2020-09-06 06:32:10 +00:00
/**
2020-09-11 23:27:47 +00:00
* @file ext-connector.js
*
2020-09-06 06:32:10 +00:00
* @license MIT
*
* @copyright 2010 Alexis Deveria
*
2020-09-11 23:27:47 +00:00
*/var Wo=function(){var t=_asyncToGenerator(regeneratorRuntime.mark((function _callee(t){var e;return regeneratorRuntime.wrap((function _callee$(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,__variableDynamicImportRuntime0__("./locale/".concat(t,".js"));case 3:e=r.sent,r.next=12;break;case 6:return r.prev=6,r.t0=r.catch(0),console.error("Missing translation (".concat(t,") - using 'en'")),r.next=11,Promise.resolve().then((function(){return qo}));case 11:e=r.sent;case 12:return r.abrupt("return",e.default);case 13:case"end":return r.stop()}}),_callee,null,[[0,6]])})));return function loadExtensionTranslation(e){return t.apply(this,arguments)}}(),$o={name:"connector",init:function init(t){var e=this;return _asyncToGenerator(regeneratorRuntime.mark((function _callee2(){var r,n,o,i,a,c,u,s,f,l,p,h,d,v,y,g,m,b,S,x,w,_,E,O,j,A,I,P,k;return regeneratorRuntime.wrap((function _callee2$(T){for(;;)switch(T.prev=T.next){case 0:return I=function _init(){i(g).find("*").each((function(){var t=this.getAttributeNS(y,"connector");if(t){this.setAttribute("class",s.substr(1));var e=t.split(" "),r=n.getStrokedBBox([o(e[0])]),a=n.getStrokedBBox([o(e[1])]);i(this).data("c_start",e[0]).data("c_end",e[1]).data("start_bb",r).data("end_bb",a),n.getEditorNS(!0)}}))},A=function _updateConnectors(t){if(j(t),b.length)for(var e=b.length;e--;){var r=b[e],o=r.connector,i=r.elem,a=r.is_start?"start":"end",c=n.getStrokedBBox([i]);c.x=r.start_x,c.y=r.start_y,f(o,a+"_bb",c),f(o,a+"_off");var u=r.is_start?"end":"start",s=f(o,u+"_bb"),l=s.x+s.width/2,p=s.y+s.height/2,h=x(l,p,c,w(a,o));E(o,r.is_start?0:"end",h.x,h.y,!0);var d=x(h.x,h.y,f(o,u+"_bb"),w(u,o));if(E(o,r.is_start?"end":0,d.x,d.y,!0),navigator.userAgent.includes("AppleWebKit")){for(var v=o.points,y=v.numberOfItems,g=[],m=0;m<y;m++)h=v.getItem(m),g[m]=h.x+","+h.y;o.setAttribute("points",g.join(" "))}}},j=function _findConnectors(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:S,e=i(g).find(s);b=[],e.each((function(){var e;function add(){t.includes(this)&&(e=!0)}var r=[];["start","end"].forEach((function(t,e){var o=f(this,"c_"+t);null==o?(o=document.getElementById(this.attributes["se:connector"].value.split(" ")[e]),f(this,"c_"+t,o.id),f(this,t+"_bb",n.getStrokedBBox([o]))):o=document.getElementById(o),r.push(o)}),this);for(var o=0;o<2;o++){var a=r[o];if(e=!1,i(a).parents().each(add),a&&a.parentNode){if(t.includes(a)||e){var c=n.getStrokedBBox([a]);b.push({elem:a,connector:this,is_start:0===o,start_x:c.x,start_y:c.y})}}else i(this).remove()}}))},O=function _updateLine(t,e){for(var r=b.length;r--;){var n=b[r],o=n.connector,i=n.is_start?"start":"end",a=f(o,i+"_bb");a.x=n.start_x+t,a.y=n.start_y+e,f(o,i+"_bb",a);var c=n.is_start?"end":"start",u=f(o,c+"_bb"),s=u.x+u.width/2,l=u.y+u.height/2,p=x(s,l,a,w(i,o));E(o,n.is_start?0:"end",p.x,p.y,!0);var h=x(p.x,p.y,f(o,c+"_bb"),w(c,o));E(o,n.is_start?"end":0,h.x,h.y,!0)}},E=function _setPoint(t,e,r,n,o){var i=t.points,c=a.createSVGPoint();c.x=r,c.y=n,"end"===e&&(e=i.numberOfItems-1);try{i.replaceItem(c,e)}catch(o){for(var u=t.getAttribute("points").split(" "),s=0;s<u.length;s++)s===e&&(u[s]=r+","+n);t.setAttribute("points",u.join(" "))}if(o){var f=i.getItem(0),l=i.getItem(i.numberOfItems-1);E(t,1,(l.x+f.x)/2,(l.y+f.y)/2)}},_=function _showPanel(t){var e=i("#connector_rules");e.length||(e=i('<style id="connector_rules"></style>').appendTo("head")),e.text(t?"#tool_clone, #tool_topath, #tool_angle, #xy_panel { display: none !important; }":""),i("#connector_panel").toggle(t)},w=function _getOffset(t,e){var r=e.getAttribute("marker-"+t),n=5*e.getAttribute("stroke-width");return r?n:0},x=function _getBBintersect(t,e,r,n){n&&(n-=0,(r=i.extend({},r)).width+=n,r.height+=n,r.x-=n/2,r.y-=n/2);var o,a=r.x+r.width/2,c=r.y+r.height/2,u=t-a,s=e-c;return{x:a+u*(o=Math.abs(s/u)<r.height/r.width?r.width/2/Math.abs(u):s?r.height/2/Math.abs(s):0),y:c+s*o}},n=(r=e).canvas,o=n.getElem,i=t.$,a=t.svgroot,c=n.addSVGElementFromJson,u=t.selectorManager,s=".se_connector",f=i.data,g=t.svgcontent,m=!1,b=[],S=[],function(){var t=n.groupSelectedElements;n.groupS
2020-09-06 06:32:10 +00:00
//# sourceMappingURL=ext-connector.js.map