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

11 lines
45 KiB
JavaScript
Raw Normal View History

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")},f={}.hasOwnProperty,has=function(t,e){return f.call(t,e)},s=e.document,l=isObject(s)&&isObject(s.createElement),documentCreateElement=function(t){return l?s.createElement(t):{}},p=!r&&!fails((function(){return 7!=Object.defineProperty(documentCreateElement("div"),"a",{get:function(){return 7}}).a})),h=Object.getOwnPropertyDescriptor,y={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,d={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 d.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 w,S,_,O=m.inspectSource,j=e.WeakMap,x="function"==typeof j&&/native code/.test(O(j)),E=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)"})})),P=0,A=Math.random(),uid=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++P+A).toString(36)},T=E("keys"),sharedKey=function(t){return T[t]||(T[t]=uid(t))},k={},L=e.WeakMap;if(x){var I=new L,C=I.get,M=I.has,G=I.set;w=function(t,e){return G.call(I,t,e),e},S=function(t){return C.call(I,t)||{}},_=function(t){return M.call(I,t)}}else{var N=sharedKey("state");k[N]=!0,w=function(t,e){return g(t,N,e),e},S=function(t){return has(t,N)?t[N]:{}},_=function(t){return has(t,N)}}var R,D,z={set:w,get:S,has:_,enforce:function(t){return _(t)?S(t):w(t,{})},getterFor:function(t){return function(e){var r;if(!isObject(e)||(r=S(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return r}}},W=createCommonjsModule((function(t){var r=z.get,n=z.enforc
2020-09-06 06:32:10 +00:00
/**
* @file ext-foreignobject.js
*
* @license Apache-2.0
*
* @copyright 2010 Jacques Distler, 2010 Alexis Deveria
*
*/var Bn={name:"foreignobject",init:function init(t){var e=this;return _asyncToGenerator(regeneratorRuntime.mark((function _callee2(){var r,n,o,i,a,c,u,f,s,l,p,h,y,v,d,g,m,b,w,S;return regeneratorRuntime.wrap((function _callee2$(_){for(;;)switch(_.prev=_.next){case 0:return b=function _setAttr(t,e){a.changeSelectedAttribute(t,e),a.call("changed",h)},m=function _showForeignEditor(){var t=h[0];if(t&&!d){d=!0,p(!0),t.removeAttribute("fill");var e=a.svgToString(t,0);n("#svg_source_textarea").val(e),n("#svg_source_editor").fadeIn(),s(),n("#svg_source_textarea").focus()}},g=function _setForeignString(t){var e=h[0];try{var r=o('<svg xmlns="'+i.SVG+'" xmlns:xlink="'+i.XLINK+'">'+t+"</svg>");a.sanitizeSvg(r.documentElement),e.replaceWith(c.importNode(r.documentElement.firstChild,!0)),a.call("changed",[e]),a.clearSelection()}catch(t){return console.log(t),!1}return!0},p=function _toggleSourceButtons(t){n("#tool_source_save, #tool_source_cancel").toggle(!t),n("#foreign_save, #foreign_cancel").toggle(t)},l=function _showPanel(t){var e=n("#fc_rules");e.length||(e=n('<style id="fc_rules"></style>').appendTo("head")),e.text(t?" #tool_topath { display: none !important; }":""),n("#foreignObject_panel").toggle(t)},r=e,n=t.$,o=t.text2xml,i=t.NS,a=r.canvas,c=t.svgroot.parentNode.ownerDocument,_.next=11,__variableDynamicImportRuntime0__("./locale/".concat(r.curPrefs.lang,".js"));case 11:return u=_.sent,f=u.default,s=function properlySourceSizeTextArea(){var t=n("#svg_source_container").height()-80;n("#svg_source_textarea").css("height",t)},d=!1,w=[{id:"tool_foreign",icon:"foreignobject-tool.png",type:"mode",events:{click:function click(){a.setMode("foreign")}}},{id:"edit_foreign",icon:"foreignobject-edit.png",type:"context",panel:"foreignObject_panel",events:{click:function click(){m()}}}],S=[{type:"input",panel:"foreignObject_panel",id:"foreign_width",size:3,events:{change:function change(){b("width",this.value)}}},{type:"input",panel:"foreignObject_panel",id:"foreign_height",events:{change:function change(){b("height",this.value)}}},{type:"input",panel:"foreignObject_panel",id:"foreign_font_size",size:2,defval:16,events:{change:function change(){b("font-size",this.value)}}}],_.abrupt("return",{name:f.name,svgicons:"foreignobject-icons.xml",buttons:f.buttons.map((function(t,e){return Object.assign(w[e],t)})),context_tools:f.contextTools.map((function(t,e){return Object.assign(S[e],t)})),callback:function callback(){n("#foreignObject_panel").hide();var t=function endChanges(){n("#svg_source_editor").hide(),d=!1,n("#svg_source_textarea").blur(),p(!1)};setTimeout((function(){n("#tool_source_save").clone().hide().attr("id","foreign_save").unbind().appendTo("#tool_source_back").click(_asyncToGenerator(regeneratorRuntime.mark((function _callee(){return regeneratorRuntime.wrap((function _callee$(e){for(;;)switch(e.prev=e.next){case 0:if(d){e.next=2;break}return e.abrupt("return");case 2:if(g(n("#svg_source_textarea").val())){e.next=11;break}return e.next=5,n.confirm("Errors found. Revert to original?");case 5:if(e.sent){e.next=8;break}return e.abrupt("return");case 8:t(),e.next=12;break;case 11:t();case 12:case"end":return e.stop()}}),_callee)})))),n("#tool_source_cancel").clone().hide().attr("id","foreign_cancel").unbind().appendTo("#tool_source_back").click((function(){t()}))}),3e3)},mouseDown:function mouseDown(t){if("foreign"===a.getMode()){y=!0,v=a.addSVGElementFromJson({element:"foreignObject",attr:{x:t.start_x,y:t.start_y,id:a.getNextId(),"font-size":16,width:"48",height:"20",style:"pointer-events:inherit"}});var e=c.createElementNS(i.MATH,"math");e.setAttributeNS(i.XMLNS,"xmlns",i.MATH),e.setAttribute("display","inline");var r=c.createElementNS(i.MATH,"mi");r.setAttribute("mathvariant","normal"),r.textContent="Φ";var n=c.createElementNS(i.MATH,"mo");n.textContent="";var o=c.createElementNS(i.MATH,"mi");return o.textContent="",e.append(r,n,o),v.append(e),{started:!0}}},mouseUp:function mouseUp(t){if("foreign"===a.getMode()&&y){var e=n(v).attr(["width","height"]),r="0"!==e.width||"0"!==e.height;return a.addToSelection([v],!0),{keep:
2020-09-06 06:32:10 +00:00
//# sourceMappingURL=ext-foreignobject.js.map