archsight 0.2.3 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. checksums.yaml +4 -4
  2. data/lib/archsight/analysis/sandbox.rb +1 -1
  3. data/lib/archsight/cli.rb +67 -0
  4. data/lib/archsight/graph.rb +10 -0
  5. data/lib/archsight/import/executor.rb +11 -3
  6. data/lib/archsight/import/handlers/cpp_grapher.rb +193 -0
  7. data/lib/archsight/import/handlers/crystal_grapher.rb +186 -0
  8. data/lib/archsight/import/handlers/elixir_grapher.rb +202 -0
  9. data/lib/archsight/import/handlers/go_grapher.rb +127 -0
  10. data/lib/archsight/import/handlers/grapher.rb +552 -0
  11. data/lib/archsight/import/handlers/java_grapher.rb +286 -0
  12. data/lib/archsight/import/handlers/javascript_grapher.rb +340 -0
  13. data/lib/archsight/import/handlers/python_grapher.rb +270 -0
  14. data/lib/archsight/import/handlers/repository.rb +41 -17
  15. data/lib/archsight/import/handlers/ruby_grapher.rb +203 -0
  16. data/lib/archsight/import/handlers/rust_grapher.rb +227 -0
  17. data/lib/archsight/import/registry.rb +23 -0
  18. data/lib/archsight/resources/import.rb +1 -0
  19. data/lib/archsight/resources/technology_artifact.rb +18 -1
  20. data/lib/archsight/version.rb +1 -1
  21. data/lib/archsight/web/api/json_helpers.rb +1 -1
  22. data/lib/archsight/web/public/vue/ApiDocsPage-C0y953v0.css +1 -0
  23. data/lib/archsight/web/public/vue/ApiDocsPage-DHSCaHEn.js +1 -0
  24. data/lib/archsight/web/public/vue/DocPage-DszOPlFy.js +1 -0
  25. data/lib/archsight/web/public/vue/EditorPage-CPZ0Ei4l.css +1 -0
  26. data/lib/archsight/web/public/vue/EditorPage-DsiuZ7fg.js +35 -0
  27. data/lib/archsight/web/public/vue/ErrorPage-C4JutrYc.js +2 -0
  28. data/lib/archsight/web/public/vue/ErrorPage-uMDnfY5_.css +1 -0
  29. data/lib/archsight/web/public/vue/GraphView-Bqlbt6dK.js +1 -0
  30. data/lib/archsight/web/public/vue/GraphView-Cj2V2stN.css +1 -0
  31. data/lib/archsight/web/public/vue/InstanceRouter-D8SEY2eu.js +2 -0
  32. data/lib/archsight/web/public/vue/InstanceRouter-D9hclKFt.css +1 -0
  33. data/lib/archsight/web/public/vue/KindList-CPDaNron.js +1 -0
  34. data/lib/archsight/web/public/vue/ResourceList-B5w9yiyS.js +1 -0
  35. data/lib/archsight/web/public/vue/ResourceList-DxZfNbOg.css +1 -0
  36. data/lib/archsight/web/public/vue/SearchResults-DSHpVO-c.css +1 -0
  37. data/lib/archsight/web/public/vue/SearchResults-FpkhdBFu.js +1 -0
  38. data/lib/archsight/web/public/vue/architecture-7EHR7CIX-DpNNjAIc.js +1 -0
  39. data/lib/archsight/web/public/vue/eventmodeling-FCH6USID-CiThxoWl.js +1 -0
  40. data/lib/archsight/web/public/vue/gitGraph-WXDBUCRP-BODMGpAm.js +1 -0
  41. data/lib/archsight/web/public/vue/graphviz-09t3o0af.js +13 -0
  42. data/lib/archsight/web/public/vue/index-BW0IzY6X.css +1 -0
  43. data/lib/archsight/web/public/vue/index-T1YqCmM1.js +2 -0
  44. data/lib/archsight/web/public/vue/info-J43DQDTF-fLq04sri.js +1 -0
  45. data/lib/archsight/web/public/vue/katex-5qHlIbPR.js +261 -0
  46. data/lib/archsight/web/public/vue/mermaid-DYyHQk7x.js +3093 -0
  47. data/lib/archsight/web/public/vue/packet-YPE3B663-DoY1fbqu.js +1 -0
  48. data/lib/archsight/web/public/vue/pie-LRSECV5Y-C7ZQVwRe.js +1 -0
  49. data/lib/archsight/web/public/vue/radar-GUYGQ44K-CRtY5oqf.js +1 -0
  50. data/lib/archsight/web/public/vue/rolldown-runtime-QTnfLwEv.js +1 -0
  51. data/lib/archsight/web/public/vue/treeView-BLDUP644-Csx2WLLh.js +1 -0
  52. data/lib/archsight/web/public/vue/treemap-LRROVOQU-CfEnRbTx.js +1 -0
  53. data/lib/archsight/web/public/vue/{useGraphviz-BN4iwLLN.js → useGraphviz-EKSrE4q_.js} +5 -4
  54. data/lib/archsight/web/public/vue/useHighlight-BcVbGyrK.js +10 -0
  55. data/lib/archsight/web/public/vue/useMermaid-CIZxhy_r.js +2 -0
  56. data/lib/archsight/web/public/vue/usePanZoom-C2slpyY9.js +11 -0
  57. data/lib/archsight/web/public/vue/wardley-L42UT6IY-97oUvxhz.js +1 -0
  58. data/lib/archsight/web/public/vue.html +4 -3
  59. metadata +51 -72
  60. data/lib/archsight/web/public/vue/ApiDocsPage-Cwn04X61.js +0 -1
  61. data/lib/archsight/web/public/vue/ApiDocsPage-DhNTOH4o.css +0 -1
  62. data/lib/archsight/web/public/vue/DocPage-Y83PCbYi.js +0 -1
  63. data/lib/archsight/web/public/vue/EditorPage-Dq0MuTnp.css +0 -1
  64. data/lib/archsight/web/public/vue/EditorPage-DqRMOBE6.js +0 -34
  65. data/lib/archsight/web/public/vue/ErrorPage-CwPT3JUr.css +0 -1
  66. data/lib/archsight/web/public/vue/ErrorPage-D0lKMCXA.js +0 -2
  67. data/lib/archsight/web/public/vue/GraphView-Byq-Nfd9.js +0 -1
  68. data/lib/archsight/web/public/vue/GraphView-DRcIqAiR.css +0 -1
  69. data/lib/archsight/web/public/vue/InstanceRouter-B3Q2fH0X.js +0 -2
  70. data/lib/archsight/web/public/vue/InstanceRouter-BJkDRXZY.css +0 -1
  71. data/lib/archsight/web/public/vue/KindList-DlDrvJDd.js +0 -1
  72. data/lib/archsight/web/public/vue/ResourceList-DP-z-j71.css +0 -1
  73. data/lib/archsight/web/public/vue/ResourceList-DwsfI85-.js +0 -1
  74. data/lib/archsight/web/public/vue/SearchResults-BGHbg48-.css +0 -1
  75. data/lib/archsight/web/public/vue/SearchResults-DlWGROho.js +0 -1
  76. data/lib/archsight/web/public/vue/_basePickBy-DXGWsL9H.js +0 -1
  77. data/lib/archsight/web/public/vue/_baseUniq-C8pAAASt.js +0 -1
  78. data/lib/archsight/web/public/vue/architectureDiagram-VXUJARFQ-Dg_wTk4u.js +0 -36
  79. data/lib/archsight/web/public/vue/blockDiagram-VD42YOAC-C8HXvtNT.js +0 -122
  80. data/lib/archsight/web/public/vue/c4Diagram-YG6GDRKO-QzXboDJ8.js +0 -10
  81. data/lib/archsight/web/public/vue/chunk-4BX2VUAB-DSPzEX5F.js +0 -1
  82. data/lib/archsight/web/public/vue/chunk-55IACEB6-Dd5Z8Bov.js +0 -1
  83. data/lib/archsight/web/public/vue/chunk-B4BG7PRW-B_hXD1nI.js +0 -165
  84. data/lib/archsight/web/public/vue/chunk-DI55MBZ5-C-2DUMJY.js +0 -220
  85. data/lib/archsight/web/public/vue/chunk-FMBD7UC4-BlBtfKnL.js +0 -15
  86. data/lib/archsight/web/public/vue/chunk-QN33PNHL-Db3REDIz.js +0 -1
  87. data/lib/archsight/web/public/vue/chunk-QZHKN3VN-BqVqGMTy.js +0 -1
  88. data/lib/archsight/web/public/vue/chunk-TZMSLE5B-DfX4VDWu.js +0 -1
  89. data/lib/archsight/web/public/vue/classDiagram-2ON5EDUG-C9Kk58xl.js +0 -1
  90. data/lib/archsight/web/public/vue/classDiagram-v2-WZHVMYZB-C9Kk58xl.js +0 -1
  91. data/lib/archsight/web/public/vue/clone-B6uzD5eH.js +0 -1
  92. data/lib/archsight/web/public/vue/cose-bilkent-S5V4N54A-CfkQxn-a.js +0 -1
  93. data/lib/archsight/web/public/vue/cytoscape.esm-5J0xJHOV.js +0 -321
  94. data/lib/archsight/web/public/vue/dagre-6UL2VRFP-D13da1qu.js +0 -4
  95. data/lib/archsight/web/public/vue/diagram-PSM6KHXK-BwzbeHPK.js +0 -24
  96. data/lib/archsight/web/public/vue/diagram-QEK2KX5R-COjSoDC8.js +0 -43
  97. data/lib/archsight/web/public/vue/diagram-S2PKOQOG-FH65FafS.js +0 -24
  98. data/lib/archsight/web/public/vue/erDiagram-Q2GNP2WA-D1mxJWSp.js +0 -60
  99. data/lib/archsight/web/public/vue/flowDiagram-NV44I4VS-DpRd5cPP.js +0 -162
  100. data/lib/archsight/web/public/vue/ganttDiagram-JELNMOA3-D04Sdd3Q.js +0 -267
  101. data/lib/archsight/web/public/vue/gitGraphDiagram-V2S2FVAM-DgNNP2nj.js +0 -65
  102. data/lib/archsight/web/public/vue/graph-Cnoy0p_X.js +0 -1
  103. data/lib/archsight/web/public/vue/graphviz-CJms5bxZ.js +0 -13
  104. data/lib/archsight/web/public/vue/index-Tiu4C-Sb.css +0 -1
  105. data/lib/archsight/web/public/vue/index-Zr9MoxJi.js +0 -2
  106. data/lib/archsight/web/public/vue/infoDiagram-HS3SLOUP-D5asL_9P.js +0 -2
  107. data/lib/archsight/web/public/vue/journeyDiagram-XKPGCS4Q-D-SRalYk.js +0 -139
  108. data/lib/archsight/web/public/vue/kanban-definition-3W4ZIXB7-CuOjHa3p.js +0 -89
  109. data/lib/archsight/web/public/vue/katex-C-M49wc6.js +0 -261
  110. data/lib/archsight/web/public/vue/layout-CD8FBujT.js +0 -1
  111. data/lib/archsight/web/public/vue/mermaid-DUllW9QE.js +0 -250
  112. data/lib/archsight/web/public/vue/mindmap-definition-VGOIOE7T-BfbYXGBk.js +0 -68
  113. data/lib/archsight/web/public/vue/pieDiagram-ADFJNKIX-mb757Gpq.js +0 -30
  114. data/lib/archsight/web/public/vue/quadrantDiagram-AYHSOK5B-DMtvHJQW.js +0 -7
  115. data/lib/archsight/web/public/vue/requirementDiagram-UZGBJVZJ-CHguirsB.js +0 -64
  116. data/lib/archsight/web/public/vue/sankeyDiagram-TZEHDZUN-nblWMNF6.js +0 -10
  117. data/lib/archsight/web/public/vue/sequenceDiagram-WL72ISMW-B83ZoXls.js +0 -145
  118. data/lib/archsight/web/public/vue/stateDiagram-FKZM4ZOC-Ct0OgmPh.js +0 -1
  119. data/lib/archsight/web/public/vue/stateDiagram-v2-4FDKWEC3-CJZXQ6xd.js +0 -1
  120. data/lib/archsight/web/public/vue/timeline-definition-IT6M3QCI-D1Wd-DLb.js +0 -61
  121. data/lib/archsight/web/public/vue/treemap-GDKQZRPO-DFPZrNlp.js +0 -162
  122. data/lib/archsight/web/public/vue/useHighlight-DmGaxZxx.js +0 -10
  123. data/lib/archsight/web/public/vue/useMermaid-DSo5f1Jc.js +0 -1
  124. data/lib/archsight/web/public/vue/usePanZoom-BEXq_r0S.js +0 -11
  125. data/lib/archsight/web/public/vue/xychartDiagram-PRI3JC2R-i_eB4HAQ.js +0 -7
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["vue/mermaid-DYyHQk7x.js","vue/rolldown-runtime-QTnfLwEv.js"])))=>i.map(i=>d[i]);
2
+ import{S as e}from"./mermaid-DYyHQk7x.js";import{t}from"./usePanZoom-C2slpyY9.js";var n=null,r=!1;function i(){return window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`default`}async function a(){return n||(n=(await e(()=>import(`./mermaid-DYyHQk7x.js`).then(e=>e.t),__vite__mapDeps([0,1]))).default,n.initialize({startOnLoad:!1,theme:i()}),s(),n)}function o(e){e.querySelectorAll(`.mermaid svg`).forEach(e=>{if(e.hasAttribute(`data-panzoom-init`))return;e.setAttribute(`data-panzoom-init`,`true`);let n=e.parentElement;t(e,n)})}function s(){r||(r=!0,window.matchMedia(`(prefers-color-scheme: dark)`).addEventListener(`change`,async()=>{n&&(n.initialize({startOnLoad:!1,theme:i()}),document.querySelectorAll(`.mermaid[data-mermaid-source]`).forEach(e=>{e.removeAttribute(`data-processed`),e.innerHTML=e.getAttribute(`data-mermaid-source`)}),await n.run(),document.querySelectorAll(`.mermaid`).forEach(e=>{e.querySelectorAll(`svg`).forEach(e=>e.removeAttribute(`data-panzoom-init`)),o(e.parentElement||e)}))}))}async function c(e){let t=e.querySelectorAll(`pre > code.language-mermaid`);if(t.length===0)return;let n=await a();t.forEach(e=>{let t=e.parentElement,n=document.createElement(`div`);n.className=`mermaid`,n.setAttribute(`data-mermaid-source`,e.textContent),n.textContent=e.textContent,t.parentElement.replaceChild(n,t)}),await n.run(),o(e)}export{c as t};
@@ -0,0 +1,11 @@
1
+ import{r as e,t}from"./rolldown-runtime-QTnfLwEv.js";var n=t(((e,t)=>{t.exports=(function(){var e=``,t,n,r,i=[],a={passive:!0},o={passive:!1};window.addEventListener?(t=`addEventListener`,n=`removeEventListener`):(t=`attachEvent`,n=`detachEvent`,e=`on`),r=`onwheel`in document.createElement(`div`)?`wheel`:document.onmousewheel===void 0?`DOMMouseScroll`:`mousewheel`;function s(e,t){var n=function(e){!e&&(e=window.event);var n={originalEvent:e,target:e.target||e.srcElement,type:`wheel`,deltaMode:e.type==`MozMousePixelScroll`?0:1,deltaX:0,delatZ:0,preventDefault:function(){e.preventDefault?e.preventDefault():e.returnValue=!1}};return r==`mousewheel`?(n.deltaY=-1/40*e.wheelDelta,e.wheelDeltaX&&(n.deltaX=-1/40*e.wheelDeltaX)):n.deltaY=e.detail,t(n)};return i.push({element:e,fn:n}),n}function c(e){for(var t=0;t<i.length;t++)if(i[t].element===e)return i[t].fn;return function(){}}function l(e){for(var t=0;t<i.length;t++)if(i[t].element===e)return i.splice(t,1)}function u(n,i,c,l){var u=r===`wheel`?c:s(n,c);n[t](e+i,u,l?a:o)}function d(t,i,s,u){var d=r===`wheel`?s:c(t);t[n](e+i,d,u?a:o),l(t)}function f(e,t,n){u(e,r,t,n),r==`DOMMouseScroll`&&u(e,`MozMousePixelScroll`,t,n)}function p(e,t,n){d(e,r,t,n),r==`DOMMouseScroll`&&d(e,`MozMousePixelScroll`,t,n)}return{on:f,off:p}})()})),r=t(((e,t)=>{t.exports={extend:function(e,t){for(var n in e||={},t)this.isObject(t[n])?e[n]=this.extend(e[n],t[n]):e[n]=t[n];return e},isElement:function(e){return e instanceof HTMLElement||e instanceof SVGElement||e instanceof SVGSVGElement||e&&typeof e==`object`&&!!e&&e.nodeType===1&&typeof e.nodeName==`string`},isObject:function(e){return Object.prototype.toString.call(e)===`[object Object]`},isNumber:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},getSvg:function(e){var t,n;if(this.isElement(e))t=e;else if(typeof e==`string`||e instanceof String){if(t=document.querySelector(e),!t)throw Error(`Provided selector did not find any elements. Selector: `+e)}else throw Error(`Provided selector is not an HTML object nor String`);if(t.tagName.toLowerCase()===`svg`)n=t;else if(t.tagName.toLowerCase()===`object`)n=t.contentDocument.documentElement;else if(t.tagName.toLowerCase()===`embed`)n=t.getSVGDocument().documentElement;else throw t.tagName.toLowerCase()===`img`?Error(`Cannot script an SVG in an "img" element. Please use an "object" element or an in-line SVG.`):Error(`Cannot get SVG.`);return n},proxy:function(e,t){return function(){return e.apply(t,arguments)}},getType:function(e){return Object.prototype.toString.apply(e).replace(/^\[object\s/,``).replace(/\]$/,``)},mouseAndTouchNormalize:function(e,t){if(e.clientX===void 0||e.clientX===null)if(e.clientX=0,e.clientY=0,e.touches!==void 0&&e.touches.length){if(e.touches[0].clientX!==void 0)e.clientX=e.touches[0].clientX,e.clientY=e.touches[0].clientY;else if(e.touches[0].pageX!==void 0){var n=t.getBoundingClientRect();e.clientX=e.touches[0].pageX-n.left,e.clientY=e.touches[0].pageY-n.top}}else e.originalEvent!==void 0&&e.originalEvent.clientX!==void 0&&(e.clientX=e.originalEvent.clientX,e.clientY=e.originalEvent.clientY)},isDblClick:function(e,t){if(e.detail===2)return!0;if(t!=null){var n=e.timeStamp-t.timeStamp,r=Math.sqrt((e.clientX-t.clientX)**2+(e.clientY-t.clientY)**2);return n<250&&r<10}return!1},now:Date.now||function(){return new Date().getTime()},throttle:function(e,t,n){var r=this,i,a,o,s=null,c=0;n||={};var l=function(){c=n.leading===!1?0:r.now(),s=null,o=e.apply(i,a),s||(i=a=null)};return function(){var u=r.now();!c&&n.leading===!1&&(c=u);var d=t-(u-c);return i=this,a=arguments,d<=0||d>t?(clearTimeout(s),s=null,c=u,o=e.apply(i,a),s||(i=a=null)):!s&&n.trailing!==!1&&(s=setTimeout(l,d)),o}},createRequestAnimationFrame:function(e){var t=null;return e!==`auto`&&e<60&&e>1&&(t=Math.floor(1e3/e)),t===null?window.requestAnimationFrame||n(33):n(t)}};function n(e){return function(t){window.setTimeout(t,e)}}})),i=t(((e,t)=>{var n=r(),i=`unknown`;document.documentMode&&(i=`ie`),t.exports={svgNS:`http://www.w3.org/2000/svg`,xmlNS:`http://www.w3.org/XML/1998/namespace`,xmlnsNS:`http://www.w3.org/2000/xmlns/`,xlinkNS:`http://www.w3.org/1999/xlink`,evNS:`http://www.w3.org/2001/xml-events`,getBoundingClientRectNormalized:function(e){if(e.clientWidth&&e.clientHeight)return{width:e.clientWidth,height:e.clientHeight};if(e.getBoundingClientRect())return e.getBoundingClientRect();throw Error(`Cannot get BoundingClientRect for SVG.`)},getOrCreateViewport:function(e,t){var r=null;if(r=n.isElement(t)?t:e.querySelector(t),!r){var i=Array.prototype.slice.call(e.childNodes||e.children).filter(function(e){return e.nodeName!==`defs`&&e.nodeName!==`#text`});i.length===1&&i[0].nodeName===`g`&&i[0].getAttribute(`transform`)===null&&(r=i[0])}if(!r){var a=`viewport-`+new Date().toISOString().replace(/\D/g,``);r=document.createElementNS(this.svgNS,`g`),r.setAttribute(`id`,a);var o=e.childNodes||e.children;if(o&&o.length>0)for(var s=o.length;s>0;s--)o[o.length-s].nodeName!==`defs`&&r.appendChild(o[o.length-s]);e.appendChild(r)}var c=[];return r.getAttribute(`class`)&&(c=r.getAttribute(`class`).split(` `)),~c.indexOf(`svg-pan-zoom_viewport`)||(c.push(`svg-pan-zoom_viewport`),r.setAttribute(`class`,c.join(` `))),r},setupSvgAttributes:function(e){if(e.setAttribute(`xmlns`,this.svgNS),e.setAttributeNS(this.xmlnsNS,`xmlns:xlink`,this.xlinkNS),e.setAttributeNS(this.xmlnsNS,`xmlns:ev`,this.evNS),e.parentNode!==null){var t=e.getAttribute(`style`)||``;t.toLowerCase().indexOf(`overflow`)===-1&&e.setAttribute(`style`,`overflow: hidden; `+t)}},internetExplorerRedisplayInterval:300,refreshDefsGlobal:n.throttle(function(){for(var e=document.querySelectorAll(`defs`),t=e.length,n=0;n<t;n++){var r=e[n];r.parentNode.insertBefore(r,r)}},e?e.internetExplorerRedisplayInterval:null),setCTM:function(e,t,n){var r=this,a=`matrix(`+t.a+`,`+t.b+`,`+t.c+`,`+t.d+`,`+t.e+`,`+t.f+`)`;e.setAttributeNS(null,`transform`,a),`transform`in e.style?e.style.transform=a:`-ms-transform`in e.style?e.style[`-ms-transform`]=a:`-webkit-transform`in e.style&&(e.style[`-webkit-transform`]=a),i===`ie`&&n&&(n.parentNode.insertBefore(n,n),window.setTimeout(function(){r.refreshDefsGlobal()},r.internetExplorerRedisplayInterval))},getEventPoint:function(e,t){var r=t.createSVGPoint();return n.mouseAndTouchNormalize(e,t),r.x=e.clientX,r.y=e.clientY,r},getSvgCenterPoint:function(e,t,n){return this.createSVGPoint(e,t/2,n/2)},createSVGPoint:function(e,t,n){var r=e.createSVGPoint();return r.x=t,r.y=n,r}}})),a=t(((e,t)=>{var n=i();t.exports={enable:function(e){var t=e.svg.querySelector(`defs`);if(t||(t=document.createElementNS(n.svgNS,`defs`),e.svg.appendChild(t)),!t.querySelector(`style#svg-pan-zoom-controls-styles`)){var r=document.createElementNS(n.svgNS,`style`);r.setAttribute(`id`,`svg-pan-zoom-controls-styles`),r.setAttribute(`type`,`text/css`),r.textContent=`.svg-pan-zoom-control { cursor: pointer; fill: black; fill-opacity: 0.333; } .svg-pan-zoom-control:hover { fill-opacity: 0.8; } .svg-pan-zoom-control-background { fill: white; fill-opacity: 0.5; } .svg-pan-zoom-control-background { fill-opacity: 0.8; }`,t.appendChild(r)}var i=document.createElementNS(n.svgNS,`g`);i.setAttribute(`id`,`svg-pan-zoom-controls`),i.setAttribute(`transform`,`translate(`+(e.width-70)+` `+(e.height-76)+`) scale(0.75)`),i.setAttribute(`class`,`svg-pan-zoom-control`),i.appendChild(this._createZoomIn(e)),i.appendChild(this._createZoomReset(e)),i.appendChild(this._createZoomOut(e)),e.svg.appendChild(i),e.controlIcons=i},_createZoomIn:function(e){var t=document.createElementNS(n.svgNS,`g`);t.setAttribute(`id`,`svg-pan-zoom-zoom-in`),t.setAttribute(`transform`,`translate(30.5 5) scale(0.015)`),t.setAttribute(`class`,`svg-pan-zoom-control`),t.addEventListener(`click`,function(){e.getPublicInstance().zoomIn()},!1),t.addEventListener(`touchstart`,function(){e.getPublicInstance().zoomIn()},!1);var r=document.createElementNS(n.svgNS,`rect`);r.setAttribute(`x`,`0`),r.setAttribute(`y`,`0`),r.setAttribute(`width`,`1500`),r.setAttribute(`height`,`1400`),r.setAttribute(`class`,`svg-pan-zoom-control-background`),t.appendChild(r);var i=document.createElementNS(n.svgNS,`path`);return i.setAttribute(`d`,`M1280 576v128q0 26 -19 45t-45 19h-320v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-320q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h320v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h320q26 0 45 19t19 45zM1536 1120v-960 q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z`),i.setAttribute(`class`,`svg-pan-zoom-control-element`),t.appendChild(i),t},_createZoomReset:function(e){var t=document.createElementNS(n.svgNS,`g`);t.setAttribute(`id`,`svg-pan-zoom-reset-pan-zoom`),t.setAttribute(`transform`,`translate(5 35) scale(0.4)`),t.setAttribute(`class`,`svg-pan-zoom-control`),t.addEventListener(`click`,function(){e.getPublicInstance().reset()},!1),t.addEventListener(`touchstart`,function(){e.getPublicInstance().reset()},!1);var r=document.createElementNS(n.svgNS,`rect`);r.setAttribute(`x`,`2`),r.setAttribute(`y`,`2`),r.setAttribute(`width`,`182`),r.setAttribute(`height`,`58`),r.setAttribute(`class`,`svg-pan-zoom-control-background`),t.appendChild(r);var i=document.createElementNS(n.svgNS,`path`);i.setAttribute(`d`,`M33.051,20.632c-0.742-0.406-1.854-0.609-3.338-0.609h-7.969v9.281h7.769c1.543,0,2.701-0.188,3.473-0.562c1.365-0.656,2.048-1.953,2.048-3.891C35.032,22.757,34.372,21.351,33.051,20.632z`),i.setAttribute(`class`,`svg-pan-zoom-control-element`),t.appendChild(i);var a=document.createElementNS(n.svgNS,`path`);return a.setAttribute(`d`,`M170.231,0.5H15.847C7.102,0.5,0.5,5.708,0.5,11.84v38.861C0.5,56.833,7.102,61.5,15.847,61.5h154.384c8.745,0,15.269-4.667,15.269-10.798V11.84C185.5,5.708,178.976,0.5,170.231,0.5z M42.837,48.569h-7.969c-0.219-0.766-0.375-1.383-0.469-1.852c-0.188-0.969-0.289-1.961-0.305-2.977l-0.047-3.211c-0.03-2.203-0.41-3.672-1.142-4.406c-0.732-0.734-2.103-1.102-4.113-1.102h-7.05v13.547h-7.055V14.022h16.524c2.361,0.047,4.178,0.344,5.45,0.891c1.272,0.547,2.351,1.352,3.234,2.414c0.731,0.875,1.31,1.844,1.737,2.906s0.64,2.273,0.64,3.633c0,1.641-0.414,3.254-1.242,4.84s-2.195,2.707-4.102,3.363c1.594,0.641,2.723,1.551,3.387,2.73s0.996,2.98,0.996,5.402v2.32c0,1.578,0.063,2.648,0.19,3.211c0.19,0.891,0.635,1.547,1.333,1.969V48.569z M75.579,48.569h-26.18V14.022h25.336v6.117H56.454v7.336h16.781v6H56.454v8.883h19.125V48.569z M104.497,46.331c-2.44,2.086-5.887,3.129-10.34,3.129c-4.548,0-8.125-1.027-10.731-3.082s-3.909-4.879-3.909-8.473h6.891c0.224,1.578,0.662,2.758,1.316,3.539c1.196,1.422,3.246,2.133,6.15,2.133c1.739,0,3.151-0.188,4.236-0.562c2.058-0.719,3.087-2.055,3.087-4.008c0-1.141-0.504-2.023-1.512-2.648c-1.008-0.609-2.607-1.148-4.796-1.617l-3.74-0.82c-3.676-0.812-6.201-1.695-7.576-2.648c-2.328-1.594-3.492-4.086-3.492-7.477c0-3.094,1.139-5.664,3.417-7.711s5.623-3.07,10.036-3.07c3.685,0,6.829,0.965,9.431,2.895c2.602,1.93,3.966,4.73,4.093,8.402h-6.938c-0.128-2.078-1.057-3.555-2.787-4.43c-1.154-0.578-2.587-0.867-4.301-0.867c-1.907,0-3.428,0.375-4.565,1.125c-1.138,0.75-1.706,1.797-1.706,3.141c0,1.234,0.561,2.156,1.682,2.766c0.721,0.406,2.25,0.883,4.589,1.43l6.063,1.43c2.657,0.625,4.648,1.461,5.975,2.508c2.059,1.625,3.089,3.977,3.089,7.055C108.157,41.624,106.937,44.245,104.497,46.331z M139.61,48.569h-26.18V14.022h25.336v6.117h-18.281v7.336h16.781v6h-16.781v8.883h19.125V48.569z M170.337,20.14h-10.336v28.43h-7.266V20.14h-10.383v-6.117h27.984V20.14z`),a.setAttribute(`class`,`svg-pan-zoom-control-element`),t.appendChild(a),t},_createZoomOut:function(e){var t=document.createElementNS(n.svgNS,`g`);t.setAttribute(`id`,`svg-pan-zoom-zoom-out`),t.setAttribute(`transform`,`translate(30.5 70) scale(0.015)`),t.setAttribute(`class`,`svg-pan-zoom-control`),t.addEventListener(`click`,function(){e.getPublicInstance().zoomOut()},!1),t.addEventListener(`touchstart`,function(){e.getPublicInstance().zoomOut()},!1);var r=document.createElementNS(n.svgNS,`rect`);r.setAttribute(`x`,`0`),r.setAttribute(`y`,`0`),r.setAttribute(`width`,`1500`),r.setAttribute(`height`,`1400`),r.setAttribute(`class`,`svg-pan-zoom-control-background`),t.appendChild(r);var i=document.createElementNS(n.svgNS,`path`);return i.setAttribute(`d`,`M1280 576v128q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h896q26 0 45 19t19 45zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 t84.5 -203.5z`),i.setAttribute(`class`,`svg-pan-zoom-control-element`),t.appendChild(i),t},disable:function(e){e.controlIcons&&=(e.controlIcons.parentNode.removeChild(e.controlIcons),null)}}})),o=t(((e,t)=>{var n=i(),a=r(),o=function(e,t){this.init(e,t)};o.prototype.init=function(e,t){this.viewport=e,this.options=t,this.originalState={zoom:1,x:0,y:0},this.activeState={zoom:1,x:0,y:0},this.updateCTMCached=a.proxy(this.updateCTM,this),this.requestAnimationFrame=a.createRequestAnimationFrame(this.options.refreshRate),this.viewBox={x:0,y:0,width:0,height:0},this.cacheViewBox();var n=this.processCTM();this.setCTM(n),this.updateCTM()},o.prototype.cacheViewBox=function(){var e=this.options.svg.getAttribute(`viewBox`);if(e){var t=e.split(/[\s\,]/).filter(function(e){return e}).map(parseFloat);this.viewBox.x=t[0],this.viewBox.y=t[1],this.viewBox.width=t[2],this.viewBox.height=t[3];var n=Math.min(this.options.width/this.viewBox.width,this.options.height/this.viewBox.height);this.activeState.zoom=n,this.activeState.x=(this.options.width-this.viewBox.width*n)/2,this.activeState.y=(this.options.height-this.viewBox.height*n)/2,this.updateCTMOnNextFrame(),this.options.svg.removeAttribute(`viewBox`)}else this.simpleViewBoxCache()},o.prototype.simpleViewBoxCache=function(){var e=this.viewport.getBBox();this.viewBox.x=e.x,this.viewBox.y=e.y,this.viewBox.width=e.width,this.viewBox.height=e.height},o.prototype.getViewBox=function(){return a.extend({},this.viewBox)},o.prototype.processCTM=function(){var e=this.getCTM();if(this.options.fit||this.options.contain){var t=this.options.fit?Math.min(this.options.width/this.viewBox.width,this.options.height/this.viewBox.height):Math.max(this.options.width/this.viewBox.width,this.options.height/this.viewBox.height);e.a=t,e.d=t,e.e=-this.viewBox.x*t,e.f=-this.viewBox.y*t}if(this.options.center){var n=(this.options.width-(this.viewBox.width+this.viewBox.x*2)*e.a)*.5,r=(this.options.height-(this.viewBox.height+this.viewBox.y*2)*e.a)*.5;e.e=n,e.f=r}return this.originalState.zoom=e.a,this.originalState.x=e.e,this.originalState.y=e.f,e},o.prototype.getOriginalState=function(){return a.extend({},this.originalState)},o.prototype.getState=function(){return a.extend({},this.activeState)},o.prototype.getZoom=function(){return this.activeState.zoom},o.prototype.getRelativeZoom=function(){return this.activeState.zoom/this.originalState.zoom},o.prototype.computeRelativeZoom=function(e){return e/this.originalState.zoom},o.prototype.getPan=function(){return{x:this.activeState.x,y:this.activeState.y}},o.prototype.getCTM=function(){var e=this.options.svg.createSVGMatrix();return e.a=this.activeState.zoom,e.b=0,e.c=0,e.d=this.activeState.zoom,e.e=this.activeState.x,e.f=this.activeState.y,e},o.prototype.setCTM=function(e){var t=this.isZoomDifferent(e),n=this.isPanDifferent(e);if(t||n){if(t&&(this.options.beforeZoom(this.getRelativeZoom(),this.computeRelativeZoom(e.a))===!1?(e.a=e.d=this.activeState.zoom,t=!1):(this.updateCache(e),this.options.onZoom(this.getRelativeZoom()))),n){var r=this.options.beforePan(this.getPan(),{x:e.e,y:e.f}),i=!1,o=!1;r===!1?(e.e=this.getPan().x,e.f=this.getPan().y,i=o=!0):a.isObject(r)&&(r.x===!1?(e.e=this.getPan().x,i=!0):a.isNumber(r.x)&&(e.e=r.x),r.y===!1?(e.f=this.getPan().y,o=!0):a.isNumber(r.y)&&(e.f=r.y)),i&&o||!this.isPanDifferent(e)?n=!1:(this.updateCache(e),this.options.onPan(this.getPan()))}(t||n)&&this.updateCTMOnNextFrame()}},o.prototype.isZoomDifferent=function(e){return this.activeState.zoom!==e.a},o.prototype.isPanDifferent=function(e){return this.activeState.x!==e.e||this.activeState.y!==e.f},o.prototype.updateCache=function(e){this.activeState.zoom=e.a,this.activeState.x=e.e,this.activeState.y=e.f},o.prototype.pendingUpdate=!1,o.prototype.updateCTMOnNextFrame=function(){this.pendingUpdate||(this.pendingUpdate=!0,this.requestAnimationFrame.call(window,this.updateCTMCached))},o.prototype.updateCTM=function(){var e=this.getCTM();n.setCTM(this.viewport,e,this.defs),this.pendingUpdate=!1,this.options.onUpdatedCTM&&this.options.onUpdatedCTM(e)},t.exports=function(e,t){return new o(e,t)}})),s=t(((e,t)=>{var s=n(),c=a(),l=r(),u=i(),d=o(),f=function(e,t){this.init(e,t)},p={viewportSelector:`.svg-pan-zoom_viewport`,panEnabled:!0,controlIconsEnabled:!1,zoomEnabled:!0,dblClickZoomEnabled:!0,mouseWheelZoomEnabled:!0,preventMouseEventsDefault:!0,zoomScaleSensitivity:.1,minZoom:.5,maxZoom:10,fit:!0,contain:!1,center:!0,refreshRate:`auto`,beforeZoom:null,onZoom:null,beforePan:null,onPan:null,customEventsHandler:null,eventsListenerElement:null,onUpdatedCTM:null},m={passive:!0};f.prototype.init=function(e,t){var n=this;this.svg=e,this.defs=e.querySelector(`defs`),u.setupSvgAttributes(this.svg),this.options=l.extend(l.extend({},p),t),this.state=`none`;var r=u.getBoundingClientRectNormalized(e);this.width=r.width,this.height=r.height,this.viewport=d(u.getOrCreateViewport(this.svg,this.options.viewportSelector),{svg:this.svg,width:this.width,height:this.height,fit:this.options.fit,contain:this.options.contain,center:this.options.center,refreshRate:this.options.refreshRate,beforeZoom:function(e,t){if(n.viewport&&n.options.beforeZoom)return n.options.beforeZoom(e,t)},onZoom:function(e){if(n.viewport&&n.options.onZoom)return n.options.onZoom(e)},beforePan:function(e,t){if(n.viewport&&n.options.beforePan)return n.options.beforePan(e,t)},onPan:function(e){if(n.viewport&&n.options.onPan)return n.options.onPan(e)},onUpdatedCTM:function(e){if(n.viewport&&n.options.onUpdatedCTM)return n.options.onUpdatedCTM(e)}});var i=this.getPublicInstance();i.setBeforeZoom(this.options.beforeZoom),i.setOnZoom(this.options.onZoom),i.setBeforePan(this.options.beforePan),i.setOnPan(this.options.onPan),i.setOnUpdatedCTM(this.options.onUpdatedCTM),this.options.controlIconsEnabled&&c.enable(this),this.lastMouseWheelEventTime=Date.now(),this.setupHandlers()},f.prototype.setupHandlers=function(){var e=this,t=null;if(this.eventListeners={mousedown:function(n){var r=e.handleMouseDown(n,t);return t=n,r},touchstart:function(n){var r=e.handleMouseDown(n,t);return t=n,r},mouseup:function(t){return e.handleMouseUp(t)},touchend:function(t){return e.handleMouseUp(t)},mousemove:function(t){return e.handleMouseMove(t)},touchmove:function(t){return e.handleMouseMove(t)},mouseleave:function(t){return e.handleMouseUp(t)},touchleave:function(t){return e.handleMouseUp(t)},touchcancel:function(t){return e.handleMouseUp(t)}},this.options.customEventsHandler!=null){this.options.customEventsHandler.init({svgElement:this.svg,eventsListenerElement:this.options.eventsListenerElement,instance:this.getPublicInstance()});var n=this.options.customEventsHandler.haltEventListeners;if(n&&n.length)for(var r=n.length-1;r>=0;r--)this.eventListeners.hasOwnProperty(n[r])&&delete this.eventListeners[n[r]]}for(var i in this.eventListeners)(this.options.eventsListenerElement||this.svg).addEventListener(i,this.eventListeners[i],this.options.preventMouseEventsDefault?!1:m);this.options.mouseWheelZoomEnabled&&(this.options.mouseWheelZoomEnabled=!1,this.enableMouseWheelZoom())},f.prototype.enableMouseWheelZoom=function(){if(!this.options.mouseWheelZoomEnabled){var e=this;this.wheelListener=function(t){return e.handleMouseWheel(t)};var t=!this.options.preventMouseEventsDefault;s.on(this.options.eventsListenerElement||this.svg,this.wheelListener,t),this.options.mouseWheelZoomEnabled=!0}},f.prototype.disableMouseWheelZoom=function(){if(this.options.mouseWheelZoomEnabled){var e=!this.options.preventMouseEventsDefault;s.off(this.options.eventsListenerElement||this.svg,this.wheelListener,e),this.options.mouseWheelZoomEnabled=!1}},f.prototype.handleMouseWheel=function(e){if(!(!this.options.zoomEnabled||this.state!==`none`)){this.options.preventMouseEventsDefault&&(e.preventDefault?e.preventDefault():e.returnValue=!1);var t=e.deltaY||1,n=Date.now()-this.lastMouseWheelEventTime,r=3+Math.max(0,30-n);this.lastMouseWheelEventTime=Date.now(),`deltaMode`in e&&e.deltaMode===0&&e.wheelDelta&&(t=e.deltaY===0?0:Math.abs(e.wheelDelta)/e.deltaY),t=-.3<t&&t<.3?t:(t>0?1:-1)*Math.log(Math.abs(t)+10)/r;var i=this.svg.getScreenCTM().inverse(),a=u.getEventPoint(e,this.svg).matrixTransform(i),o=(1+this.options.zoomScaleSensitivity)**(-1*t);this.zoomAtPoint(o,a)}},f.prototype.zoomAtPoint=function(e,t,n){var r=this.viewport.getOriginalState();n?(e=Math.max(this.options.minZoom*r.zoom,Math.min(this.options.maxZoom*r.zoom,e)),e/=this.getZoom()):this.getZoom()*e<this.options.minZoom*r.zoom?e=this.options.minZoom*r.zoom/this.getZoom():this.getZoom()*e>this.options.maxZoom*r.zoom&&(e=this.options.maxZoom*r.zoom/this.getZoom());var i=this.viewport.getCTM(),a=t.matrixTransform(i.inverse()),o=this.svg.createSVGMatrix().translate(a.x,a.y).scale(e).translate(-a.x,-a.y),s=i.multiply(o);s.a!==i.a&&this.viewport.setCTM(s)},f.prototype.zoom=function(e,t){this.zoomAtPoint(e,u.getSvgCenterPoint(this.svg,this.width,this.height),t)},f.prototype.publicZoom=function(e,t){t&&(e=this.computeFromRelativeZoom(e)),this.zoom(e,t)},f.prototype.publicZoomAtPoint=function(e,t,n){if(n&&(e=this.computeFromRelativeZoom(e)),l.getType(t)!==`SVGPoint`)if(`x`in t&&`y`in t)t=u.createSVGPoint(this.svg,t.x,t.y);else throw Error(`Given point is invalid`);this.zoomAtPoint(e,t,n)},f.prototype.getZoom=function(){return this.viewport.getZoom()},f.prototype.getRelativeZoom=function(){return this.viewport.getRelativeZoom()},f.prototype.computeFromRelativeZoom=function(e){return e*this.viewport.getOriginalState().zoom},f.prototype.resetZoom=function(){var e=this.viewport.getOriginalState();this.zoom(e.zoom,!0)},f.prototype.resetPan=function(){this.pan(this.viewport.getOriginalState())},f.prototype.reset=function(){this.resetZoom(),this.resetPan()},f.prototype.handleDblClick=function(e){if(this.options.preventMouseEventsDefault&&(e.preventDefault?e.preventDefault():e.returnValue=!1),this.options.controlIconsEnabled&&(e.target.getAttribute(`class`)||``).indexOf(`svg-pan-zoom-control`)>-1)return!1;var t=e.shiftKey?1/((1+this.options.zoomScaleSensitivity)*2):(1+this.options.zoomScaleSensitivity)*2,n=u.getEventPoint(e,this.svg).matrixTransform(this.svg.getScreenCTM().inverse());this.zoomAtPoint(t,n)},f.prototype.handleMouseDown=function(e,t){this.options.preventMouseEventsDefault&&(e.preventDefault?e.preventDefault():e.returnValue=!1),l.mouseAndTouchNormalize(e,this.svg),this.options.dblClickZoomEnabled&&l.isDblClick(e,t)?this.handleDblClick(e):(this.state=`pan`,this.firstEventCTM=this.viewport.getCTM(),this.stateOrigin=u.getEventPoint(e,this.svg).matrixTransform(this.firstEventCTM.inverse()))},f.prototype.handleMouseMove=function(e){if(this.options.preventMouseEventsDefault&&(e.preventDefault?e.preventDefault():e.returnValue=!1),this.state===`pan`&&this.options.panEnabled){var t=u.getEventPoint(e,this.svg).matrixTransform(this.firstEventCTM.inverse()),n=this.firstEventCTM.translate(t.x-this.stateOrigin.x,t.y-this.stateOrigin.y);this.viewport.setCTM(n)}},f.prototype.handleMouseUp=function(e){this.options.preventMouseEventsDefault&&(e.preventDefault?e.preventDefault():e.returnValue=!1),this.state===`pan`&&(this.state=`none`)},f.prototype.fit=function(){var e=this.viewport.getViewBox(),t=Math.min(this.width/e.width,this.height/e.height);this.zoom(t,!0)},f.prototype.contain=function(){var e=this.viewport.getViewBox(),t=Math.max(this.width/e.width,this.height/e.height);this.zoom(t,!0)},f.prototype.center=function(){var e=this.viewport.getViewBox(),t=(this.width-(e.width+e.x*2)*this.getZoom())*.5,n=(this.height-(e.height+e.y*2)*this.getZoom())*.5;this.getPublicInstance().pan({x:t,y:n})},f.prototype.updateBBox=function(){this.viewport.simpleViewBoxCache()},f.prototype.pan=function(e){var t=this.viewport.getCTM();t.e=e.x,t.f=e.y,this.viewport.setCTM(t)},f.prototype.panBy=function(e){var t=this.viewport.getCTM();t.e+=e.x,t.f+=e.y,this.viewport.setCTM(t)},f.prototype.getPan=function(){var e=this.viewport.getState();return{x:e.x,y:e.y}},f.prototype.resize=function(){var e=u.getBoundingClientRectNormalized(this.svg);this.width=e.width,this.height=e.height;var t=this.viewport;t.options.width=this.width,t.options.height=this.height,t.processCTM(),this.options.controlIconsEnabled&&(this.getPublicInstance().disableControlIcons(),this.getPublicInstance().enableControlIcons())},f.prototype.destroy=function(){var e=this;for(var t in this.beforeZoom=null,this.onZoom=null,this.beforePan=null,this.onPan=null,this.onUpdatedCTM=null,this.options.customEventsHandler!=null&&this.options.customEventsHandler.destroy({svgElement:this.svg,eventsListenerElement:this.options.eventsListenerElement,instance:this.getPublicInstance()}),this.eventListeners)(this.options.eventsListenerElement||this.svg).removeEventListener(t,this.eventListeners[t],this.options.preventMouseEventsDefault?!1:m);this.disableMouseWheelZoom(),this.getPublicInstance().disableControlIcons(),this.reset(),h=h.filter(function(t){return t.svg!==e.svg}),delete this.options,delete this.viewport,delete this.publicInstance,delete this.pi,this.getPublicInstance=function(){return null}},f.prototype.getPublicInstance=function(){var e=this;return this.publicInstance||=this.pi={enablePan:function(){return e.options.panEnabled=!0,e.pi},disablePan:function(){return e.options.panEnabled=!1,e.pi},isPanEnabled:function(){return!!e.options.panEnabled},pan:function(t){return e.pan(t),e.pi},panBy:function(t){return e.panBy(t),e.pi},getPan:function(){return e.getPan()},setBeforePan:function(t){return e.options.beforePan=t===null?null:l.proxy(t,e.publicInstance),e.pi},setOnPan:function(t){return e.options.onPan=t===null?null:l.proxy(t,e.publicInstance),e.pi},enableZoom:function(){return e.options.zoomEnabled=!0,e.pi},disableZoom:function(){return e.options.zoomEnabled=!1,e.pi},isZoomEnabled:function(){return!!e.options.zoomEnabled},enableControlIcons:function(){return e.options.controlIconsEnabled||(e.options.controlIconsEnabled=!0,c.enable(e)),e.pi},disableControlIcons:function(){return e.options.controlIconsEnabled&&(e.options.controlIconsEnabled=!1,c.disable(e)),e.pi},isControlIconsEnabled:function(){return!!e.options.controlIconsEnabled},enableDblClickZoom:function(){return e.options.dblClickZoomEnabled=!0,e.pi},disableDblClickZoom:function(){return e.options.dblClickZoomEnabled=!1,e.pi},isDblClickZoomEnabled:function(){return!!e.options.dblClickZoomEnabled},enableMouseWheelZoom:function(){return e.enableMouseWheelZoom(),e.pi},disableMouseWheelZoom:function(){return e.disableMouseWheelZoom(),e.pi},isMouseWheelZoomEnabled:function(){return!!e.options.mouseWheelZoomEnabled},setZoomScaleSensitivity:function(t){return e.options.zoomScaleSensitivity=t,e.pi},setMinZoom:function(t){return e.options.minZoom=t,e.pi},setMaxZoom:function(t){return e.options.maxZoom=t,e.pi},setBeforeZoom:function(t){return e.options.beforeZoom=t===null?null:l.proxy(t,e.publicInstance),e.pi},setOnZoom:function(t){return e.options.onZoom=t===null?null:l.proxy(t,e.publicInstance),e.pi},zoom:function(t){return e.publicZoom(t,!0),e.pi},zoomBy:function(t){return e.publicZoom(t,!1),e.pi},zoomAtPoint:function(t,n){return e.publicZoomAtPoint(t,n,!0),e.pi},zoomAtPointBy:function(t,n){return e.publicZoomAtPoint(t,n,!1),e.pi},zoomIn:function(){return this.zoomBy(1+e.options.zoomScaleSensitivity),e.pi},zoomOut:function(){return this.zoomBy(1/(1+e.options.zoomScaleSensitivity)),e.pi},getZoom:function(){return e.getRelativeZoom()},setOnUpdatedCTM:function(t){return e.options.onUpdatedCTM=t===null?null:l.proxy(t,e.publicInstance),e.pi},resetZoom:function(){return e.resetZoom(),e.pi},resetPan:function(){return e.resetPan(),e.pi},reset:function(){return e.reset(),e.pi},fit:function(){return e.fit(),e.pi},contain:function(){return e.contain(),e.pi},center:function(){return e.center(),e.pi},updateBBox:function(){return e.updateBBox(),e.pi},resize:function(){return e.resize(),e.pi},getSizes:function(){return{width:e.width,height:e.height,realZoom:e.getZoom(),viewBox:e.viewport.getViewBox()}},destroy:function(){return e.destroy(),e.pi}},this.publicInstance};var h=[];t.exports=function(e,t){var n=l.getSvg(e);if(n===null)return null;for(var r=h.length-1;r>=0;r--)if(h[r].svg===n)return h[r].instance.getPublicInstance();return h.push({svg:n,instance:new f(n,t)}),h[h.length-1].instance.getPublicInstance()}})),c=e(t(((e,t)=>{t.exports=s()}))(),1);function l(e,t){if(e.querySelector(`.svg-zoom-controls`))return;let n=document.createElement(`div`);n.className=`svg-zoom-controls`,n.innerHTML=`
2
+ <button class="svg-zoom-btn" data-action="zoom-out" title="Zoom out">
3
+ <svg viewBox="0 0 24 24" width="20" height="20"><path fill="currentColor" d="M19 13H5v-2h14v2z"/></svg>
4
+ </button>
5
+ <button class="svg-zoom-btn" data-action="zoom-in" title="Zoom in">
6
+ <svg viewBox="0 0 24 24" width="20" height="20"><path fill="currentColor" d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/></svg>
7
+ </button>
8
+ <button class="svg-zoom-btn" data-action="reset" title="Reset view">
9
+ <svg viewBox="0 0 24 24" width="20" height="20"><path fill="currentColor" d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"/></svg>
10
+ </button>
11
+ `,n.querySelector(`[data-action="zoom-in"]`).addEventListener(`click`,()=>t.zoomIn()),n.querySelector(`[data-action="zoom-out"]`).addEventListener(`click`,()=>t.zoomOut()),n.querySelector(`[data-action="reset"]`).addEventListener(`click`,()=>{t.resetZoom(),t.resetPan(),t.fit(),t.center()}),e.style.position=`relative`,e.appendChild(n)}function u(e,t){let n=e.getBBox(),r=n.x-20+` `+(n.y-20)+` `+(n.width+40)+` `+(n.height+40);e.setAttribute(`viewBox`,r);let i=n.width+40,a=n.height+40,o=t.clientWidth||800,s=a/i,u=Math.round(o*s),d=Math.round(window.innerHeight*.7),f=Math.max(150,Math.min(u+60,d));t.style.height=f+`px`,e.removeAttribute(`width`),e.removeAttribute(`height`),e.removeAttribute(`style`),e.style.cssText=`max-width: none !important; width: 100%; height: 100%;`;let p=(0,c.default)(e,{zoomEnabled:!0,controlIconsEnabled:!1,fit:!0,contain:!1,center:!0,minZoom:.1,maxZoom:10,zoomScaleSensitivity:.3});l(t,p);let m=()=>{p.resize(),p.fit(),p.center()};return window.addEventListener(`resize`,m),setTimeout(m,100),{instance:p,destroy:()=>{window.removeEventListener(`resize`,m),p.destroy()}}}export{u as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./mermaid-DYyHQk7x.js";export{e as createWardleyServices};
@@ -5,9 +5,10 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>IONOS Architecture</title>
7
7
  <link rel="icon" href="/favicon.ico" />
8
- <script type="module" crossorigin src="/vue/index-Zr9MoxJi.js"></script>
9
- <link rel="modulepreload" crossorigin href="/vue/mermaid-DUllW9QE.js">
10
- <link rel="stylesheet" crossorigin href="/vue/index-Tiu4C-Sb.css">
8
+ <script type="module" crossorigin src="/vue/index-T1YqCmM1.js"></script>
9
+ <link rel="modulepreload" crossorigin href="/vue/rolldown-runtime-QTnfLwEv.js">
10
+ <link rel="modulepreload" crossorigin href="/vue/mermaid-DYyHQk7x.js">
11
+ <link rel="stylesheet" crossorigin href="/vue/index-BW0IzY6X.css">
11
12
  </head>
12
13
  <body>
13
14
  <div id="app"></div>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: archsight
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vincent Landgraf
@@ -69,16 +69,16 @@ dependencies:
69
69
  name: puma
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - "~>"
72
+ - - ">="
73
73
  - !ruby/object:Gem::Version
74
- version: '6.0'
74
+ version: 8.0.2
75
75
  type: :runtime
76
76
  prerelease: false
77
77
  version_requirements: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - "~>"
79
+ - - ">="
80
80
  - !ruby/object:Gem::Version
81
- version: '6.0'
81
+ version: 8.0.2
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: rackup
84
84
  requirement: !ruby/object:Gem::Requirement
@@ -264,15 +264,25 @@ files:
264
264
  - lib/archsight/import/executor.rb
265
265
  - lib/archsight/import/git_analytics.rb
266
266
  - lib/archsight/import/handler.rb
267
+ - lib/archsight/import/handlers/cpp_grapher.rb
268
+ - lib/archsight/import/handlers/crystal_grapher.rb
269
+ - lib/archsight/import/handlers/elixir_grapher.rb
267
270
  - lib/archsight/import/handlers/github.rb
268
271
  - lib/archsight/import/handlers/gitlab.rb
272
+ - lib/archsight/import/handlers/go_grapher.rb
273
+ - lib/archsight/import/handlers/grapher.rb
274
+ - lib/archsight/import/handlers/java_grapher.rb
275
+ - lib/archsight/import/handlers/javascript_grapher.rb
269
276
  - lib/archsight/import/handlers/jira_base.rb
270
277
  - lib/archsight/import/handlers/jira_discover.rb
271
278
  - lib/archsight/import/handlers/jira_metrics.rb
272
279
  - lib/archsight/import/handlers/openapi_schema_parser.rb
280
+ - lib/archsight/import/handlers/python_grapher.rb
273
281
  - lib/archsight/import/handlers/repository.rb
274
282
  - lib/archsight/import/handlers/rest_api.rb
275
283
  - lib/archsight/import/handlers/rest_api_index.rb
284
+ - lib/archsight/import/handlers/ruby_grapher.rb
285
+ - lib/archsight/import/handlers/rust_grapher.rb
276
286
  - lib/archsight/import/license_analyzer.rb
277
287
  - lib/archsight/import/progress.rb
278
288
  - lib/archsight/import/registry.rb
@@ -328,73 +338,42 @@ files:
328
338
  - lib/archsight/web/editor/routes.rb
329
339
  - lib/archsight/web/public/favicon.ico
330
340
  - lib/archsight/web/public/vue.html
331
- - lib/archsight/web/public/vue/ApiDocsPage-Cwn04X61.js
332
- - lib/archsight/web/public/vue/ApiDocsPage-DhNTOH4o.css
333
- - lib/archsight/web/public/vue/DocPage-Y83PCbYi.js
334
- - lib/archsight/web/public/vue/EditorPage-Dq0MuTnp.css
335
- - lib/archsight/web/public/vue/EditorPage-DqRMOBE6.js
336
- - lib/archsight/web/public/vue/ErrorPage-CwPT3JUr.css
337
- - lib/archsight/web/public/vue/ErrorPage-D0lKMCXA.js
338
- - lib/archsight/web/public/vue/GraphView-Byq-Nfd9.js
339
- - lib/archsight/web/public/vue/GraphView-DRcIqAiR.css
340
- - lib/archsight/web/public/vue/InstanceRouter-B3Q2fH0X.js
341
- - lib/archsight/web/public/vue/InstanceRouter-BJkDRXZY.css
342
- - lib/archsight/web/public/vue/KindList-DlDrvJDd.js
343
- - lib/archsight/web/public/vue/ResourceList-DP-z-j71.css
344
- - lib/archsight/web/public/vue/ResourceList-DwsfI85-.js
345
- - lib/archsight/web/public/vue/SearchResults-BGHbg48-.css
346
- - lib/archsight/web/public/vue/SearchResults-DlWGROho.js
347
- - lib/archsight/web/public/vue/_basePickBy-DXGWsL9H.js
348
- - lib/archsight/web/public/vue/_baseUniq-C8pAAASt.js
349
- - lib/archsight/web/public/vue/architectureDiagram-VXUJARFQ-Dg_wTk4u.js
350
- - lib/archsight/web/public/vue/blockDiagram-VD42YOAC-C8HXvtNT.js
351
- - lib/archsight/web/public/vue/c4Diagram-YG6GDRKO-QzXboDJ8.js
352
- - lib/archsight/web/public/vue/chunk-4BX2VUAB-DSPzEX5F.js
353
- - lib/archsight/web/public/vue/chunk-55IACEB6-Dd5Z8Bov.js
354
- - lib/archsight/web/public/vue/chunk-B4BG7PRW-B_hXD1nI.js
355
- - lib/archsight/web/public/vue/chunk-DI55MBZ5-C-2DUMJY.js
356
- - lib/archsight/web/public/vue/chunk-FMBD7UC4-BlBtfKnL.js
357
- - lib/archsight/web/public/vue/chunk-QN33PNHL-Db3REDIz.js
358
- - lib/archsight/web/public/vue/chunk-QZHKN3VN-BqVqGMTy.js
359
- - lib/archsight/web/public/vue/chunk-TZMSLE5B-DfX4VDWu.js
360
- - lib/archsight/web/public/vue/classDiagram-2ON5EDUG-C9Kk58xl.js
361
- - lib/archsight/web/public/vue/classDiagram-v2-WZHVMYZB-C9Kk58xl.js
362
- - lib/archsight/web/public/vue/clone-B6uzD5eH.js
363
- - lib/archsight/web/public/vue/cose-bilkent-S5V4N54A-CfkQxn-a.js
364
- - lib/archsight/web/public/vue/cytoscape.esm-5J0xJHOV.js
365
- - lib/archsight/web/public/vue/dagre-6UL2VRFP-D13da1qu.js
366
- - lib/archsight/web/public/vue/diagram-PSM6KHXK-BwzbeHPK.js
367
- - lib/archsight/web/public/vue/diagram-QEK2KX5R-COjSoDC8.js
368
- - lib/archsight/web/public/vue/diagram-S2PKOQOG-FH65FafS.js
369
- - lib/archsight/web/public/vue/erDiagram-Q2GNP2WA-D1mxJWSp.js
370
- - lib/archsight/web/public/vue/flowDiagram-NV44I4VS-DpRd5cPP.js
371
- - lib/archsight/web/public/vue/ganttDiagram-JELNMOA3-D04Sdd3Q.js
372
- - lib/archsight/web/public/vue/gitGraphDiagram-V2S2FVAM-DgNNP2nj.js
373
- - lib/archsight/web/public/vue/graph-Cnoy0p_X.js
374
- - lib/archsight/web/public/vue/graphviz-CJms5bxZ.js
375
- - lib/archsight/web/public/vue/index-Tiu4C-Sb.css
376
- - lib/archsight/web/public/vue/index-Zr9MoxJi.js
377
- - lib/archsight/web/public/vue/infoDiagram-HS3SLOUP-D5asL_9P.js
378
- - lib/archsight/web/public/vue/journeyDiagram-XKPGCS4Q-D-SRalYk.js
379
- - lib/archsight/web/public/vue/kanban-definition-3W4ZIXB7-CuOjHa3p.js
380
- - lib/archsight/web/public/vue/katex-C-M49wc6.js
381
- - lib/archsight/web/public/vue/layout-CD8FBujT.js
382
- - lib/archsight/web/public/vue/mermaid-DUllW9QE.js
383
- - lib/archsight/web/public/vue/mindmap-definition-VGOIOE7T-BfbYXGBk.js
384
- - lib/archsight/web/public/vue/pieDiagram-ADFJNKIX-mb757Gpq.js
385
- - lib/archsight/web/public/vue/quadrantDiagram-AYHSOK5B-DMtvHJQW.js
386
- - lib/archsight/web/public/vue/requirementDiagram-UZGBJVZJ-CHguirsB.js
387
- - lib/archsight/web/public/vue/sankeyDiagram-TZEHDZUN-nblWMNF6.js
388
- - lib/archsight/web/public/vue/sequenceDiagram-WL72ISMW-B83ZoXls.js
389
- - lib/archsight/web/public/vue/stateDiagram-FKZM4ZOC-Ct0OgmPh.js
390
- - lib/archsight/web/public/vue/stateDiagram-v2-4FDKWEC3-CJZXQ6xd.js
391
- - lib/archsight/web/public/vue/timeline-definition-IT6M3QCI-D1Wd-DLb.js
392
- - lib/archsight/web/public/vue/treemap-GDKQZRPO-DFPZrNlp.js
393
- - lib/archsight/web/public/vue/useGraphviz-BN4iwLLN.js
394
- - lib/archsight/web/public/vue/useHighlight-DmGaxZxx.js
395
- - lib/archsight/web/public/vue/useMermaid-DSo5f1Jc.js
396
- - lib/archsight/web/public/vue/usePanZoom-BEXq_r0S.js
397
- - lib/archsight/web/public/vue/xychartDiagram-PRI3JC2R-i_eB4HAQ.js
341
+ - lib/archsight/web/public/vue/ApiDocsPage-C0y953v0.css
342
+ - lib/archsight/web/public/vue/ApiDocsPage-DHSCaHEn.js
343
+ - lib/archsight/web/public/vue/DocPage-DszOPlFy.js
344
+ - lib/archsight/web/public/vue/EditorPage-CPZ0Ei4l.css
345
+ - lib/archsight/web/public/vue/EditorPage-DsiuZ7fg.js
346
+ - lib/archsight/web/public/vue/ErrorPage-C4JutrYc.js
347
+ - lib/archsight/web/public/vue/ErrorPage-uMDnfY5_.css
348
+ - lib/archsight/web/public/vue/GraphView-Bqlbt6dK.js
349
+ - lib/archsight/web/public/vue/GraphView-Cj2V2stN.css
350
+ - lib/archsight/web/public/vue/InstanceRouter-D8SEY2eu.js
351
+ - lib/archsight/web/public/vue/InstanceRouter-D9hclKFt.css
352
+ - lib/archsight/web/public/vue/KindList-CPDaNron.js
353
+ - lib/archsight/web/public/vue/ResourceList-B5w9yiyS.js
354
+ - lib/archsight/web/public/vue/ResourceList-DxZfNbOg.css
355
+ - lib/archsight/web/public/vue/SearchResults-DSHpVO-c.css
356
+ - lib/archsight/web/public/vue/SearchResults-FpkhdBFu.js
357
+ - lib/archsight/web/public/vue/architecture-7EHR7CIX-DpNNjAIc.js
358
+ - lib/archsight/web/public/vue/eventmodeling-FCH6USID-CiThxoWl.js
359
+ - lib/archsight/web/public/vue/gitGraph-WXDBUCRP-BODMGpAm.js
360
+ - lib/archsight/web/public/vue/graphviz-09t3o0af.js
361
+ - lib/archsight/web/public/vue/index-BW0IzY6X.css
362
+ - lib/archsight/web/public/vue/index-T1YqCmM1.js
363
+ - lib/archsight/web/public/vue/info-J43DQDTF-fLq04sri.js
364
+ - lib/archsight/web/public/vue/katex-5qHlIbPR.js
365
+ - lib/archsight/web/public/vue/mermaid-DYyHQk7x.js
366
+ - lib/archsight/web/public/vue/packet-YPE3B663-DoY1fbqu.js
367
+ - lib/archsight/web/public/vue/pie-LRSECV5Y-C7ZQVwRe.js
368
+ - lib/archsight/web/public/vue/radar-GUYGQ44K-CRtY5oqf.js
369
+ - lib/archsight/web/public/vue/rolldown-runtime-QTnfLwEv.js
370
+ - lib/archsight/web/public/vue/treeView-BLDUP644-Csx2WLLh.js
371
+ - lib/archsight/web/public/vue/treemap-LRROVOQU-CfEnRbTx.js
372
+ - lib/archsight/web/public/vue/useGraphviz-EKSrE4q_.js
373
+ - lib/archsight/web/public/vue/useHighlight-BcVbGyrK.js
374
+ - lib/archsight/web/public/vue/useMermaid-CIZxhy_r.js
375
+ - lib/archsight/web/public/vue/usePanZoom-C2slpyY9.js
376
+ - lib/archsight/web/public/vue/wardley-L42UT6IY-97oUvxhz.js
398
377
  - media/artifact.jpg
399
378
  - media/service.jpg
400
379
  homepage: https://github.com/ionos-cloud/archsight
@@ -1 +0,0 @@
1
- import{_ as u,l as _,c as s,a as c,v as m,t as f,b as v,r as i,z as k,o as d,B as w}from"./index-Zr9MoxJi.js";import"./mermaid-DUllW9QE.js";const h={class:"api-docs-page"},y={key:0,class:"pico-color-red-500"},g={__name:"ApiDocsPage",setup(B){const l=k(),r=i(null),t=i(null);function p(o){return new Promise((e,n)=>{if(window.Redoc)return e();const a=document.createElement("script");a.src=o,a.onload=e,a.onerror=()=>n(new Error("Failed to load ReDoc")),document.head.appendChild(a)})}return _(async()=>{try{await p("https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js"),window.Redoc.init("/api/v1/openapi.yaml",{},r.value)}catch(o){t.value=o.message}}),(o,e)=>(d(),s("div",h,[c("a",{href:"#",class:"back-link",onClick:e[0]||(e[0]=m(n=>w(l).back(),["prevent"]))},"← Back"),t.value?(d(),s("div",y,f(t.value),1)):v("",!0),c("div",{ref_key:"container",ref:r},null,512)]))}},R=u(g,[["__scopeId","data-v-0e03906d"]]);export{R as default};
@@ -1 +0,0 @@
1
- .back-link[data-v-0e03906d]{position:fixed;top:12px;right:12px;z-index:100;padding:6px 14px;background:#fff;border:1px solid #ddd;border-radius:4px;text-decoration:none;font-size:.875rem;box-shadow:0 1px 4px #0000001a}
@@ -1 +0,0 @@
1
- import{w as m,c as i,a as f,r as a,o as s,j as p,k as d}from"./index-Zr9MoxJi.js";import{r as v}from"./useMermaid-DSo5f1Jc.js";import{h as _}from"./useHighlight-DmGaxZxx.js";import"./mermaid-DUllW9QE.js";import"./usePanZoom-BEXq_r0S.js";const k=["innerHTML"],g={key:1},D={__name:"DocPage",props:{filename:String},setup(c){const n=c,o=a(""),t=a(!0),e=a(null);async function u(){t.value=!0;const r=await p(n.filename);o.value=r||"<p>Documentation not found.</p>",t.value=!1,await d(),e.value&&(_(e.value),v(e.value))}return m(()=>n.filename,u,{immediate:!0}),(r,l)=>t.value?(s(),i("article",g,[...l[0]||(l[0]=[f("p",null,"Loading...",-1)])])):(s(),i("div",{key:0,ref_key:"articleEl",ref:e,innerHTML:o.value},null,8,k))}};export{D as default};
@@ -1 +0,0 @@
1
- .field-group[data-v-6dfd17ff]{margin-bottom:0}.field-group label[data-v-6dfd17ff]{margin-bottom:.25rem}.field-group label .required[data-v-6dfd17ff]{color:var(--del-color);margin-left:.15rem}.field-group input[data-v-6dfd17ff],.field-group select[data-v-6dfd17ff],.field-group textarea[data-v-6dfd17ff]{margin-bottom:0}.field-description[data-v-6dfd17ff]{font-size:.8rem;color:var(--muted-color);margin-top:.25rem}.field-error[data-v-6dfd17ff]{color:var(--del-color);font-size:.8rem;margin-top:.25rem}.field-full-width[data-v-6dfd17ff]{grid-column:1 / -1}.markdown-field textarea[data-v-6dfd17ff]{font-family:var(--font-family-monospace);min-height:200px;resize:vertical}.code-field textarea[data-v-6dfd17ff]{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:.9em;line-height:1.5;min-height:600px;resize:vertical;tab-size:2;white-space:pre;overflow-wrap:normal;overflow-x:auto}.future-hint[data-v-6dfd17ff]{display:flex;align-items:center;gap:.35rem;color:var(--muted-color);font-size:.8rem;margin-top:.5rem}.label-row[data-v-6dfd17ff]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.label-row label[data-v-6dfd17ff]{margin-bottom:0}.btn-edit-markdown[data-v-6dfd17ff]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.85rem;color:var(--muted-color);background:transparent;border:1px solid var(--muted-border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .15s ease}.btn-edit-markdown[data-v-6dfd17ff]:hover{color:var(--primary);border-color:var(--primary);background-color:transparent}.btn-edit-markdown i[data-v-6dfd17ff]{font-size:.9rem}@media(prefers-color-scheme:dark){.btn-edit-markdown[data-v-6dfd17ff]{color:#8b949e;border-color:#ffffff26}.btn-edit-markdown[data-v-6dfd17ff]:hover{color:#58a6ff;border-color:#58a6ff}}.relations-editor[data-v-e27dc1c0]{display:flex;flex-direction:column;gap:.75rem}#relations-list[data-v-e27dc1c0]{display:flex;flex-direction:column;background-color:var(--background-color);border:1px solid var(--muted-border-color);border-radius:4px}#relations-list[data-v-e27dc1c0]:empty{display:none}.relation-item[data-v-e27dc1c0]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;font-size:.9rem;border-bottom:1px solid var(--muted-border-color)}.relation-item[data-v-e27dc1c0]:last-child{border-bottom:none}.relation-text[data-v-e27dc1c0]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.relation-text strong[data-v-e27dc1c0]{font-weight:600}.relation-text em[data-v-e27dc1c0]{font-style:normal;color:var(--muted-color)}.btn-remove[data-v-e27dc1c0]{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;margin:0;background:transparent;border:none;border-radius:3px;color:var(--muted-color);cursor:pointer;flex-shrink:0}.btn-remove[data-v-e27dc1c0]:hover{background-color:var(--del-color);color:#fff}.btn-remove i[data-v-e27dc1c0]{font-size:.85rem}.add-relation-row[data-v-e27dc1c0]{display:flex;gap:.5rem;align-items:center}.add-relation-row select[data-v-e27dc1c0]{margin:0;flex:1}.add-relation-row select[data-v-e27dc1c0]:first-child{flex:1.2}.btn-add[data-v-e27dc1c0]{margin:0;white-space:nowrap;flex-shrink:0}.no-relations[data-v-e27dc1c0]{color:var(--muted-color);font-style:italic;margin:0}@media(max-width:768px){.add-relation-row[data-v-e27dc1c0]{flex-direction:column}.add-relation-row select[data-v-e27dc1c0],.add-relation-row button[data-v-e27dc1c0]{width:100%}}.yaml-output-container[data-v-f7e6a550]{width:100%}.yaml-success[data-v-f7e6a550]{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;color:var(--ins-color);font-weight:500}#yaml-content[data-v-f7e6a550]{margin:0 calc(var(--block-spacing-horizontal) * -1);padding:var(--block-spacing-horizontal);background-color:var(--code-background-color);border-radius:0;overflow-x:auto}#yaml-content code[data-v-f7e6a550]{font-size:.9em;white-space:pre;line-height:1.5;padding:0}footer[data-v-f7e6a550]{display:flex;justify-content:space-between;align-items:center;gap:1rem}.yaml-file-info[data-v-f7e6a550],.yaml-instructions[data-v-f7e6a550]{display:flex;gap:.5rem;margin:0;font-size:.9em;color:var(--muted-color);flex:1;min-width:0;line-height:1.5}.yaml-file-info[data-v-f7e6a550]{align-items:center}.yaml-instructions[data-v-f7e6a550]{align-items:flex-start}.yaml-file-info>span[data-v-f7e6a550],.yaml-instructions>span[data-v-f7e6a550]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yaml-file-info>i[data-v-f7e6a550],.yaml-instructions>i[data-v-f7e6a550]{flex-shrink:0}.yaml-actions[data-v-f7e6a550]{display:flex;gap:.5rem;flex-shrink:0}.yaml-actions button[data-v-f7e6a550],.yaml-actions [role=button][data-v-f7e6a550]{width:auto;margin:0}.conflict-error[data-v-f7e6a550]{display:flex;align-items:center;gap:.5rem;padding:1rem;margin-bottom:1rem;background-color:var(--pico-mark-background-color);color:var(--pico-del-color);border-radius:var(--pico-border-radius)}.conflict-error i[data-v-f7e6a550]{flex-shrink:0}@media(max-width:768px){footer[data-v-f7e6a550]{flex-direction:column;align-items:stretch}.yaml-actions[data-v-f7e6a550]{flex-direction:column}.yaml-actions button[data-v-f7e6a550],.yaml-actions [role=button][data-v-f7e6a550]{width:100%}}#markdown-editor-overlay[data-v-9ca3d00d]{position:fixed;inset:0;z-index:1000}.markdown-editor-backdrop[data-v-9ca3d00d]{position:absolute;inset:0;background-color:#00000080}.markdown-editor-panel[data-v-9ca3d00d]{position:absolute;inset:2rem;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 8px 32px #0000004d,0 2px 8px #0003;background-color:var(--card-background-color, #fff);overflow:hidden}.lexical-toolbar[data-v-9ca3d00d]{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;background-color:var(--card-background-color, #fff);flex-wrap:wrap;box-shadow:0 2px 4px #0000001a;z-index:1}.toolbar-btn[data-v-9ca3d00d]{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .5rem;margin:0;background:transparent;border:1px solid transparent;border-radius:var(--border-radius);color:var(--color);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease}.toolbar-btn[data-v-9ca3d00d]:hover{background-color:var(--muted-border-color);border-color:var(--muted-border-color)}.toolbar-btn[data-v-9ca3d00d]:active{background-color:var(--primary);border-color:var(--primary);color:var(--primary-inverse)}.toolbar-btn i[data-v-9ca3d00d]{font-size:1.1rem}.toolbar-divider[data-v-9ca3d00d]{width:1px;height:1.5rem;margin:0 .5rem;background-color:var(--muted-border-color)}.toolbar-spacer[data-v-9ca3d00d]{flex:1}.toolbar-action[data-v-9ca3d00d]{padding:.4rem .75rem;margin:0;font-size:.85rem}.toolbar-select[data-v-9ca3d00d]{height:2rem;width:auto;min-width:130px;max-width:180px;padding:0 .75rem;margin:0;font-size:.85rem;border:1px solid var(--pico-muted-border-color, #e4e4e7);border-radius:var(--pico-border-radius, .375rem);background-color:transparent;color:var(--pico-color, inherit);cursor:pointer;flex-shrink:0}.toolbar-select[data-v-9ca3d00d]:hover{border-color:var(--pico-primary, #1e88e5)}.toolbar-select[data-v-9ca3d00d]:focus{outline:none;border-color:var(--pico-primary, #1e88e5)}.lexical-editor-container[data-v-9ca3d00d]{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}#lexical-editor-root[data-v-9ca3d00d]{flex:1;min-height:0;padding:1rem 1.5rem;font-family:var(--font-family);line-height:1.6;overflow-y:auto;position:relative}#lexical-editor-root[data-v-9ca3d00d]:focus{outline:none}#lexical-editor-root[data-v-9ca3d00d] p{margin:0 0 .75rem}#lexical-editor-root[data-v-9ca3d00d] p:last-child{margin-bottom:0}#lexical-editor-root[data-v-9ca3d00d] h1,#lexical-editor-root[data-v-9ca3d00d] h2,#lexical-editor-root[data-v-9ca3d00d] h3,#lexical-editor-root[data-v-9ca3d00d] h4{margin:1rem 0 .5rem;font-weight:600}#lexical-editor-root[data-v-9ca3d00d] h1:first-child,#lexical-editor-root[data-v-9ca3d00d] h2:first-child,#lexical-editor-root[data-v-9ca3d00d] h3:first-child{margin-top:0}#lexical-editor-root[data-v-9ca3d00d] ul,#lexical-editor-root[data-v-9ca3d00d] ol{margin:.5rem 0;padding-left:1.5rem}#lexical-editor-root[data-v-9ca3d00d] li{margin:.25rem 0}#lexical-editor-root[data-v-9ca3d00d] blockquote{margin:.75rem 0;padding:.5rem 1rem;border-left:3px solid var(--pico-muted-border-color, #e4e4e7);color:var(--pico-muted-color, #71717a);font-style:italic}#lexical-editor-root[data-v-9ca3d00d] code{padding:.15rem .35rem;background-color:var(--code-background-color, #f4f4f5);border:1px solid var(--pico-muted-border-color, #e4e4e7);border-radius:3px;font-family:var(--pico-font-family-monospace, monospace);font-size:.9em}#lexical-editor-root[data-v-9ca3d00d] pre{margin:.75rem 0;padding:1rem;background-color:var(--code-background-color);border-radius:var(--border-radius);overflow-x:auto;position:relative}#lexical-editor-root[data-v-9ca3d00d] pre code{padding:0;background:none}#lexical-editor-root[data-v-9ca3d00d] .lexical-code{position:relative;display:block;margin:.75rem -1.5rem;padding:1rem 1.5rem;min-width:calc(100% + 3rem);background-color:var(--code-background-color, #f4f4f5);border-top:1px solid var(--pico-muted-border-color, #e4e4e7);border-bottom:1px solid var(--pico-muted-border-color, #e4e4e7);border-radius:0;font-family:var(--pico-font-family-monospace, monospace);font-size:.9em;line-height:1.5;overflow-x:auto;white-space:pre;tab-size:2;box-sizing:border-box}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenComment{color:#6a737d}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenPunctuation{color:#24292e}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenProperty{color:#005cc5}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenSelector{color:#032f62}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenOperator{color:#005cc5}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenAttr{color:#d73a49}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenVariable{color:#e36209}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenFunction{color:#6f42c1}#lexical-editor-root[data-v-9ca3d00d] a{color:var(--primary);text-decoration:underline}#lexical-editor-root[data-v-9ca3d00d] .lexical-link{color:var(--pico-primary, #1e88e5);text-decoration:underline;cursor:pointer}#lexical-editor-root[data-v-9ca3d00d] .lexical-link:hover{text-decoration:none}#lexical-editor-root[data-v-9ca3d00d] strong,#lexical-editor-root[data-v-9ca3d00d] .lexical-bold{font-weight:700}#lexical-editor-root[data-v-9ca3d00d] em,#lexical-editor-root[data-v-9ca3d00d] .lexical-italic{font-style:italic}#lexical-editor-root[data-v-9ca3d00d] u,#lexical-editor-root[data-v-9ca3d00d] .lexical-underline{text-decoration:underline}#lexical-editor-root[data-v-9ca3d00d] s,#lexical-editor-root[data-v-9ca3d00d] .lexical-strikethrough{text-decoration:line-through}@media(prefers-color-scheme:dark){.markdown-editor-panel[data-v-9ca3d00d]{background-color:var(--card-background-color, #1e1e1e);box-shadow:0 8px 32px #00000080,0 2px 8px #0000004d}.markdown-editor-backdrop[data-v-9ca3d00d]{background-color:#000000b3}.lexical-toolbar[data-v-9ca3d00d]{background-color:var(--card-background-color, #1e1e1e);box-shadow:0 2px 4px #0000004d}.toolbar-btn[data-v-9ca3d00d]{color:var(--color, #c9d1d9)}.toolbar-btn[data-v-9ca3d00d]:hover{background-color:#ffffff1a;border-color:#ffffff1a}.toolbar-btn[data-v-9ca3d00d]:active{background-color:var(--primary);border-color:var(--primary)}.toolbar-divider[data-v-9ca3d00d]{background-color:#ffffff26}.toolbar-select[data-v-9ca3d00d]{background-color:transparent;border-color:#fff3;color:var(--color, #c9d1d9)}.toolbar-select[data-v-9ca3d00d]:hover,.toolbar-select[data-v-9ca3d00d]:focus{border-color:var(--primary, #58a6ff)}#lexical-editor-root[data-v-9ca3d00d]{color:var(--color, #c9d1d9);background-color:var(--card-background-color, #1e1e1e)}#lexical-editor-root[data-v-9ca3d00d] blockquote{border-left-color:#fff3;color:#8b949e}#lexical-editor-root[data-v-9ca3d00d] code{background-color:#6e768166;border-color:#ffffff1a;color:#c9d1d9}#lexical-editor-root[data-v-9ca3d00d] .lexical-code{background-color:#0d1117;border-color:#ffffff1a;color:#c9d1d9}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenComment{color:#8b949e}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenPunctuation{color:#c9d1d9}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenProperty{color:#79c0ff}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenSelector{color:#a5d6ff}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenOperator{color:#79c0ff}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenAttr{color:#ff7b72}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenVariable{color:#ffa657}#lexical-editor-root[data-v-9ca3d00d] .lexical-code .tokenFunction{color:#d2a8ff}#lexical-editor-root[data-v-9ca3d00d] .lexical-link,#lexical-editor-root[data-v-9ca3d00d] a{color:#58a6ff}}.editor-form[data-v-998cb080]{max-width:100%}.annotations-grid[data-v-998cb080]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.annotations-grid .field-full-width[data-v-998cb080]{grid-column:1 / -1}.form-actions[data-v-998cb080]{display:flex;gap:.75rem;margin-top:1rem}.form-actions button[data-v-998cb080]{width:auto;padding:.5rem 1.25rem;margin:0}.btn-back[data-v-998cb080]{display:inline-flex;align-items:center;gap:.25rem;text-decoration:none}.relations-editor .relation-item[data-v-998cb080]{display:flex;align-items:center;gap:.5rem;padding:.25rem 0}.relations-editor .relation-text[data-v-998cb080]{flex:1}.relations-editor .btn-remove[data-v-998cb080]{background:none;border:none;cursor:pointer;padding:.25rem;color:var(--pico-del-color, #c62828);margin:0;width:auto}.relations-editor .add-relation-row[data-v-998cb080]{display:flex;gap:.5rem;margin-top:.5rem;align-items:flex-start}.relations-editor .add-relation-row select[data-v-998cb080]{flex:1;margin-bottom:0}.relations-editor .btn-add[data-v-998cb080]{white-space:nowrap;margin-bottom:0}.no-relations[data-v-998cb080]{color:var(--pico-muted-color);font-style:italic}.field-group[data-v-998cb080]{margin-bottom:.5rem}.field-group .label-row[data-v-998cb080]{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.field-group .required[data-v-998cb080]{color:var(--pico-del-color, #c62828)}.field-group .field-description[data-v-998cb080]{display:block;color:var(--pico-muted-color);margin-top:.125rem}.field-group .field-error[data-v-998cb080]{color:var(--pico-del-color, #c62828);font-size:.875rem;margin-top:.125rem}.field-group .btn-edit-markdown[data-v-998cb080]{background:none;border:1px solid var(--pico-primary);color:var(--pico-primary);padding:.125rem .5rem;cursor:pointer;font-size:.75rem;border-radius:4px;margin:0;width:auto}.field-group .future-hint[data-v-998cb080]{display:block;color:var(--pico-muted-color);margin-top:.125rem}.field-group textarea[data-v-998cb080]{min-height:8rem;font-family:inherit}.field-group .code-field textarea[data-v-998cb080]{font-family:monospace}.yaml-output-container .yaml-success[data-v-998cb080]{color:var(--pico-ins-color, #2e7d32)}.yaml-output-container pre[data-v-998cb080]{max-height:60vh;overflow:auto}.yaml-output-container .yaml-actions[data-v-998cb080]{display:flex;gap:.5rem;margin-top:.5rem}.yaml-output-container .yaml-file-info[data-v-998cb080],.yaml-output-container .yaml-instructions[data-v-998cb080]{color:var(--pico-muted-color)}.yaml-output-container .copied[data-v-998cb080],.yaml-output-container .saved[data-v-998cb080]{opacity:.8}.conflict-error[data-v-998cb080]{background:var(--pico-del-color, #c62828);color:#fff;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.editor-container[data-v-998cb080]{width:100%}.editor-header[data-v-998cb080]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--muted-border-color)}.editor-header h2[data-v-998cb080]{display:flex;align-items:center;gap:.75rem;margin:0}.header-actions[data-v-998cb080]{display:flex;align-items:center;gap:.5rem}.btn-header[data-v-998cb080]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.9rem;color:var(--muted-color);background:transparent;border:1px solid transparent;border-radius:var(--border-radius);text-decoration:none;cursor:pointer;transition:all .15s ease}.btn-header[data-v-998cb080]:hover{color:var(--primary);border-color:var(--primary)}.yaml-output>header[data-v-998cb080]{display:flex;align-items:center;justify-content:space-between}.yaml-output>header h3[data-v-998cb080]{display:flex;align-items:center;gap:.5rem;margin:0}@media(max-width:768px){.editor-header[data-v-998cb080]{flex-direction:column;align-items:flex-start;gap:1rem}.annotations-grid[data-v-998cb080]{grid-template-columns:1fr}}