@keadex/mina-live 2.10.1 → 2.10.2

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.
package/index.js CHANGED
@@ -1 +1 @@
1
- (()=>{"use strict";var e={15:e=>{e.exports=require("react")},290:(e,t,n)=>{n.r(t),n.d(t,{MinaLive:()=>ks,default:()=>Ns});const a=require("react-router-dom");function o(e,t,n){const o=(e,t)=>null!==(0,a.matchPath)(t,e);for(const a of Object.keys(t))if((null!=n?n:o)(e,a))return t[a]}var r=n(15),i=n.n(r);let s=function(e){return e[e.OpenDiagram=0]="OpenDiagram",e[e.OpenSearch=1]="OpenSearch",e[e.GitHubTokenChanged=2]="GitHubTokenChanged",e}({});const l=(0,r.createContext)(null);const _=require("pluralize");var c=n.n(_);c().addPluralRule(/Person/,"Persons");const d=require("@fortawesome/free-solid-svg-icons"),u=require("@fortawesome/react-fontawesome");var g=n(732);const m="hide.te.dropdown",b="show.te.dropdown",p=i().memo((e=>{var t;const n=(0,r.useRef)(null),[a,o]=(0,r.useState)(!1);function i(e){let t;return t=e.isSepator?(0,g.jsx)("li",{className:"relative",children:(0,g.jsx)("span",{className:"bg-third my-1 block h-px w-full"})},e.id):(0,g.jsxs)("li",{className:"relative",children:[(0,g.jsxs)("button",{disabled:void 0!==e.disabled&&e.disabled,id:e.id,className:"\n hover:bg-link\n flex\n w-full\n items-center\n whitespace-nowrap\n px-4\n py-1\n text-left\n text-sm\n hover:text-white\n ","data-te-dropdown-item-ref":!0,onClick:t=>{e.onClick&&e.onClick(t)},children:[e.subMenuItems&&e.subMenuItems.length>0&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("span",{className:"mr-16 basis-11/12 pr-1",children:e.label}),(0,g.jsx)("span",{className:"basis-1/12 text-right",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faAngleRight})})]}),(!e.subMenuItems||0===e.subMenuItems.length)&&e.label]}),s(e.isHeaderMenuItem,e.id,e.subMenuItems)]},e.id),t}function s(e,t,n){const a=[];if(n&&n.length>0){for(const e of n)a.push(i(e));return(0,g.jsx)("ul",{className:`\n bg-secondary\n text-accent-primary\n absolute\n z-50\n m-0\n w-auto\n min-w-max\n list-none\n rounded-md\n border-none\n bg-clip-padding\n py-2\n shadow-[0_1px_2px_rgba(0,0,0,0.6)]\n [&[data-te-dropdown-show]]:block\n ${e?" dropdown-menu float-left hidden origin-top-left":" right-px top-0"}\n `,id:`menu-${t}`,"aria-labelledby":t,"data-te-dropdown-menu-ref":!0,children:a})}return(0,g.jsx)("div",{"data-te-dropdown-menu-ref":!0})}const l=t=>{e.increaseOpenedMenu&&e.setLastOpenedMenu&&e.decreaseOpenedMenu&&(t.type===b?(o(!0),e.increaseOpenedMenu(),e.setLastOpenedMenu(e.id)):(o(!1),e.decreaseOpenedMenu()))};return(0,r.useEffect)((()=>{const t=n.current;return null==t||t.addEventListener(m,l),null==t||t.addEventListener(b,l),(e.alwaysOpen&&!a||e.lastOpenedMenu!==e.id&&a)&&(null==t||t.dispatchEvent(new MouseEvent("click"))),()=>{null==t||t.removeEventListener(m,l),null==t||t.removeEventListener(b,l)}})),(0,g.jsxs)("div",{className:`relative ${null!=(t=e.className)?t:""}`,"data-te-dropdown-ref":!0,children:[(0,g.jsx)("button",{className:`\n ${a?"":" bg-dark-primary text-accent-primary"} \n hover:bg-primary\n flex\n items-center\n whitespace-nowrap\n rounded-md\n px-2\n py-0.5\n text-sm hover:text-white\n hover:shadow-[0_1px_2px_rgba(0,0,0,0.6)]\n focus:outline-none\n focus:ring-0\n ${a?" bg-primary show text-white":""}\n ${e.hidden?" h-0 opacity-0":""}\n ${e.buttonClassName?` ${e.buttonClassName}`:""}\n `,type:"button",id:e.id,"aria-expanded":"false",ref:n,"data-te-dropdown-toggle-ref":!0,"data-te-dropdown-animation":"off",onMouseEnter:t=>{e.atLeastOneOpenedMenu&&e.atLeastOneOpenedMenu()&&!a&&t.target.dispatchEvent(new MouseEvent("click"))},children:e.label}),s(e.isHeaderMenuItem,e.id,e.subMenuItems)]},e.id)})),h=i().memo((e=>{var t;const[n,a]=(0,r.useState)(0),[o,i]=(0,r.useState)("");function s(){a((e=>e+1))}function l(){a((e=>e-1))}function _(){return n>0}return(0,g.jsx)("div",{className:`dropdown-menu group flex ${_()?"open":""} ${null!=(t=e.className)?t:""}`,children:function(){const t=[];if(e.menuItemsProps&&e.menuItemsProps.length>0)for(const n of e.menuItemsProps)t.push((0,r.createElement)(p,Object.assign({},n,{key:n.id,increaseOpenedMenu:s,decreaseOpenedMenu:l,atLeastOneOpenedMenu:_,lastOpenedMenu:o,setLastOpenedMenu:i})));return t}()})})),f=h,w=()=>{const{anchorPoint:e,show:t,contextMenuItems:n}=(()=>{const[e,t]=(0,r.useState)({x:0,y:0}),[n,a]=(0,r.useState)(!1),[o,i]=(0,r.useState)([]),s=(0,r.useCallback)((e=>{if(e.preventDefault(),(n=e)instanceof CustomEvent&&n instanceof CustomEvent&&Object.keys(n.detail).includes("menuItems")){const n=e.detail.pageX,o=e.detail.pageY;i(e.detail.menuItems),t({x:n,y:o}),a(!0)}var n}),[a,t]),l=(0,r.useCallback)((()=>n?a(!1):null),[n]);return(0,r.useEffect)((()=>(document.addEventListener("click",l),document.addEventListener("contextmenu",s),()=>{document.removeEventListener("click",l),document.removeEventListener("contextmenu",s)}))),{anchorPoint:e,show:n,contextMenuItems:o}})(),a=(0,r.useRef)(),[o,i]=(0,r.useState)((0,g.jsx)(g.Fragment,{}));return a.current!==t&&(a.current=t),(0,r.useEffect)((()=>{void 0!==a.current&&(a.current?i((0,g.jsx)("div",{hidden:!t,className:"context-menu absolute",style:{top:e.y,left:e.x},children:(0,g.jsx)(f,{menuItemsProps:n})})):i((0,g.jsx)(g.Fragment,{})))}),[a.current]),o};require("js-cookie"),require("react-ga4");const y=require("fabric"),v="idle",x="panning";class j extends y.fabric.Canvas{constructor(e,t){super(e,t),this.gridEnabled=void 0,this.gridBgColor=void 0,S(this),E(this)}initialize(e,t){return this.gridEnabled=null==t?void 0:t.gridEnabled,S(this),E(this),!0===(null==t?void 0:t.readOnly)&&this.setReadOnly(),!0===(null==t?void 0:t.gridEnabled)&&this.enableGrid(),!0===(null==t?void 0:t.enableSnapToGrid)&&function(e,t){const n=null!=t?t:5;e.on("object:moving",(e=>{var t,a,o;null==(t=e.target)||t.set({left:Math.round((null!=(a=e.target.left)?a:0)/n)*n,top:Math.round((null!=(o=e.target.top)?o:0)/n)*n})}))}(this,t.gridSize),super.initialize(e,t)}isReadOnly(){return y.fabric.Object.prototype.lockMovementX&&y.fabric.Object.prototype.lockMovementY&&y.fabric.Object.prototype.lockRotation&&y.fabric.Object.prototype.lockScalingFlip&&y.fabric.Object.prototype.lockScalingX&&y.fabric.Object.prototype.lockScalingY&&y.fabric.Object.prototype.lockSkewingX&&y.fabric.Object.prototype.lockSkewingY}setReadOnly(){y.fabric.Object.prototype.lockMovementX=!0,y.fabric.Object.prototype.lockMovementY=!0,y.fabric.Object.prototype.lockRotation=!0,y.fabric.Object.prototype.lockScalingFlip=!0,y.fabric.Object.prototype.lockScalingX=!0,y.fabric.Object.prototype.lockScalingY=!0,y.fabric.Object.prototype.lockSkewingX=!0,y.fabric.Object.prototype.lockSkewingY=!0}setReadAndWrite(){y.fabric.Object.prototype.lockMovementX=!1,y.fabric.Object.prototype.lockMovementY=!1,y.fabric.Object.prototype.lockRotation=!1,y.fabric.Object.prototype.lockScalingFlip=!1,y.fabric.Object.prototype.lockScalingX=!1,y.fabric.Object.prototype.lockScalingY=!1,y.fabric.Object.prototype.lockSkewingX=!1,y.fabric.Object.prototype.lockSkewingY=!1}zoomIn(){this.setZoom(1.1*this.getZoom())}zoomOut(){this.setZoom(this.getZoom()/1.1)}resetZoom(){this.setZoom(1)}panLeft(){this.relativePan(new y.fabric.Point(5,0))}panRight(){this.relativePan(new y.fabric.Point(-5,0))}panUp(){this.relativePan(new y.fabric.Point(0,5))}panDown(){this.relativePan(new y.fabric.Point(0,-5))}resetPan(){this.absolutePan(new y.fabric.Point(0,0))}isGridEnabled(){var e;return null!=(e=this.gridEnabled)&&e}enableGrid(){if(!this.gridEnabled){this.gridEnabled=!0,this.gridBgColor=this.backgroundColor;const e=`\n<svg xmlns="http://www.w3.org/2000/svg" width="160" height="160"><rect width="160" height="160" fill="${this.gridBgColor}" /><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><rect x="0.38" y="0.38" width="160" height="160" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.75px"/><line x1="0.38" y1="140.38" x2="160.38" y2="140.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="120.38" x2="160.38" y2="120.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="100.38" x2="160.38" y2="100.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="80.38" x2="160.38" y2="80.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.5px"/><line x1="0.38" y1="60.38" x2="160.38" y2="60.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="40.38" x2="160.38" y2="40.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="20.38" x2="160.38" y2="20.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="140.38" y1="0.38" x2="140.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="120.38" y1="0.38" x2="120.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="100.38" y1="0.38" x2="100.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="80.38" y1="0.38" x2="80.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.5px"/><line x1="60.38" y1="0.38" x2="60.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="40.38" y1="0.38" x2="40.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="20.38" y1="0.38" x2="20.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/></g></g></svg>\n`,t=new Blob([e],{type:"image/svg+xml"}),n=URL.createObjectURL(t);y.fabric.Image.fromURL(n,(e=>{var t,n;e.scaleToWidth(null!=(t=this.width)?t:0),e.scaleToHeight(null!=(n=this.height)?n:0);const a=new y.fabric.Pattern({source:e.getElement(),repeat:"repeat"});this.setBackgroundColor(a,this.renderAll.bind(this))}))}}disableGrid(){this.gridEnabled&&(this.gridEnabled=!1,this.gridBgColor&&(this.setBackgroundColor(this.gridBgColor,this.renderAll.bind(this)),this.gridBgColor=void 0))}}function O(e){return 3===e.button}function S(e){e.on("mouse:wheel",(function(t){const n=t.e.deltaY;let a=e.getZoom();a*=.999**n,a>20&&(a=20),a<.01&&(a=.01),e.zoomToPoint({x:t.e.offsetX,y:t.e.offsetY},a),t.e.preventDefault(),t.e.stopPropagation()}))}function E(e){let t,n,a=v;e.discardActiveObject(),e.on("mouse:up",(function(t){O(t)&&(a=v,e.defaultCursor="default")})),e.on("mouse:down",(o=>{O(o)&&(e.defaultCursor="move",a=x,t=o.e.clientX,n=o.e.clientY)})),e.on("mouse:move",(o=>{if(a===x&&o&&o.e){let a=0,r=0;t&&(a=o.e.clientX-t),n&&(r=o.e.clientY-n),t=o.e.clientX,n=o.e.clientY;const i=new y.fabric.Point(a,r);e.relativePan(i),e.fire("moved")}}))}function C(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}const k=(e={})=>Object.keys(e).reduce(((t,n)=>(n.startsWith("data-")&&(t[n]=e[n]),t)),{}),N=require("fast-deep-equal/es6/react");var T=n.n(N);const R=require("lodash.clonedeep");var L=n.n(R);const M=(e,t)=>T()(e,t);function $(e){return e?e.replace(/\\n/g,"\n").replace(/\\t/g," ").replace(/\\r/g,"\n"):void 0}function I(e,t=96){return Number.parseFloat((e/t).toFixed(2))}const D="temp";function A(e){return"function"==typeof(null==e?void 0:e.showDirectoryPicker)}async function P(e,t){let n=e;for(const e of t)n=await n.getDirectoryHandle(e,{create:!0});return n}const F=require("jszip");var B=n.n(F);const z=["icon","classNameIcon","classNameContent"],U=i().memo((e=>{const{icon:t,classNameIcon:n,classNameContent:a}=e,o=C(e,z),r=k(e);return(0,g.jsxs)("button",Object.assign({},o,r,{className:`${e.className} text-accent-secondary hover:text-accent-primary [&.active]:text-accent-primary disabled:hover:text-accent-secondary disabled:opacity-50`,children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:null!=t?t:d.faXmark,className:null!=n?n:""}),(0,g.jsx)("div",{className:a,children:e.children})]}))})),H=U,W=require("@tanstack/react-table"),K=e=>{const{table:t,label:n,disableExpandControls:a,className:o}=e;return(0,g.jsxs)("div",{className:`${null!=o?o:""} p-2`,children:[(0,g.jsx)("button",{hidden:!0===a,onClick:t.getToggleAllRowsExpandedHandler(),children:t.getIsAllRowsExpanded()?(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronDown}):(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronRight})})," ",n]})},X=e=>{const{row:t,getValue:n,disableExpandControls:a,className:o}=e,r=Object.assign({},0!==t.depth||t.getCanExpand()?{paddingLeft:`${t.depth}rem`}:{});return(0,g.jsx)("div",{className:"p-2 "+(t.getCanExpand()?"pt-5":`${null!=o?o:""}`),style:r,children:t.getCanExpand()?(0,g.jsxs)("div",{children:[(0,g.jsx)("button",{hidden:!0===a,className:"mr-2",onClick:t.getToggleExpandedHandler(),style:{cursor:"pointer"},children:t.getIsExpanded()?(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronDown}):(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronRight})}),(0,g.jsx)("span",{className:"text-accent-primary text-lg pointer-events-none",children:n()})]}):n()})},G=require("react-i18next"),Y=(0,r.forwardRef)(((e,t)=>{const{tableOptions:n,columns:a,globalFilter:o,hideHeader:s,disableExpandControls:l,defaultExpanded:_,headerClassName:c,cellClassName:u,hidePaginationControls:m}=e,{t:b}=(0,G.useTranslation)();let{expandable:p}=e;void 0===p&&(p=!0);const[h,f]=i().useState(void 0!==_?_:{}),w=(0,W.useReactTable)(Object.assign({state:{expanded:h,globalFilter:o},onExpandedChange:f,getSubRows:e=>e.children,getPaginationRowModel:(0,W.getPaginationRowModel)(),getFilteredRowModel:(0,W.getFilteredRowModel)(),getExpandedRowModel:(0,W.getExpandedRowModel)(),debugTable:!0,filterFromLeafRows:!0},n,{columns:(()=>{const e=[];return a.forEach((t=>{const n={};t.accessorKey?n.accessorKey=t.accessorKey:t.id&&(n.id=t.id,n.accessorFn=t.accessorFn),e.push(Object.assign({},n,{size:t.size,enableResizing:t.enableResizing,header:e=>s?"":(0,g.jsx)(K,Object.assign({},e,{className:`${c}`,label:t.label,disableExpandControls:l})),cell:e=>{var n;return(0,g.jsx)(X,Object.assign({},e,{disableExpandControls:l,className:`${null!=u?u:""} ${null!=(n=t.className)?n:""}`}))},footer:e=>e.column.id}))})),e})()}));return(0,r.useImperativeHandle)(t,(()=>w)),(0,g.jsxs)("div",{className:"w-full",children:[(0,g.jsxs)("table",{className:"w-full",children:[(0,g.jsx)("thead",{children:w.getHeaderGroups().map((e=>(0,g.jsx)("tr",{className:"bg-dark-brand1 text-base "+(s?"opacity-0":""),children:e.headers.map((e=>(0,g.jsxs)("th",{className:"relative first:rounded-bl first:rounded-tl last:rounded-br last:rounded-tr",colSpan:e.colSpan,style:{width:150!==e.getSize()?e.getSize():void 0},children:[e.isPlaceholder?null:(0,g.jsx)("div",{children:(0,W.flexRender)(e.column.columnDef.header,e.getContext())}),e.column.getCanResize()&&(0,g.jsx)("div",{onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler(),className:"resizer "+(e.column.getIsResizing()?"isResizing":"")})]},e.id)))},e.id)))}),(0,g.jsx)("tbody",{children:w.getRowModel().rows.map((t=>(0,g.jsx)("tr",{hidden:p&&0===t.depth&&!t.getCanExpand(),className:t.getCanExpand()?"":"hover:bg-secondary container-link",children:t.getVisibleCells().map((n=>(0,g.jsx)("td",{onClick:a=>{!e.onRowClick||e.suppressRowClickColIDs&&e.suppressRowClickColIDs.includes(n.column.id)||e.onRowClick(a,t.original)},className:"first:rounded-bl first:rounded-tl last:rounded-br last:rounded-tr",children:(0,W.flexRender)(n.column.columnDef.cell,n.getContext())},n.id)))},t.id)))})]}),(0,g.jsxs)("div",{className:"mt-5 flex items-center gap-2 "+(void 0!==m&&m?"hidden":""),children:[(0,g.jsx)(H,{className:"p-1",icon:d.faAnglesLeft,onClick:()=>w.setPageIndex(0),disabled:!w.getCanPreviousPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAngleLeft,onClick:()=>w.previousPage(),disabled:!w.getCanPreviousPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAngleRight,onClick:()=>w.nextPage(),disabled:!w.getCanNextPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAnglesRight,onClick:()=>w.setPageIndex(w.getPageCount()-1),disabled:!w.getCanNextPage()}),(0,g.jsx)("span",{className:"flex items-center gap-1",children:(0,g.jsx)("div",{children:b("table.current_page",{currentPage:w.getState().pagination.pageIndex+1,totalPages:w.getPageCount()})})}),(0,g.jsxs)("span",{className:"flex items-center gap-1",children:["| ",b("table.go_to_page"),":",(0,g.jsx)("input",{type:"number",defaultValue:w.getState().pagination.pageIndex+1,min:1,max:w.getPageCount(),onChange:e=>{const t=e.target.value?Number(e.target.value)-1:0;t>=0&&t<w.getPageCount()&&w.setPageIndex(t)},className:"w-16 rounded border p-1"})]})]})]})})),Z=i().memo((e=>{const{menuOptions:t}=e;return(0,g.jsx)("div",{className:"mr-3 text-right",children:(0,g.jsx)(h,{menuItemsProps:t})})})),q=i().memo((e=>{const{className:t}=e;return(0,g.jsx)("div",{className:`inline-block h-8 w-8 animate-spin rounded-full border-4 border-solid border-current border-r-transparent align-[-0.125em] motion-reduce:animate-[spin_1.5s_linear_infinite] ${t}`,role:"status",children:(0,g.jsx)("span",{className:"!absolute !-m-px !h-px !w-px !overflow-hidden !whitespace-nowrap !border-0 !p-0 ![clip:rect(0,0,0,0)]",children:"Loading..."})})})),V=q,Q=["fixedWidth","loading","onIconClick","icon"],J=i().memo((e=>{const{fixedWidth:t,loading:n,onIconClick:a,icon:o}=e,i=C(e,Q),[s,l]=(0,r.useState)();return(0,g.jsx)("div",{className:"input-button__box flex items-center",children:(0,g.jsxs)("div",{className:"input-button__container flex items-center "+(void 0!==t&&t||void 0!==s&&""!==s?"active":""),children:[(void 0===n||!n)&&(0,g.jsx)(u.FontAwesomeIcon,{icon:null!=o?o:d.faSearch,className:"icon",onClick:function(e){a&&a()}}),void 0!==n&&n&&(0,g.jsx)(V,{className:"icon !h-4 !w-4"}),(0,g.jsx)("input",Object.assign({},i,{type:"search",id:"input-button",onChange:e=>{l(e.currentTarget.value),i.onChange&&i.onChange(e)}}))]})})})),ee=["children","isLoading","disabled"],te=i().memo((e=>{const t=k(e),{children:n,isLoading:a,disabled:o}=e,r=C(e,ee);return(0,g.jsxs)("button",Object.assign({},r,t,{disabled:o||a,type:"button","data-te-toggle":"button",className:`button--primary inline-block min-w-[75px] rounded px-5 py-2 text-xs font-medium uppercase leading-tight shadow-md transition duration-75 ease-in-out hover:shadow-lg focus:shadow-lg focus:outline-none focus:ring-0 active:shadow-lg ${e.className}`,children:[a&&(0,g.jsx)(V,{className:"icon !h-4 !w-4"}),!a&&n]}))})),ne="modalRoot",ae=i().memo((()=>(0,g.jsx)("div",{id:ne}))),oe=require("tw-elements"),re=["key"],ie="hidden.te.modal";function se(e){const t=[];return"boolean"!=typeof e&&e&&e.forEach(((e,n,a)=>{const o=k(e),{key:r}=e,i=C(e,re);t.push((0,g.jsx)(te,Object.assign({},i,o,{className:`${0!==n&&a.length>1?"ml-3":""} ${e.className}`}),r))})),t}const le=(0,r.forwardRef)(((e,t)=>{var n;const{id:a,onHiddenModal:o}=e,i=null!=(n=e.size)?n:"md",s=(0,r.useRef)();return(0,r.useEffect)((()=>{function e(){o&&o()}const t=document.getElementById(a);return!s.current&&t&&(s.current=new oe.Modal(t)),t&&t.addEventListener(ie,e),()=>{t&&t.removeEventListener(ie,e)}}),[a,o]),(0,r.useImperativeHandle)(t,(()=>({showModal:()=>{s.current.show()},hideModal:()=>{s.current.hide(),s.current=void 0}}))),(0,g.jsx)("div",{"data-te-modal-init":!0,className:"fixed left-0 top-8 bottom-0 z-[1055] hidden h-auto w-full overflow-y-auto overflow-x-hidden outline-none",id:a,tabIndex:-1,"aria-labelledby":`${a}Label`,children:(0,g.jsx)("div",{"data-te-modal-dialog-ref":!0,className:"pointer-events-none relative flex min-h-[calc(100%-1rem)] w-auto translate-y-[-50px] items-center justify-center opacity-0 transition-all duration-300 ease-in-out min-[576px]:mx-5 min-[576px]:my-7 min-[576px]:min-h-[calc(100%-3.5rem)]",children:(0,g.jsxs)("div",{className:`pointer-events-auto relative flex ${(()=>{switch(i){case"sm":return"w-[25rem]";case"md":return"w-[40rem]";case"lg":return"w-[70rem]";case"full":return"w-full"}})()} ${"full"===e.size?"mx-5":""} bg-primary flex-col rounded-md border-none bg-clip-padding text-current shadow-lg outline-none`,children:[(0,g.jsxs)("div",{className:"border-secondary flex flex-shrink-0 items-center justify-between rounded-t-md border-b-2 border-opacity-50 p-4",children:[(0,g.jsx)("h5",{className:"text-accent-primary text-xl font-medium leading-normal pointer-events-none",id:`${a}Label`,children:e.title}),(0,g.jsx)("button",{type:"button",className:"box-content rounded-none border-none hover:no-underline hover:opacity-75 focus:opacity-100 focus:shadow-none focus:outline-none","data-te-modal-dismiss":!0,"aria-label":"Close",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faXmark})})]}),"boolean"!=typeof e.buttons&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:"modal__body",children:e.body}),(0,g.jsx)("div",{className:"modal__footer",children:se(e.buttons)})]}),"boolean"==typeof e.buttons&&e.body]})})})})),_e=require("react-dom");function ce(){const[e,t]=(0,r.useState)(),[n,a]=(0,r.useState)(!0),o=(0,r.useRef)(null);return(0,r.useEffect)((()=>{o.current&&(n?o.current.showModal():o.current.hideModal())}),[e,n]),{modal:e,showModal:function(e){const n=document.getElementById(ne);n&&(t((0,_e.createPortal)((0,g.jsx)(le,Object.assign({},e,{ref:o,onHiddenModal:()=>{t(void 0)}})),n)),a(!0))},hideModal:function(){a(!1)}}}const de=["label","info","allowedChars","classNameRoot","key"],ue=i().memo((e=>{const[t,n]=(0,r.useState)(e.value),{info:a,classNameRoot:o,key:i}=e,s=C(e,de),l=k(e);return(0,r.useEffect)((()=>{n(e.value)}),[e.value]),(0,g.jsxs)("div",{className:`relative mb-3 ${null!=o?o:""}`,children:[(0,g.jsx)("input",Object.assign({maxLength:200},s,l,{onChange:function(a){!e.allowedChars||""===a.currentTarget.value||e.allowedChars.test(a.currentTarget.value)?(n(a.currentTarget.value),e.onChange&&e.onChange(a)):t&&(a.currentTarget.value=t.toString())},"data-te-input-state-active":!0,className:`peer transition-all duration-200 ease-linear placeholder:opacity-0 motion-reduce:transition-none ${e.className}`,placeholder:e.label}),i),(0,g.jsx)("label",{htmlFor:e.id,className:(null!=t&&""!==t?"input__label -translate-y-[1.1rem] scale-[0.9]":"")+" peer-focus:text-link peer-focus:input__label pointer-events-none absolute left-3 top-0 mb-0 max-w-[90%] origin-[0_0] truncate pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] transition-all duration-200 ease-out peer-focus:-translate-y-[1.1rem] peer-focus:scale-[0.9] motion-reduce:transition-none",children:e.label}),a&&(0,g.jsx)("div",{className:"text-sm px-3 mt-1",children:a})]})})),ge=["label","className","key"],me=i().memo((e=>{const{label:t,className:n,key:a}=e,o=C(e,ge),i=k(e);return(0,r.useEffect)((()=>{const t=document.querySelector(`#${e.id}`);oe.Select.getInstance(t)||new oe.Select(document.querySelector(`#${e.id}`),{},{dropdown:"select__dropdown",formCheckInput:"bg-red-400 checked:after:border-red-500",selectInput:"peer select__input",selectOption:"select__option data-[te-select-option-selected]:data-[te-input-state-active]:link",selectLabelSizeDefault:"select__label-size-default",selectLabel:"select__label",selectArrow:"select__arrow top-[0.65rem]"})})),(0,g.jsxs)("div",{className:`relative mb-3 ${n}`,children:[(0,g.jsx)("select",Object.assign({"data-te-select-init":!0},o,i,{children:function(){const t=[];return e.options.forEach((e=>{var n;t.push((0,g.jsx)("option",{value:e.value,children:e.label},null==(n=e.value)?void 0:n.toString()))})),t}()}),a),(0,g.jsx)("label",{"data-te-select-label-ref":!0,children:t})]})})),be=["label","className","onTyping","initialValue","onDefaultOptionSelected","allowedChars","info","key"],pe=i().memo((e=>{var t,n;const{label:a,className:o,onDefaultOptionSelected:i,info:s,key:l}=e,_=C(e,be),c=k(e),[d,u]=(0,r.useState)(null!=(t=null==(n=e.value)?void 0:n.toString())?t:""),{forceUpdate:m}=Ie();function b(){const t=document.querySelectorAll(`.${e.id}[data-te-select-option-ref]`);if(t&&t.length>0)return t[0]}return(0,r.useEffect)((()=>{const t=document.querySelector(`#${e.id}`);oe.Select.getInstance(t)||new oe.Select(document.querySelector(`#${e.id}`),{},{dropdown:"select__dropdown",formCheckInput:"bg-red-400 checked:after:border-red-500",selectInput:"peer select__input",selectOption:`select__option ${e.id} data-[te-select-option-selected]:data-[te-input-state-active]:link`,selectLabelSizeDefault:"select__label-size-default",selectLabel:"select__label",selectArrow:"select__arrow top-[0.65rem]"});const n=document.querySelector(`.${e.id} [data-te-select-input-ref]`);if(n&&(n.removeAttribute("readonly"),n.removeAttribute("role"),n.oninput=()=>{!e.allowedChars||""===n.value||e.allowedChars.test(n.value)?(u(n.value),e.onTyping(n.value)):d&&(n.value=d)},i&&(n.onkeydown=e=>{if("Enter"===e.key){const e=b();e&&e.hasAttribute("data-te-input-state-active")&&i(d)}})),i){const e=b();e&&(e.onclick=()=>i(d))}})),(0,r.useEffect)((()=>{m()}),[d]),(0,g.jsxs)("div",{className:`${e.id} autocomplete relative mb-3 ${o}`,children:[(0,g.jsx)("select",Object.assign({"data-te-select-init":!0},_,c,{value:d,children:function(){const t=[];return e.options.forEach(((e,n)=>{var a;t.push((0,g.jsx)("option",{value:e.value,children:e.label},`${null==(a=e.value)?void 0:a.toString()}_${n}`))})),t}()}),l),(0,g.jsx)("label",{"data-te-select-label-ref":!0,children:a}),s&&(0,g.jsx)("div",{className:"text-sm px-3",children:s})]})})),he=i().memo((e=>{var t;const{className:n}=e;let{orientation:a}=e;a=null!=(t=a)?t:"vertical";let o="h-auto w-px bg-gradient-to-t";return"horizontal"===a&&(o="w-full h-px bg-gradient-to-r"),(0,g.jsx)("div",{className:`${o} self-stretch from-transparent via-neutral-50 to-transparent opacity-20 ${null!=n?n:""}`})})),fe=["classNameRoot","key"],we=i().memo((e=>{const[t,n]=(0,r.useState)(e.value),a=k(e),{classNameRoot:o,key:i}=e,s=C(e,fe);return(0,r.useEffect)((()=>{n(e.value)}),[e.value]),(0,g.jsxs)("div",{className:`relative mb-3 ${null!=o?o:""}`,"data-te-input-wrapper-init":!0,children:[(0,g.jsx)("div",{"data-te-input-notch-ref":!0,"data-te-input-notch-leading-ref":!0,"data-te-input-notch-middle-ref":!0,"data-te-input-notch-trailing-ref":!0}),(0,g.jsx)("textarea",Object.assign({rows:3},s,a,{onChange:t=>{n(t.currentTarget.value),e.onChange&&e.onChange(t)},className:`peer transition-all duration-200 ease-linear placeholder:opacity-0 motion-reduce:transition-none ${e.className}`,placeholder:e.label}),i),(0,g.jsx)("label",{htmlFor:e.id,className:(t&&""!==t?"input__label -translate-y-[1.1rem] scale-[0.9]":"")+" peer-focus:text-link peer-focus:input__label pointer-events-none absolute left-3 top-0 mb-0 max-w-[90%] origin-[0_0] truncate pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] transition-all duration-200 ease-out peer-focus:-translate-y-[1.1rem] peer-focus:scale-[0.9] motion-reduce:transition-none",children:e.label})]})})),ye=require("react-html-parser");var ve=n.n(ye);const xe=e=>{var t;const{id:n,items:a}=e,[o,i]=(0,r.useState)([]),s=(0,r.useRef)();return M(s.current,a)||(s.current=a),(0,r.useEffect)((()=>{const e=[].slice.call(document.querySelectorAll(`#${n} [data-te-collapse-item][data-te-collapse-item]`));e&&e.length>0&&i(e.map((e=>new oe.Collapse(e,{toggle:!1}))));const t=[].slice.call(document.querySelectorAll(`#${n} [data-te-toggle="tooltip"]`)).map((e=>new oe.Tooltip(e,{trigger:"hover"})));return()=>{t.forEach((e=>{e.dispose()}))}}),[s.current]),(0,g.jsx)("div",{id:n,className:`${null!=(t=e.className)?t:""}`,children:function(){let t=[];return a&&(t=a.map(((t,a)=>{let r={};void 0!==e.showButtonTooltip&&e.showButtonTooltip&&(r={"data-te-toggle":"tooltip","data-te-placement":"right",title:t.header});const i=(0,g.jsx)("span",{className:"overflow-hidden text-ellipsis whitespace-pre",children:t.header});return(0,g.jsxs)("div",{className:"bg-secondary",children:[(0,g.jsx)("h2",{className:"mb-0",id:`${n}-heading-${a}`,children:(0,g.jsxs)("button",Object.assign({className:"accordion-button [&:not([data-te-collapse-collapsed])]:text-accent-primary bg-primary [&:not([data-te-collapse-collapsed])]:bg-primary text-accent-primary group relative flex w-full items-center border-0 px-5 py-4 text-left [overflow-anchor:none] hover:z-[2] focus:z-[3] focus:outline-none ",type:"button","data-te-collapse-init":!0,"data-te-collapse-collapsed":!0,"data-te-target":`#${n}-collapse-${a}`,"aria-expanded":"false","aria-controls":`${n}-collapse-${a}`,onClick:()=>{var e;return null==(e=o[a])?void 0:e.toggle()}},r,{children:[void 0===e.buttonIconPosition||"right"===e.buttonIconPosition?i:"",(0,g.jsx)("span",{className:"accordion-icon mx-1 h-5 w-5 rotate-[0deg] group-[[data-te-collapse-collapsed]]:rotate-[-90deg]",children:(0,g.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:"1.5",stroke:"currentColor",className:"h-6 w-6",children:(0,g.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"})})}),void 0!==e.buttonIconPosition&&"left"===e.buttonIconPosition?i:""]}))}),(0,g.jsx)("div",{id:`${n}-collapse-${a}`,className:"!visible hidden","data-te-collapse-item":!0,"aria-labelledby":`${n}-heading-${a}`,"data-te-parent":`#${n}`,children:(0,g.jsx)("div",{className:"accordion-body px-5 py-4 text-left "+(e.onBodyClick?"cursor-pointer":""),onClick:n=>function(t,n){e.onBodyClick&&e.onBodyClick(n.data)}(0,t),children:void 0!==t.parseHtmlBody&&t.parseHtmlBody&&"string"==typeof t.body?ve()(t.body):t.body})})]},`search-result-item-${a}`)}))),t}()})},je=i().memo((({tags:e,className:t})=>(0,g.jsx)("ul",{className:`tags ${null!=t?t:""}`,children:e.map(((e,t)=>(0,g.jsx)("li",{children:e},t)))}))),Oe=require("@yaireo/tagify");var Se=n.n(Oe);const Ee=i().memo((({id:e,tags:t,label:n,className:a,disabled:o,settings:i})=>{const[s,l]=(0,r.useState)();return(0,r.useEffect)((()=>{const t=document.querySelector(`input[id=${e}]`);t&&!s&&l(new(Se())(t,Object.assign({},i)))}),[e]),(0,r.useEffect)((()=>{if(s){const e=s.value.map((e=>e.value));M(e,t)||(s.removeAllTags({withoutChangeEvent:!0}),s.addTags(t))}}),[s,t]),(0,g.jsxs)("div",{className:`relative ${null!=a?a:""}`,children:[n&&(0,g.jsx)("span",{className:"input__label absolute left-3 top-0 mb-0 -translate-y-[1.1rem] scale-[0.9] pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] z-[1]",children:n}),(0,g.jsx)("input",{id:e,type:"text",defaultValue:t.join(","),disabled:o})]})})),Ce=i().memo((({id:e,tabs:t,tabClassName:n,bodyClassName:a,className:o,orientation:i})=>{i||(i="top");const[s,l]=(0,r.useState)(-1);return(0,g.jsxs)("div",{id:`${null!=e?e:""}`,className:`flex ${"top"===i?"flex-col":"flex-row"} ${null!=o?o:""}`,children:[(0,g.jsx)("ul",{className:`list-none ${"top"===i?"flex flex-row flex-wrap":"block"} border-b-0 pl-0`,role:"tablist","data-te-nav-ref":!0,children:t.map(((e,t)=>{const a={};return-1===s&&0===t&&(a["data-te-nav-active"]={}),(0,g.jsx)("li",{role:"presentation",className:"flex-auto text-center",children:(0,g.jsx)("a",Object.assign({href:`#${e.id}`,onClick:()=>l(t),className:`my-2 block border-x-0 ${"top"===i?"border-b-2":"border-l-2"} border-t-0 border-transparent px-7 pb-3.5 pt-4 font-medium leading-tight hover:isolate hover:border-transparent focus:isolate focus:border-transparent data-[te-nav-active]:border-link data-[te-nav-active]:text-white hover:text-white bg-primary hover:bg-link ${null!=n?n:""}`,"data-te-toggle":"pill","data-te-target":`#${e.id}`},a,{role:"tab","aria-controls":`#${e.id}`,"aria-selected":"true",children:e.title}))},e.id)}))}),(0,g.jsx)("div",{className:`p-4 ${null!=a?a:""}`,children:t.map(((e,t)=>{const n={};return-1===s&&0===t&&(n["data-te-tab-active"]={}),(0,g.jsx)("div",Object.assign({className:"hidden opacity-100 transition-opacity duration-150 ease-linear data-[te-tab-active]:block",id:e.id,role:"tabpanel"},n,{"aria-labelledby":e.id,children:e.body}),e.id)}))})]})})),ke=e=>{var t;const{className:n,options:a}=e;return(0,g.jsx)("div",{className:`flex justify-center ${null!=n?n:""}`,id:null!=(t=e.id)?t:"",children:a.map(((t,n)=>(0,g.jsxs)("div",{className:"mb-[0.125rem] me-4 inline-block min-h-[1.5rem] ps-[1.5rem]",children:[(0,g.jsx)("input",{className:"relative float-left -ms-[1.5rem] me-1 mt-0.5 h-5 w-5 appearance-none rounded-full border-2 border-solid border-secondary-500 before:pointer-events-none before:absolute before:h-4 before:w-4 before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-checkbox before:shadow-transparent before:content-[''] after:absolute after:z-[1] after:block after:h-4 after:w-4 after:rounded-full after:content-[''] checked:border-accent-secondary checked:before:opacity-[0.16] checked:after:absolute checked:after:left-1/2 checked:after:top-1/2 checked:after:h-[0.625rem] checked:after:w-[0.625rem] checked:after:rounded-full checked:after:border-accent-secondary checked:after:bg-accent-primary checked:after:content-[''] checked:after:[transform:translate(-50%,-50%)] hover:before:opacity-[0.04] hover:before:shadow-black/60 focus:shadow-none focus:outline-none focus:ring-0 focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-black/60 focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:border-accent-secondary checked:focus:before:scale-100 checked:focus:before:shadow-checkbox checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] rtl:float-right "+(e.disabled?"":"hover:cursor-pointer"),type:"radio",name:`inlineRadioOptions-${e.id}`,id:`option-${e.id}-${n}`,value:JSON.stringify(t.value),onChange:()=>{e.onChange(t.value)},checked:JSON.stringify(t.value)===JSON.stringify(e.value),disabled:e.disabled}),(0,g.jsx)("label",{className:"mt-px inline-block ps-[0.15rem] "+(e.disabled?"":"hover:cursor-pointer"),htmlFor:e.disabled?void 0:`option-${e.id}-${n}`,children:t.label})]},`radioOption${n}`)))})},Ne=require("react-color"),Te=require("react-hotkeys-hook"),Re=require("ts-key-enum"),Le=i().memo((({color:e,className:t,onChange:n})=>{const[a,o]=(0,r.useState)(!1);return(0,Te.useHotkeys)([Re.Key.Escape],(e=>{a&&(e.preventDefault(),o(!1))})),(0,g.jsxs)("div",{className:`color-picker ${null!=t?t:""}`,children:[a&&(0,g.jsx)("div",{className:"absolute top-0 bottom-0 left-0 right-0",onClick:()=>o(!1)}),(0,g.jsx)("div",{className:"py-1 px-1 cursor-pointer bg-white w-fit h-fit rounded-sm",onClick:()=>o(!a),children:(0,g.jsx)("div",{className:"w-7 h-3",style:{backgroundColor:e}})}),a?(0,g.jsx)("div",{className:"absolute z-[2] pr-5 pb-5",children:(0,g.jsx)(Ne.SketchPicker,{disableAlpha:!1,color:null!=e?e:"#000000",onChange:(e,t)=>{n&&n(function(e){var t;const n=e.hex,a=Math.round(255*(null!=(t=e.rgb.a)?t:1)).toString(16).padStart(2,"0");return e.hex=`${n}${a}`,e}(e),t)}})}):null]})})),Me=require("change-case"),$e=e=>{const{id:t,className:n,options:a,disabled:o,values:r,onChange:i}=e;return(0,g.jsx)("div",{className:`flex justify-center ${null!=n?n:""}`,id:t,children:a.map(((e,n)=>(0,g.jsxs)("div",{className:"flex "+(n>0?"ml-5":""),children:[(0,g.jsx)("input",{className:"!p-0 !mr-3 relative float-left me-[6px] mt-[0.15rem] h-[1.125rem] w-[1.125rem] appearance-none rounded-[0.25rem] border-[0.125rem] border-solid border-secondary-500 outline-none before:pointer-events-none before:absolute before:h-[0.875rem] before:w-[0.875rem] before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-checkbox before:shadow-transparent before:content-[''] checked:border-primary checked:bg-primary checked:before:opacity-[0.16] checked:after:absolute checked:after:-mt-px checked:after:ms-[0.25rem] checked:after:block checked:after:h-[0.8125rem] checked:after:w-[0.375rem] checked:after:rotate-45 checked:after:border-[0.125rem] checked:after:border-l-0 checked:after:border-t-0 checked:after:border-solid checked:after:border-white checked:after:bg-transparent checked:after:content-[''] hover:before:opacity-[0.04] hover:before:shadow-black/60 focus:shadow-none focus:transition-[border-color_0.2s] focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-black/60 focus:before:transition-[box-shadow_0.2s,transform_0.2s] focus:after:absolute focus:after:z-[1] focus:after:block focus:after:h-[0.875rem] focus:after:w-[0.875rem] focus:after:rounded-[0.125rem] focus:after:content-[''] checked:focus:before:scale-100 checked:focus:before:shadow-checkbox checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:after:-mt-px checked:focus:after:ms-[0.25rem] checked:focus:after:h-[0.8125rem] checked:focus:after:w-[0.375rem] checked:focus:after:rotate-45 checked:focus:after:rounded-none checked:focus:after:border-[0.125rem] checked:focus:after:border-l-0 checked:focus:after:border-t-0 checked:focus:after:border-solid checked:focus:after:border-white checked:focus:after:bg-transparent "+(o?"":"hover:cursor-pointer"),type:"checkbox",name:`checkboxOption${t}_${n}`,id:e.id,value:r&&JSON.stringify(r[e.id]),onChange:()=>{i(e.id,!!r&&!r[e.id])},checked:r&&r[e.id]===e.value,disabled:o}),(0,g.jsx)("label",{htmlFor:o?void 0:e.id,className:o?"":"hover:cursor-pointer",children:(0,Me.capitalCase)(e.label)})]},`checkboxOption${t}_${n}`)))})};function Ie(){const[e,t]=(0,r.useState)(0);return{forceUpdate:()=>t((e=>e+1)),updatedCounter:e}}function De(e){const{modal:t,showModal:n,hideModal:o}=ce(),r=(0,a.useNavigate)(),i=(0,a.useLocation)(),{t:s}=(0,G.useTranslation)();return{safeExit:function(t,a){e[i.pathname]&&e[i.pathname].protectExit?n({id:"confirmSafeExitModal",title:`${s("common.confirmation")}`,body:`${s("common.question.confirm_not_saved_changed")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:s("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:s("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{o(),r(t,a)}}]}):r(t,a)},modal:t}}const Ae={prefix:"fas",iconName:"search",icon:[1024,1024,[],"","M393.846154 738.461538c0-15.753846-13.784615-29.538462-29.538462-29.538461h-295.384615c-15.753846 0-29.538462 13.784615-29.538462 29.538461v216.615385c0 15.753846 13.784615 29.538462 29.538462 29.538462h295.384615c15.753846 0 29.538462-13.784615 29.538462-29.538462v-216.615385zM159.507692 433.230769H63.015385c-19.692308 0-29.538462 17.723077-17.723077 27.569231l157.538461 163.446154c7.876923 5.907692 19.692308 5.907692 27.569231 0l157.538462-163.446154c11.815385-11.815385 1.969231-27.569231-17.723077-27.569231h-92.553847c0-98.461538 96.492308-196.923077 194.953847-196.923077V118.153846C295.384615 118.153846 159.507692 256 159.507692 433.230769z m663.63077-33.476923c-7.876923-5.907692-19.692308-5.907692-27.569231 0l-157.538462 163.446154c-11.815385 11.815385-1.969231 27.569231 17.723077 27.569231h94.523077c0 118.153846-80.738462 196.923077-198.892308 196.923077v118.153846c177.230769 0 317.046154-137.846154 317.046154-315.076923H964.923077c19.692308 0 29.538462-17.723077 17.723077-27.569231l-159.507692-163.446154zM984.615385 68.923077c0-15.753846-13.784615-29.538462-29.538462-29.538462h-295.384615c-15.753846 0-29.538462 13.784615-29.538462 29.538462v216.615385c0 15.753846 13.784615 29.538462 29.538462 29.538461h295.384615c15.753846 0 29.538462-13.784615 29.538462-29.538461v-216.615385z"]},Pe={prefix:"fas",iconName:"folder-open",icon:[500,490,[],"","M571.7,208.1A31.77,31.77,0,0,0,544,192H144a32,32,0,0,0-27.7,15.9l.1-.1-112,192A32.06,32.06,0,0,0,32,448H432a31.86,31.86,0,0,0,27.6-15.8l112-192A32,32,0,0,0,571.7,208.1ZM380.65,281.93H334.41c-4-25.34-11.82-46.56-21.93-60.12A101.72,101.72,0,0,1,380.65,281.93Zm-56,38.07a246,246,0,0,1-1.31,25.38H249.78A237.85,237.85,0,0,1,248.47,320a248.81,248.81,0,0,1,1.31-25.38H323.3A237.85,237.85,0,0,1,324.61,320ZM275.52,224c4.44-4.2,8.13-5.47,11-5.47s6.58,1.27,11,5.47,9.13,11.07,13.29,20.42c4.6,10.31,8.29,23.08,10.71,37.56h-70a159.87,159.87,0,0,1,10.71-37.56C266.39,235,271,228.23,275.52,224Zm-14.92-2.14c-10.11,13.56-18,34.78-21.93,60.12H192.39A101.78,101.78,0,0,1,260.6,221.81ZM185,320a101.27,101.27,0,0,1,3.21-25.38h48.82a254.24,254.24,0,0,0,0,50.76H188.23A101.27,101.27,0,0,1,185,320Zm7.37,38.07h46.28c4,25.34,11.82,46.56,21.93,60.12A101.78,101.78,0,0,1,192.39,358.07ZM297.56,416c-4.44,4.24-8.12,5.51-11,5.51s-6.58-1.27-11-5.47-9.13-11.07-13.29-20.42v0c-4.6-10.31-8.29-23.08-10.71-37.52h70a159,159,0,0,1-10.71,37.52C306.69,405,302.05,411.73,297.56,416Zm15,2.18c10.11-13.56,17.92-34.78,21.93-60.12h46.24A101.8,101.8,0,0,1,312.52,418.19Zm72.33-72.81H336a254.24,254.24,0,0,0,0-50.76h48.82a101.94,101.94,0,0,1,0,50.76ZM88.7,191.7A64,64,0,0,1,144,159.9H480v-32a64.06,64.06,0,0,0-64-64H298.6a64,64,0,0,1-45.3-18.7L226.8,18.7A64,64,0,0,0,181.5,0H64A64.06,64.06,0,0,0,0,64V343.8l88.7-152Z"]},Fe=require("react-error-boundary"),Be=require("react-toastify"),ze=i().memo((({error:e,resetErrorBoundary:t})=>{const{t:n}=(0,G.useTranslation)();return(0,g.jsxs)("div",{className:"absolute flex h-full w-full flex-col justify-center bg-primary",children:[(0,g.jsxs)("div",{className:"mx-auto flex flex-row",children:[(0,g.jsx)("div",{className:"flex items-center mr-10",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faFaceFrownOpen,className:"text-6xl"})}),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"text-2xl font-bold",children:n("error_fallback.title")}),(0,g.jsx)("div",{className:"text-xl mt-5",children:n("error_fallback.description")})]})]}),(0,g.jsx)(te,{onClick:()=>{location.reload()},className:"w-52 mt-16 mx-auto",children:n("common.restart")})]})})),Ue=i().memo((e=>(0,g.jsx)("button",{type:"button",className:`h-full w-10 p-1 ${e.className}`,id:e.id,onClick:t=>{e.onClick&&e.onClick(t)},children:(0,g.jsx)(u.FontAwesomeIcon,{icon:e.icon})}))),He=i().memo((e=>(0,g.jsxs)("nav",{"data-tauri-drag-region":!0,className:"window-titlebar window__inner-border bg-dark-primary fixed left-0 right-0 top-0 z-10 flex h-8 w-full flex-row items-center border-l-0 border-r-0 border-t-0 relative",children:[e.title&&(0,g.jsx)("div",{className:"absolute w-full text-center pointer-events-none",children:e.title}),(0,g.jsxs)("div",{"data-tauri-drag-region":!0,className:"flex basis-3/4 items-center",children:[(0,g.jsx)("img",{src:e.icon,className:"ml-2 h-5 w-5",alt:"Keadex Mina icon"}),(0,g.jsx)("div",{className:"ml-2 flex",children:(0,g.jsx)(f,{menuItemsProps:e.menuProps.menuItemsProps})})]}),(0,g.jsx)("div",{"data-tauri-drag-region":!0,className:"basis-1/4 text-right",children:function(){const t=[];if(e.rightButtonsProps&&e.rightButtonsProps.length>0)for(const n of e.rightButtonsProps)t.push((0,r.createElement)(Ue,Object.assign({},n,{key:n.id})));return t}()})]}))),We=i().memo((e=>(function(){const e=["/","`",`${Re.Key.F3}`,`${Re.Key.F4}`,`${Re.Key.F5}`,`${Re.Key.F10}`,`${Re.Key.F10}+${Re.Key.Enter}`,`${Re.Key.Alt}+D`,`${Re.Key.Alt}+F`,`${Re.Key.Alt}+${Re.Key.F4}`,`${Re.Key.Alt}+${Re.Key.Shift}+B`,`${Re.Key.Control}+B`,`${Re.Key.Control}+F`,`${Re.Key.Control}+G`,`${Re.Key.Control}+K`,`${Re.Key.Control}+P`,`${Re.Key.Control}+U`,`${Re.Key.Control}+${Re.Key.F5}`,`${Re.Key.Control}+${Re.Key.F6}`,`${Re.Key.Control}+${Re.Key.F10}`,`${Re.Key.Control}+${Re.Key.Shift}+A`,`${Re.Key.Control}+${Re.Key.Shift}+C`,`${Re.Key.Control}+${Re.Key.Shift}+E`,`${Re.Key.Control}+${Re.Key.Shift}+J`,`${Re.Key.Control}+${Re.Key.Shift}+M`,`${Re.Key.Control}+${Re.Key.Shift}+N`,`${Re.Key.Control}+${Re.Key.Shift}+O`,`${Re.Key.Control}+${Re.Key.Shift}+P`,`${Re.Key.Control}+${Re.Key.Shift}+Z`,`${Re.Key.Control}+${Re.Key.Shift}+${Re.Key.Delete}`,`${Re.Key.Control}+${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Meta}+B`,`${Re.Key.Meta}+F`,`${Re.Key.Meta}+G`,`${Re.Key.Meta}+K`,`${Re.Key.Meta}+P`,`${Re.Key.Meta}+U`,`${Re.Key.Meta}+${Re.Key.F5}`,`${Re.Key.Meta}+${Re.Key.F6}`,`${Re.Key.Meta}+${Re.Key.F10}`,`${Re.Key.Meta}+${Re.Key.Shift}+A`,`${Re.Key.Meta}+${Re.Key.Shift}+C`,`${Re.Key.Meta}+${Re.Key.Shift}+E`,`${Re.Key.Meta}+${Re.Key.Shift}+J`,`${Re.Key.Meta}+${Re.Key.Shift}+M`,`${Re.Key.Meta}+${Re.Key.Shift}+N`,`${Re.Key.Meta}+${Re.Key.Shift}+O`,`${Re.Key.Meta}+${Re.Key.Shift}+P`,`${Re.Key.Meta}+${Re.Key.Shift}+Z`,`${Re.Key.Meta}+${Re.Key.Shift}+${Re.Key.Delete}`,`${Re.Key.Meta}+${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Shift}+U`,`${Re.Key.Shift}+${Re.Key.F3}`,`${Re.Key.Shift}+${Re.Key.F4}`,`${Re.Key.Shift}+${Re.Key.F5}`,`${Re.Key.Shift}+${Re.Key.F7}`,`${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Shift}+${Re.Key.Alt}+T`,`${Re.Key.Shift}+${Re.Key.Control}+\\`,`${Re.Key.Shift}+${Re.Key.Control}+D`,`${Re.Key.Shift}+${Re.Key.Meta}+\\`,`${Re.Key.Shift}+${Re.Key.Meta}+D`];(0,Te.useHotkeys)(e,(e=>{e.preventDefault()}))}(),(0,g.jsx)("div",{className:"window__border bg-primary absolute left-0 right-0 top-0 bottom-0 overflow-hidden rounded",children:e.children})))),Ke=require("@tauri-apps/api/event");var Xe=n(971);const Ge={id:"plugin:clipboard-manager",commands:{}};Ge.commands={writeText:`${Ge.id}|write_text`};const Ye={id:"plugin:shell",commands:{}};function Ze(){return{onDragDropEvent:e=>(console.debug('Web-Adapted Tauri WebView Window API "onDragDropEvent"'),Promise.resolve((()=>{}))),isMaximized:()=>(console.debug('Web-Adapted Tauri WebView Window API "isMaximized"'),Promise.resolve(!0)),listen:(e,t)=>(console.debug('Web-Adapted Tauri WebView Window API "listen"'),Promise.resolve((()=>{})))}}Ye.commands={open:`${Ye.id}|open`},window.__TAURI_IPC__=e=>{console.debug(`Web-Adapted Tauri IPC: ${e}`)},window.__TAURI_INTERNALS__={invoke:(e,t,n)=>(console.debug(`Web-Adapted Tauri Internal "invoke": ${e} - ${JSON.stringify(t)} - ${JSON.stringify(n)}`),e.startsWith("plugin:")?async function(e,t){switch(e){case Ge.commands.writeText:{const e=t;e&&navigator.clipboard.writeText(e.text);break}case Ye.commands.open:{const e=t;e&&window.open(e.path,"_blank");break}}return Promise.resolve({})}(e,t):async function(e,t){console.debug("Invoking wasm function:"),console.debug(`\t- Name: ${e}`),console.debug("\t- Args:"),console.debug(t);const n=Xe[e];if(void 0===n){const t=`Wasm function "${e}" not found`;throw console.error(t),new Error(t)}let a=[];t&&(a=Object.values(t));const o=Reflect.apply(n,void 0,a);return Promise.resolve(o)}(e,t)),transformCallback:(e,t)=>(console.debug('Web-Adapted Tauri Internal "transformCallback"'),0)};const qe=require("@tauri-apps/plugin-deep-link"),Ve=require("uuid"),Qe={AI_ENABLED:JSON.parse(!0),WEB_MODE:JSON.parse(!0),APP_VERSION:"2.10.1",GITHUB_CLIENT_ID_MINA:"Ov23li9ibfwKN6wjMwDn"},Je=["SYSTEM_CONTEXT","CONTAINER","COMPONENT","SYSTEM_LANDSCAPE","DYNAMIC","DEPLOYMENT"],et=["Person","SoftwareSystem","Container","Component"],tt=[...et,"Boundary","DeploymentNode","AddElementTag","Relationship"],nt=["Person","Person_Ext"],at=["Component","Component_Ext","ComponentDb","ComponentDb_Ext","ComponentQueue","ComponentQueue_Ext"],ot=["Container","Container_Ext","ContainerDb","ContainerDb_Ext","ContainerQueue","ContainerQueue_Ext"],rt=["System","System_Ext","SystemDb","SystemDb_Ext","SystemQueue","SystemQueue_Ext"],it=["Enterprise_Boundary","System_Boundary","Container_Boundary","Boundary"],st=["Node","Node_R","Node_L","Deployment_Node","Deployment_Node_R","Deployment_Node_L"],lt=["Rel_Neighbor","Rel_Back_Neighbor","Rel_Back","Rel_Down","Rel_D","Rel_Up","Rel_U","Rel_Left","Rel_L","Rel_Right","Rel_R","Rel","BiRel_Neighbor","BiRel_Down","BiRel_D","BiRel_Up","BiRel_U","BiRel_Left","BiRel_L","BiRel_Right","BiRel_R","BiRel"],_t=["AddElementTag"],ct=["TopToBottom","LeftToRight"],dt=["https://","http://"];let ut=function(e){return e.Alias="Alias",e}({});const gt="object:modified",mt="mouseup",bt="modified",pt="selected",ht="deselected",ft="#FFFFFF",wt="#000000",yt=12,vt=10,xt=20,jt=20,Ot=120,St=20,Et=10,Ct={SIZES:{DEFAULT_TOP:xt+St,DEFAULT_LEFT:jt+Ot+50,BORDER_WIDTH:1},FONT:{FAMILY:"Roboto"}},kt={COLORS:{BG_COLOR_SOFTWARE_SYSTEM_PERSON:"#1168BD",BG_COLOR_CONTAINER:"#438DD5",BG_COLOR_COMPONENT:"#85BBF0",BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#686868",BG_COLOR_CONTAINER_EXT:"#999999",BG_COLOR_COMPONENT_EXT:"#CCCCCC",BG_COLOR_BOUNDARY:ft,BG_COLOR_DEPLOYMENT_NODE:ft,BORDER_COLOR_SOFTWARE_SYSTEM_PERSON:"#0F5BA6",BORDER_COLOR_CONTAINER:"#3E84C7",BORDER_COLOR_COMPONENT:"#7BADDE",BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#525252",BORDER_COLOR_CONTAINER_EXT:"#8A8A8A",BORDER_COLOR_COMPONENT_EXT:"#BDBDBD",BORDER_COLOR_BOUNDARY:"#666666",BORDER_COLOR_DEPLOYMENT_NODE:"#666666",TEXT_COLOR_SOFTWARE_SYSTEM_PERSON:"#FFFFFF",TEXT_COLOR_CONTAINER:"#FFFFFF",TEXT_COLOR_COMPONENT:"#000000",TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#FFFFFF",TEXT_COLOR_CONTAINER_EXT:"#FFFFFF",TEXT_COLOR_COMPONENT_EXT:"#000000",TEXT_COLOR_BOUNDARY:"#333333",TEXT_COLOR_DEPLOYMENT_NODE:"#333333"},SIZES:{WIDTH:220,MIN_HEIGHT:100,PADDING_BOTTOM:15,BORDER_RADIUS:10,TOP_LABEL:20,TOP_TAGS:5,TOP_TYPE_TECHNOLOGY:2,TOP_DESCRIPTION:25,PADDING_Y_DESCRIPTION:10},FONT:{SIZE:14,SIZE_TAG:12,SIZE_TYPE_TECHNOLOGY:12,SIZE_DESCRIPTION:10}},Nt={SIZES:{SCALE_Y_TAIL_HEAD:.3,HEAD_BOX_WIDTH:20,RADIUS_TAIL_HEAD:kt.SIZES.MIN_HEIGHT/2-Ct.SIZES.BORDER_WIDTH/2,SCALED_RADIUS_TAIL_HEAD:1/0,WIDTH_TAIL:1/0,WIDTH_HEAD:1/0}};Nt.SIZES.SCALED_RADIUS_TAIL_HEAD=Nt.SIZES.RADIUS_TAIL_HEAD*Nt.SIZES.SCALE_Y_TAIL_HEAD,Nt.SIZES.WIDTH_TAIL=Nt.SIZES.SCALED_RADIUS_TAIL_HEAD,Nt.SIZES.WIDTH_HEAD=Nt.SIZES.HEAD_BOX_WIDTH+Nt.SIZES.SCALED_RADIUS_TAIL_HEAD;const Tt={SIZES:{SCALE_X_TOP_BOTTOM:.15,TOP_BOX_HEIGHT:14,RADIUS_TOP_BOTTOM:kt.SIZES.WIDTH/2-Ct.SIZES.BORDER_WIDTH/2,SCALED_RADIUS_TOP_BOTTOM:1/0,WIDTH_TOP:1/0,WIDTH_BOTTOM:1/0}};Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM=Tt.SIZES.RADIUS_TOP_BOTTOM*Tt.SIZES.SCALE_X_TOP_BOTTOM,Tt.SIZES.WIDTH_TOP=Tt.SIZES.TOP_BOX_HEIGHT+Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM,Tt.SIZES.WIDTH_BOTTOM=Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM;const Rt="rgba(0,0,0,0)",Lt="#828282",Mt="#404040",$t="#ff8f26",It=10,Dt=10,At=3,Pt=3,Ft=9,Bt=1,zt=2,Ut=90,Ht=40,Wt=45,Kt=10,Xt=10,Gt=150,Yt=80,Zt=10,qt={SIZES:{STROKE_DASH_ARRAY:[5,5]}},Vt={'"dashed"':{name:'"dashed"',value:[8,5]}};function Qt(e){return dt.some((t=>e.startsWith(t)))}function Jt(e){try{return`Open Link ${new URL(e).host.replace("www.","")}`}catch(e){return"Open Link"}}function en(e){return`<${e.toString().toUpperCase()}>`}function tn(e){return En(e)||xn(e)||vn(e)||yn(e)}function nn(e,t=!0,n){var a,o,r,i;let s,l,_,c;return e.forEach((e=>{if(e.visible){const a=e.getBoundingRect(!1,!0),o=t?e.getBoundingRect(!0,!1):a;let r=o.left,i=o.top;if(n&&r&&i){const e=fabric.util.transformPoint(new fabric.Point(r,i),n);r=e.x,i=e.y}(void 0===s||r<s)&&(s=r),void 0!==r&&void 0!==a.width&&(void 0===l||r+a.width>l)&&(l=r+a.width),(void 0===c||void 0!==i&&i<c)&&(c=i),void 0!==i&&void 0!==a.height&&(void 0===_||a.height+i>_)&&(_=i+a.height)}})),{left:s,right:l,top:c,bottom:_,width:(null!=(a=l)?a:0)-(null!=(o=s)?o:0),height:(null!=(r=_)?r:0)-(null!=(i=c)?i:0)}}function an(e,t){let n=-1;return e&&(n=e.getObjects().indexOf(t)),-1!==n?n:void 0}function on(e,t,n=Number.MAX_SAFE_INTEGER){let a=n;return t.forEach((t=>{const n=an(e,t);void 0!==n&&n<a&&(a=n)})),a!==Number.MAX_SAFE_INTEGER?a:void 0}function rn(e,t=!0){let n=[];return e&&e.forEach((e=>{(e.visible||!e.visible&&t)&&n.push(e),e.children&&(n=n.concat(rn(e.children,t)))})),n}function sn(e){let t=0,n=0;if(e){const a=e.viewportTransform;t=a?a[4]:0,n=a?a[5]:0}return{panX:t,panY:n}}function ln(e){var t;const n=e.parent,a=function(e){let t=[];const n=new Set;if(e){let a=[];e.forEach((e=>{const t=e.getVirtualGroupRoot();t&&n.add(t)})),n.forEach((e=>{var t;a=a.concat(rn(null!=(t=e.children)?t:[],!0))})),t=e.filter((e=>!a.includes(e)))}return{filteredObjects:t,virtualGroupsRoots:n}}(null==(t=e.canvas)?void 0:t.getActiveObjects());let o,r;if(a.filteredObjects.length>0||a.virtualGroupsRoots.size>1){let e=a.filteredObjects;a.virtualGroupsRoots.forEach((t=>{var n;return e=e.concat(rn(null!=(n=t.children)?n:[],!1))})),o=e,r="multiple"}else{var i;o=rn(null!=(i=null==n?void 0:n.children)?i:[],!1),r="single"}return{objects:o,type:r}}function _n(e,t){var n,a;return(null==e?void 0:e.length)===(null==t?void 0:t.length)&&(null!=(n=null==e?void 0:e.map((e=>{var t;return null!=(t=e.name)?t:"undefined"})))?n:[]).sort().join(",")===(null!=(a=null==t?void 0:t.map((e=>{var t;return null!=(t=e.name)?t:"undefined"})))?a:[]).sort().join(",")}y.fabric.ActiveSelection.prototype._controlsVisibility={tl:!0,tr:!0,br:!0,bl:!0,ml:!1,mt:!1,mr:!1,mb:!1,mtr:!1},y.fabric.Object.prototype.isVirtualGroupParent=function(){return void 0!==this.children&&this.children.length>0},y.fabric.Object.prototype.isVirtualGroupChild=function(){return void 0!==this.parent},y.fabric.Object.prototype.isVirtualGroupRoot=function(){return this.isVirtualGroupParent()&&void 0===this.parent},y.fabric.Object.prototype.isVirtualGroupLeaf=function(){return this.isVirtualGroupChild()&&!this.isVirtualGroupParent()},y.fabric.Object.prototype.isVirtualGroupBaseShape=function(){return this.isVirtualGroupChild()&&this.parent.children[0]===this},y.fabric.Object.prototype.getVirtualGroupRoot=function(){let e=this.parent;for(;e&&e.parent;)e=e.parent;return e};class cn extends y.fabric.Point{constructor(e,t,n){super(e,t),this.customType=void 0,this.data=void 0,this.customType=n}}class dn extends y.fabric.ActiveSelection{}const un=e=>"getUpdatedSpecs"in e;class gn extends y.fabric.Group{constructor(e,t,n,a,o,r,i,s,l=!1){var _,c,d,u,g,m,b,p,h,f,w;super(o,Object.assign({data:{rawDiagramElementSpec:t,rawData:e,rawAutoLayout:a},name:null!=(_=n.alias)?_:"undefined",left:void 0!==(null==t||null==(c=t.position)?void 0:c.left)?null==t||null==(d=t.position)?void 0:d.left:null==(u=n.position)?void 0:u.left,top:void 0!==(null==t||null==(g=t.position)?void 0:g.top)?null==t||null==(m=t.position)?void 0:m.top:null==(b=n.position)?void 0:b.top,scaleX:void 0!==(null==t||null==(p=t.size)?void 0:p.scale_x)?null==t||null==(h=t.size)?void 0:h.scale_x:1,scaleY:void 0!==(null==t||null==(f=t.size)?void 0:f.scale_y)?null==t||null==(w=t.size)?void 0:w.scale_y:1},r)),this.parent=i,this.children=null!=s?s:[],this.setControlsVisibility({mb:!1,ml:!1,mr:!1,mt:!1,mtr:!1}),l||this.on(mt,(e=>{var t;this.onComponentMouseUp(null==(t=e.target)?void 0:t.canvas,e,this)}))}getUpdatedSpecs(){var e,t;null==(e=this.canvas)||e.discardActiveObject();const n=null==(t=this.data)?void 0:t.rawDiagramElementSpec;if(n){var a,o,r,i,s,l,_,c,d,u,g,m,b,p,h,f;const e=(w=n,L()(w));return e.position={left:null!=(a=this.left)?a:null==(o=n.position)?void 0:o.left,top:null!=(r=this.top)?r:null==(i=n.position)?void 0:i.top,z_index:null!=(s=an(this.canvas,this))?s:null==(l=n.position)?void 0:l.z_index,angle:null!=(_=this.angle)?_:null==(c=n.position)?void 0:c.angle},e.size={width:null!=(d=this.width)?d:null==(u=n.size)?void 0:u.width,height:null!=(g=this.height)?g:null==(m=n.size)?void 0:m.height,scale_x:null!=(b=this.scaleX)?b:null==(p=n.size)?void 0:p.scale_x,scale_y:null!=(h=this.scaleY)?h:null==(f=n.size)?void 0:f.scale_y},e}var w}onComponentMouseUp(e,t,n,a){if(e)switch(t.e.preventDefault(),t.button){case 3:{e.setActiveObject(n),e.renderAll();const o=e.contextTop,r=y.fabric.util.getPointer(t.e,o.canvas),i=new CustomEvent("contextmenu",{detail:{sourceEvent:t,pageX:r.x,pageY:r.y,menuItems:null!=a?a:mn(e,t,n)}});document.dispatchEvent(i);break}}}}const mn=(e,t,n,a=!0)=>{var o,r,i,s;const l=[],_=n instanceof dn?n.parent:n,c=null==_?void 0:_.data,d=null==c||null==(o=c.rawDiagramElementSpec)?void 0:o.element_type,u=null==c||null==(r=c.rawData)||null==(r=r.base_data)||null==(r=r.link)?void 0:r.split(";"),g=e.isReadOnly(),m=e.codingFeaturesEnabled,b=void 0!==d&&u&&u.length>0&&void 0!==tn(d);let p=0,h=null==_?void 0:_.parent;for(;h;){var f;p++,h=null==(f=h)?void 0:f.parent}return b&&u.forEach(((t,n)=>{const a=t.replace(/ /gi,"");a.length>0&&(Qt(a)?l.push({isHeaderMenuItem:!1,id:`openLink${n}`,label:Jt(a),onClick:()=>{e.diagramListener&&e.diagramListener.onOpenExternalLinkClick(function(e,t){let n=`${e}`;for(const e in ut){var a;e===ut.Alias.toString()&&n.includes(en(ut.Alias))&&null!=t&&null!=(a=t.base_data)&&a.alias&&(n=n.replace(new RegExp(en(ut.Alias),"gi"),t.base_data.alias))}return n}(a,null==c?void 0:c.rawData))}}):l.push({isHeaderMenuItem:!1,id:"openDiagram",label:"Open Diagram",onClick:()=>{e.diagramListener&&e.diagramListener.onOpenDiagramClick(a)}}))})),m&&null!=c&&c.rawData&&null!=(i=c.rawDiagramElementSpec)&&i.element_type&&l.push({isHeaderMenuItem:!1,id:"selectDiagramElementCode",label:"Select code",onClick:()=>{var t;null!=(t=e.diagramListener)&&t.onSelectElementCode&&e.diagramListener.onSelectElementCode(c.rawData,c.rawDiagramElementSpec.element_type,p)}}),!g&&(b||m&&null!=c&&c.rawData&&null!=(s=c.rawDiagramElementSpec)&&s.element_type)&&l.push({id:"separatorCommon",isSepator:!0}),g||l.push({isHeaderMenuItem:!1,id:"bringToFront",label:"Bring to Front",onClick:()=>{var e;n.bringToFront(),null==(e=n.canvas)||e.fire(gt)}},{isHeaderMenuItem:!1,id:"bringForward",label:"Bring Forward",onClick:()=>{var e;n.bringForward(),null==(e=n.canvas)||e.fire(gt)}},{isHeaderMenuItem:!1,id:"sentToBack",label:"Send to Back",onClick:()=>bn(n)},{isHeaderMenuItem:!1,id:"sendBackwards",label:"Send Backwards",onClick:()=>pn(n)}),a?[{isHeaderMenuItem:!0,id:"baseComponentContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:l}]:l},bn=e=>{var t;e.parent||(e.sendToBack(),null==(t=e.canvas)||t.fire(gt))},pn=e=>{if(e instanceof dn){var t,n,a;const r=e.parent,i=on(e.canvas,null!=(t=null==r?void 0:r.children)?t:[]),s=on(e.canvas,null!=(n=null==r||null==(a=r.parent)?void 0:a.children)?n:[]);var o;void 0===s||void 0===i||i-1>s?(e.sendBackwards(),null==(o=e.canvas)||o.fire(gt)):console.debug(`cannot send backwards ${i} ${s}`)}else{var r,i;const t=an(e.canvas,e),n=on(e.canvas,null!=(r=null==(i=e.parent)?void 0:i.children)?r:[]);var s;void 0===n||void 0===t||t-1>n?(e.sendBackwards(),null==(s=e.canvas)||s.fire(gt)):console.debug(`cannot send backwards ${t} ${n}`)}},hn=(e,t,n,a,o)=>fn(e,t,n,a,o.elements_specs)||wn(e,t,n,a),fn=(e,t,n,a,o)=>{for(let r=0;r<o.length;r++){const i=o[r],s=i.alias===e,l=M(i.element_type,a);if(s&&l)return i;if(i.inner_specs){const o=i.inner_specs,r=fn(e,t,n,a,o);if(r)return r}}},wn=(e,t,n,a)=>({alias:e,from:t,to:n,element_type:a}),yn=e=>{if("Boundary"in e)return e.Boundary},vn=e=>{if("Component"in e)return e.Component},xn=e=>{if("Container"in e)return e.Container},jn=e=>{if("DeploymentNode"in e)return e.DeploymentNode},On=e=>{if("Person"in e)return e.Person},Sn=e=>{if("Relationship"in e)return e.Relationship},En=e=>{if("SoftwareSystem"in e)return e.SoftwareSystem},Cn=e=>(0,Me.capitalCase)((0,Me.noCase)(e)),kn=e=>(0,Me.capitalCase)((0,Me.noCase)(e)),Nn=e=>c()((0,Me.kebabCase)((0,Me.noCase)(e))),Tn=(e,t)=>{var n,a,o;return e&&null!=(n=t[e])&&n.position?{left:null==(a=t[e].position)?void 0:a.x,top:null==(o=t[e].position)?void 0:o.y}:{left:Ct.SIZES.DEFAULT_LEFT,top:Ct.SIZES.DEFAULT_TOP}};function Rn(e){return btoa(e)}const Ln="_margin_hack";function Mn(e,t,n){return 2===n.length?n.map(((n,a)=>{const o=function(e,t=96){return Number.parseFloat((e*t).toFixed(2))}(0===a?e.x:e.y);return function(e,t=96){return Number.parseFloat((e*(t/72)).toFixed(2))}(0===a?n:t-n,$n)+o})):n}const $n=96,In=I(Ct.SIZES.DEFAULT_LEFT),Dn=I(Ct.SIZES.DEFAULT_TOP),An=4.5;function Pn(e){const t={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT+2*Wt},n={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT},a={x:kt.SIZES.WIDTH+Nt.SIZES.WIDTH_TAIL+Nt.SIZES.WIDTH_HEAD,y:kt.SIZES.MIN_HEIGHT},o={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT+Tt.SIZES.WIDTH_TOP+Tt.SIZES.WIDTH_BOTTOM};if(On(e))return t;if(En(e)){const t=En(e);return"SystemDb"===t.system_type||"SystemDb_Ext"===t.system_type?o:"SystemQueue"===t.system_type||"SystemQueue_Ext"===t.system_type?a:n}if(xn(e)){const t=xn(e);return"ContainerDb"===t.container_type||"ContainerDb_Ext"===t.container_type?o:"ContainerQueue"===t.container_type||"ContainerQueue_Ext"===t.container_type?a:n}if(vn(e)){const t=vn(e);return"ComponentDb"===t.component_type||"ComponentDb_Ext"===t.component_type?o:"ComponentQueue"===t.component_type||"ComponentQueue_Ext"===t.component_type?a:n}return{x:100,y:100}}function Fn(e,t,n,a,o){return`\n subgraph "${r=e,`${r}${Ln}`}" {\n cluster=true\n margin="${o}"\n fontsize="0pt"\n label=""\n subgraph "${e}" {\n cluster=true\n margin="${a}"\n label=" "\n labelloc="b"\n fontsize="17pt"\n "${e}" [peripheries=0, height=0, width=0, label=""] // invisible node that is used as a workaround to let the connection between nodes and subgraphs\n ${Bn(t,n,a,o)}\n }\n }\n `;var r}function Bn(e,t,n,a){let o="";for(const l of e){const e=Pn(l);let _;if(On(l))_=On(l).base_data.alias;else if(En(l))_=En(l).base_data.alias;else if(xn(l))_=xn(l).base_data.alias;else if(vn(l))_=vn(l).base_data.alias;else if(yn(l)){const e=yn(l);_=e.base_data.alias,_&&(t.add(_),o=o.concat(Fn(_,e.sub_elements,t,n,a))),_=void 0}else if(jn(l)){const e=jn(l);_=e.base_data.alias,_&&(t.add(_),o=o.concat(Fn(_,e.sub_elements,t,n,a))),_=void 0}else if(Sn(l)){const e=Sn(l);var r,i;e.from&&e.to&&(o=o.concat(`\n"${e.from}" -> "${e.to}" [name="${e.base_data.alias}", xlabel="${s=[null!=(r=e.base_data.label)?r:"",null!=(i=e.technology)?i:""],s.sort(((e,t)=>t.length-e.length))[0]}", ltail="${e.from}", lhead="${e.to}", fontsize="${It}", keadex_fromissubgraph=${t.has(e.from)}, keadex_toissubgraph=${t.has(e.to)}]`)),_=void 0}_&&(o=o.concat(`\n"${_}" [width=${I(e.x,$n)}, height=${I(e.y,$n)}, peripheries=2]`))}var s;return o}const zn=require("@hpcc-js/wasm-graphviz");function Un(e){if(e)return Vt[e]}const Hn="legend",Wn=(e,t,n,a,o,r)=>{var i,s,l;const _=[],c=n?1:0,d=new y.fabric.Rect({fill:t,stroke:n,strokeWidth:c,strokeDashArray:a,left:jt,top:xt+St*r,width:Ot-c,height:St-c});_.push(d);const u=new y.fabric.Text(e,{fill:o,fontFamily:Ct.FONT.FAMILY,fontSize:vt,fontWeight:"normal",textAlign:"left",originX:"left",originY:"top",left:jt+Et});return u.top=(null!=(i=d.top)?i:0)+(null!=(s=d.height)?s:0)/2-(null!=(l=u.height)?l:0)/2,_.push(u),_},Kn=(e,t)=>{var n,a,o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E,C,k,N,T,R,L,M,$,I,D;let A=[];const P=new y.fabric.Text("LEGEND",{fill:wt,fontFamily:Ct.FONT.FAMILY,fontSize:yt,fontWeight:"bold",textAlign:"left",originX:"left",originY:"top",left:jt,top:xt});A.push(P),A=A.concat(Wn("Person",null!=(n=null==t||null==(a=t.diagramsThemeSettings)?void 0:a.bg_color_person)?n:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,void 0,void 0,null!=(o=null==t||null==(r=t.diagramsThemeSettings)?void 0:r.text_color_person)?o:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,1)),A=A.concat(Wn("Person External",null!=(i=null==t||null==(s=t.diagramsThemeSettings)?void 0:s.bg_color_person_ext)?i:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,void 0,void 0,null!=(l=null==t||null==(_=t.diagramsThemeSettings)?void 0:_.text_color_person_ext)?l:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,2)),A=A.concat(Wn("System",null!=(c=null==t||null==(d=t.diagramsThemeSettings)?void 0:d.bg_color_software_system)?c:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,void 0,void 0,null!=(u=null==t||null==(g=t.diagramsThemeSettings)?void 0:g.text_color_software_system)?u:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,3)),A=A.concat(Wn("System External",null!=(m=null==t||null==(b=t.diagramsThemeSettings)?void 0:b.bg_color_software_system_ext)?m:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,void 0,void 0,null!=(p=null==t||null==(h=t.diagramsThemeSettings)?void 0:h.text_color_software_system_ext)?p:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,4)),A=A.concat(Wn("Container",null!=(f=null==t||null==(w=t.diagramsThemeSettings)?void 0:w.bg_color_container)?f:kt.COLORS.BG_COLOR_CONTAINER,void 0,void 0,null!=(v=null==t||null==(x=t.diagramsThemeSettings)?void 0:x.text_color_container)?v:kt.COLORS.TEXT_COLOR_CONTAINER,5)),A=A.concat(Wn("Container External",null!=(j=null==t||null==(O=t.diagramsThemeSettings)?void 0:O.bg_color_container_ext)?j:kt.COLORS.BG_COLOR_CONTAINER_EXT,void 0,void 0,null!=(S=null==t||null==(E=t.diagramsThemeSettings)?void 0:E.text_color_container_ext)?S:kt.COLORS.TEXT_COLOR_CONTAINER_EXT,6)),A=A.concat(Wn("Component",null!=(C=null==t||null==(k=t.diagramsThemeSettings)?void 0:k.bg_color_component)?C:kt.COLORS.BG_COLOR_COMPONENT,void 0,void 0,null!=(N=null==t||null==(T=t.diagramsThemeSettings)?void 0:T.text_color_component)?N:kt.COLORS.TEXT_COLOR_COMPONENT,7)),A=A.concat(Wn("Component External",null!=(R=null==t||null==(L=t.diagramsThemeSettings)?void 0:L.bg_color_component_ext)?R:kt.COLORS.BG_COLOR_COMPONENT_EXT,void 0,void 0,null!=(M=null==t||null==($=t.diagramsThemeSettings)?void 0:$.text_color_component_ext)?M:kt.COLORS.TEXT_COLOR_COMPONENT_EXT,8));let F=8;var B,z,U,H;null!=t&&null!=(I=t.diagramsThemeSettings)&&I.bg_color_boundary&&(F++,A=A.concat(Wn("Boundary",t.diagramsThemeSettings.bg_color_boundary,void 0,void 0,null!=(B=null==t||null==(z=t.diagramsThemeSettings)?void 0:z.text_color_boundary)?B:kt.COLORS.TEXT_COLOR_BOUNDARY,F))),null!=t&&null!=(D=t.diagramsThemeSettings)&&D.bg_color_deployment_node&&(F++,A=A.concat(Wn("Deployment Node",t.diagramsThemeSettings.bg_color_deployment_node,void 0,void 0,null!=(U=null==t||null==(H=t.diagramsThemeSettings)?void 0:H.text_color_deployment_node)?U:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE,F))),null!=t&&t.tags&&Object.entries(t.tags).forEach((([e,t],n)=>{var a,o,r,i,s;F++,A=A.concat(Wn(null!=(a=null!=(o=t.legend_text)?o:t.tag)?a:"<no tag>",t.bg_color,null!=(r=t.border_color)?r:t.bg_color?void 0:"black",null==(i=Un(t.border_style))?void 0:i.value,null!=(s=t.font_color)?s:"black",F))}));return new gn(void 0,e,{alias:Hn,position:{left:jt,top:xt}},{},A)},Xn="The diagram contains too many elements and relationships, which may cause the auto layout to break. Try adjusting auto layout settings like orientation, ranksep or subgraph margins.",Gn="Graphviz not initialized. Cannot generate auto layout.",Yn="triangulation failed";function Zn(e){return null==e?void 0:e.split("+")}function qn(e,t){if(e&&t){const n=[];for(const a of e){const e=t[Rn(a)];e&&n.push(e)}if(n.length>0)return Object.assign({},...n)}}let Vn=function(e){return e.Rectangle="RECTANGLE",e.Footer="FOOTER",e}({});class Qn extends gn{getUpdatedSpecs(){const e=super.getUpdatedSpecs();var t;if(e&&(null==(t=this.canvas)||t.discardActiveObject(),delete e.position,delete e.size,e.inner_specs=[],e.shapes=[],this.children))for(const t of this.children)if(un(t)){const n=t.getUpdatedSpecs();n&&e.inner_specs.push(n)}else if(t.name!==Vn.Footer){var n,a;e.shapes.push({position:{left:t.left,top:t.top,z_index:an(t.canvas,t)},size:{scale_x:null!=(n=t.scaleX)?n:1,scale_y:null!=(a=t.scaleY)?a:1},shape_type:t.name})}else e.shapes.push({position:{z_index:an(t.canvas,t)},shape_type:t.name});return e}}const Jn=e=>{var t,n,a,o,r,i,s,l,_,c,d;let u,g;const m=(null==(t=e.data)||null==(t=t.rawData)||null==(t=t.base_data)?void 0:t.alias)&&e.data.rawAutoLayout&&void 0!==e.data.rawAutoLayout[e.data.rawData.base_data.alias],b=[];null==(n=e.children)||n.forEach((e=>{e.name===Vn.Footer?g=e:e.name===Vn.Rectangle?u=e:b.push(e)}));const p=nn(rn(b),!1),h=null!=(a=null==(o=u)?void 0:o.scaleX)?a:1,f=null!=(r=null==(i=u)?void 0:i.scaleY)?r:1,w=null!=(s=null==(l=u)||null==(l=l.canvas)?void 0:l.getZoom())?s:1,y=sn(e.canvas),v=Zt*h,x=Zt*f,j=Zt*h,O=Zt*f;var S;u&&void 0!==p.left&&void 0!==p.right&&void 0!==p.top&&void 0!==p.bottom&&void 0!==p.width&&void 0!==p.height&&void 0!==g?(p.left=(p.left-y.panX)/w,p.top=(p.top-y.panY)/w,p.right=(p.right-y.panX)/w,p.bottom=(p.bottom-y.panY)/w,p.width=p.right-p.left,p.height=p.bottom-p.top,m||(u.width=p.width/h+v/h*2,u.height=p.height/f+x/f*3+(null!=(S=g.height)?S:0),u.left=p.left-v,u.top=p.top-x)):u&&void 0!==g&&(u.width=Gt,u.height=Yt+g.getScaledHeight()),null==(_=e.canvas)||_.renderAll(),u&&g&&void 0!==u.left&&void 0!==u.top&&void 0!==u.height&&void 0!==g.height&&(g.top=u.top+u.getScaledHeight()-g.getScaledHeight()-O,g.left=u.left+j),null==(c=u)||c.setCoords(),null==(d=g)||d.setCoords()},ea=e=>{e.on(pt,(t=>{na(t,e)}))},ta=e=>{e.on(pt,(t=>{na(t,e)}))},na=(e,t)=>{var n;if(e.e&&null!=(n=t.parent)&&n.children){var a;const e=ln(t);if(!_n(null==(a=t.canvas)?void 0:a.getActiveObjects(),e.objects)){var o,r,i;null==(o=t.canvas)||o.discardActiveObject();const n=t.parent;let a;"multiple"===e.type?a=new y.fabric.ActiveSelection(e.objects,{canvas:t.canvas}):(a=new dn(e.objects,{canvas:t.canvas}),a.parent=n,a.on(mt,(e=>{oa(a.canvas,e,a,n)})),a.on(bt,(e=>{var a;null==(a=t.canvas)||a.discardActiveObject(),n.fire(bt)}))),null==(r=t.canvas)||r.setActiveObject(a),null==(i=t.canvas)||i.requestRenderAll()}}},aa=(e,t)=>{e&&t&&Jn(e)},oa=(e,t,n,a)=>{n instanceof y.fabric.ActiveSelection&&e&&a.onComponentMouseUp(e,t,n,((e,t,n)=>n instanceof y.fabric.ActiveSelection?[{isHeaderMenuItem:!0,id:"baseElasticContainerContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:[...mn(e,t,n,!1)]}]:[])(e,t,n))},ra=(e,t,n,a,o,r)=>{var i,s;const l=qn(Zn(null==(i=e.base_data)?void 0:i.tags),null==r?void 0:r.tags),_={alias:null==(s=e.base_data)?void 0:s.alias},c=new Qn(e,t,_,a,[],void 0,void 0,void 0,!0);c.visible=!1;const u=((e,t,n,a,o)=>{var r,i,s,l,_,c,d,u,g,m,b,p;const h=null==e||null==(r=e.shapes)?void 0:r.filter((e=>e.shape_type===Vn.Rectangle))[0],f=new y.fabric.Rect({fill:null!=(i=null==o?void 0:o.bg_color)?i:n.bgColor,stroke:null!=(s=null==o?void 0:o.border_color)?s:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,strokeDashArray:n.strokeDashArray,left:null!=(l=null==h||null==(_=h.position)?void 0:_.left)?l:Tn(e.alias,t).left,top:null!=(c=null==h||null==(d=h.position)?void 0:d.top)?c:Tn(e.alias,t).top,name:Vn.Rectangle,rx:kt.SIZES.BORDER_RADIUS,ry:kt.SIZES.BORDER_RADIUS,scaleX:null!=(u=null==h||null==(g=h.size)?void 0:g.scale_x)?u:1,scaleY:null!=(m=null==h||null==(b=h.size)?void 0:b.scale_y)?m:1}),w=((e,t)=>{var n,a,o;if(e&&null!=(n=t[e])&&n.size)return{width:null==(a=t[e].size)?void 0:a.x,height:null==(o=t[e].size)?void 0:o.y}})(e.alias,t);return w&&(f.width=w.width,f.height=w.height),f.data={rawDiagramElementSpec:h},f.parent=a,ea(f),null==(p=a.children)||p.push(f),f})(t,a,o,c,l);((e,t,n,a,o,r,i)=>{var s,l,_,c,u,g,m,b,p,h,f;const w=null==e||null==(s=e.shapes)?void 0:s.filter((e=>e.shape_type===Vn.Footer))[0],v=[],x={fontFamily:Ct.FONT.FAMILY,fill:null!=(l=null==i?void 0:i.font_color)?l:n.textColor};let j;var O;let S;var E,C;null!=(_=a.base_data)&&_.link&&(j=new y.fabric.Path(d.faLink.icon[4].toString(),{fill:null!=(O=null==i?void 0:i.font_color)?O:n.textColor,opacity:1,originX:"left",originY:"top",top:1,left:0}),j.scaleToWidth(10),v.push(j)),null!=(c=a.base_data)&&c.label&&(S=new y.fabric.Text(a.base_data.label,Object.assign({},x,{fontSize:Kt,fontWeight:"bold"})),S.top=0,S.left=null!=(E=j)&&E.getScaledWidth()?(null==(C=j)?void 0:C.getScaledWidth())+3:0,v.push(S));let k=null!=(u=null!=(g=a.boundary_type)?g:a.deployment_node_type)?u:"";k=null!=(m=null!=(b=a.boundary_custom_type)?b:a.deploymeny_node_custom_type)?m:k,k+=a.technology?`: ${a.technology}`:"",k=`[${k}]`;const N=new y.fabric.Text(k,Object.assign({},x,{fontSize:Xt,left:0,top:null!=(p=null==(h=S)?void 0:h.height)?p:0}));v.push(N);const T=new y.fabric.Group(v,{name:Vn.Footer,selectable:!1,evented:!1,left:o.left,top:o.top,scaleX:o.scaleX,scaleY:o.scaleY});T.data={rawDiagramElementSpec:w},T.parent=r,ta(T),null==(f=r.children)||f.push(T)})(t,0,o,e,u,c,l);let g=[];return e.sub_elements&&(g=Fa(void 0,e.sub_elements,n,a,Object.assign({},r,{skipAddToCanvas:!0,skipLegendRendering:!0})),g.forEach((e=>{var t;e.parent=c,null==(t=c.children)||t.push(e)}))),Jn(c),(e=>{var t;null==(t=e.children)||t.forEach((t=>{t.on(bt,(t=>{aa(e,t)})),t.children&&t.children.forEach((t=>{t.on(bt,(t=>{aa(e,t)}))}))}))})(c),c},ia=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.base_data.label&&t.boundary_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a,o,r)=>{var i,s,l,_,c,d;const u={bgColor:null!=(i=null==r||null==(s=r.diagramsThemeSettings)?void 0:s.bg_color_boundary)?i:kt.COLORS.BG_COLOR_BOUNDARY,borderColor:null!=(l=null==r||null==(_=r.diagramsThemeSettings)?void 0:_.border_color_boundary)?l:kt.COLORS.BORDER_COLOR_BOUNDARY,textColor:null!=(c=null==r||null==(d=r.diagramsThemeSettings)?void 0:d.text_color_boundary)?c:kt.COLORS.TEXT_COLOR_BOUNDARY,strokeDashArray:qt.SIZES.STROKE_DASH_ARRAY},g=Object.assign({},u,o);return ra(e,t,n,a,g,r)})(t,hn(t.base_data.alias,void 0,void 0,{Boundary:t.boundary_type},n),n,a,void 0,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...rn(null!=(r=i.children)?r:[])),i}},sa=(e,t,n,a,o)=>{var r,i,s,l,_,c;const u=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),g=[],m=((e,t,n)=>{var a,o,r,i,s,l,_;const c=new y.fabric.Rect({fill:null!=(a=null==n?void 0:n.bg_color)?a:t.bgColor,stroke:null!=(o=null==n?void 0:n.border_color)?o:t.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,left:Ct.SIZES.DEFAULT_LEFT,top:Ct.SIZES.DEFAULT_TOP,width:null!=(r=t.widthBox)?r:kt.SIZES.WIDTH,height:kt.SIZES.MIN_HEIGHT,name:null!=(i=null==(s=e.base_data)?void 0:s.alias)?i:"undefined",rx:null!=(l=t.borderRadius)?l:kt.SIZES.BORDER_RADIUS,ry:null!=(_=t.borderRadius)?_:kt.SIZES.BORDER_RADIUS});return c.on("scaling",(e=>{var t;null!=(t=e.target)&&t.width&&e.target.height&&e.target.scaleX&&e.target.scaleY&&e.target.set({width:e.target.width*e.target.scaleX,height:e.target.height*e.target.scaleY,scaleX:1,scaleY:1})})),c})(e,a,u);let b;g.push(m),null!=(i=e.base_data)&&i.tags&&(b=((e,t,n,a)=>{var o,r,i,s,l;return new y.fabric.Text(`«${null==(o=t.base_data)?void 0:o.tags}»`,{fill:null!=(r=null==a?void 0:a.font_color)?r:n.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_TAG,fontStyle:"italic",fontWeight:"normal",textAlign:"center",originX:"center",originY:"top",left:(null!=(i=e.left)?i:Ct.SIZES.DEFAULT_LEFT)+(null!=(s=e.width)?s:0)/2,top:(null!=(l=e.top)?l:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_TAGS})})(m,e,a,u),g.push(b));const p=((e,t,n,a,o)=>{var r,i,s,l,_,c;return new y.fabric.Text(null!=(r=$(null==(i=n.base_data)?void 0:i.label))?r:"undefined",{fill:null!=(s=null==o?void 0:o.font_color)?s:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE,fontWeight:"bold",textAlign:"center",originX:"center",originY:"top",left:(null!=(l=e.left)?l:Ct.SIZES.DEFAULT_LEFT)+(null!=(_=e.width)?_:0)/2,top:(null!=(c=null==t?void 0:t.top)?c:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_LABEL})})(m,b,e,a,u);g.push(p);const h=((e,t,n,a,o)=>{var r,i,s,l,_,c,d,u,g,m,b,p;const h=`[${null!=(r=null!=(i=null!=(s=null!=(l=null!=(_=null!=(c=null!=(d=n.boundary_custom_type)?d:n.boundary_type)?c:n.component_type)?_:n.container_type)?l:n.deployment_node_type)?s:n.deploymeny_node_custom_type)?i:n.person_type)?r:n.system_type}${n.technology?`: ${n.technology}`:""}]`;return new y.fabric.Text(h,{fill:null!=(u=null==o?void 0:o.font_color)?u:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_TYPE_TECHNOLOGY,fontWeight:"normal",textAlign:"center",originX:"center",originY:"top",left:(null!=(g=e.left)?g:Ct.SIZES.DEFAULT_LEFT)+(null!=(m=e.width)?m:0)/2,top:(null!=(b=null==t?void 0:t.top)?b:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_TYPE_TECHNOLOGY+(null!=(p=null==t?void 0:t.height)?p:0)})})(m,p,e,a,u);let f;g.push(h),null!=(s=e.base_data)&&s.description&&(f=((e,t,n,a,o)=>{var r,i,s,l,_,c,d;const u=null!=(r=a.widthDescription)?r:e.width;return new y.fabric.Textbox(null!=(i=$(null==(s=n.base_data)?void 0:s.description))?i:"",{fill:null!=(l=null==o?void 0:o.font_color)?l:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_DESCRIPTION,fontWeight:400,opacity:.7,splitByGrapheme:!0,width:u?u-kt.SIZES.PADDING_Y_DESCRIPTION:0,textAlign:"center",originX:"center",originY:"top",left:(null!=(_=e.left)?_:Ct.SIZES.DEFAULT_LEFT)+(null!=(c=e.width)?c:0)/2,top:(null!=(d=null==t?void 0:t.top)?d:0)+kt.SIZES.TOP_DESCRIPTION})})(m,h,e,a,u),g.push(f)),null!=(l=e.base_data)&&l.link&&g.push(((e,t,n)=>{var a,o,r;const i=new y.fabric.Path(d.faLink.icon[4].toString(),{fill:null!=(a=null==n?void 0:n.font_color)?a:t.textColor,opacity:1,originX:"left",originY:"top",left:(null!=(o=e.left)?o:0)+5,top:(null!=(r=e.top)?r:0)+5});return i.scaleToWidth(10),i})(m,a,u)),((e,t)=>{var n,a,o;let r=(null!=(n=null==t?void 0:t.height)?n:0)+((null!=(a=null==t?void 0:t.top)?a:0)-(null!=(o=null==e?void 0:e.top)?o:0))+kt.SIZES.PADDING_BOTTOM;r<kt.SIZES.MIN_HEIGHT&&(r=kt.SIZES.MIN_HEIGHT),e.height=r})(m,f);const w={alias:null==(_=e.base_data)?void 0:_.alias,position:Tn(null==(c=e.base_data)?void 0:c.alias,n)};return new gn(e,t,w,n,g)},la=(e,t,n,a,o)=>{var r,i,s,l;const _=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),c=[],d=((e,t,n)=>{const a=Object.assign({},t,{borderRadius:0});return sa(e,{},{},a,n)})(e,a,o);c.push(d);const u=(null!=(i=d.width)?i:0)/2-Ct.SIZES.BORDER_WIDTH/2;c.push(((e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E;const C=[],k=Ct.SIZES.BORDER_WIDTH,N=Tt.SIZES.TOP_BOX_HEIGHT,T=new y.fabric.Rect({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,strokeWidth:0,left:(null!=(r=e.left)?r:0)+Ct.SIZES.BORDER_WIDTH,top:(null!=(i=e.top)?i:0)-N+k,width:(null!=(s=e.width)?s:0)-2*Ct.SIZES.BORDER_WIDTH,height:N});return C.push(T),C.push(new y.fabric.Line([null!=(l=e.left)?l:0,null!=(_=e.top)?_:0,null!=(c=e.left)?c:0,null!=(d=T.top)?d:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(u=null==a?void 0:a.border_color)?u:n.borderColor,originX:"left",originY:"top"})),C.push(new y.fabric.Line([(null!=(g=e.left)?g:0)+(null!=(m=e.width)?m:0)-Ct.SIZES.BORDER_WIDTH,null!=(b=e.top)?b:0,(null!=(p=e.left)?p:0)+(null!=(h=e.width)?h:0)-Ct.SIZES.BORDER_WIDTH,null!=(f=T.top)?f:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(w=null==a?void 0:a.border_color)?w:n.borderColor,originX:"left",originY:"top"})),C.push(new y.fabric.Circle({fill:null!=(v=null==a?void 0:a.bg_color)?v:n.bgColor,stroke:null!=(x=null==a?void 0:a.border_color)?x:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:(null!=(j=T.top)?j:0)-(null!=(O=e.width)?O:0)*Tt.SIZES.SCALE_X_TOP_BOTTOM/2,left:(null!=(S=T.left)?S:0)+ +(null!=(E=e.width)?E:0)-k,angle:90,startAngle:0,endAngle:360,scaleX:Tt.SIZES.SCALE_X_TOP_BOTTOM})),new y.fabric.Group(C)})(d,u,a,_)),c.push(((e,t,n,a)=>{var o,r,i,s,l,_;return new y.fabric.Circle({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,stroke:null!=(r=null==a?void 0:a.border_color)?r:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:(null!=(i=e.top)?i:0)+(null!=(s=e.height)?s:0)-2*t*Tt.SIZES.SCALE_X_TOP_BOTTOM/2-Ct.SIZES.BORDER_WIDTH,left:(null!=(l=e.left)?l:0)+(null!=(_=e.width)?_:0),angle:90,startAngle:270,endAngle:90,scaleX:Tt.SIZES.SCALE_X_TOP_BOTTOM})})(d,u,a,_));const g={alias:null==(s=e.base_data)?void 0:s.alias,position:Tn(null==(l=e.base_data)?void 0:l.alias,n)};return new gn(e,t,g,n,c)},_a=(e,t,n,a,o)=>{var r,i,s,l;const _=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),c=[],d=ca(e,a,o);c.push(d);const u=(null!=(i=d.height)?i:0)/2-Ct.SIZES.BORDER_WIDTH/2;c.push(da(d,u,a,_)),c.push(ua(d,u,a,_));const g={alias:null==(s=e.base_data)?void 0:s.alias,position:Tn(null==(l=e.base_data)?void 0:l.alias,n)};return new gn(e,t,g,n,c)},ca=(e,t,n)=>{const a=Object.assign({},t,{borderRadius:0});return sa(e,{},{},a,n)},da=(e,t,n,a)=>{var o,r,i;return new y.fabric.Circle({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,stroke:null!=(r=null==a?void 0:a.border_color)?r:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:e.top,left:(null!=(i=e.left)?i:0)+2*t*Nt.SIZES.SCALE_Y_TAIL_HEAD/2+2*Ct.SIZES.BORDER_WIDTH,angle:90,startAngle:0,endAngle:180,scaleY:Nt.SIZES.SCALE_Y_TAIL_HEAD})},ua=(e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E,C,k;const N=[],T=Ct.SIZES.BORDER_WIDTH,R=new y.fabric.Rect({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,strokeWidth:0,left:(null!=(r=e.left)?r:0)+(null!=(i=e.width)?i:0)-T,top:(null!=(s=e.top)?s:0)+Ct.SIZES.BORDER_WIDTH,width:Nt.SIZES.HEAD_BOX_WIDTH,height:(null!=(l=e.height)?l:0)-2*Ct.SIZES.BORDER_WIDTH});return N.push(R),N.push(new y.fabric.Line([null!=(_=R.left)?_:0,null!=(c=e.top)?c:0,(null!=(d=R.left)?d:0)+(null!=(u=R.width)?u:0),null!=(g=e.top)?g:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(m=null==a?void 0:a.border_color)?m:n.borderColor,originX:"left",originY:"top"})),N.push(new y.fabric.Line([null!=(b=R.left)?b:0,(null!=(p=R.top)?p:0)+(null!=(h=R.height)?h:0),(null!=(f=R.left)?f:0)+(null!=(w=R.width)?w:0),(null!=(v=R.top)?v:0)+(null!=(x=R.height)?x:0)],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(j=null==a?void 0:a.border_color)?j:n.borderColor,originX:"left",originY:"top"})),N.push(new y.fabric.Circle({fill:null!=(O=null==a?void 0:a.bg_color)?O:n.bgColor,stroke:null!=(S=null==a?void 0:a.border_color)?S:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:e.top,left:(null!=(E=R.left)?E:0)+(null!=(C=R.width)?C:0)+(null!=(k=e.height)?k:0)*Nt.SIZES.SCALE_Y_TAIL_HEAD/2-T,angle:90,startAngle:0,endAngle:360,scaleY:Nt.SIZES.SCALE_Y_TAIL_HEAD})),new y.fabric.Group(N)},ga=_a,ma=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.component_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.component_type){case"Component":case"ComponentDb":case"ComponentQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_component)?r:kt.COLORS.BG_COLOR_COMPONENT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_component)?s:kt.COLORS.BORDER_COLOR_COMPONENT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_component)?_:kt.COLORS.TEXT_COLOR_COMPONENT},u=Object.assign({},d,a);if(e.component_type)switch(e.component_type){case"Component":return sa(e,t,n,u,o);case"ComponentDb":return la(e,t,n,u,o);case"ComponentQueue":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Component:t.component_type},n),a,void 0,o);break;case"Component_Ext":case"ComponentDb_Ext":case"ComponentQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_component_ext)?r:kt.COLORS.BG_COLOR_COMPONENT_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_component_ext)?s:kt.COLORS.BORDER_COLOR_COMPONENT_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_component_ext)?_:kt.COLORS.TEXT_COLOR_COMPONENT_EXT},u=Object.assign({},d,a);if(e.component_type)switch(e.component_type){case"Component_Ext":return sa(e,t,n,u,o);case"ComponentDb_Ext":return la(e,t,n,u,o);case"ComponentQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Component:t.component_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}},ba=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.container_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.container_type){case"Container":case"ContainerDb":case"ContainerQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_container)?r:kt.COLORS.BG_COLOR_CONTAINER,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_container)?s:kt.COLORS.BORDER_COLOR_CONTAINER,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_container)?_:kt.COLORS.TEXT_COLOR_CONTAINER},u=Object.assign({},d,a);if(e.container_type)switch(e.container_type){case"Container":return sa(e,t,n,u,o);case"ContainerDb":return la(e,t,n,u,o);case"ContainerQueue":return _a(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Container:t.container_type},n),a,void 0,o);break;case"Container_Ext":case"ContainerDb_Ext":case"ContainerQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_container_ext)?r:kt.COLORS.BG_COLOR_CONTAINER_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_container_ext)?s:kt.COLORS.BORDER_COLOR_CONTAINER_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_container_ext)?_:kt.COLORS.TEXT_COLOR_CONTAINER_EXT},u=Object.assign({},d,a);if(e.container_type)switch(e.container_type){case"Container_Ext":return sa(e,t,n,u,o);case"ContainerDb_Ext":return la(e,t,n,u,o);case"ContainerQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Container:t.container_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}},pa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.base_data.label&&t.deployment_node_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a,o,r)=>{var i,s,l,_,c,d;const u={bgColor:null!=(i=null==r||null==(s=r.diagramsThemeSettings)?void 0:s.bg_color_deployment_node)?i:kt.COLORS.BG_COLOR_DEPLOYMENT_NODE,borderColor:null!=(l=null==r||null==(_=r.diagramsThemeSettings)?void 0:_.border_color_deployment_node)?l:kt.COLORS.BORDER_COLOR_DEPLOYMENT_NODE,textColor:null!=(c=null==r||null==(d=r.diagramsThemeSettings)?void 0:d.text_color_deployment_node)?c:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE},g=Object.assign({},u,o);return ra(e,t,n,a,g,r)})(t,hn(t.base_data.alias,void 0,void 0,{DeploymentNode:t.deployment_node_type},n),n,a,void 0,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...rn(null!=(r=i.children)?r:[])),i}},ha=(e,t,n,a,o)=>{var r,i;const s=[],l=((e,t,n)=>{const a=Object.assign({},t,{borderRadius:Ht});return sa(e,{},{},a,n)})(e,a,o);s.push(l);const _=((e,t)=>{var n,a,o,r,i;const s=new y.fabric.Circle({radius:Wt,top:t.top,left:t.left,fill:e.bgColor,stroke:e.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH});return s.left=(null!=(n=s.left)?n:0)+(null!=(a=t.getScaledWidth())?a:0)/2-(null!=(o=s.getScaledWidth())?o:0)/2,s.top=(null!=(r=s.top)?r:0)-(null!=(i=s.getScaledWidth())?i:0)+5,s})(a,l);s.push(_);const c={alias:null==(r=e.base_data)?void 0:r.alias,position:Tn(null==(i=e.base_data)?void 0:i.alias,n)};return new gn(e,t,c,n,s)},fa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.person_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.person_type){case"Person":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_person)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_person)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_person)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON},u=Object.assign({},d,a);return ha(e,t,n,u,o)})(t,hn(t.base_data.alias,void 0,void 0,{Person:t.person_type},n),a,void 0,o);break;case"Person_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_person_ext)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_person_ext)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_person_ext)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT},u=Object.assign({},d,a);return ha(e,t,n,u,o)})(t,hn(t.base_data.alias,void 0,void 0,{Person:t.person_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}};let wa=function(e){return e.Dot="DOT",e.Line="LINE",e.Text="TEXT",e.Triangle="TRIANGLE",e.Rectangle="RECTANGLE",e}({});class ya extends gn{getUpdatedSpecs(){const e=super.getUpdatedSpecs();var t,n;return e&&(null==(t=this.canvas)||t.discardActiveObject(),delete e.position,delete e.size,e.shapes=[],null==(n=this.children)||n.forEach((t=>{const n=y.fabric.util.object.clone(t);if(n.name===wa.Line||n.name===wa.Rectangle)e.shapes.push({position:{z_index:an(n.canvas,n)},shape_type:n.name});else{var a,o;let t=0,r=0;const i=n.angle;if(n.name===wa.Text)t=n.getCenterPoint().x,r=n.getCenterPoint().y;else if(n.name===wa.Dot||n.name===wa.Triangle){n.name===wa.Triangle&&n.rotate(Ut);const e=Sa(this.canvas,n.left,n.top,n.name===wa.Triangle,i,n.scaleX,n.scaleY,!0);t=e.left,r=e.top}const s={position:{left:t,top:r,z_index:an(n.canvas,n)},size:{scale_x:null!=(a=n.scaleX)?a:1,scale_y:null!=(o=n.scaleY)?o:1},shape_type:n.name};n.name===wa.Triangle&&(s.position.angle=i),e.shapes.push(s)}}))),e}}const va=e=>{var t;e.children=null==(t=e.children)?void 0:t.sort(((e,t)=>e.name===wa.Rectangle||e.name===wa.Line&&t.name!==wa.Rectangle?-1:t.name===wa.Rectangle||e.name!==wa.Rectangle&&t.name===wa.Line?1:e.name===t.name?0:1))},xa=e=>{const t=e.parent;let n,a=1;const o=e.canvas;if(t&&o){const s=[],l=[];if(t.children){var r,i;t.children.forEach((e=>{if(e.name===wa.Triangle&&(n=e),e.name===wa.Dot||e.name===wa.Triangle){var t;l.push(e),a=null!=(t=e.scaleX)?t:1;const n=e.getPointByOrigin("center","center"),o=new cn(n.x,n.y,e.name);s.push(o)}}));const _=t.children.findIndex((e=>e.name===wa.Line));void 0!==_&&_>-1&&t.children.splice(_,1);const c=an(o,e),d=null==(r=e.data)?void 0:r.rawDiagramElementSpec,u=e.stroke,g=e.strokeDashArray,m=null==(i=e.data)?void 0:i.otherData.selectedRelColor;o.remove(e);const b=Na(d,s,t,a,u,m,void 0,g);o.add(b),c&&b.moveTo(c),n&&Oa(s,n)}}},ja=e=>{const t=e.findIndex((e=>e.customType===wa.Triangle)),n=e[t],a=e[t>0?t-1:t+1];return 180*Math.atan2(n.y-a.y,n.x-a.x)/Math.PI+90},Oa=(e,t)=>{let n;e&&(n=ja(e),t.rotate(n))},Sa=(e,t,n,a,o=Ut,r=1,i=1,s)=>{var l;const _=null!=(l=null==e?void 0:e.getZoom())?l:1,c=sn(e);let d=t,u=n;if(a){const e=Ft*r/2+Bt*r/2,t=Ft*i/2+Bt*i/2;s?(d-=e,u+=t):(d+=e,u-=t)}else{const e=Pt*r*2+Bt*r/2,t=Pt*i+Bt*i/2;s?(d+=e,u+=t):(d-=e,u-=t)}return s||(d=(d-c.panX)/_,u=(u-c.panY)/_),{left:d,top:u,angle:o}},Ea=(e,t)=>{let n=[];if(null!=e&&e.shapes)null==e||e.shapes.forEach((e=>{var t,a;if((e.shape_type===wa.Dot||e.shape_type===wa.Triangle)&&void 0!==(null==(t=e.position)?void 0:t.left)&&void 0!==(null==(a=e.position)?void 0:a.top)){const t=new cn(e.position.left,e.position.top,e.shape_type);t.data={rawDiagramElementSpec:e},n.push(t)}}));else{var a,o;let r;null!=e&&e.alias&&null!=(a=t[e.alias])&&a.start&&null!=(o=t[e.alias])&&o.end?(r=[],r.push(new cn(t[e.alias].start.x,t[e.alias].start.y,wa.Dot)),t[e.alias].path&&t[e.alias].path.forEach((e=>{r.push(new cn(e.x,e.y,wa.Dot))})),r.push(new cn(t[e.alias].end.x,t[e.alias].end.y,wa.Triangle))):r=[new cn(Ct.SIZES.DEFAULT_LEFT,Ct.SIZES.DEFAULT_TOP,wa.Dot),new cn(100+Ct.SIZES.DEFAULT_LEFT,Ct.SIZES.DEFAULT_TOP,wa.Triangle)],n=n.concat(r)}return n},Ca=(e,t,n,a,o,r)=>{const i=[],s=void 0!==(null==e?void 0:e.alias)&&void 0!==t[e.alias];for(let e=0;e<n.length;e++){var l,_,c,d;i.push(ka(void 0,n[e],n[e].customType===wa.Triangle?null!=(l=null==(_=n[e].data)||null==(_=_.rawDiagramElementSpec)||null==(_=_.position)?void 0:_.angle)?l:ja(n):void 0,n[e].customType===wa.Triangle,a,!0,null==(c=n[e].data)||null==(c=c.rawDiagramElementSpec)||null==(c=c.size)?void 0:c.scale_x,null==(d=n[e].data)||null==(d=d.rawDiagramElementSpec)||null==(d=d.size)?void 0:d.scale_y,o,r,s))}return i},ka=(e,t,n,a,o,r=!0,i=1,s=1,l,_,c)=>{var d;l=null!=(d=l)?d:Lt;const{left:u,top:g,angle:m}=Sa(e,t.x,t.y,a,n,i,s,!1);if(a){var b,p;const e=new y.fabric.Triangle({left:u,top:g,width:Ft,height:Ft,fill:l,scaleX:i,scaleY:s,hasControls:!1,name:wa.Triangle,angle:Ut});return e.rotate(m),e.data={rawDiagramElementSpec:null==(b=t.data)?void 0:b.rawDiagramElementSpec,otherData:{selectedRelColor:null!=_?_:$t}},e.parent=o,r&&(null==(p=o.children)||p.push(e)),La(e,l),e}{var h,f;const e=new y.fabric.Circle({left:u,top:g,radius:Pt,fill:l,opacity:.2,scaleX:i,scaleY:s,hasControls:!1,name:wa.Dot,visible:!c,selectable:!c,hasBorders:!c});return e.data={rawDiagramElementSpec:null==(h=t.data)?void 0:h.rawDiagramElementSpec,otherData:{selectedRelColor:null!=_?_:$t}},e.parent=o,r&&(null==(f=o.children)||f.push(e)),La(e,l),e}},Na=(e,t,n,a=1,o,r,i,s)=>{var l,_,c;const d=null==e||null==(l=e.shapes)?void 0:l.filter((e=>e.shape_type===wa.Line))[0];let u;return u=i&&null!=e&&e.alias&&null!=(_=i[e.alias])&&_.svg_path?new y.fabric.Path(i[e.alias].svg_path,{stroke:null!=o?o:Lt,strokeDashArray:s,fill:"",strokeWidth:Bt*a,scaleX:1,scaleY:1,name:wa.Line,perPixelTargetFind:!0,hasBorders:!1}):new y.fabric.Polyline(t,{stroke:null!=o?o:Lt,strokeDashArray:s,fill:"",strokeWidth:Bt*a,scaleX:1,scaleY:1,name:wa.Line,perPixelTargetFind:!0,hasBorders:!1}),u.data={rawDiagramElementSpec:d,otherData:{selectedRelColor:null!=r?r:$t}},u.parent=n,Ra(u,u.stroke,u.strokeWidth),null==(c=n.children)||c.push(u),u},Ta=(e,t,n,a,o,r,i,s)=>{var l,_,c,d,u,g,m;let b,p=1,h=1;var f,w,v,x;null!=t&&t.shapes&&(b=t.shapes.filter((e=>e.shape_type===wa.Text))[0],b&&(p=null!=(f=null==(w=b.size)?void 0:w.scale_x)?f:1,h=null!=(v=null==(x=b.size)?void 0:x.scale_y)?v:1));const j=[],O={fontFamily:Ct.FONT.FAMILY,fill:null!=(l=null!=(_=null==s?void 0:s.font_color)?_:null==i||null==(c=i.diagramsThemeSettings)?void 0:c.text_color_relationship)?l:Mt};if(null!=(d=e.base_data)&&d.label){var S,E,C,k,N;const t=new y.fabric.Text($(e.base_data.label),Object.assign({},O,{fontSize:It,fontWeight:"bold",textAlign:"center"}));t.top=e.technology?-(null!=(S=t.height)?S:0):-(null!=(E=t.height)?E:0)/2,t.left=(null!=(C=a.width)?C:0)/2-(null!=(k=t.width)?k:0)/2-(null!=(N=o[0].width)?N:0)/2,j.push(t)}if(e.technology){var T,R,L;const t=new y.fabric.Text(`[${e.technology}]`,Object.assign({},O,{fontSize:Dt,textAlign:"center"}));t.left=(null!=(T=a.width)?T:0)/2-(null!=(R=t.width)?R:0)/2-(null!=(L=o[0].width)?L:0)/2,j.push(t)}const M=new y.fabric.Group(j),I=M.getBoundingRect(),D=new y.fabric.Rect({top:I.top-At,left:I.left-At,width:I.width+2*At,height:I.height+2*At,fill:null!=(u=null==i||null==(g=i.diagramsThemeSettings)?void 0:g.bg_color_relationship)?u:Rt});let A,P;var F,B,z,U,H,W,K,X;null!=t&&t.alias&&n[t.alias]&&n[t.alias].label_position?(A=n[t.alias].label_position.x-(null!=(F=D.width)?F:0)/2,P=n[t.alias].label_position.y-(null!=(B=D.height)?B:0)/2):(A=(null!=(z=a.left)?z:0)+(null!=(U=a.width)?U:0)/2-(null!=(H=D.width)?H:0)/2,P=(null!=(W=a.top)?W:0)+(null!=(K=a.height)?K:0)/2-(null!=(X=D.height)?X:0)/2);const G=new y.fabric.Group([D,M],{name:wa.Text,hasControls:!1,left:A,top:P,scaleX:p,scaleY:h});var Y,Z;return G.data={rawDiagramElementSpec:b},G.parent=r,null==(m=r.children)||m.push(G),b&&void 0!==(null==(Y=b.position)?void 0:Y.left)&&void 0!==(null==(Z=b.position)?void 0:Z.top)&&G.setPositionByOrigin(new y.fabric.Point(b.position.left,b.position.top),"center","center"),G},Ra=(e,t,n)=>{const a=e.parent;e.on(pt,(t=>{var n,a,o;e.stroke=null==(n=e.data)||null==(n=n.otherData)?void 0:n.selectedRelColor,e.strokeWidth=(null!=(a=e.strokeWidth)?a:0)+zt,e.dirty=!0,null==(o=e.canvas)||o.renderAll(),((e,t)=>{var n;if(e.e&&null!=(n=t.parent)&&n.children){var a;const e=ln(t);if(!_n(null==(a=t.canvas)?void 0:a.getActiveObjects(),e.objects)){var o,r,i;null==(o=t.canvas)||o.discardActiveObject();const n=t.parent;let a;"multiple"===e.type?a=new y.fabric.ActiveSelection(e.objects,{canvas:t.canvas}):(a=new dn(e.objects,{canvas:t.canvas}),a.parent=t.parent,a.on(mt,(e=>{Ia(a.canvas,e,a,n)})),a.on(bt,(e=>{var a;null==(a=t.canvas)||a.discardActiveObject(),n.fire(bt)}))),a.hasBorders=!1,null==(r=t.canvas)||r.setActiveObject(a),null==(i=t.canvas)||i.requestRenderAll()}}})(t,e)})),e.on(ht,(a=>{var o;e.stroke=t,e.strokeWidth=n,e.dirty=!0,null==(o=e.canvas)||o.renderAll()})),e.on(mt,(t=>{Ia(e.canvas,t,e,a)}))},La=(e,t)=>{const n=e.parent;e.on("moving",(e=>{Ma(e)})),e.on(mt,(t=>{Ia(e.canvas,t,e,n)})),e.on(pt,(t=>{var n,a;e.fill=null==(n=e.data)||null==(n=n.otherData)?void 0:n.selectedRelColor,e.dirty=!0,null==(a=e.canvas)||a.renderAll()})),e.on(ht,(n=>{var a;e.fill=t,e.dirty=!0,null==(a=e.canvas)||a.renderAll()}))},Ma=e=>{var t;if(null!=(t=e.transform)&&t.target){const t=e.transform.target.parent;if(t){var n;const e=null==(n=t.children)?void 0:n.filter((e=>e.name===wa.Line))[0];e&&xa(e)}}},$a=(e,t,n)=>{if(n instanceof y.fabric.ActiveSelection){const a=[];return e.isReadOnly()?e.codingFeaturesEnabled&&a.push(...mn(e,t,n,!1)):a.push({isHeaderMenuItem:!1,id:"addPoint",label:"Add point",onClick:()=>{((e,t)=>{const n=e.canvas;if(t.pointer&&n){const o=e.getObjects().filter((e=>e.name===wa.Line))[0],r=e.getObjects().filter((e=>e.name===wa.Dot))[0];n.discardActiveObject();const i=o.parent;if(i){var a;const e=new cn(t.pointer.x,t.pointer.y,wa.Dot),s=ka(n,e,void 0,!1,i,!1,r.scaleX,r.scaleY,o.stroke,null==(a=r.data)?void 0:a.otherData.selectedRelColor,!1);((e,t)=>{const n=e.parent;if(n){var a;let o,r;const i=[];null==(a=n.children)||a.forEach((e=>{e.name===wa.Text?o=e:e.name===wa.Rectangle?r=e:e.name!==wa.Dot&&e.name!==wa.Triangle||i.push(e)})),i.push(t),i.sort(((e,t)=>e.getCenterPoint().x-t.getCenterPoint().x)),n.children=i,n.children.push(e),o&&n.children.push(o),r&&n.children.push(r)}})(o,s),n.add(s),xa(o)}}})(n,t)}},{id:"separatorRel",isSepator:!0},...mn(e,t,n,!1)),[{isHeaderMenuItem:!0,id:"relationshipContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:a}]}return n.name!==wa.Dot||e.isReadOnly()?[]:[{isHeaderMenuItem:!0,id:"dotContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:[{isHeaderMenuItem:!1,id:"removePoint",label:"Remove point",onClick:()=>{(e=>{const t=e.parent;if(t&&e.canvas){var n;const i=null==(n=t.children)?void 0:n.filter((e=>e.name===wa.Dot||e.name===wa.Triangle));if(void 0!==i&&i.length>2){var a,o;const n=null==(a=t.children)?void 0:a.filter((e=>e.name===wa.Line))[0],i=null==(o=t.children)?void 0:o.findIndex((t=>t.getCenterPoint().eq(e.getCenterPoint())));var r;void 0!==i&&i>-1&&(null==(r=t.children)||r.splice(i,1)),e.canvas.remove(e),xa(n)}}})(n)}}]}]},Ia=(e,t,n,a)=>{n.name!==wa.Line&&n.name!==wa.Rectangle&&e&&a.onComponentMouseUp(e,t,n,$a(e,t,n))},Da=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.relationship_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b;const p=qn(Zn(null==(o=e.base_data)?void 0:o.tags),null==a?void 0:a.tags),h={alias:null==(r=e.base_data)?void 0:r.alias};let f=1;const w=null==(i=t.shapes)?void 0:i.filter((e=>e.shape_type===wa.Dot));w&&w.length>0&&(f=null!=(s=null==(l=w[0].size)?void 0:l.scale_x)?s:1);const y=new ya(e,t,h,n,[],{visible:!1,selectable:!1},void 0,void 0,!0),v=Ea(t,n),x=Ca(t,n,v,y,null!=(_=null==p?void 0:p.border_color)?_:null==a||null==(c=a.diagramsThemeSettings)?void 0:c.line_color_relationship,null==a||null==(d=a.diagramsThemeSettings)?void 0:d.selected_color_relationship),j=x.map((e=>new cn(e.getCenterPoint().x,e.getCenterPoint().y,e.name))),O=Na(t,j,y,f,null!=(u=null==p?void 0:p.border_color)?u:null==a||null==(g=a.diagramsThemeSettings)?void 0:g.line_color_relationship,null==a||null==(m=a.diagramsThemeSettings)?void 0:m.selected_color_relationship,n,null==(b=Un(null==p?void 0:p.border_style))?void 0:b.value);return Ta(e,t,n,O,x,y,a,p),va(y),y})(t,hn(t.base_data.alias,t.from,t.to,{Relationship:t.relationship_type},n),a,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...null!=(r=i.children)?r:[]),i}},Aa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.system_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.system_type){case"System":case"SystemDb":case"SystemQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_software_system)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_software_system)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_software_system)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON},u=Object.assign({},d,a);if(e.system_type)switch(e.system_type){case"System":return sa(e,t,n,u,o);case"SystemDb":return la(e,t,n,u,o);case"SystemQueue":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{SoftwareSystem:t.system_type},n),a,void 0,o);break;case"System_Ext":case"SystemDb_Ext":case"SystemQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_software_system_ext)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_software_system_ext)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_software_system_ext)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT},u=Object.assign({},d,a);if(e.system_type)switch(e.system_type){case"System_Ext":return sa(e,t,n,u,o);case"SystemDb_Ext":return la(e,t,n,u,o);case"SystemQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{SoftwareSystem:t.system_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}};class Pa{constructor(){this.graphviz=void 0}async initialize(){return this.graphviz=await zn.Graphviz.load(),this}renderDiagram(e,t,n,a){if(e&&n){var o,r,i,s,l,_,c,d;if(e.diagramListener=t,e.autoLayoutEnabled=null==(o=n.diagram_spec)?void 0:o.auto_layout_enabled,e.autoLayoutOrientation=null==(r=n.diagram_spec)?void 0:r.auto_layout_orientation,e.backgroundColor=null!=(i=null==a?void 0:a.bg_color_diagram)?i:ft,null!=(s=n.diagram_spec)&&s.auto_layout_enabled)if(this.graphviz){const e=function(e,t){var n,a;const o={},r=[];if(null!=(n=t.diagram_spec)&&n.auto_layout_enabled&&t.diagram_spec.auto_layout_orientation&&null!=(a=t.diagram_plantuml)&&a.elements){console.time("autoLayoutGeneration");const n=t.diagram_plantuml.elements,a=t.diagram_spec.auto_layout_orientation,l=t.diagram_spec.auto_layout_ranksep,_=t.diagram_spec.auto_layout_subgraph_inner_margin,c=t.diagram_spec.auto_layout_subgraph_outer_margin,d=t.diagram_spec.auto_layout_only_straight_arrows,u=(e=>{for(const t of e)if(yn(t)||jn(t))return!0;return!1})(n),g=function(e){let t=In,n=Dn;return e&&(t-=.1,n-=.1),{x:Number.parseFloat(t.toFixed(2)),y:Number.parseFloat(n.toFixed(2))}}(u),m=function(e,t,n,a,o,r,i){const s=new Set;return`\n digraph G {\n pad = "${i.x},${i.y}"\n dpi = ${$n.toFixed(1)}\n penwidth="1"\n rankdir = ${"LeftToRight"===t?"LR":"TB"}\n nodesep=0\n ranksep=${n}\n compound=true\n bgcolor="red"\n ${r?"splines=ortho":""}\n node [shape="rect", fixedsize=true, penwidth="1"]\n ${Bn(e,s,a,o)}\n }\n `}(n,a,l,_,c,d,g);try{var i,s;let t=e.dot(m,"json");const n=JSON.parse(t),a=function(e){const t=e.split(",");return Number.parseFloat(t[3])}(n.bb);null==(i=n.objects)||i.forEach((e=>{if(!function(e){return e.width&&0===Number.parseInt(e.width)&&e.height&&0===Number.parseInt(e.height)&&e.peripheries&&0===Number.parseInt(e.peripheries)&&""===e.label}(e)&&!function(e){return e.name.endsWith(Ln)}(e)&&e._draw_){const t=e._draw_.filter((e=>"p"===e.op||"P"===e.op))[0],n=Mn(g,a,t.points[0]),r=Mn(g,a,t.points[1]),i=Mn(g,a,t.points[2]),s=r[0],l=r[1];let _;4===t.points.length&&(_={x:i[0]-r[0],y:n[1]-r[1]}),o[e.name]={position:{x:s,y:l},size:_}}})),null==(s=n.edges)||s.forEach((e=>{const t={path:[]};if(e._draw_?e._draw_.filter((e=>"b"===e.op))[0].points.forEach(((e,n)=>{var o;const r=Mn(g,a,e),i=r[0],s=r[1];0===n?t.start={x:i,y:s}:null==(o=t.path)||o.push({x:i,y:s})})):r.push(Yn),e._hdraw_){const n=e._hdraw_.filter((e=>"P"===e.op))[0].points,o=Mn(g,a,n[1]);t.end={x:o[0],y:o[1]}}if(e._ldraw_){var n;const o=null==(n=e._ldraw_)?void 0:n.filter((e=>"T"===e.op))[0].pt;if(o){const e=Mn(g,a,o);t.label_position={x:e[0],y:e[1]}}}if(t.start&&t.end){const n=t.path&&t.path.length>2?t.path[1]:t.end,o=t.path&&t.path.length>2?t.path[t.path.length-2]:t.start;"false"===e.keadex_fromissubgraph&&n.x&&n.y&&(t.start.x<n.x?t.start.x-=An:t.start.x>n.x&&(t.start.x+=An),t.start.y<n.y?t.start.y-=An:t.start.y>n.y&&(t.start.y+=An)),"false"===e.keadex_toissubgraph&&o.x&&o.y&&(t.end.x<o.x?t.end.x-=An:t.end.x>o.x&&(t.end.x+=An),t.end.y<o.y?t.end.y-=An:t.end.y>o.y&&(t.end.y+=An)),t.svg_path=function(e,t,n,a,o){const r=e.split(" ").slice(1).map((e=>e.split(",").map(Number)));let i=`M ${n.x} ${n.y}`;for(let e=r.length-3;e>=0;e-=3){const[n,s]=Mn(a,o,r[e+1]),[l,_]=Mn(a,o,r[e]),[c,d]=Mn(a,o,r[e-1]);let u=c,g=d;1===e&&(u=t.x,g=t.y),i+=` C ${n} ${s}, ${l} ${_}, ${u} ${g}`}return i}(e.pos,t.start,t.end,g,a)}o[e.name]=t}))}catch(e){console.error(e),r.push(Yn)}}return console.timeEnd("autoLayoutGeneration"),{positions:o,errors:r}}(this.graphviz,n);n.auto_layout=e.positions,n.auto_layout_errors=e.errors,e.errors.length>0&&(e.errors.indexOf(Yn)>=0?(console.warn(Xn),Be.toast.warn(Xn)):(console.error(e.errors.join(", ")),Be.toast.error(e.errors.join(", "))))}else console.error(Gn),Be.toast.error(Gn);null!=(l=n.diagram_spec)&&l.grid_enabled?e.enableGrid():e.disableGrid();const u=Fa(e,null==(_=n.diagram_plantuml)?void 0:_.elements,n.diagram_spec,null!=(c=n.auto_layout)?c:{},{diagramsThemeSettings:a,tags:null==(d=n.diagram_plantuml)?void 0:d.tags});return Ba(u),u}}}const Fa=(e,t,n,a,o)=>{const r=[];if(n){if(!o||!o.skipLegendRendering){const t=Kn(hn(Hn,void 0,void 0,void 0,n),o);t&&(r.push(t),null==e||e.add(t))}if(t)for(const i of t)if(yn(i)){const t=ia(e,yn(i),n,a,o);t&&r.push(t)}else if(vn(i)){const t=ma(e,vn(i),n,a,o);t&&r.push(t)}else if(xn(i)){const t=ba(e,xn(i),n,a,o);t&&r.push(t)}else if(jn(i)){const t=pa(e,jn(i),n,a,o);t&&r.push(t)}else if(On(i)){const t=fa(e,On(i),n,a,o);t&&r.push(t)}else if(Sn(i)){const t=Da(e,Sn(i),n,a,o);t&&r.push(t)}else if(En(i)){const t=Aa(e,En(i),n,a,o);t&&r.push(t)}}return r},Ba=(e,t)=>{e.forEach((e=>{let n=function(e){let t;var n,a;return t=e.isVirtualGroupParent()?null==(n=e.data)||null==(n=n.rawDiagramElementSpec)||null==(n=n.shapes)||null==(n=n.reduce(((e,t)=>{var n,a;return void 0===(null==(n=e.position)?void 0:n.z_index)?t:(void 0===(null==(a=t.position)?void 0:a.z_index)||(t.position.z_index,e.position.z_index),e)})).position)?void 0:n.z_index:null==(a=e.data)||null==(a=a.rawDiagramElementSpec)||null==(a=a.position)?void 0:a.z_index,t}(e);var a;n&&(t&&n<=t&&(n=t+1,t++),e.moveTo(n)),e.isVirtualGroupParent()&&Ba(e.children,null!=(a=n)?a:an(e.canvas,e.children[0]))}))},za=require("@tauri-apps/plugin-dialog"),Ua=require("@tauri-apps/plugin-process"),Ha=require("@tauri-apps/plugin-shell"),Wa=require("@reduxjs/toolkit"),Ka=(0,Wa.createSlice)({name:"project",initialState:{value:void 0},reducers:{openProject:(e,t)=>{e.value=t.payload},saveProject:(e,t)=>{e.value=t.payload},closeProject:e=>{e.value=void 0}}}),{openProject:Xa,saveProject:Ga,closeProject:Ya}=Ka.actions,Za=Ka.reducer,qa=require("@tauri-apps/api/core"),Va="create_project",Qa="open_project",Ja="close_project";async function eo(e,t){return Qe.WEB_MODE?(0,qa.invoke)(Qa,{dirHandle:t}):(0,qa.invoke)(Qa,{root:e})}async function to(e){return Qe.WEB_MODE?(0,qa.invoke)(Ja):(0,qa.invoke)(Ja,{root:e})}async function no(){return(0,qa.invoke)("list_diagrams")}async function ao(e,t,n,a){return(0,qa.invoke)("save_spec_diagram_raw_plantuml",{rawPlantuml:n,diagramSpec:a,diagramName:e,diagramType:t})}async function oo(e,t){return(0,qa.invoke)("parsed_element_to_plantuml",{parsedElement:e,elementLevel:null!=t?t:0})}async function ro(e,t){return(0,qa.invoke)("diagram_to_link_string",{diagramHumanName:e,diagramType:t})}async function io(e){return(0,qa.invoke)("diagram_from_link_string",{linkString:e})}async function so(e){return(0,qa.invoke)("deserialize_plantuml_by_string",{rawPlantuml:e})}async function lo(e){return(0,qa.invoke)("diagram_name_type_from_path",{path:e})}async function _o(e,t,n){return(0,qa.invoke)("dependent_elements_in_diagram",{alias:e,diagramName:t,diagramType:n})}async function co(e){return(0,qa.invoke)("create_library_element",{diagramElement:e})}async function uo(e,t){return(0,qa.invoke)("update_library_element",{oldDiagramElement:e,newDiagramElement:t})}async function go(e){return(0,qa.invoke)("execute_hook",{payload:e})}const mo=require("@tauri-apps/plugin-updater");function bo(e,t,n){(0,mo.check)().then((async a=>{var o;null!=a&&a.available?e({id:"confirmMinaUpdateModal",title:`${t("updater.title",{version:a.version})}`,body:null!=(o=(0,g.jsx)("div",{className:"whitespace-pre-wrap",children:a.body}))?o:"",buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:t("common.proceed")}),className:"button--safe",onClick:async()=>{Be.toast.info(t("updater.updating")),await a.downloadAndInstall(),await(0,Ua.relaunch)()}}]}):n&&Be.toast.info(t("common.info.youre_up_to_date"))}))}const po=require("@tauri-apps/api/app"),ho=require("@tauri-apps/plugin-clipboard-manager"),fo=require("@tauri-apps/plugin-os"),wo=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)();return(0,r.useEffect)((()=>{(async()=>{let e,t,n,o,r,i;Qe.WEB_MODE?(e=Qe.APP_VERSION,o="web"):(e=await(0,po.getVersion)(),t=await(0,po.getTauriVersion)(),n=await(0,fo.arch)(),o=await(0,fo.platform)(),r=await(0,fo.type)(),i=await(0,fo.version)()),a({version:e,tauriVersion:t,arch:n,platform:o,osType:r,kernelVersion:i})})()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"modal__body",children:n&&(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"font-bold",children:"Keadex Mina:"}),(0,g.jsxs)("ul",{className:"ml-2",children:[(0,g.jsxs)("li",{children:[t("common.version"),": ",n.version]}),n.tauriVersion&&(0,g.jsxs)("li",{children:["Tauri ",t("common.version"),": ",n.tauriVersion]})]}),(0,g.jsxs)("div",{className:"font-bold",children:[t("common.system"),":"]}),(0,g.jsxs)("ul",{className:"ml-2",children:[n.arch&&(0,g.jsxs)("li",{children:[t("common.architecture"),": ",n.arch]}),(0,g.jsxs)("li",{children:[t("common.platform"),": ",n.platform]}),n.osType&&(0,g.jsxs)("li",{children:[t("about.os_type"),": ",n.osType]}),n.kernelVersion&&(0,g.jsxs)("li",{children:[t("about.kernel_version"),": ",n.kernelVersion]})]})]})}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-copy",children:(0,g.jsx)("span",{children:t("common.copy")}),onClick:()=>{(0,ho.writeText)(JSON.stringify(n,null,2)),Be.toast.info(t("common.info.copied_to_clipboard"))}},{key:"button-ok",children:(0,g.jsx)("span",{children:"Ok"}),"data-te-modal-dismiss":!0}])})]})},yo=(e,t,n,a,o)=>{const r=t=>{let a=t,r="common.question.confirm_exit";void 0===t&&(a=()=>{o.dispatch(Ya()),o.hideModal(),n(xo)},r="common.question.confirm_close_project"),o.showModal({id:"confirmCloseProjectModal",title:e("common.confirmation").toString(),body:e(r).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{o.currentProjectRoot?((t,n)=>{to(t).then((t=>{t?n():Be.toast.error(e("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((t=>{Be.toast.error(e("common.error.project_not_closed",{errorMessage:t.msg}))}))})(o.currentProjectRoot,a):a()}}]})},i=t=>{o.showModal({id:"confirmOpenProjectModal",title:`${e("common.confirmation")}`,body:`${e("common.question.confirm_not_saved_changed_current_project")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{o.currentProjectRoot&&(to(o.currentProjectRoot).then((n=>{n?t():Be.toast.error(e("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((t=>{Be.toast.error(e("common.error.project_not_closed",{errorMessage:t.msg}))})),o.hideModal())}}]})},l=[],_=[];return a.pathname!==xo&&(a.pathname.startsWith(Ao)||a.pathname==So?_.push({isHeaderMenuItem:!1,id:"wbar_file_close",label:e("common.close").toString(),onClick:()=>{n(xo)}}):(Qe.WEB_MODE||(_.push({isHeaderMenuItem:!1,id:"wbar_file_open_local_project",label:e("common.action.open_local_project").toString(),onClick:()=>{za.open({directory:!0}).then((async t=>{Array.isArray(t)?Be.toast.error(e("common.error.invalid_path")):t&&i((()=>{(t=>{eo(t,void 0).then((e=>{o.dispatch(Xa(e)),n(jo)})).catch((t=>{Be.toast.error(e("common.error.project_not_opened",{errorMessage:t.msg}))}))})(t)}))}))}}),_.push({isHeaderMenuItem:!1,id:"wbar_file_open_remote_project",label:e("common.action.open_remote_project").toString(),onClick:()=>{i((()=>{n(So)}))}})),_.push({isHeaderMenuItem:!1,id:"wbar_file_close_project",label:e("common.action.close_project").toString(),onClick:()=>r()}))),Qe.WEB_MODE||_.push({isHeaderMenuItem:!1,id:"wbar_file_exit",label:e("common.exit").toString(),onClick:()=>{r((()=>{(0,Ua.exit)()}))}}),_.length>0&&l.push({isHeaderMenuItem:!0,id:"wbar_file",label:e("common.file").toString(),onClick:void 0,subMenuItems:_}),a.pathname===xo||a.pathname.startsWith(Ao)||a.pathname==So||Qe.WEB_MODE||l.push({isHeaderMenuItem:!0,id:"wbar_edit",label:e("common.edit").toString(),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:"wbar_edit_search",label:e("common.search").toString(),onClick:()=>{null==t||t.emit({type:s.OpenSearch})}}]}),l.push({isHeaderMenuItem:!0,id:"wbar_help",label:e("common.help").toString(),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:"wbar_help_documentation",label:e("common.documentation").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/docs/mina/introduction")}},{isHeaderMenuItem:!1,id:"wbar_help_github_repo",label:e("common.github_repo").toString(),onClick:()=>{(0,Ha.open)("https://github.com/keadex/keadex/tree/main/apps/keadex-mina")}},{isHeaderMenuItem:!1,id:"wbar_help_download_mina_cli",label:e("common.action.download_mina_cli").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/projects/keadex-mina")}},...Qe.WEB_MODE?[{isHeaderMenuItem:!1,id:"wbar_help_download_desktop_app",label:e("common.action.download_desktop_app").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/projects/keadex-mina")}}]:[],{id:"wbar_help_separator1",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_c4_model",label:e("common.c4_model").toString(),onClick:()=>{(0,Ha.open)("https://c4model.com/")}},{isHeaderMenuItem:!1,id:"wbar_help_c4_plantuml",label:e("common.c4_plantuml").toString(),onClick:()=>{(0,Ha.open)("https://github.com/plantuml-stdlib/C4-PlantUML/")}},{id:"wbar_help_separator2",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_report_issue",label:e("common.action.report_issue").toString(),onClick:()=>{(0,Ha.open)("https://github.com/keadex/keadex/issues/new?assignees=&labels=keadex+mina&projects=&template=keadex-mina-bug.md&title=%5BKeadex+Mina+Bug%5D")}},...Qe.WEB_MODE?[]:[{id:"wbar_help_separator3",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_check_for_updates",label:e("common.action.check_for_updates").toString(),onClick:()=>{bo(o.showModal,e,!0)}}],{id:"wbar_help_separator4",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_about",label:e("common.about").toString(),onClick:()=>{o.showModal({id:"aboutModal",title:"Keadex Mina",body:(0,g.jsx)(wo,{}),buttons:!1})}}]}),{menuItemsProps:l}},vo={},xo="/";vo[xo]={path:xo,titlebarMenuFactory:yo};const jo="/project/home",Oo="/project/settings",So="/project/open/remote";vo[jo]={path:jo,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[Oo]={path:Oo,isAppMenuVisible:!0,protectExit:!0,titlebarMenuFactory:yo},vo[So]={path:So,isAppMenuVisible:!1,titlebarMenuFactory:yo};const Eo="/diagram/edit";vo[Eo]={path:Eo,isAppMenuVisible:!0,titlebarMenuFactory:yo};const Co="/library/",ko=`${Co}${Nn("Person")}`,No=`${Co}${Nn("SoftwareSystem")}`,To=`${Co}${Nn("Container")}`,Ro=`${Co}${Nn("Component")}`;vo[ko]={path:ko,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[No]={path:No,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[To]={path:To,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[Ro]={path:Ro,isAppMenuVisible:!0,titlebarMenuFactory:yo};const Lo=":alias?",Mo=`/dependency-table/${Lo}`;vo[Mo]={path:Mo,isAppMenuVisible:!0,isAppMenuCollapsed:!0,titlebarMenuFactory:yo};const $o=":projectRootUrl?",Io=":diagramUrl?",Do=":ghToken?",Ao="/remote-diagrams",Po=`${Ao}/${$o}/${Io}/${Do}`;vo[Po]={path:Po,isAppMenuVisible:!1,titlebarMenuFactory:yo};const Fo="mina://",Bo=`${Fo}open-diagram/`,zo=`${Fo}dependency-table/`,Uo=`${Fo}remote-diagrams/`,Ho=`${Fo}github-authenticated/`;vo[Bo]={path:Bo,data:{requiresProject:!0}},vo[zo]={path:zo,data:{requiresProject:!0}},vo[Uo]={path:Uo,data:{requiresProject:!1}},vo[Ho]={path:Ho,data:{requiresProject:!1}};const Wo=vo,Ko=require("react-redux"),Xo=Ko.useDispatch,Go=Ko.useSelector,Yo=require("react-resizable"),Zo={prefix:"fas",iconName:"diagram-project",icon:[166.78,135.15,[],"","M84.54,59.45V84.31m4.25,0V59.45a4.26,4.26,0,0,0-8.51,0V84.31a4.26,4.26,0,1,0,8.51,0ZM128.3,46.82V12a12,12,0,0,0-12-12H50.48a12,12,0,0,0-12,12V46.82a12,12,0,0,0,12,12H116.3A12,12,0,0,0,128.3,46.82Zm0,76.33V88.33a12,12,0,0,0-12-12H50.48a12,12,0,0,0-12,12v34.82a12,12,0,0,0,12,12H116.3A12,12,0,0,0,128.3,123.15ZM20.49,36.55l-13,28.9M28,33.71,17.65,29.06,0,68.3,10.34,73Zm-7.5,66.21L7.5,71M28,102.76,10.34,63.52,0,68.17l17.65,39.24Zm118.3-2.84,13-28.9m7.49-2.85-10.34-4.65L138.8,102.76l10.34,4.65Zm-7.49-2.72-13-28.9M166.78,68.3,149.14,29.06,138.8,33.71,156.44,73Z"]},qo=i().memo((e=>{const{t}=(0,G.useTranslation)(),n=(0,a.useLocation)(),{modal:o,safeExit:r}=De(Wo);return(0,g.jsxs)("div",{className:"flex flex-col",children:[o,(0,g.jsxs)("div",{className:"p-4 text-center",children:[(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faBook})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:t("common.library")})]}),(0,g.jsx)("ul",{className:"mt-3",children:et.map((e=>(0,g.jsx)("li",{className:"pl-2 "+(n.pathname===`${Co}${Nn(e)}`?"active":""),onClick:()=>r(`${Co}${Nn(e)}`),children:c()(kn(e))},e)))})]})})),Vo=i().memo((e=>{var t,n,o;const{t:r}=(0,G.useTranslation)(),{modal:i,showModal:s,hideModal:l}=ce(),{modal:_,safeExit:c}=De(Wo),d=Xo(),m=(0,a.useNavigate)(),b=Go((e=>e.project.value));return(0,g.jsxs)("div",{className:"flex flex-col p-4 text-center",children:[i,_,(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:Zo})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:null==b||null==(t=b.project_settings)?void 0:t.name}),(0,g.jsxs)("div",{className:"mt-1 text-sm font-light italic pointer-events-none",children:["v",null==b||null==(n=b.project_settings)?void 0:n.version]}),(0,g.jsx)("div",{className:"mt-4 text-left pointer-events-none",children:null==b||null==(o=b.project_settings)?void 0:o.description}),(0,g.jsxs)("div",{className:"mt-5",children:[(0,g.jsx)(te,{className:"mr-3 mt-3 w-24",onClick:function(e){c(Oo)},children:r("common.settings")}),(0,g.jsx)(te,{className:"mr-3 mt-3 w-24",onClick:function(e){c(jo)},children:r("common.diagrams")})]}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsx)(te,{className:"button--dangerous absolute bottom-8 left-1/2 w-36 -translate-x-1/2",onClick:function(){s({id:"confirmCloseProjectModal",title:r("common.confirmation").toString(),body:r("common.question.confirm_close_project").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:r("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:r("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{null!=b&&b.project_settings.root?to(null==b?void 0:b.project_settings.root).then((e=>{e?(d(Ya()),l(),m(xo)):Be.toast.error(r("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((e=>{Be.toast.error(r("common.error.project_not_closed",{errorMessage:e.msg}))})):(d(Ya()),l(),m(xo))}}]})},children:r("common.action.close_project")})})]})})),Qo=require("@tauri-apps/api/path"),Jo=require("escape-html");var er=n.n(Jo);const tr=require("escape-string-regexp");var nr=n.n(tr),ar=function(e){return e[e.SearchOnly=0]="SearchOnly",e[e.SearchAndReplace=1]="SearchAndReplace",e}(ar||{});const or={diagrams:!0,library:!0},rr=i().memo((e=>{const t=(0,a.useLocation)(),{t:n}=(0,G.useTranslation)(),{modal:o,safeExit:i}=De(Wo),{modal:s,showModal:_,hideModal:c}=ce(),m=Go((e=>e.project.value)),[b,p]=(0,r.useState)(!1),[h,f]=(0,r.useState)(""),[w,y]=(0,r.useState)(!1),[v,x]=(0,r.useState)(""),[j,O]=(0,r.useState)(or),[S,E]=(0,r.useState)(!1),[C,k]=(0,r.useState)((0,g.jsx)(g.Fragment,{})),N=(0,r.useContext)(l);function T(e,t){const n=new RegExp(nr()(t),"gi");return er()(e).replace(n,(e=>`<span class='search-highlighted'>${er()(e)}</span>`))}function R(e,a){if(e.replace(/ /g,"").length>0){if(a&&Object.keys(a.results).length>0){const o=1===a.count?n("common.result").toLowerCase():n("common.results").toLowerCase();let r=`${a.count} ${o}`;a.reached_limit&&(r=n("common.info.limit_results",{count:a.count}));const s=[];return Object.keys(a.results).forEach((t=>{s.push({header:null!=m&&m.project_settings.root?t.replace(new RegExp(nr()(`${m.project_settings.root}${(0,Qo.sep)()}`),"gi"),""):t,body:T(a.results[t].map((e=>e.line_content)).join("\n"),e),parseHtmlBody:!0,data:a.results[t]})})),(0,g.jsxs)("div",{className:"contents h-full",children:[(0,g.jsx)("div",{className:"mb-2 w-full px-4 text-left text-sm",children:r}),(0,g.jsx)(xe,{id:"search-results",className:"h-full overflow-auto",items:s,showButtonTooltip:!0,buttonIconPosition:"left",onBodyClick:e=>async function(e){if(e&&e.length>0){const n=e[0].category,a=e[0].path;"Diagram"===n?await fs(a,"fs_path",t.pathname,N,i):"Library"===n&&await async function(e){const t=await async function(e){return(0,qa.invoke)("library_element_type_from_path",{path:e})}(e);i(`${Co}${Nn(t)}`)}(a)}}(e)})]})}return(0,g.jsx)("span",{className:"mt-4",children:n("common.info.no_results")})}return(0,g.jsx)(g.Fragment,{})}async function L(){if(h.replace(/ /g,"").length>0){p(!0);let e=await async function(e,t,n){return(0,qa.invoke)("search",{stringToSearch:e,includeDiagramsDir:t,includeLibraryDir:n,limit:1e3})}(h,j.diagrams,j.library);return p(!1),k(R(h,e)),e}}async function M(){if(function(){const e=!j.diagrams||j.diagrams&&t.pathname!==Wo[Eo].path,a=!j.library||j.library&&!t.pathname.startsWith(Co);return e?a||Be.toast.error(n("common.error.cannot_change_library")):Be.toast.error(n("common.error.cannot_change_diagrams")),h.replace(/ /g,"").length>0&&e&&a}()){const e=await L();if(e&&e.count>0){const t=Object.keys(e.results).reduce(((t,n)=>{var a,o;return t+(null!=(a=null==(o=e.results[n])?void 0:o.length)?a:0)}),0),a=e.count;e&&_({id:"confirmReplaceAllModal",title:n("common.confirmation").toString(),body:n("common.question.confirm_replace_all",{numOccurrences:t,numFiles:a}).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:n("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:n("common.replace")}),className:"button--safe",onClick:()=>{y(!0),async function(e,t,n,a){return(0,qa.invoke)("search_and_replace",{stringToSearch:e,replacement:t,includeDiagramsDir:n,includeLibraryDir:a})}(h,v,j.diagrams,j.library).then((()=>{y(!1),c(),L()}))}}]})}}}async function $(e,t){if("Enter"===e.key)switch(t){case ar.SearchOnly:L();break;case ar.SearchAndReplace:M()}}return(0,r.useEffect)((()=>{f(""),x(""),k((0,g.jsx)(g.Fragment,{})),O(or)}),[m]),(0,g.jsxs)("div",{id:"search-panel",className:"flex h-full flex-col text-center",children:[o,s,(0,g.jsxs)("div",{className:"p-4 pb-0",children:[(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faSearch})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:n("common.search")}),(0,g.jsxs)("div",{className:"mt-5",children:[(0,g.jsxs)("div",{className:"flex",children:[(0,g.jsx)(U,{icon:S?d.faAngleDown:d.faAngleRight,className:"icon w-5 text-left text-[0.9rem] self-start mt-[0.85rem]",onClick:()=>E(!S)}),(0,g.jsxs)("div",{className:"w-full mr-4 ml-[0.1rem]",children:[(0,g.jsx)(J,{autoComplete:"off",value:h,onKeyDown:e=>$(e,ar.SearchOnly),fixedWidth:!0,loading:b,onChange:e=>{f(e.target.value)},onIconClick:()=>L()}),S&&(0,g.jsx)(J,{autoComplete:"off",value:v,onKeyDown:e=>$(e,ar.SearchAndReplace),icon:Ae,fixedWidth:!0,loading:w,onChange:e=>{x(e.target.value)},onIconClick:()=>M()})]})]}),(0,g.jsx)($e,{id:"search-filters",className:"mt-3 mb-5 ml-5 !justify-start text-sm leading-[1.7]",options:[{id:"diagrams",label:n("common.diagrams"),value:!0},{id:"library",label:n("common.library"),value:!0}],onChange:(e,t)=>{let n=Object.assign({},j);n[e]=t,O(n)},values:j})]})]}),C]})}));var ir=function(e){return e[e.Project=0]="Project",e[e.Search=1]="Search",e[e.Library=2]="Library",e[e.DependencyTable=3]="DependencyTable",e}(ir||{});const sr=(0,r.forwardRef)(((e,t)=>{const{visible:n}=e,{t:a}=(0,G.useTranslation)(),o=(0,r.useContext)(l),{modal:i,safeExit:_}=De(Wo),[c,u]=(0,r.useState)(300),[m,b]=(0,r.useState)(!1),[p,h]=(0,r.useState)(ir.Project),f=[{menuItem:ir.Project,icon:Zo,title:a("common.project")},{menuItem:ir.Search,icon:d.faMagnifyingGlass,title:a("common.search")},{menuItem:ir.Library,icon:d.faBook,title:a("common.library")},{menuItem:ir.DependencyTable,icon:d.faSitemap,title:a("common.dependency_table"),onClick:()=>{ws(_,"")}}],w=e=>{e.onClick?(e.onClick(),b(!0)):(e.menuItem===p||m&&e.menuItem!==p)&&b(!m),h(e.menuItem)},y=e=>p===e&&!m;return null==o||o.useSubscription((e=>{e.type===s.OpenSearch&&(h(ir.Search),b(!1))})),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useImperativeHandle)(t,(()=>({collapse:()=>b(!0)}))),(0,g.jsxs)("div",{className:"h-full "+(n?"":"app-menu__parent--hidden"),children:[i,(0,g.jsx)("nav",{id:"app-menu-sidenav",className:`absolute h-full ${n?"":"!hidden"} bg-dark-primary group fixed left-0 overflow-hidden shadow-[0_4px_12px_0_rgba(0,0,0,0.07),_0_2px_4px_rgba(0,0,0,0.05)]`,children:(0,g.jsxs)("div",{className:"flex h-full flex-row",children:[(0,g.jsx)("div",{style:{width:"50px"},className:"window__inner-border border-b-0 border-l-0 border-t-0",children:(0,g.jsx)("ul",{className:"relative m-0 list-none text-center text-lg",children:(()=>{const e=[];return f.forEach((t=>{e.push((0,g.jsx)("li",{className:"relative "+(y(t.menuItem)?"active":""),onClick:()=>w(t),"data-te-toggle":"tooltip","data-te-placement":"right",title:t.title,children:(0,g.jsx)(U,{icon:t.icon,className:y(t.menuItem)?"active":"",onClick:()=>w(t)})},t.menuItem))})),e})()})}),(0,g.jsx)(Yo.Resizable,{height:1/0,width:c,onResize:(e,t)=>{u(t.size.width)},resizeHandles:["e"],children:(0,g.jsxs)("div",{style:{width:`${c}px`,height:"100%"},className:"window__inner-border box border-b-0 border-l-0 border-t-0 "+(m?"hidden":""),children:[(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Project,children:(0,g.jsx)(Vo,{})}),(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Search,children:(0,g.jsx)(rr,{})}),(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Library,children:(0,g.jsx)(qo,{})})]})})]})}),(0,g.jsx)("div",{id:"slim-content",className:"flex h-full",style:{paddingLeft:m?"50px":`${c+50}px`},children:(0,g.jsx)("div",{className:"h-full w-full overflow-auto",children:e.children})})]})})),lr=Ze();function _r(e,t,n,a){const o=[];t.current=!0,lr.isMaximized().then((r=>{t.current=!1,o.push({id:"minimize-close",icon:d.faMinus,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.minimize()}),r?o.push({id:"restore-btn",icon:d.faWindowRestore,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.unmaximize()}):o.push({id:"maximize-btn",icon:d.faWindowMaximize,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.maximize()}),o.push({id:"restore-close",icon:d.faXmark,className:"text-accent-primary hover:bg-red-600",onClick:()=>{n({id:"confirmSafeExitModal",title:`${a("common.confirmation")}`,body:`${a("common.question.confirm_close_app")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:a("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:a("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{lr.close()}}]})}}),e(o)}))}const cr=Ze(),dr={menuItemsProps:[]},ur=i().memo((e=>{const t=(0,a.useLocation)(),n=(0,a.useNavigate)(),{t:i}=(0,G.useTranslation)(),_=(0,r.useContext)(l),{modal:c,showModal:d,hideModal:u}=ce(),m=Xo(),b=Go((e=>e.project.value)),{routeDeepLink:p,modalSafeExit:h}=function(){const{t:e}=(0,G.useTranslation)(),{modal:t,safeExit:n}=De(Wo),i=(0,r.useContext)(l),_=(0,a.useLocation)();return{routeDeepLink:async function(t){console.debug("Routing deep link:",t);const a=o(t,Wo,((e,t)=>e.startsWith(t)));var r;if(a)if(null!=(r=a.data)&&r.requiresProject&&void 0===ps.getState().project.value)Be.toast.error(e("deep_link.required_open_project",{deepLink:t}));else{const o=t.replace(a.path,"");switch(a.path){case Bo:try{await fs(o,"link",_.pathname,i,n)}catch(n){Be.toast.error(e("deep_link.invalid_diagram_path",{deepLink:t}))}break;case zo:{const a=o.split("/");1!==a.length||1===a.length&&0===a[0].replace(/ /gi,"").length?Be.toast.error(e("deep_link.invalid_dependency_table_path",{deepLink:t})):ws(n,a[0])}break;case Uo:if(_.pathname===Wo[xo].path||_.pathname.startsWith(Ao)){const a=o.split("/");a.length<2||a.length>3?Be.toast.error(e("deep_link.invalid_remote_diagram_path",{deepLink:t})):ys(n,a)}else Be.toast.error(e("deep_link.remote_diagrams_project_opened"));break;case Ho:const a=o.split("/");1!=a.length?Be.toast.error(e("deep_link.invalid_gh_authenticated_path",{deepLink:t})):null==i||i.emit({type:s.GitHubTokenChanged,data:{token:a[0]}});break;default:Be.toast.error(e("deep_link.unsupported_deep_link"))}}else Be.toast.error(e("deep_link.unsupported_deep_link"))},modalSafeExit:t}}(),[f,y]=(0,r.useState)([]),[v,x]=(0,r.useState)(dr),[j,O]=(0,r.useState)(!1),S=(0,r.useRef)(!0),E=(0,r.useRef)(!1),C=(0,r.useRef)({}),k=(0,r.useRef)(null);return(0,r.useEffect)((()=>{console.debug("Deep link initializing");const e=(0,Ve.v4)();C.current[e]={unsubscribed:!1},E.current=!0,console.debug(C.current);const t=(0,qe.onOpenUrl)((t=>{if(!C.current[e].unsubscribed){if(!E.current&&t&&t.length>0){const e=t[0];p(e)}console.debug("Deep link initialized"),E.current=!1,function(){for(const e of Object.keys(C.current))C.current[e].unsubscribed&&delete C.current[e]}()}}));return()=>{console.debug("Deep link unlisten"),t&&(C.current[e]={unsubscribed:!0},t.then((e=>e())))}}),[t]),(0,r.useEffect)((()=>{let e;return console.debug("Layout -> useEffect()"),f&&0!==f.length||(_r(y,S,d,i),e=cr.listen(Ke.TauriEvent.WINDOW_RESIZED,(()=>{console.debug(`Layout -> on window resized() ${S.current}`),S.current||_r(y,S,d,i)}))),()=>{e&&e.then((e=>e()))}}),[]),(0,r.useEffect)((()=>{console.debug("Location changed!",t.pathname);const e=o(t.pathname,Wo);var a;e?(x(e.titlebarMenuFactory?e.titlebarMenuFactory(i,_,n,t,{showModal:d,hideModal:u,dispatch:m,currentProjectRoot:null==b?void 0:b.project_settings.root}):dr),O(void 0!==e.isAppMenuVisible&&e.isAppMenuVisible),e.isAppMenuCollapsed&&(null==(a=k.current)||a.collapse())):(O(!0),x(dr))}),[t]),(0,g.jsxs)("div",{className:"container max-w-none",children:[c,h,(0,g.jsx)(w,{}),(0,g.jsx)(Be.ToastContainer,{autoClose:4e3,hideProgressBar:!0,closeOnClick:!0,pauseOnHover:!0,draggable:!0,theme:"dark",position:"bottom-right"}),(0,g.jsx)(ae,{}),(0,g.jsxs)(We,{children:[(0,g.jsx)(He,{rightButtonsProps:Qe.WEB_MODE?[]:f,icon:"mina-logo.svg",menuProps:v,title:(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"inline opacity-20",children:"Keadex Mina"}),(0,g.jsx)("div",{className:"inline ml-1 px-1 py-[0.10rem] bg-primary text-brand1 rounded text-sm",children:"v2"})]})}),(0,g.jsx)("div",{className:"absolute bottom-0 left-0 right-0 top-8 overflow-auto",children:(0,g.jsx)(sr,{visible:j,ref:k,children:(0,g.jsx)(a.Outlet,{})})})]})]})})),gr=/^[A-Za-z0-9 ]+$/,mr=/^[A-Za-z0-9 \.\-_/?!]+$/,br=/^[A-Za-z0-9.-]+$/,pr=/^[A-Za-z0-9_]+$/;function hr(e,t,n){let a=`${Wo[Uo].path}${btoa(e)}/${btoa(t)}`;return n&&(a=a.concat(`/${n}`)),a}const fr=e=>{const{t}=(0,G.useTranslation)(),n=(0,a.useNavigate)(),{alias:o}=(0,a.useParams)(),[i,s]=(0,r.useState)(null!=o?o:""),[l,_]=(0,r.useState)(!1),[c,m]=(0,r.useState)(),b=(0,r.useRef)(null),p=[{accessorKey:"name",label:t("common.diagram_name"),size:400,className:"max-w-[400px] truncate",enableResizing:!1},{accessorKey:"humanType",label:t("common.diagram_type"),size:300,className:"max-w-[300px] truncate",enableResizing:!1},{id:"dependents",accessorFn:e=>{var t;return null==(t=e.dependents)?void 0:t.join(", ")},label:t("common.dependent_elements"),className:"text-ellipsis",enableResizing:!1}],h={data:null!=c?c:[],columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),pageCount:1};function f(){return i&&i.replace(/ /gi,"").length>0}async function w(e){_(!0),async function(e){return(0,qa.invoke)("search_diagram_element_alias",{alias:e,includeDiagramsDir:!0,includeLibraryDir:!1,limit:1e4})}(e).then((async t=>{if(_(!1),t&&t.count>0){var n;const a=[];for(const n of Object.keys(t.results)){const t=await lo(n);if(t.diagram_name&&t.diagram_type){const n=await ro(t.diagram_name,t.diagram_type),o=await _o(e,t.diagram_name,t.diagram_type);a.push({name:t.diagram_name,type:t.diagram_type,humanType:Cn(t.diagram_type),link:n,dependents:o})}}m(a),null==(n=b.current)||n.setPageSize(a.length)}else m([])})).catch((e=>{console.error(e),_(!1),m([]),Be.toast.error(t("dependency_table.dependencies_retrieval_error",{errorMessage:e.msg}))}))}return(0,r.useEffect)((()=>{f()&&w(i)}),[]),(0,r.useEffect)((()=>{o&&(s(o),w(o))}),[o]),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 flex flex-col",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("common.dependency_table")}),(0,g.jsx)("div",{className:"w-full mt-5",children:t("dependency_table.description_feature")}),(0,g.jsxs)("div",{className:"w-full mt-10 flex",children:[(0,g.jsx)("div",{className:"w-96",children:(0,g.jsx)(ue,{type:"text",label:`${t("dependency_table.alias_hint")}`,className:"",value:i,allowedChars:pr,info:`${t("common.allowed_pattern")}: ${pr}`,onChange:e=>s(e.target.value),onKeyDown:function(e){"Enter"===e.key&&f()&&w(i)}})}),(0,g.jsx)(te,{disabled:!f(),className:"ml-5 h-fit mt-1 w-60",onClick:()=>w(i),children:l?(0,g.jsx)(q,{className:"icon !h-4 !w-4"}):t("common.generate")}),(0,g.jsxs)(te,{disabled:!f(),className:"ml-2 h-fit mt-1 w-60",onClick:()=>function(e){const n=function(e){return`${Wo[zo].path}${e}`}(e);(0,ho.writeText)(n),Be.toast.info(t("common.info.copied_to_clipboard"))}(i),children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faShareNodes}),(0,g.jsx)("span",{className:"ml-2",children:t("common.action.copy_deep_link")})]})]}),c&&c.length>0&&(0,g.jsx)("div",{className:"w-full mt-10",children:(0,g.jsx)(Y,{ref:b,defaultExpanded:!0,disableExpandControls:!0,hidePaginationControls:!0,columns:p,tableOptions:h,globalFilter:"",expandable:!1,onRowClick:(e,t)=>{if(t.name&&t.type){const e={diagramName:t.name,diagramType:t.type};n(Eo,{state:e})}}})}),c&&0===c.length&&(0,g.jsx)("div",{className:"w-full mt-10 text-center text-accent-primary",children:t("dependency_table.no_dependencies_found")})]})},wr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",yr="text-accent-secondary hover:text-accent-primary [&.active]:text-accent-primary disabled:hover:text-accent-secondary disabled:opacity-50 leading-6",vr=(0,r.forwardRef)(((e,t)=>{const{diagramCodeViewCommands:n}=e,a=Qe.AI_ENABLED,{t:o}=(0,G.useTranslation)(),{forceUpdate:i}=Ie();return(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,r.useImperativeHandle)(t,(()=>({forceUpdate:i}))),(0,g.jsx)("div",{id:"diagram-code-view-toolbar",className:"w-full z-[6]",children:(0,g.jsx)("div",{className:"p-3",children:(0,g.jsxs)("div",{className:"bg-primary flex w-full flex-1 rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{disabled:!1===(null==n?void 0:n.canUndo()),icon:d.faRotateLeft,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.undo").toString(),onClick:()=>{null==n||n.undo(),i()}}),(0,g.jsx)(U,{disabled:!1===(null==n?void 0:n.canRedo()),icon:d.faRotateRight,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.redo").toString(),onClick:()=>{null==n||n.redo(),i()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faCopy,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.copy").toString(),onClick:()=>{null==n||n.copy()}}),(0,g.jsx)(U,{icon:d.faCut,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.cut").toString(),onClick:()=>{null==n||n.cut()}}),(0,g.jsx)(U,{icon:d.faPaste,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.paste").toString(),onClick:()=>{null==n||n.paste()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faSearch,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.find").toString(),onClick:()=>{null==n||n.find()}}),(0,g.jsx)(U,{icon:d.faTerminal,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.commands").toString(),onClick:()=>{null==n||n.commands()}}),(0,g.jsx)(he,{}),(0,g.jsx)(h,{menuItemsProps:function(){const e=[{id:"dropdown-add-diagram-element",label:(0,g.jsx)("div",{className:`${wr} ${yr} text-base`,children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.add_diagram_element").toString()})}),isHeaderMenuItem:!0,buttonClassName:"!p-0 !bg-transparent",subMenuItems:[]}];return tt.forEach((t=>{var a;null==(a=e[0].subMenuItems)||a.push({id:`add-diagram-element-${(0,Me.kebabCase)(t)}`,label:o(`common.${(0,Me.snakeCase)(t)}`),onClick:()=>null==n?void 0:n.addDiagramElement(t)})})),e}()}),(0,g.jsx)(h,{menuItemsProps:[{id:"dropdown-library",label:(0,g.jsx)("div",{className:`${wr} ${yr}`,children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faBook,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.library").toString()})}),isHeaderMenuItem:!0,buttonClassName:"!p-0 !bg-transparent",subMenuItems:[{id:"add-to-library",label:o("diagram_editor.add_to_library"),onClick:()=>null==n?void 0:n.addToLibrary()},{id:"import-from-library",label:o("diagram_editor.import_from_library"),onClick:()=>null==n?void 0:n.importFromLibrary()}]}]}),(0,g.jsx)(U,{icon:d.faLink,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.link_to").toString(),onClick:()=>{null==n||n.addDiagramLink()}}),a&&(0,g.jsx)(U,{icon:d.faRobot,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.ai_diagram_generator").toString(),onClick:()=>{null==n||n.openAI()}})]})})})})),xr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",jr=(0,r.forwardRef)(((e,t)=>{var n,a,o;const{diagramDesignViewCommands:i}=e,{t:s}=(0,G.useTranslation)(),{forceUpdate:l}=Ie();return(0,r.useImperativeHandle)(t,(()=>({forceUpdate:l}))),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,g.jsx)("div",{id:"diagram-design-view-toolbar",className:"w-full z-[6]",children:(0,g.jsx)("div",{className:"p-3",children:(0,g.jsxs)("div",{className:"bg-primary flex w-full flex-1 rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{disabled:!1===(null==i||null==(n=i.current)?void 0:n.canUndo()),icon:d.faRotateLeft,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.undo").toString(),onClick:()=>{var e;null==i||null==(e=i.current)||e.undo(),l()}}),(0,g.jsx)(U,{disabled:!1===(null==i||null==(a=i.current)?void 0:a.canRedo()),icon:d.faRotateRight,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.redo").toString(),onClick:()=>{var e;null==i||null==(e=i.current)||e.redo(),l()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faGear,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.settings").toString(),onClick:()=>{var e,t;null==i||null==(e=i.current)||e.updateDiagramDesignViewSettings(null==i||null==(t=i.current)?void 0:t.diagramDesignViewSettings()),l()}}),(0,g.jsxs)("div",{className:`${xr} w-fit px-3 cursor-pointer flex truncate`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${s("diagram_editor.configure_auto_layout").toString()}`,onClick:()=>{var e,t,n,a,o,r,s;null==i||null==(e=i.current)||e.updateAutoLayoutOptions(null==i||null==(t=i.current)?void 0:t.isAutoLayoutEnabled(),null==i||null==(n=i.current)?void 0:n.autoLayoutOrientation(),null==i||null==(a=i.current)?void 0:a.isGenerateOnlyStraightArrowsEnabled(),null==i||null==(o=i.current)?void 0:o.ranksep(),null==i||null==(r=i.current)?void 0:r.subgraphInnerMargin(),null==i||null==(s=i.current)?void 0:s.subgraphOuterMargin()),l()},children:[(0,g.jsx)("div",{className:"my-auto w-3 h-3 mr-2 rounded-full "+(null!=i&&null!=(o=i.current)&&o.isAutoLayoutEnabled()?"bg-green-700":"bg-red-700")}),(0,g.jsx)("span",{className:"my-auto truncate",children:s("common.auto_layout")})]}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faFileExport,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${s("common.export").toString()} ${s("common.diagram").toString().toLowerCase()}`,onClick:()=>{var e;null==i||null==(e=i.current)||e.exportDiagram()}})]})})})})),Or=i().memo((e=>{var t,n,a;const{tagsDirection:o,scrollable:r,diagram:i,handleDiagramHeaderClick:s}=e;return(null==i?void 0:i.diagram_type)&&(0,g.jsxs)("div",{className:"w-full flex flex-col items-center py-1 pr-3 "+(s?"cursor-pointer":""),onClick:function(){s&&s()},children:[(0,g.jsxs)("div",{className:"flex w-full my-auto "+("bottom"===o?"flex-col":""),children:[(0,g.jsxs)("div",{className:"text-lg text-accent-primary grow truncate",children:[Cn(i.diagram_type)," Diagram -"," ",i.diagram_name]}),(null==(t=i.diagram_spec)?void 0:t.tags)&&(0,g.jsx)("div",{className:"bottom"===o?"mt-2 mb-5":"",children:(0,g.jsx)(je,{tags:i.diagram_spec.tags,className:"right"===o?"float-right top-1/2 -translate-y-1/2":""})})]}),(null==(n=i.diagram_spec)?void 0:n.description)&&(0,g.jsx)("div",{className:"w-full text-sm whitespace-break-spaces "+(r?"":"line-clamp-3"),children:null==(a=i.diagram_spec)?void 0:a.description})]})})),Sr={diagram_name:"",diagram_type:Je[0],diagram_spec:{uuid:(0,Ve.v4)(),tags:[],shapes:[],elements_specs:[],auto_layout_enabled:!0,auto_layout_orientation:"TopToBottom",auto_layout_only_straight_arrows:!0,auto_layout_ranksep:1,auto_layout_subgraph_inner_margin:0,auto_layout_subgraph_outer_margin:6.5,grid_enabled:!1}},Er=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(Sr),[m,b]=(0,r.useState)([]),[p,h]=(0,r.useState)(!1);function f(e){b(e.detail.tagify.value.map((e=>e.value)))}return(0,r.useEffect)((()=>{e.diagramName&&e.diagramType&&async function(e,t){return(0,qa.invoke)("get_diagram",{diagramName:e,diagramType:t})}(e.diagramName,e.diagramType).then((e=>{var t,n;u(e),b(null!=(t=null==(n=e.diagram_spec)?void 0:n.tags)?t:[])}))}),[e.diagramName,e.diagramType]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body flex flex-col",children:[(0,g.jsx)("span",{className:"text-brand1 font-bold text-lg",children:c("common.general")}),(0,g.jsx)(ue,{type:"text",disabled:"edit"===e.mode||"readonly"===e.mode,label:`${c("common.name")}*`,classNameRoot:"mt-2",value:d.diagram_name,allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,onChange:e=>u(Object.assign({},d,{diagram_name:e.target.value}))}),(0,g.jsx)(me,{id:"diagram-type-selector",disabled:"edit"===e.mode||"readonly"===e.mode,label:`${c("common.type")}*`,className:"mt-6",value:d.diagram_type,options:Je.map((e=>({label:Cn(e),value:e}))),onChange:e=>u(Object.assign({},d,{diagram_type:e.target.value}))}),(0,g.jsx)(we,{disabled:"readonly"===e.mode,label:`${c("common.description")}`,classNameRoot:"mt-6",value:null!=(t=null==(n=d.diagram_spec)?void 0:n.description)?t:"",onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{description:e.target.value})}))}),(0,g.jsx)(Ee,{disabled:"readonly"===e.mode,id:"diagram-tags",className:"mt-6",label:c("common.tags"),tags:m,settings:{callbacks:{add:f,remove:f},editTags:!1}}),(0,g.jsx)("span",{className:"text-brand1 font-bold mt-6 text-lg "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:c("common.auto_layout")}),(0,g.jsxs)("div",{className:"flex flex-row mt-5 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:[(0,g.jsxs)("span",{children:[`${c("common.enabled")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:null==(a=d.diagram_spec)?void 0:a.auto_layout_enabled,options:[{label:c("common.yes"),value:!0},{label:c("common.no"),value:!1}],onChange:e=>{u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_enabled:e})}))}})]}),(0,g.jsxs)("div",{className:"flex flex-row mt-5 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:[(0,g.jsxs)("span",{children:[`${c("diagrams_settings.gen_only_straight_arrows")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-straight-arrows-status",className:"ml-5",value:null==(o=d.diagram_spec)?void 0:o.auto_layout_only_straight_arrows,options:[{label:c("common.yes"),value:!0},{label:c("common.no"),value:!1}],onChange:e=>{u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_only_straight_arrows:e})}))}})]}),(0,g.jsx)(me,{id:"autolayout-orientation-selector",label:`${c("common.orientation")}*`,className:"mt-8 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),value:null==(i=d.diagram_spec)?void 0:i.auto_layout_orientation,options:ct.map((e=>({label:e,value:e}))),onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_orientation:e.target.value})}))}),(0,g.jsx)(ue,{id:"autolayout-ranksep",type:"number",label:"ranksep*",min:0,classNameRoot:"mt-6",info:`${c("diagrams_settings.ranksep_description")}`,value:null==(s=d.diagram_spec)?void 0:s.auto_layout_ranksep,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_ranksep:Number.parseFloat(e.target.value)})}))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-inner-margin",type:"number",label:`${c("diagrams_settings.subgraph_inner_margin")}`,min:0,classNameRoot:"mt-6",value:null==(l=d.diagram_spec)?void 0:l.auto_layout_subgraph_inner_margin,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_subgraph_inner_margin:Number.parseFloat(e.target.value)})}))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-outer-margin",type:"number",label:`${c("diagrams_settings.subgraph_outer_margin")}`,min:0,classNameRoot:"mt-6",value:null==(_=d.diagram_spec)?void 0:_.auto_layout_subgraph_outer_margin,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_subgraph_outer_margin:Number.parseFloat(e.target.value)})}))})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:p,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0}].concat("readonly"!==e.mode?[{key:"button-create",children:(0,g.jsx)("span",{children:"edit"===e.mode?c("common.save"):c(`common.${e.mode}`)}),disabled:!d.diagram_name||!d.diagram_type,isLoading:p,onClick:function(){const t=Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{tags:m})});"create"===e.mode||"duplicate"===e.mode?(h(!0),async function(e){return(0,qa.invoke)("create_diagram",{newDiagram:e})}(t).then((n=>{h(!1),n&&(Be.toast.info(c("common.info.done")),go({data:{Diagram:t},hook_type:"onDiagramCreated"}),e.forceUpdate(),e.hideModal())})).catch((e=>{h(!1),Be.toast.error(e.msg)}))):"edit"===e.mode&&t.diagram_name&&t.diagram_type&&t.raw_plantuml&&t.diagram_spec&&(h(!0),ao(t.diagram_name,t.diagram_type,t.raw_plantuml,t.diagram_spec).then((()=>{h(!1),Be.toast.info(c("common.info.done")),go({data:{Diagram:t},hook_type:"onDiagramSaved"}),e.forceUpdate(),e.hideModal()})).catch((e=>{h(!1),Be.toast.error(e.msg)})))}}]:[]))})]})},Cr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",kr=e=>{const{diagram:t}=e,{t:n}=(0,G.useTranslation)(),{forceUpdate:a}=Ie(),{modal:o,showModal:i,hideModal:s}=ce();return(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,g.jsxs)("div",{id:"diagram-editor-toolbar",className:"w-full z-[6] flex",children:[o,(0,g.jsx)("div",{className:"py-1 px-3",children:(0,g.jsxs)("div",{className:"h-full flex flex-1 items-center rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{icon:d.faFloppyDisk,className:`${Cr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${n("common.save").toString()} ${n("common.diagram").toString().toLowerCase()}`,onClick:()=>{e.saveDiagram()}}),(0,g.jsx)(U,{icon:d.faShareNodes,className:`${Cr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:n("diagram_editor.copy_deep_link"),onClick:async function(){if(null!=t&&t.diagram_name&&null!=t&&t.diagram_type){const e=await async function(e,t){const n=await ro(e,t);return`${Wo[Bo].path}${n}`}(null==t?void 0:t.diagram_name,null==t?void 0:t.diagram_type);(0,ho.writeText)(e),Be.toast.info(n("common.info.copied_to_clipboard"))}}}),(0,g.jsx)(U,{icon:d.faXmark,className:`${Cr} hover:!bg-red-600`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${n("common.close").toString()} ${n("common.diagram").toString().toLowerCase()}`,onClick:()=>{e.closeDiagram()}})]})}),(0,g.jsx)(Or,{diagram:t,handleDiagramHeaderClick:function(){t&&t.diagram_type&&t.diagram_name&&i({id:"showInfoDiargamModal",title:`${Cn(t.diagram_type)} ${n("common.diagram")} - ${t.diagram_name}`,body:(0,g.jsx)(Er,{diagramName:t.diagram_name,diagramType:t.diagram_type,mode:"readonly",hideModal:s,forceUpdate:a}),buttons:!1})},tagsDirection:"right",scrollable:!1})]})},Nr=require("@monaco-editor/react");var Tr=n.n(Nr);const Rr=require("monaco-editor"),Lr=i().memo((e=>{const{aiHidden:t,diagram:n,addCodeAtCursorPosition:a,closeAI:o}=e,[i,s]=(0,r.useState)(""),[l,_]=(0,r.useState)(!1),{t:c}=(0,G.useTranslation)(),u=Go((e=>e.project.value));return(0,g.jsxs)("div",{className:(t?"scale-0 opacity-0":"scale-100 opacity-100")+" z-[5] absolute bottom-0 left-0 right-0 text-center transition delay-150 duration-300 ease-in-out",children:[(0,g.jsx)(U,{className:"absolute right-0 z-[1] -mt-3 mr-6 text-xl",icon:d.faXmark,onClick:o}),(0,g.jsx)("div",{className:"content-center px-7",children:(0,g.jsx)(we,{className:"resize-none",onChange:e=>s(e.target.value),value:i,label:c("diagram_editor.ai_hint"),disabled:void 0===n})}),(0,g.jsx)(te,{className:"relative -top-6",onClick:()=>async function(){var e,t;null!=u&&null!=(e=u.project_settings.ai_settings)&&e.api_key&&0!==u.project_settings.ai_settings.api_key.length?null!=u&&null!=(t=u.project_settings.ai_settings)&&t.api_base_url&&0!==u.project_settings.ai_settings.api_base_url.length?void 0!==n&&(_(!0),await async function(e){return(0,qa.invoke)("generate_plantuml",{description:e})}(i).then((e=>{Be.toast.success(`${c("diagram_editor.plantuml_generated")}!`),n.raw_plantuml=e,a(e),_(!1)})).catch((e=>{Be.toast.error(e.msg),_(!1)}))):Be.toast.error(c("common.error.missing_ai_api_base_url")):Be.toast.error(c("common.error.missing_ai_api_key"))}(),disabled:l,children:l?`${c("common.generating")}...`:c("common.generate")})]})})),Mr=i().memo((e=>{var t;let{limit:n}=e;void 0===n&&(n=4);const{t:a}=(0,G.useTranslation)(),[o,i]=(0,r.useState)([{label:"",value:""}]),[s,l]=(0,r.useState)();function _(e,t,o){const r=null!=s?s:o;let l=e?[{label:""===t?`${a("common.unlink")}...`:t,value:t}]:[];if(r){const e=r.filter((e=>""===t||e.toLowerCase().includes(t.toLowerCase())));l=l.concat(e.map((e=>({label:e,value:e}))))}l.length>=n&&(l=l.slice(0,n)),i(l)}function c(t){s&&s.includes(t)?e.onDiagramSelected(t):e.onDiagramSelected()}return(0,r.useEffect)((()=>{no().then((async t=>{var n;let a=[];for(const e in t){const n=e;a=a.concat(await Promise.all(t[n].map((async e=>await ro(e,n)))))}l(a),_(!e.value||""===e.value,null!=(n=e.value)?n:"",a)}))}),[]),(0,g.jsx)(pe,{disabled:e.disabled,id:"diagram-picker",label:`${a("common.action.link_existing_diagram")}`,className:`${null!=(t=e.className)?t:""} mt-6`,value:e.value,options:o,onTyping:e=>{_(!0,e)},onChange:e=>{c(e.target.value)},onDefaultOptionSelected:e=>{c(e)}})})),$r=e=>{var t;const{className:n,diagramPickerClassName:a,disabled:o,link:i,hideButtons:s,onLinkConfirmed:l,onLinkChanged:_}=e,{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(p("internal",i)),[m,b]=(0,r.useState)(null!=(t=p("external",i))?t:[]);function p(e,t){if(t){const n=t.split(";").filter((t=>"internal"===e?!Qt(t):Qt(t)));if("internal"===e&&n.length>0)return n[0];if("external"===e)return n}}function h(){const e=[];return d&&e.push(d),m&&e.push(...m),e.length>0?e.join(";"):void 0}function f(e){b(e.detail.tagify.value.map((e=>e.value)).filter((e=>Qt(e))))}return(0,r.useEffect)((()=>{_&&_(h())}),[d,m]),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:`modal__body ${null!=n?n:""}`,children:(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)(Mr,{disabled:o,className:`!mb-0 !mt-4 !p-0 ${null!=a?a:""}`,value:d,onDiagramSelected:function(e){u(e)}}),(0,g.jsx)(Ee,{id:"diagram-linker-external-links",disabled:o,className:"mt-6 cursor-text",label:c("common.external_links"),tags:m,settings:{callbacks:{add:f,remove:f},maxTags:5,editTags:!1}}),(0,g.jsx)("div",{className:"text-sm px-3",children:c("diagram_editor.external_links_info",{maxNumExternalLinks:5,allowedLinks:dt.map((e=>e.replace("://",""))).join(", "),allowedVariables:Object.keys(ut).map((e=>en(e))).join(", ")})})]})}),!s&&(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-create",children:(0,g.jsx)("span",{children:c("common.confirm")}),onClick:()=>{l&&l(h())}}])})]})};function Ir(e){return""===e.base_data.description&&(e.base_data.description=void 0),"technology"in e&&""===e.technology&&(e.technology=void 0),e}function Dr(e,t){t((t=>{return Object.assign({},t,{base_data:Object.assign({},null==t?void 0:t.base_data,{tags:(n=e.detail.tagify.value.map((e=>e.value)),n&&n.length>0?n.join("+"):void 0)})});var n}))}const Ar={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""}},Pr=e=>{var t,n,a,o,i,s;const{t:l}=(0,G.useTranslation)(),_=Xo(),[c,d]=(0,r.useState)(e.libraryElement?e.libraryElement:Ar),[u,m]=(0,r.useState)(!1);function b(){var e,t;return!(null!=c&&null!=(e=c.base_data)&&e.alias&&null!=c&&null!=(t=c.base_data)&&t.label&&c.person_type)}return(0,r.useEffect)((()=>{Ar.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==c||null==(t=c.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${l("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${l("common.allowed_pattern")}: ${pr}`,value:null==c||null==(n=c.base_data)?void 0:n.alias,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${l("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${l("common.allowed_pattern")}: ${gr}`,value:null==c||null==(a=c.base_data)?void 0:a.label,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${l("common.type")}*`,className:"mt-6",value:null==c?void 0:c.person_type,options:[{label:"",value:""}].concat(nt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e})))),onChange:e=>d(Object.assign({},c,{person_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-person-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:l("common.tags"),tags:null!=(o=Zn(c.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,d),remove:e=>Dr(e,d)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{disabled:!e.enableEdit,label:l("common.description"),className:"mt-6",value:null==c||null==(i=c.base_data)?void 0:i.description,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{description:e.target.value})}))}),"serializer"!==e.mode&&(0,g.jsx)(we,{disabled:!e.enableEdit,label:`${l("common.notes")}`,className:"mt-6",value:null==c||null==(s=c.base_data)?void 0:s.notes,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(b()?"block":"hidden"),children:["* ",l("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:u,children:(0,g.jsx)("span",{children:l("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:l("common.save")}),disabled:b(),isLoading:u,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Person:Ir(c)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(m(!0),uo({Person:e.libraryElement},{Person:Ir(c)}).then((t=>{var n,a;if(m(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});_(Ga(n)),Be.toast.info(l("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;m(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(m(!0),co({Person:Ir(c)}).then((t=>{var n,a;if(m(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});_(Ga(n)),Be.toast.info(l("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;m(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Fr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""}},Br=e=>{var t,n,a,o,i,s,l;const{t:_}=(0,G.useTranslation)(),c=Xo(),[d,u]=(0,r.useState)(e.libraryElement?e.libraryElement:Fr),[m,b]=(0,r.useState)(!1);function p(){var e,t;return!(null!=d&&null!=(e=d.base_data)&&e.alias&&null!=d&&null!=(t=d.base_data)&&t.label&&d.system_type)}return(0,r.useEffect)((()=>{Fr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==d||null==(t=d.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${_("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${_("common.allowed_pattern")}: ${pr}`,value:null==d||null==(n=d.base_data)?void 0:n.alias,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${_("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${_("common.allowed_pattern")}: ${gr}`,value:null==d||null==(a=d.base_data)?void 0:a.label,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${_("common.type")}*`,className:"mt-6",value:null==d?void 0:d.system_type,options:[{label:"",value:""}].concat([...new Set(rt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>u(Object.assign({},d,{system_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-software-system-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:_("common.tags"),tags:null!=(o=Zn(d.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,u),remove:e=>Dr(e,u)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"software-system-description",disabled:!e.enableEdit,label:_("common.description"),className:"mt-6",value:null==d||null==(i=d.base_data)?void 0:i.description,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==d||null==(s=d.base_data)?void 0:s.link,onLinkChanged:e=>{u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"software-system-note",disabled:!e.enableEdit,label:`${_("common.notes")}`,className:"mt-6",value:null==d||null==(l=d.base_data)?void 0:l.notes,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(p()?"block":"hidden"),children:["* ",_("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:m,children:(0,g.jsx)("span",{children:_("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:_("common.save")}),disabled:p(),isLoading:m,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({SoftwareSystem:Ir(d)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(b(!0),uo({SoftwareSystem:e.libraryElement},{SoftwareSystem:Ir(d)}).then((t=>{var n,a;if(b(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});c(Ga(n)),Be.toast.info(_("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;b(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(b(!0),co({SoftwareSystem:Ir(d)}).then((t=>{var n,a;if(b(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});c(Ga(n)),Be.toast.info(_("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;b(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},zr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""},technology:""},Ur=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),d=Xo(),[u,m]=(0,r.useState)(e.libraryElement?e.libraryElement:zr),[b,p]=(0,r.useState)(!1);function h(){var e,t;return!(null!=u&&null!=(e=u.base_data)&&e.alias&&null!=u&&null!=(t=u.base_data)&&t.label&&u.container_type)}return(0,r.useEffect)((()=>{zr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==u||null==(t=u.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${c("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==u||null==(n=u.base_data)?void 0:n.alias,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==u||null==(a=u.base_data)?void 0:a.label,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==u?void 0:u.container_type,options:[{label:"",value:""}].concat([...new Set(ot.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>m(Object.assign({},u,{container_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(o=null==u?void 0:u.technology)?o:"",onChange:e=>m(Object.assign({},u,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-container-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(i=Zn(u.base_data.tags))?i:[],settings:{callbacks:{add:e=>Dr(e,m),remove:e=>Dr(e,m)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"container-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==u||null==(s=u.base_data)?void 0:s.description,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==u||null==(l=u.base_data)?void 0:l.link,onLinkChanged:e=>{m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"container-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==u||null==(_=u.base_data)?void 0:_.notes,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(h()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:b,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:h(),isLoading:b,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Container:Ir(u)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(p(!0),uo({Container:e.libraryElement},{Container:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(p(!0),co({Container:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Hr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""},technology:""},Wr=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),d=Xo(),[u,m]=(0,r.useState)(e.libraryElement?e.libraryElement:Hr),[b,p]=(0,r.useState)(!1);function h(){var e,t;return!(null!=u&&null!=(e=u.base_data)&&e.alias&&null!=u&&null!=(t=u.base_data)&&t.label&&u.component_type)}return(0,r.useEffect)((()=>{Hr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==u||null==(t=u.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${c("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==u||null==(n=u.base_data)?void 0:n.alias,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==u||null==(a=u.base_data)?void 0:a.label,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==u?void 0:u.component_type,options:[{label:"",value:""}].concat([...new Set(at.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>m(Object.assign({},u,{component_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(o=null==u?void 0:u.technology)?o:"",onChange:e=>m(Object.assign({},u,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-component-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(i=Zn(u.base_data.tags))?i:[],settings:{callbacks:{add:e=>Dr(e,m),remove:e=>Dr(e,m)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"component-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==u||null==(s=u.base_data)?void 0:s.description,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==u||null==(l=u.base_data)?void 0:l.link,onLinkChanged:e=>{m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"component-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==u||null==(_=u.base_data)?void 0:_.notes,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(h()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:b,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:h(),isLoading:b,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Component:Ir(u)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(p(!0),uo({Component:e.libraryElement},{Component:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(p(!0),co({Component:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Kr=function(e,t,n,a,o,r,i,s,l){var _;const c=`${null==(_=n.base_data)?void 0:_.alias}`;return{menuItemsProps:[{isHeaderMenuItem:!0,id:c,label:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faEllipsisH}),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:`${c}_open`,label:e("common.edit").toString(),onClick:function(){o("u",n,a,!0)}},{isHeaderMenuItem:!1,id:`${c}_delete`,label:e("common.delete").toString(),onClick:function(){i({id:"condirmDeleteElement",title:e("common.confirmation").toString(),body:e("common.question.confirm_delete_element").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.no")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.yes")}),className:"button--dangerous",onClick:()=>{n.base_data.uuid&&async function(e,t){return(0,qa.invoke)("delete_library_element",{uuidElement:e,elementType:t})}(n.base_data.uuid,t).then((()=>{Be.toast.info(e("common.info.done")),l(),s()})).catch((t=>{Be.toast.error(e("common.error.cannot_delete_element",{errorMessage:t.msg}))}))}}]})}},{isHeaderMenuItem:!1,id:`${c}_check-dependencies`,label:e("common.check_dependencies").toString(),onClick:function(){var e;null!=(e=n.base_data)&&e.alias&&r(n.base_data.alias)}}]}]}},Xr=["menu"],Gr=e=>{const{c4ElementType:t,pageSize:n,embedMode:a,onRowClick:o}=e,{t:s}=(0,G.useTranslation)(),{forceUpdate:l,updatedCounter:_}=Ie(),m=(0,r.useRef)(null),{modal:b,showModal:p,hideModal:h}=ce(),{modal:f,safeExit:w}=De(Wo),y=Go((e=>e.project.value)),[v,x]=(0,r.useState)([]),[j,O]=i().useState(""),S=function(e){const t=`${(0,Me.snakeCase)(e).toLowerCase()}`,n=`${t}s`,a=`${t.replace("software_","")}_type`;let o=Pr;switch(e){case"Person":o=Pr;break;case"Container":o=Ur;break;case"Component":o=Wr;break;case"SoftwareSystem":o=Br}return{accessor:n,i18nKey:t,typeColumnId:a,typeAccessorFn:t=>{var n,a,o,r,i,s,l,_;let c="";switch(e){case"Person":c=null!=(n=null==(a=t.person_type)?void 0:a.toString())?n:"";break;case"Container":c=null!=(o=null==(r=t.container_type)?void 0:r.toString())?o:"";break;case"Component":c=null!=(i=null==(s=t.component_type)?void 0:s.toString())?i:"";break;case"SoftwareSystem":c=null!=(l=null==(_=t.system_type)?void 0:_.toString())?l:""}return(0,Me.capitalCase)((0,Me.noCase)(c))},modal:o}}(t),E=[{accessorKey:"base_data.alias",label:s("common.alias")},{accessorKey:"base_data.label",label:s("common.label")},{id:S.typeColumnId,accessorFn:S.typeAccessorFn,label:s("common.type")},{accessorKey:"base_data.description",label:s("common.description")}];a||E.push({accessorKey:"menu",label:""}),"Component"!==t&&"Container"!==t||E.splice(2,0,{accessorKey:"technology",label:s("common.technology")});const k={data:v,columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),enableColumnResizing:!0,columnResizeMode:"onChange"};function N(e,n,a,o=!1){let r="";switch(e){case"c":r=`${s("common.new")} ${s(`common.${S.i18nKey}`)}`;break;case"u":r=`${s("common.edit")} ${s(`common.${S.i18nKey}`)}`}p({id:`${t.toLowerCase()}Modal`,title:r,body:(0,g.jsx)(S.modal,{enableEdit:o,project:a,libraryElement:n,hideModal:h,forceUpdate:l,diagramAliases:[]}),buttons:!1})}function T(e){ws(w,e)}return(0,r.useEffect)((()=>{(async function(e){return(0,qa.invoke)("list_library_elements",{filterC4ElementType:e})})(t).then((e=>{var a;x(e[S.accessor].map((e=>Object.assign({},e,{menu:(0,g.jsx)(Z,{menuOptions:Kr(s,t,e,y,N,T,p,h,l).menuItemsProps})})))),null==(a=m.current)||a.setPageSize(void 0!==n?n:e[S.accessor].length)})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))}),[s,_,t,n]),(0,g.jsxs)("div",{className:"h-full w-full p-3",children:[b,f,(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none "+(a?"hidden":""),children:c()(s(`common.${S.i18nKey}`))}),(0,g.jsx)("div",{className:(a?"w-full":"ml-5 w-64")+" inline-block",children:(0,g.jsx)(J,{onChange:e=>O(e.target.value)})}),(0,g.jsx)("div",{className:"flex-grow "+(a?"hidden":""),children:(0,g.jsxs)(te,{className:"float-right bg-red-400",onClick:()=>{N("c",void 0,y,!0)},children:[(0,g.jsx)("span",{children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus})}),(0,g.jsx)("span",{className:"ml-1",children:`${s("common.create")} ${s(`common.${S.i18nKey}`)}`})]})})]}),(0,g.jsx)("div",{className:"home-project w-full pb-4 pt-4",children:(0,g.jsx)(Y,{ref:m,defaultExpanded:!0,disableExpandControls:!0,columns:E,tableOptions:k,globalFilter:j,hidePaginationControls:void 0===n,expandable:!1,onRowClick:(e,t)=>{o?o(e,t):N("u",C(t,Xr),y,!0)},suppressRowClickColIDs:["menu"]})})]})},Yr=["menu"],Zr=i().memo((e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)("Person");return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body flex h-[500px] flex-col",children:[(0,g.jsx)(me,{id:"element-type-selector",label:`${t("diagram_editor.select_element_type_to_import")}`,className:"mx-3 mt-6",value:n,options:[...new Set(et.map((e=>({label:c()(kn(e)),value:e}))))],onChange:e=>a(e.target.value)}),(0,g.jsx)(Gr,{c4ElementType:n,pageSize:5,embedMode:!0,onRowClick:function(t,a){const o=C(a,Yr);let r;switch(n){case"Person":r={Person:o};break;case"SoftwareSystem":r={SoftwareSystem:o};break;case"Container":r={Container:o};break;case"Component":r={Component:o}}r&&(e.onLibraryElementSelected(r),e.hideModal())}})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0}])})]})})),qr=require("monaco-editor/esm/vs/platform/quickinput/common/quickInput"),Vr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",notes:""},sub_elements:[]},Qr=e=>{var t,n,a,o,i,s;const{t:l}=(0,G.useTranslation)(),[_,c]=(0,r.useState)(e.libraryElement?e.libraryElement:Vr);function d(){var e,t;return!(null!=_&&null!=(e=_.base_data)&&e.alias&&null!=_&&null!=(t=_.base_data)&&t.label&&_.boundary_type)}return(0,r.useEffect)((()=>{Vr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==_||null==(t=_.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${l("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${l("common.allowed_pattern")}: ${pr}`,value:null==_||null==(n=_.base_data)?void 0:n.alias,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${l("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${l("common.allowed_pattern")}: ${gr}`,value:null==_||null==(a=_.base_data)?void 0:a.label,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${l("common.type")}*`,className:"mt-6",value:null==_?void 0:_.boundary_type,options:[{label:"",value:""}].concat([...new Set(it.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>c(Object.assign({},_,{boundary_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-boundary-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:l("common.tags"),tags:null!=(o=Zn(_.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,c),remove:e=>Dr(e,c)},maxTags:5,editTags:!1}}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==_||null==(i=_.base_data)?void 0:i.link,onLinkChanged:e=>{c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"boundary-note",disabled:!e.enableEdit,label:`${l("common.notes")}`,className:"mt-6",value:null==_||null==(s=_.base_data)?void 0:s.notes,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(d()?"block":"hidden"),children:["* ",l("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:l("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:l("common.save")}),disabled:d(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({Boundary:_}),e.hideModal())}}])})]})},Jr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",notes:""},sub_elements:[]},ei=e=>{var t,n,a,o,i;const{t:s}=(0,G.useTranslation)(),[l,_]=(0,r.useState)(e.libraryElement?e.libraryElement:Jr);function c(){var e,t;return!(null!=l&&null!=(e=l.base_data)&&e.alias&&null!=l&&null!=(t=l.base_data)&&t.label&&l.deployment_node_type)}return(0,r.useEffect)((()=>{Jr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==l||null==(t=l.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${s("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${s("common.allowed_pattern")}: ${pr}`,value:null==l||null==(n=l.base_data)?void 0:n.alias,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${s("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${s("common.allowed_pattern")}: ${gr}`,value:null==l||null==(a=l.base_data)?void 0:a.label,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${s("common.type")}*`,className:"mt-6",value:null==l?void 0:l.deployment_node_type,options:[{label:"",value:""}].concat([...new Set(st.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>_(Object.assign({},l,{deployment_node_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-deploy-node-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:s("common.tags"),tags:null!=(o=Zn(l.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,_),remove:e=>Dr(e,_)},maxTags:5,editTags:!1}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"deployment-node-note",disabled:!e.enableEdit,label:`${s("common.notes")}`,className:"mt-6",value:null==l||null==(i=l.base_data)?void 0:i.notes,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(c()?"block":"hidden"),children:["* ",s("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:s("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:s("common.save")}),disabled:c(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({DeploymentNode:l}),e.hideModal())}}])})]})},ti={base_data:{uuid:(0,Ve.v4)(),label:"",notes:""},from:"",to:"",technology:""},ni=e=>{var t,n,a,o,i,s;const{libraryElement:l,diagramAliases:_}=e,{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(l||ti),[m,b]=(0,r.useState)([]),[p,h]=(0,r.useState)([]);function f(e,t,n,a){let o=t?[{label:n,value:n}]:[];const r=(null!=_?_:a).filter((e=>!(e=>"legend"===e)(e)&&!(e=>e.includes(" -> "))(e)&&(!n||e.toLowerCase().includes(n.toLowerCase())))).sort(((e,t)=>e.localeCompare(t)));o=o.concat(r.map((e=>({label:e,value:e})))),o.length>=5&&(o=o.slice(0,5)),e(o)}function w(){var e;return!(null!=d&&d.from&&null!=d&&d.to&&null!=d&&null!=(e=d.base_data)&&e.label&&d.relationship_type)}return(0,r.useEffect)((()=>{var e,t;ti.base_data.uuid=(0,Ve.v4)(),f(b,!d.from||""===d.from,null!=(e=d.from)?e:"",_),f(h,!d.to||""===d.to,null!=(t=d.to)?t:"",_)}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==d||null==(t=d.base_data)?void 0:t.uuid}),(0,g.jsx)(pe,{id:"rel-from-autocomplete",disabled:void 0!==e.libraryElement||!e.enableEdit,label:`${c("common.from")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==d?void 0:d.from,options:m,onChange:e=>{u(Object.assign({},d,{from:e.target.value.replace(" ","")}))},onDefaultOptionSelected:e=>{u(Object.assign({},d,{from:e}))},onTyping:e=>{f(b,!0,e)}}),(0,g.jsx)(pe,{id:"rel-to-autocomplete",disabled:void 0!==e.libraryElement||!e.enableEdit,label:`${c("common.to")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==d?void 0:d.to,options:p,onChange:e=>u(Object.assign({},d,{to:e.target.value.replace(" ","")})),onDefaultOptionSelected:e=>{u(Object.assign({},d,{to:e}))},onTyping:e=>{f(h,!0,e)}}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==d||null==(n=d.base_data)?void 0:n.label,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==d?void 0:d.relationship_type,options:[{label:"",value:""}].concat([...new Set(lt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>u(Object.assign({},d,{relationship_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(a=null==d?void 0:d.technology)?a:"",onChange:e=>u(Object.assign({},d,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-relationship-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(o=Zn(d.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,u),remove:e=>Dr(e,u)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"relationship-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==d||null==(i=d.base_data)?void 0:i.description,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{description:e.target.value})}))}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"relationship-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==d||null==(s=d.base_data)?void 0:s.notes,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(w()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:w(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({Relationship:Ir(d)}),e.hideModal())}}])})]})},ai={tag:"",bg_color:"",font_color:"",border_color:"",legend_text:""},oi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.libraryElement?e.libraryElement:ai);function o(){return!(null!=n&&n.tag)}return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("common.tag")}*`,className:"mt-2",value:null==n?void 0:n.tag,onChange:e=>a(Object.assign({},n,{tag:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.bg_color")}`,className:"mt-6",value:null==n?void 0:n.bg_color,onChange:e=>a(Object.assign({},n,{bg_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.font_color")}`,className:"mt-6",value:null==n?void 0:n.font_color,onChange:e=>a(Object.assign({},n,{font_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.border_color")}`,className:"mt-6",value:null==n?void 0:n.border_color,onChange:e=>a(Object.assign({},n,{border_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.legend_text")}`,className:"mt-6",value:null==n?void 0:n.legend_text,onChange:e=>a(Object.assign({},n,{legend_text:e.target.value}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(o()?"block":"hidden"),children:["* ",t("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),disabled:o(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({AddElementTag:n}),e.hideModal())}}])})]})},ri="plantuml",ii={alias:{label:"alias",documentation:{value:'Unique identification of the element.\n\nExample: `"myAlias"`',isTrusted:!0}},label:{label:"label",documentation:{value:'Label of the element that will be rendered in the diagram.\n\nExample: `"My Label"`',isTrusted:!0}},description:{label:"?description",documentation:{value:'Optional description of the element that will be rendered in the diagram.\n\nExample: `"My description."`',isTrusted:!0}},type:{label:"?type",documentation:{value:'Optional custom type of a C4 Boundary or Deployment Node element.\n\nExample: `"My type"`',isTrusted:!0}},technology:{label:"?technology",documentation:{value:'Optional technology that the element is based on or uses to interact with another element.\n\nExample: `"My technology"`',isTrusted:!0}},from:{label:"from",documentation:{value:'Alias of the source element in the relationship.\n\nExample: `"fromAlias"`',isTrusted:!0}},to:{label:"to",documentation:{value:'Alias of the destination element in the relationship.\n\nExample: `"toAlias"`',isTrusted:!0}},sprite:{label:"?sprite",documentation:{value:'Optional PlantUML Sprite: a small graphic element that can be used in diagrams.\nSprites are ignored by Mina, but they are supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$sprite="person"`',isTrusted:!0}},tags:{label:"?tags",documentation:{value:'Optional tags for tagging the element.\n\nExample: `$tags="tag1&tag2"`',isTrusted:!0}},link:{label:"?link",documentation:{value:'Optional link for connecting the element to another Mina diagram. The syntax of the link string follows this pattern: `<DIAGRAM_TYPE>/<DIAGRAM_NAME>`.\n\nExample: `$link="system-context/my-diagram"`',isTrusted:!0}},tag:{label:"tag",documentation:{value:'Tag you want to use to customize elements.\n\nExample: `"my-tag"`',isTrusted:!0}},bgColor:{label:"?bgColor",documentation:{value:'Optional background color.\n\nExample: `$bgColor="#000000"`',isTrusted:!0}},fontColor:{label:"?fontColor",documentation:{value:'Optional font color.\n\nExample: `$fontColor="#000000"`',isTrusted:!0}},borderColor:{label:"?borderColor",documentation:{value:'Optional border color.\n\nExample: `$borderColor="#000000"`',isTrusted:!0}},shadowing:{label:"?shadowing",documentation:{value:'Optional boolean that indicates whether to add a shadow.\nShadowing is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$shadowing="true"`',isTrusted:!0}},shape:{label:"?shape",documentation:{value:"Optional PlantUML function or string to customize the shape.\nShape is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$shape=RoundedBoxShape()`",isTrusted:!0}},explicitTechnology:{label:"?technology",documentation:{value:'Optional technology of the element.\n\nExample: `$techn="My technology"`',isTrusted:!0}},legendText:{label:"?legendText",documentation:{value:'Optional text to display in the legend entry for this tag.\n\nExample: `"My Legend Text"`',isTrusted:!0}},legendSprite:{label:"?legendSprite",documentation:{value:'Optional PlantUML Sprite for the legend entry.\nLegend Sprite is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$legendSprite="my_legend_sprite"`',isTrusted:!0}},borderStyle:{label:"?borderStyle",documentation:{value:'Optional PlantUML function or string to customize the border style.\nBorder Style is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$borderStyle="dashed"`',isTrusted:!0}},borderThickness:{label:"?borderThickness",documentation:{value:'Optional number to customize the border thickness.\nBorder thickness is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$borderThickness="2"`',isTrusted:!0}}},si=function(){const e={context_person:{label:"",parameters:[ii.alias,ii.label,li(["description","sprite","tags","link"])]},container_component:{label:"",parameters:[ii.alias,ii.label,li(["technology","description","sprite","tags","link"])]},boundary_custom_type:{label:"",parameters:[ii.alias,ii.label,li(["type","tags","link"])]},boundary:{label:"",parameters:[ii.alias,ii.label,li(["tags","link"])]},relationship:{label:"",parameters:[ii.from,ii.to,ii.label,li(["technology","description","sprite","tags","link"])]},deployment_node:{label:"",parameters:[ii.alias,ii.label,li(["type","description","sprite","tags","link"])]},add_element_tag:{label:"",parameters:[ii.tag,li(["bgColor","fontColor","borderColor","shadowing","shape","sprite","explicitTechnology","legendText","legendSprite","borderStyle","borderThickness"])]}};return Object.keys(e).forEach((t=>{const n=t,a=`\${ELEMENT_TYPE}(${e[n].parameters.map((e=>e.label)).join(", ")})`;e[n].label=a})),e}();function li(e){const t=[];let n="",a="";return e.forEach((e=>{const n="string"==typeof ii[e].label?ii[e].label:"",a="string"==typeof ii[e].documentation?ii[e].documentation:ii[e].documentation.value;t.push({label:n,documentation:a})})),n=`[${t.map((e=>e.label)).join(", ")}]`,a=`#### Optional inputs:\n\n\n${t.map((e=>`• \`${e.label.replace(new RegExp("\\?","gi"),"")}\`: ${e.documentation}`)).join("\n\n")}`,{label:n,documentation:{value:a,isTrusted:!0},numAggregatedParameters:e.length}}function _i(e,t){let n=0;const a=e.split(",");return a.length>0&&(n=a.length-1,n>=t.length&&(n=t[t.length-1].numAggregatedParameters&&n>=t.length-1+t[t.length-1].numAggregatedParameters?-1:t.length-1)),n}function ci(e){const t=[...nt,...rt,...ot,...at,...it,...st,...lt,..._t];try{return t.map((t=>({label:{label:t.toString()},kind:Rr.languages.CompletionItemKind.Function,insertText:t.toString(),insertTextRules:Rr.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:e})))}catch(e){return console.error(e),[]}}-1===Rr.languages.getLanguages().findIndex((e=>e.id===ri))&&(Rr.languages.register({id:ri}),Rr.languages.registerCompletionItemProvider(ri,{provideCompletionItems:function(e,t){if(null===e.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column-1}).match(/^(\s|\n)*$/gm))return{suggestions:[]};const n=e.getWordUntilPosition(t);return{suggestions:ci({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:n.startColumn,endColumn:n.endColumn})}}}),Rr.languages.registerSignatureHelpProvider(ri,{signatureHelpTriggerCharacters:["(",","],provideSignatureHelp:(e,t,n)=>{const a=e.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),o=function(e){try{let t;if(nt.includes(e)||rt.includes(e)?t="context_person":ot.includes(e)||at.includes(e)?t="container_component":"Boundary"===e?t="boundary":it.includes(e)?t="boundary_custom_type":lt.includes(e)?t="relationship":st.includes(e)?t="deployment_node":_t.includes(e)&&(t="add_element_tag"),t&&si[t]){const n=Object.assign({},si[t]);return n.label=n.label.replace(new RegExp("\\${ELEMENT_TYPE}","gi"),e),n}}catch(e){console.error(e)}}(a.substring(0,a.indexOf("(")).replace(new RegExp(" ","gi"),""));return o?{dispose:()=>{},value:{activeParameter:_i(a,o.parameters),activeSignature:0,signatures:[o]}}:{dispose:()=>{},value:{activeParameter:-1,activeSignature:-1,signatures:[]}}}})),Nr.loader.config({monaco:Rr});const di=(0,r.forwardRef)(((e,t)=>{const{diagram:n,saveDiagram:a,isSaving:o,project:i}=e,{t:s}=(0,G.useTranslation)(),{modal:l,showModal:_,hideModal:c}=ce(),{forceUpdate:d}=Ie(),u=(0,r.useRef)(null),[m,b]=(0,r.useState)(""),[p,h]=(0,r.useState)(null),[f,w]=(0,r.useState)(-1),[y,v]=(0,r.useState)(-1),[x,j]=(0,r.useState)(-1),[O,S]=(0,r.useState)(!0),E=(0,r.useRef)(!1),C=(0,r.useRef)(!1),k=(0,r.useRef)([]);function N(e,t){var n,a;null==(n=u.current)||n.focus(),null==(a=u.current)||a.trigger("keyboard","type",{text:e})}async function T(){const e=await M(),t=void 0!==(null==e?void 0:e.diagramPlantUML)&&void 0!==e.diagramPlantUML.elements&&1===e.diagramPlantUML.elements.length&&(n=e.diagramPlantUML.elements[0],void 0!==On(n)?{element:On(n),elementType:"Person"}:void 0!==En(n)?{element:En(n),elementType:"SoftwareSystem"}:void 0!==xn(n)?{element:xn(n),elementType:"Container"}:void 0!==vn(n)?{element:vn(n),elementType:"Component"}:void 0);var n;if(e&&void 0!==t&&"boolean"!=typeof t){let e;switch(t.element.base_data.uuid=(0,Ve.v4)(),t.elementType){case"Person":e=Pr;break;case"SoftwareSystem":e=Br;break;case"Container":e=Ur;break;case"Component":e=Wr}if(void 0!==e)return void _({id:`${t.elementType.toLowerCase()}Modal`,title:`${s("diagram_editor.add_to_library_detailed_title",{elementType:(0,Me.noCase)(t.elementType).toLowerCase(),alias:t.element.base_data.alias})}`,body:(0,g.jsx)(e,{mode:"createLibraryElement",enableEdit:!0,project:i,libraryElement:t.element,hideModal:c,diagramAliases:[]}),buttons:!1})}Be.toast.error(s("common.error.cannot_add_to_library"))}function R(){var e,t;h(null!=(e=null==(t=u.current)?void 0:t.getPosition())?e:null),_({id:"importLibraryElementModal",title:s("diagram_editor.import_from_library").toString(),body:(0,g.jsx)(Zr,{onLibraryElementSelected:e=>{oo(e).then((e=>{N(e),Be.toast.success(s("diagram_editor.element_imported"))})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))},hideModal:c}),buttons:!1,size:"full"})}async function L(e){var t,n;h(null!=(t=null==(n=u.current)?void 0:n.getPosition())?t:null);let a=Pr;switch(e){case"Person":a=Pr;break;case"Container":a=Ur;break;case"Component":a=Wr;break;case"SoftwareSystem":a=Br;break;case"Boundary":a=Qr;break;case"DeploymentNode":a=ei;break;case"AddElementTag":a=oi;break;case"Relationship":a=ni}_({id:`${e.toLowerCase()}Modal`,title:`${s("common.new")} ${s(`common.${(0,Me.snakeCase)(e)}`)}`,body:(0,g.jsx)(a,{mode:"serializer",enableEdit:!0,hideModal:c,forceUpdate:d,onElementCreated:e=>{oo(e).then((e=>{N(e)})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))},diagramAliases:k.current}),buttons:!1})}async function M(){var e,t;let n;const a=null==(e=u.current)?void 0:e.getPosition();h(null!=a?a:null);const o=null==(t=u.current)?void 0:t.getSelection();if(o&&a){const e=Array.from({length:o.endLineNumber-o.startLineNumber+1},((e,t)=>o.startLineNumber+t)).map((e=>{var t,n;return null!=(t=null==(n=u.current)||null==(n=n.getModel())?void 0:n.getLineContent(e))?t:""})).join("\n");if(e)try{n={selectedPlantUMLLine:e,diagramPlantUML:await so(`@startuml\n${e}\n@enduml`),selection:o}}catch(e){n=void 0}}return n}async function $(){const e=await M(),t=void 0!==(null==e?void 0:e.diagramPlantUML)&&void 0!==e.diagramPlantUML.elements&&1===e.diagramPlantUML.elements.length&&tn(e.diagramPlantUML.elements[0]);e&&void 0!==t&&"boolean"!=typeof t?_({id:"linkDiagramModal",title:s("common.action.link_to_diagram",{alias:t.base_data.alias}).toString(),body:(0,g.jsx)($r,{link:t.base_data.link,onLinkConfirmed:async n=>{t.base_data.link=n;let a=e.selectedPlantUMLLine;En(e.diagramPlantUML.elements[0])?a=await oo({SoftwareSystem:t}):xn(e.diagramPlantUML.elements[0])?a=await oo({Container:t}):vn(e.diagramPlantUML.elements[0])?a=await oo({Component:t}):yn(e.diagramPlantUML.elements[0])&&(a=await oo({Boundary:t})),function(e,t,n){const a=u.current,o=null==a?void 0:a.getModel();if(a&&o){const r=a.getSelection(),i=a.getValue(),s=null==i?void 0:i.split("\n");if(s){if(e>=1&&t<=s.length){s[e-1]=n;for(let n=e;n<t;n++)s.splice(e,1)}const i=s.join("\n"),l={range:o.getFullModelRange(),text:i,forceMoveMarkers:!1};a.executeEdits("replaceLineContent",[l],null!==r?[r]:[]),a.pushUndoStop()}}}(e.selection.startLineNumber,e.selection.endLineNumber,a.replace(new RegExp("(^\\n)|(\\n$)","gi"),"")),c()}}),buttons:!1,size:"md"}):Be.toast.error(s("common.error.cannot_add_link"))}function I(e){var t;const n=null==(t=u.current)?void 0:t.getModel();if(e){const t=null==n?void 0:n.findMatches(e,!1,!1,!1,null,!1);t&&t.forEach((e=>{var t,n;null==(t=u.current)||t.setSelection(e.range),null==(n=u.current)||n.revealLine(e.range.startLineNumber)}))}}return(0,r.useEffect)((()=>{function e(e){"S"===e.key.toUpperCase()&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),a())}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[n,p,a]),(0,r.useEffect)((()=>{u.current&&(p?(u.current.focus(),u.current.setPosition(p),u.current.updateOptions({readOnly:o})):u.current.setPosition({lineNumber:0,column:0}))})),(0,r.useEffect)((()=>{if(n){var e,t;E.current=!0,k.current=null!=(e=null==(t=n.diagram_plantuml)?void 0:t.aliases)?e:[];const{raw_plantuml:a}=n;b(null!=a?a:"")}}),[n]),(0,r.useImperativeHandle)(t,(()=>({resetCode:()=>{var e,t,n,a,o,r;null==(e=u.current)||null==(e=e.getModel())||e.setValue(""),b(""),null==(t=u.current)||null==(t=t.getModel())||t.setEOL(Rr.editor.EndOfLineSequence.LF),w((null!=(n=null==(a=u.current)||null==(a=a.getModel())?void 0:a.getAlternativeVersionId())?n:-1)+1),v(null!=(o=null==(r=u.current)||null==(r=r.getModel())?void 0:r.getAlternativeVersionId())?o:-1)},getUpdatedRawPlantUML:()=>{if(n&&n.diagram_name&&n.diagram_type&&u.current)return u.current.getValue()},canUndo:()=>E.current,canRedo:()=>C.current,undo:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","undo",{})},redo:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","redo",{})},copy:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardCopyAction",{})},cut:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardCutAction",{})},paste:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardPasteAction",{})},find:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","actions.find",{})},commands:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.quickCommand",{})},openAI:()=>{S(!1)},addCodeAtCursorPosition:N,addToLibrary:T,importFromLibrary:R,addDiagramElement:L,addDiagramLink:$,selectText:I}))),(0,g.jsxs)("div",{className:"relative h-full w-full",children:[l,(0,g.jsx)(Tr(),{className:`h-full ${n?"":"hidden"} no-underline`,language:ri,value:m,theme:"vs-dark",onMount:function(e){var t,n,a;null==(t=e.getModel())||t.setEOL(Rr.editor.EndOfLineSequence.LF),u.current=e;const o=null!=(n=null==(a=u.current.getModel())?void 0:a.getAlternativeVersionId())?n:-1;w(o),v(o),j(o),function(e){e.addAction({id:"add-to-library",label:s("diagram_editor.add_to_library"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){T()}}),e.addAction({id:"import-from-library",label:s("diagram_editor.import_from_library"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){R()}}),e.addAction({id:"add-diagram-link",label:s("diagram_editor.link_to"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){$()}});const t=e.addCommand(0,((e,t,n,a,o)=>{t(e.get(qr.IQuickInputService))}));t&&e.addAction({id:"add-diagram-element",label:s("diagram_editor.add_diagram_element"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(){e.trigger("",t,(e=>{e.pick(tt.map((e=>({type:"item",id:e,label:s(`common.${(0,Me.snakeCase)(e)}`)})))).then((e=>{null!=e&&e.id&&L(e.id)}))}))}})}(u.current)},onChange:function(t,n){var a,o,r,i,s,l,_;null!=(a=u.current)&&a.getModel()&&b(null==(o=u.current)?void 0:o.getModel().getValue()),h(null!=(r=null==(i=u.current)?void 0:i.getPosition())?r:null);const c=null!=(s=null==(l=u.current)||null==(l=l.getModel())?void 0:l.getAlternativeVersionId())?s:-1;c<=f?(C.current=!0,c===y&&(E.current=!1)):(c<=x?c===x&&(C.current=!1):(C.current=!1,f>x&&j(f)),E.current=!0),w(c),null==(_=e.diagramCodeViewToolbarCommands)||_.forceUpdate()},options:{wordWrap:"on",tabSize:2}}),(0,g.jsx)(Lr,{aiHidden:O,addCodeAtCursorPosition:N,diagram:n,closeAI:()=>S(!0)})]})})),ui=require("react-resize-detector"),gi="text-5xl text-dark-primary hover:text-third",mi="text-2xl text-dark-primary hover:text-third",bi=i().memo((e=>{const{canvas:t,readOnly:n,diagramInfoPanelVisible:a,setDiagramInfoPanelVisible:o,diagramCodePanelVisible:r,setDiagramCodePanelVisible:i}=e;function s(){return n}return(0,g.jsxs)("div",{className:"absolute bottom-0 left-0 z-[1] scale-[85%] opacity-20 transition hover:scale-[100%] hover:opacity-100 flex flex-row mx-2",children:[(0,g.jsx)(U,{className:`${mi} ${s()?"absolute":"hidden"}`,icon:d.faCircleInfo,onClick:function(){s()&&(i(!1),o(!a))}}),(0,g.jsx)(U,{className:`${mi} ${s()?"absolute bottom-1":"hidden"}`,icon:d.faCode,onClick:function(){s()&&(o(!1),i(!r))}}),(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsx)(U,{className:`${gi} !my-auto`,icon:d.faCaretLeft,onClick:()=>null==t?void 0:t.panLeft()})}),(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)(U,{className:gi,icon:d.faCaretUp,onClick:()=>null==t?void 0:t.panDown()}),(0,g.jsxs)("div",{children:[(0,g.jsx)(U,{className:`${mi} ml-1`,icon:d.faMagnifyingGlassPlus,onClick:()=>null==t?void 0:t.zoomIn()}),(0,g.jsx)(U,{className:`${mi} mx-2 !text-xl`,icon:d.faRotateLeft,onClick:()=>{null==t||t.resetZoom(),null==t||t.resetPan()}}),(0,g.jsx)(U,{className:`${mi} mr-1`,icon:d.faMagnifyingGlassMinus,onClick:()=>null==t?void 0:t.zoomOut()})]}),(0,g.jsx)(U,{className:gi,icon:d.faCaretDown,onClick:()=>null==t?void 0:t.panUp()})]}),(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsx)(U,{className:`${gi} !my-auto`,icon:d.faCaretRight,onClick:()=>null==t?void 0:t.panRight()})})]})})),pi=require("fontfaceobserver");var hi=n.n(pi);const fi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.enabled),[o,i]=(0,r.useState)(e.orientation),[s,l]=(0,r.useState)(e.generateOnlyStraightArrows),[_,c]=(0,r.useState)(e.ranksep),[m,b]=(0,r.useState)(e.subgraphInnerMargin),[p,h]=(0,r.useState)(e.subgraphOuterMargin);return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsxs)("div",{className:"flex flex-row",children:[(0,g.jsxs)("span",{children:[t("common.status"),"*:"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:n,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{a(e)}})]}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(!e.enabled&&n?"block":"hidden"),children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faWarning,className:"mr-1 text-yellow-500"}),t("diagram_editor.warning_enable_autolayout")]})]}),(0,g.jsxs)("div",{className:"flex flex-row mt-5",children:[(0,g.jsxs)("span",{children:[`${t("diagrams_settings.gen_only_straight_arrows")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-straight-arrows-status",className:"ml-5",value:s,options:[{label:t("common.yes"),value:!0},{label:t("common.no"),value:!1}],onChange:e=>{l(e)}})]}),(0,g.jsx)(me,{id:"autolayout-orientation-selector",label:`${t("common.orientation")}*`,className:"mt-8",value:o,options:ct.map((e=>({label:e,value:e}))),onChange:e=>i(e.target.value)}),(0,g.jsx)(ue,{id:"autolayout-ranksep",type:"number",label:"ranksep*",min:0,classNameRoot:"mt-6",info:`${t("diagrams_settings.ranksep_description")}`,value:_,onChange:e=>c(Number.parseFloat(e.target.value))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-inner-margin",type:"number",label:`${t("diagrams_settings.subgraph_inner_margin")}`,min:0,classNameRoot:"mt-6",value:m,onChange:e=>b(Number.parseFloat(e.target.value))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-outer-margin",type:"number",label:`${t("diagrams_settings.subgraph_outer_margin")}`,min:0,classNameRoot:"mt-6",value:p,onChange:e=>h(Number.parseFloat(e.target.value))})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),onClick:function(){e.onAutoLayoutConfigured(n,o,s,_,m,p),e.hideModal()}}])})]})},wi=i().memo((e=>{const{setDiagramInfoPanelVisible:t,diagram:n,hidden:a}=e;return(0,g.jsxs)("div",{className:a?"hidden":"absolute z-[1] bg-dark-primary bg-opacity-90 w-full p-2 max-h-96 overflow-auto",children:[(0,g.jsx)(U,{icon:d.faXmark,className:"absolute right-5 top-3",onClick:()=>t(!1)}),n&&(0,g.jsx)(Or,{diagram:n,tagsDirection:"bottom",scrollable:!0})]})}));var yi=function(e){return e[e.PlantUML=0]="PlantUML",e[e.JSON=1]="JSON",e}(yi||{});const vi=i().memo((e=>{const{setDiagramCodePanelVisible:t,diagram:n,hidden:a}=e,[o,i]=(0,r.useState)(yi.PlantUML),[s,l]=(0,r.useState)(null==n?void 0:n.raw_plantuml);return(0,r.useEffect)((()=>{n&&l(o===yi.PlantUML?n.raw_plantuml:JSON.stringify(n.diagram_spec,null,2))}),[n,o]),(0,g.jsxs)("div",{className:a?"hidden":"absolute z-[1] bg-dark-primary bg-opacity-90 w-full h-full p-2 overflow-auto",children:[(0,g.jsx)(U,{icon:d.faXmark,className:"absolute right-5 top-3",onClick:()=>t(!1)}),n&&(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsxs)("div",{children:[(0,g.jsx)(te,{className:"mr-3 w-32 normal-case "+(o===yi.PlantUML?"!bg-green-700":""),onClick:()=>i(yi.PlantUML),children:"PlantUML"}),(0,g.jsx)(te,{className:"w-32 normal-case "+(o===yi.JSON?"!bg-green-700":""),onClick:()=>i(yi.JSON),children:"JSON"})]}),(0,g.jsxs)("div",{className:"mt-5 p-2 bg-primary rounded-md overflow-auto whitespace-pre-wrap text-sm font-mono",children:[(0,g.jsx)(U,{icon:d.faCopy,className:"absolute right-5 text-xl",onClick:()=>{s&&navigator.clipboard.writeText(s)}}),(0,g.jsx)("div",{children:s})]})]})]})})),xi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.settings);return(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"modal__body",children:(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsxs)("div",{className:"flex flex-row",children:[(0,g.jsxs)("span",{children:[t("diagrams_settings.grid_enabled"),"*:"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:n.gridEnabled,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{a(Object.assign({},n,{gridEnabled:e}))}})]})})}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),onClick:function(){e.onSettingsChanged(n),e.hideModal()}}])})]})},ji=["auto_layout"],Oi=["auto_layout"],Si=(0,r.forwardRef)(((e,t)=>{const{readOnly:n,diagram:a,diagramListener:o,diagramDesignViewToolbarCommands:i,saveDiagram:s,diagramsThemeSettings:l}=e,{t:_}=(0,G.useTranslation)(),c=(0,r.useRef)(),d=(0,r.useRef)(null),u=(0,r.useRef)(null),{ref:m}=(0,ui.useResizeDetector)(),b=(0,r.useRef)(),p=(0,r.useRef)(!1),h=(0,r.useRef)(!1),f=(0,r.useRef)(!1),[w,v]=(0,r.useState)([]),[x,O]=(0,r.useState)([]),[S,E]=(0,r.useState)(!1),[k,N]=(0,r.useState)(!1),[T,R]=(0,r.useState)(),{modal:L,showModal:$,hideModal:I}=ce();let D=b.current,A=a;function P(){p.current=!0,n||function(){if(!f.current){const e=W();e&&v((t=>[...t,e]))}}()}function F(t){const n={fireRightClick:!0,fireMiddleClick:!0,stopContextMenu:!0,backgroundColor:"white",readOnly:e.readOnly,enableSnapToGrid:!0},a=new j(d.current,n);a.on("object:added",P),a.on("object:removed",P),a.on(gt,P),a.on("mouse:down",(()=>h.current=!0)),a.on("mouse:out",(()=>h.current=!1)),a.codingFeaturesEnabled="desktop"===e.target,p.current=!1,t&&(a.setZoom(t.zoom),a.relativePan(new y.fabric.Point(t.pan.panX,t.pan.panY))),c.current=a}function B(){c.current&&(c.current.dispose(),c.current=void 0)}function z(e){B(),F(e)}function U(){var e,t;return{zoom:null!=(e=null==(t=c.current)?void 0:t.getZoom())?e:1,pan:sn(c.current)}}async function H(){var e;if(null!=(e=b.current)&&e.diagram_name&&b.current.diagram_type&&c.current){const e="png";console.debug(`Exporting to ${e}`);const t=c.current.viewportTransform;c.current.viewportTransform=y.fabric.iMatrix.slice(0);let{width:n,height:a,left:o,top:r}=nn(c.current.getObjects());n&&a&&o&&r&&(n+=50,a+=50,o-=25,r-=25),await async function(e,t,n,a){return(0,qa.invoke)("export_diagram_to_file",{diagramDataUrl:n,format:a,diagramName:e,diagramType:t})}(b.current.diagram_name,b.current.diagram_type,c.current.toDataURL({format:e,enableRetinaScaling:!0,width:n,height:a,left:o,top:r}),e).then((e=>Be.toast.success(_("common.info.diagram_exported",{pathExportedDiagram:e})))).catch((e=>Be.toast.success(e.msg))),c.current.viewportTransform=t}}function W(){if(b.current&&b.current.diagram_plantuml&&b.current.diagram_spec&&b.current.diagram_name&&b.current.diagram_type){var e,t;const n=void 0!==(null==(e=c.current)?void 0:e.autoLayoutEnabled)?c.current.autoLayoutEnabled:b.current.diagram_spec.auto_layout_enabled;let a=[];return n||(a=(e=>{const t=Array();return e&&e.getObjects().forEach((e=>{if(e instanceof gn){const n=e.getUpdatedSpecs();n&&t.push(n)}})),t})(c.current)),Object.assign({},b.current.diagram_spec,{auto_layout_enabled:n,auto_layout_orientation:void 0!==(null==(t=c.current)?void 0:t.autoLayoutOrientation)?c.current.autoLayoutOrientation:b.current.diagram_spec.auto_layout_orientation,elements_specs:a})}}function K(){return p.current}function X(){var e;return!(null==(e=b.current)||!e.diagram_spec)&&b.current.diagram_spec.auto_layout_enabled}function Y(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_orientation:"TopToBottom"}function Z(){var e;return!(null==(e=b.current)||!e.diagram_spec)&&b.current.diagram_spec.auto_layout_only_straight_arrows}function q(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_ranksep:0}function V(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_subgraph_inner_margin:0}function Q(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_subgraph_outer_margin:6.5}function J(e,t,a,o,r,i){c.current&&b.current&&!n&&$({id:"showAutoLayoutConfigurationModal",title:`${_("diagram_editor.configure_auto_layout")}`,body:(0,g.jsx)(fi,{enabled:e,orientation:t,generateOnlyStraightArrows:a,ranksep:o,subgraphInnerMargin:r,subgraphOuterMargin:i,hideModal:I,onAutoLayoutConfigured:(e,t,a,o,r,i)=>{c.current&&b.current&&!n&&(c.current.autoLayoutEnabled=e,c.current.autoLayoutOrientation=t,b.current.diagram_spec&&(b.current.diagram_spec.auto_layout_only_straight_arrows=a,b.current.diagram_spec.auto_layout_ranksep=o,b.current.diagram_spec.auto_layout_subgraph_inner_margin=r,b.current.diagram_spec.auto_layout_subgraph_outer_margin=i),p.current=!0,s&&s())}}),buttons:!1})}function ee(){var e;if(null!=(e=b.current)&&e.diagram_spec)return{gridEnabled:b.current.diagram_spec.grid_enabled}}function te(e){e&&c.current&&b.current&&!n&&$({id:"showDiagramDesignViewSettingsModal",title:`${_("common.settings")}`,body:(0,g.jsx)(xi,{settings:e,hideModal:I,onSettingsChanged:e=>{var t;c.current&&b.current&&!n&&(e.gridEnabled?c.current.enableGrid():c.current.disableGrid(),b.current.diagram_spec&&(b.current.diagram_spec.grid_enabled=null!=(t=e.gridEnabled)&&t),p.current=!0,s&&s())}}),buttons:!1})}function ne(){var t,n;null!=(t=b.current)&&t.diagram_spec&&c.current&&!e.readOnly&&(null!=(n=b.current)&&n.diagram_spec.auto_layout_enabled?c.current.setReadOnly():c.current.setReadAndWrite())}function ae(e){var t;c.current&&(z(U()),ne(),T?T.renderDiagram(c.current,o,Object.assign({},b.current,{diagram_spec:e}),l):console.error("DiagramRenderer not initialized"),null==(t=c.current)||t.renderAll(),p.current=!0,console.debug("Load history completed"))}function oe(){if(f.current=!0,ie()){const e=w[w.length-1],t=w[w.length-2];b.current&&e&&t&&(console.debug("Undo design view"),v((e=>e.filter(((t,n)=>n!==e.length-1)))),O((t=>[...t,e])),ae(t))}f.current=!1}function re(){if(console.debug("Redo design view"),f.current=!0,se()){const e=x[x.length-1];e&&(O((e=>e.filter(((t,n)=>n!==e.length-1)))),v((t=>[...t,e])),ae(e))}f.current=!1}function ie(){return!n&&w.length>1}function se(){return!n&&x.length>0}return D&&(D=C(D,ji)),A&&(A=C(A,Oi)),M(D,A)||(b.current=a),(0,r.useImperativeHandle)(t,(()=>({resetCanvas:z,getCanvasState:U,exportDiagram:H,getUpdatedDiagramSpec:W,isDiagramChanged:K,undo:oe,redo:re,canUndo:ie,canRedo:se,isAutoLayoutEnabled:X,autoLayoutOrientation:Y,updateAutoLayoutOptions:J,isGenerateOnlyStraightArrowsEnabled:Z,ranksep:q,updateDiagramDesignViewSettings:te,diagramDesignViewSettings:ee,subgraphInnerMargin:V,subgraphOuterMargin:Q}))),(0,r.useLayoutEffect)((()=>{var e,t,n,a,o,r,i;console.debug("Diagram Design View changed layout"),d.current&&null!=(e=u.current)&&e.clientWidth&&null!=(t=u.current)&&t.clientHeight&&(console.debug("Canvas resize"),d.current.parentElement&&(d.current.parentElement.style.display="none"),null==(n=c.current)||n.setWidth(null==(a=u.current)?void 0:a.getBoundingClientRect().width),null==(o=c.current)||o.setHeight(null==(r=u.current)?void 0:r.getBoundingClientRect().height),d.current.parentElement&&(d.current.parentElement.style.display="flex"),null==(i=c.current)||i.renderAll())})),(0,r.useEffect)((()=>(new(hi())(Ct.FONT.FAMILY).load(null,36e4).then((function(){c.current&&(function(e){e.getObjects().forEach((e=>e.set("dirty",!0)))}(c.current),c.current.renderAll())})),d.current&&!c.current&&F(),()=>{B()})),[]),(0,r.useEffect)((()=>{function e(e){n||"Z"!==e.key.toUpperCase()&&"Y"!==e.key.toUpperCase()||!e.ctrlKey&&!e.metaKey||!h.current||(e.preventDefault(),"Z"===e.key.toUpperCase()?oe():"Y"===e.key.toUpperCase()&&re())}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[n,w,x]),(0,r.useEffect)((()=>{var e,t;c.current&&b.current&&T&&(f.current=!0,console.debug("Rendering the diagram"),ne(),T.renderDiagram(c.current,o,b.current,l),null==(e=c.current)||e.renderAll(),p.current=!1,f.current=!1,n||(f.current=!1,null!=(t=b.current)&&t.diagram_spec&&v([b.current.diagram_spec]),O([])))}),[b.current,T]),(0,r.useEffect)((()=>{var e;!n&&i&&(console.debug("Update design toolbar"),null==(e=i.current)||e.forceUpdate())}),[n,w,x,i]),(0,r.useEffect)((()=>{!async function(){const e=await(new Pa).initialize();R(e)}()}),[]),(0,Te.useHotkeys)([Re.Key.Escape],(e=>{var t;c.current&&(e.preventDefault(),null==(t=c.current)||t.discardActiveObject())})),(0,g.jsxs)("div",{className:"relative h-full w-full",ref:m,children:[L,(0,g.jsx)(bi,{canvas:c.current,readOnly:n,diagramInfoPanelVisible:S,setDiagramInfoPanelVisible:E,diagramCodePanelVisible:k,setDiagramCodePanelVisible:N}),(0,g.jsx)(wi,{diagram:a,hidden:!S,setDiagramInfoPanelVisible:E}),(0,g.jsx)(vi,{diagram:a,hidden:!k,setDiagramCodePanelVisible:N}),(0,g.jsx)("div",{className:"h-full w-full flex-row flex-wrap",ref:u,children:(0,g.jsx)("canvas",{ref:d})})]})})),Ei={className:"diagram-editor_toast--error",position:"bottom-left",autoClose:!1},Ci=e=>{var t;const{state:n}=(0,a.useLocation)(),o=(0,a.useNavigate)(),{t:i}=(0,G.useTranslation)(),{modal:_,showModal:c,hideModal:d}=ce(),[u,m]=(0,r.useState)(),[b,p]=(0,r.useState)(!1),[h,f]=(0,r.useState)(),w=(0,r.useRef)(null),y=(0,r.useRef)(null),v=(0,r.useRef)(null),x=(0,r.useRef)(null),j=(0,r.useContext)(l),O=Go((e=>e.project.value)),[S,E]=(0,r.useState)(0);null==j||j.useSubscription((e=>{e.type===s.OpenDiagram&&c({id:"confirmOpenDiagramModal",title:`${i("common.confirmation")}`,body:`${i("common.question.confirm_not_saved_changed")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{T(!1),d(),o(Eo,e.data)}}]})}));const C=n,k={onOpenDiagramClick:e=>{c({id:"confirmGoToDiagramModal",title:`${i("common.confirmation")}`,body:`${i("common.question.confirm_go_to_diagram")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{let t;try{t=await io(e)}catch(e){t=void 0}if(t&&t.diagram_name&&t.diagram_type){const e={diagramName:t.diagram_name,diagramType:t.diagram_type};T(!1),d(),o(Eo,{state:e})}else d(),Be.toast.error(i("common.error.invalid_diagram_link"))}}]})},onOpenExternalLinkClick:e=>{(0,Ha.open)(e)},onSelectElementCode:async(e,t,n)=>{let a;if(e&&t&&(void 0!==On(t)?a={Person:e}:void 0!==En(t)?a={SoftwareSystem:e}:void 0!==xn(t)?a={Container:e}:void 0!==vn(t)?a={Component:e}:void 0!==yn(t)?a={Boundary:e}:void 0!==jn(t)?a={DeploymentNode:e}:void 0!==Sn(t)&&(a={Relationship:e}),a))try{var o;const e=await oo(a,n);null==(o=y.current)||o.selectText(e.replace(new RegExp("(^\\n)|(\\n$)","gi"),""))}catch(e){}}};(0,r.useEffect)((()=>{N()}),[C]),(0,r.useEffect)((()=>{let e;return null!=O&&O.project_settings&&O.project_settings.autosave_interval_seconds&&O.project_settings.autosave_enabled&&(e=setInterval((()=>{E((e=>e+1))}),1e3*O.project_settings.autosave_interval_seconds)),()=>{e&&clearInterval(e)}}),[O]),(0,r.useEffect)((()=>{0!==S&&R()}),[S]);const N=async()=>{const e=await async function(e,t){return(0,qa.invoke)("open_diagram",{diagramName:e,diagramType:t})}(C.diagramName,C.diagramType).catch((e=>{Be.toast.error(e.msg,Ei),f(e)}));e&&m(e)},T=async(e,t)=>{var n,a;await async function(e,t){return(0,qa.invoke)("close_diagram",{diagramName:e,diagramType:t})}(C.diagramName,C.diagramType).catch((e=>{Be.toast.error(e.msg,Ei),f(e)})),null==(n=w.current)||n.resetCanvas(t),t||(null==(a=y.current)||a.resetCode(),m(void 0),f(void 0),e&&o(jo))},R=async()=>{if(!b){var e,t;const o=null==(e=y.current)?void 0:e.getUpdatedRawPlantUML(),r=null==(t=w.current)?void 0:t.getUpdatedDiagramSpec();if(u&&u.diagram_name&&u.diagram_type&&o&&r){const e=Object.assign({},u,{raw_plantuml:o,diagram_spec:r});n=e,(u.raw_plantuml!==n.raw_plantuml||!0===(null==(a=w.current)?void 0:a.isDiagramChanged()))&&(p(!0),await ao(u.diagram_name,u.diagram_type,o,r).then((async()=>{var t;f(void 0),await T(!0,null==(t=w.current)?void 0:t.getCanvasState()),await N(),p(!1),go({data:{Diagram:e},hook_type:"onDiagramSaved"})})).catch((e=>{p(!1),Be.toast.error(e.msg,Ei),f(e)})))}}var n,a};return(0,g.jsxs)("div",{className:"bg-dark-primary flex h-full w-full flex-col overflow-auto",children:[_,(0,g.jsx)(kr,{diagram:u,saveDiagram:R,closeDiagram:()=>{c({id:"confirmCloseDiagramModal",title:i("common.confirmation").toString(),body:i("common.question.confirm_close_diagram").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{d(),T(!0)}}]})}}),(0,g.jsxs)("div",{className:"flex w-full grow overflow-hidden",children:[(0,g.jsx)("div",{id:"diagram-code-editor-box",children:(0,g.jsx)(Yo.ResizableBox,{height:1/0,width:500,resizeHandles:["e"],children:(0,g.jsxs)("div",{className:"window__inner-border h-full w-full border-t flex flex-col",children:[(0,g.jsx)(vr,{ref:v,diagramCodeViewCommands:y.current}),(0,g.jsx)(di,{ref:y,project:O,diagram:u,error:h,diagramCodeViewToolbarCommands:v.current,saveDiagram:R,isSaving:b})]})})}),(0,g.jsxs)("div",{className:"window__inner-border h-full w-full border-t flex flex-col overflow-x-auto",children:[(0,g.jsx)(jr,{ref:x,diagramDesignViewCommands:w}),(0,g.jsx)(Si,{ref:w,diagramListener:k,diagram:u,diagramsThemeSettings:null==O||null==(t=O.project_settings.themes_settings)?void 0:t.diagrams_theme_settings,error:h,diagramDesignViewToolbarCommands:x,saveDiagram:R,target:"desktop"})]})]}),(0,g.jsxs)("div",{className:(b?"opacity-90":"opacity-0")+" bg-dark-brand1 z-[6] absolute bottom-5 left-1/2 -translate-x-1/2 text-center transition duration-200 ease-in-out px-10 py-1 rounded-md pointer-events-none flex",children:[(0,g.jsxs)("svg",{className:"animate-spin my-auto mr-3 h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,g.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,g.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),(0,g.jsxs)("span",{children:[i("diagram_editor.saving_rendering_diagram"),"..."]})]})]})},ki=require("@tauri-apps/api"),Ni="http://localhost:11434/v1",Ti="ollama",Ri="deepseek-r1:8b",Li=i().memo((e=>{var t,n,a;const{t:o}=(0,G.useTranslation)(),{setNewProjectSettings:r,aiSettings:i}=e;return(0,g.jsxs)("div",{children:[(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.api_key"),info:`${o("common.example")}: ${Ti}`,className:"mt-6",value:null!=(t=null==i?void 0:i.api_key)?t:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{api_key:e.target.value})})}))}),(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.api_base_url"),info:`${o("common.example")}: ${Ni}`,className:"mt-6",value:null!=(n=null==i?void 0:i.api_base_url)?n:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{api_base_url:e.target.value})})}))}),(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.model"),info:`${o("common.example")}: ${Ri}`,className:"mt-6",value:null!=(a=null==i?void 0:i.model)?a:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{model:e.target.value})})}))})]})})),Mi=[{i18nKey:"common.diagram",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_diagram"}]},{i18nKey:"common.legend",settings:[{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_legend_title"}]},{i18nKey:"common.person",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_person"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_person"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_person"}]},{i18nKey:"common.person_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_person_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_person_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_person_ext"}]},{i18nKey:"common.software_system",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_software_system"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_software_system"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_software_system"}]},{i18nKey:"common.software_system_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_software_system_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_software_system_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_software_system_ext"}]},{i18nKey:"common.container",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_container"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_container"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_container"}]},{i18nKey:"common.container_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_container_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_container_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_container_ext"}]},{i18nKey:"common.component",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_component"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_component"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_component"}]},{i18nKey:"common.component_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_component_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_component_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_component_ext"}]},{i18nKey:"common.boundary",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_boundary"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_boundary"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_boundary"}]},{i18nKey:"common.deployment_node",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_deployment_node"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_deployment_node"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_deployment_node"}]},{i18nKey:"common.relationship",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.line_color",modelName:"line_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.selection_color",modelName:"selected_color_relationship"}]}],$i=i().memo((e=>{const{t}=(0,G.useTranslation)(),{setNewProjectSettings:n,project:a,defaultProjectSettings:o,themeSettings:r,openResetModal:i,setOpenResetModal:s}=e;function l(e,t){var r;let i;"reset"===e&&null!=a&&null!=(r=a.project_settings.themes_settings)&&r.diagrams_theme_settings&&(i=a.project_settings.themes_settings.diagrams_theme_settings[t]),i&&"default"!==e||(i=o.themes_settings.diagrams_theme_settings[t]),n((e=>{var n;if(e)return Object.assign({},e,{themes_settings:Object.assign({},e.themes_settings,{diagrams_theme_settings:Object.assign({},null==(n=e.themes_settings)?void 0:n.diagrams_theme_settings,{[t]:i})})})}))}return(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)("span",{className:"text-brand1 font-bold mt-5 text-lg",children:t("project_settings.themes.diagrams_theme.title")}),function(e){const a=[];return e.forEach((e=>{const _=[];e.settings.forEach((a=>{var c,u,m;_.push((0,g.jsxs)("div",{className:"project-settings__diagrams-theme-settings",children:[(0,g.jsxs)("span",{className:"my-auto",children:[t(a.i18nKey),":"]}),(0,g.jsx)(Le,{color:null!=(c=null==r||null==(u=r.diagrams_theme_settings)?void 0:u[`${a.modelName}`])?c:null==(m=o.themes_settings)||null==(m=m.diagrams_theme_settings)?void 0:m[`${a.modelName}`],onChange:e=>{n((t=>{if(t)return Object.assign({},t,{themes_settings:Object.assign({},r,{diagrams_theme_settings:Object.assign({},null==r?void 0:r.diagrams_theme_settings,{[a.modelName]:e.hex})})})}))}}),(0,g.jsxs)("div",{children:[(0,g.jsx)(U,{icon:d.faUndo,className:"ml-2",onClick:()=>s(`${e.i18nKey}-${a.modelName}`)}),(0,g.jsx)("div",{className:"absolute pr-5 pb-5 pointer-events-none",children:(0,g.jsxs)("div",{className:"ml-2 flex flex-row bg-secondary p-2 rounded "+(i===`${e.i18nKey}-${a.modelName}`?"flex":"hidden"),children:[(0,g.jsx)(te,{className:"p-1 h-fit w-[6rem] pointer-events-auto",onClick:()=>l("reset",a.modelName),children:t("common.reset")}),(0,g.jsx)(te,{className:"ml-2 p-1 h-fit w-[6rem] pointer-events-auto",onClick:()=>l("default",a.modelName),children:t("common.default")})]})})]})]},a.i18nKey))})),a.push((0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)("span",{className:"mt-5 text-brand1",children:t(e.i18nKey)}),(0,g.jsx)("div",{className:"static mt-2 grid grid-cols-3 gap-x-4",children:_})]},e.i18nKey))})),a}(Mi)]})})),Ii=$i,Di=i().memo((e=>{const{t}=(0,G.useTranslation)(),{setNewProjectSettings:n,autosaveEnabled:a,autosaveIntervalSeconds:o}=e;return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"flex flex-row mt-6",children:[(0,g.jsxs)("span",{children:[`${t("common.autosave")}*`,":"]}),(0,g.jsx)(ke,{id:"autosave-status",className:"ml-5",value:a,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{n((t=>{if(t)return Object.assign({},t,{autosave_enabled:e,autosave_interval_seconds:e?60:0})}))}})]}),(0,g.jsx)(ue,{type:"number",max:240,label:`${t("common.autosave_interval_sec")}`,info:`${t("common.max")} 240 ${t("common.seconds").toLowerCase()}`,className:"mt-6",value:null!==o?o:0,onChange:e=>{n((t=>{if(t)return Object.assign({},t,{autosave_interval_seconds:e.target.value.length>0?Number.parseInt(e.target.value):0})}))}})]})})),Ai=i().memo((e=>{const{t}=(0,G.useTranslation)(),{mode:n,setNewProjectSettings:a,chooseProjectDirectory:o,root:r,name:i,version:s,description:l}=e;return(0,g.jsxs)("div",{children:["create"===n&&(0,g.jsx)(U,{icon:d.faFolder,onClick:o,className:"flex mt-6",classNameIcon:"mt-[3px]",classNameContent:"ml-3",children:r.replace(/ /g,"").length>0?r:t("home.chose_parent_dir_project")}),(0,g.jsx)(ue,{type:"text",label:`${t("common.name")}*`,className:"mt-6",allowedChars:gr,info:`${t("common.allowed_pattern")}: ${gr}`,value:i,onChange:e=>a((t=>{if(t)return Object.assign({},t,{name:e.target.value})}))}),(0,g.jsx)(ue,{type:"text",label:`${t("common.version")}*`,className:"mt-6",allowedChars:br,info:`${t("common.allowed_pattern")}: ${br}`,value:s,onChange:e=>a((t=>{if(t)return Object.assign({},t,{version:e.target.value})}))}),(0,g.jsx)(we,{label:`${t("common.description")}*`,className:"mt-6",value:l,onChange:e=>a((t=>{if(t)return Object.assign({},t,{description:e.target.value})}))})]})})),Pi={root:"",name:"",description:"",version:"",autosave_enabled:!1,autosave_interval_seconds:0,ai_settings:{api_base_url:Ni,api_key:Ti,model:Ri},themes_settings:{diagrams_theme_settings:{bg_color_diagram:ft,bg_color_boundary:kt.COLORS.BG_COLOR_BOUNDARY,bg_color_component:kt.COLORS.BG_COLOR_COMPONENT,bg_color_component_ext:kt.COLORS.BG_COLOR_COMPONENT_EXT,bg_color_container:kt.COLORS.BG_COLOR_CONTAINER,bg_color_container_ext:kt.COLORS.BG_COLOR_CONTAINER_EXT,bg_color_deployment_node:kt.COLORS.BG_COLOR_DEPLOYMENT_NODE,bg_color_person:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,bg_color_person_ext:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,bg_color_relationship:Rt,bg_color_software_system:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,bg_color_software_system_ext:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,border_color_boundary:kt.COLORS.BORDER_COLOR_BOUNDARY,border_color_component:kt.COLORS.BORDER_COLOR_COMPONENT,border_color_component_ext:kt.COLORS.BORDER_COLOR_COMPONENT_EXT,border_color_container:kt.COLORS.BORDER_COLOR_CONTAINER,border_color_container_ext:kt.COLORS.BORDER_COLOR_CONTAINER_EXT,border_color_deployment_node:kt.COLORS.BORDER_COLOR_DEPLOYMENT_NODE,border_color_person:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,border_color_person_ext:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,border_color_software_system:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,border_color_software_system_ext:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,line_color_relationship:Lt,selected_color_relationship:$t,text_color_boundary:kt.COLORS.TEXT_COLOR_BOUNDARY,text_color_component:kt.COLORS.TEXT_COLOR_COMPONENT,text_color_component_ext:kt.COLORS.TEXT_COLOR_COMPONENT_EXT,text_color_container:kt.COLORS.TEXT_COLOR_CONTAINER,text_color_container_ext:kt.COLORS.TEXT_COLOR_CONTAINER_EXT,text_color_deployment_node:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE,text_color_legend_title:wt,text_color_person:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,text_color_person_ext:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,text_color_relationship:Mt,text_color_software_system:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,text_color_software_system_ext:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT}}},Fi={root:"",name:"",description:"",version:"",autosave_enabled:Pi.autosave_enabled,autosave_interval_seconds:Pi.autosave_interval_seconds},Bi=e=>{const t=Qe.AI_ENABLED,n=Go((e=>e.project.value)),{t:a}=(0,G.useTranslation)(),o=Xo(),[i,s]=(0,r.useState)("edit"===e.mode?null==n?void 0:n.project_settings:Fi),[l,_]=(0,r.useState)(),[c,d]=(0,r.useState)(),[u,m]=(0,r.useState)(!1),b=(0,r.useCallback)((async()=>{if(Qe.WEB_MODE)try{const e=await window.showDirectoryPicker({mode:"readwrite"});_(e),s((t=>{if(t)return Object.assign({},t,{root:e.name})}))}catch(e){}else za.open({directory:!0}).then((async e=>{Array.isArray(e)?Be.toast.error(a("common.error.invalid_path")):e&&s((t=>{if(t)return Object.assign({},t,{root:e})}))}))}),[a]);if((0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll("#project-settings-tabs a")).forEach((e=>{const t=new oe.Tab(e);e.addEventListener("click",(e=>{e.preventDefault(),t.show()}))}))}),[]),(0,Te.useHotkeys)([Re.Key.Escape],(e=>{c&&(e.preventDefault(),d(void 0))})),i){const r=[{id:"project-settings-project",title:a("common.general"),body:(0,g.jsx)(Ai,{mode:e.mode,setNewProjectSettings:s,chooseProjectDirectory:b,description:i.description,name:i.name,root:i.root,version:i.version})},{id:"project-settings-editor",title:a("common.editor"),body:(0,g.jsx)(Di,{setNewProjectSettings:s,autosaveEnabled:i.autosave_enabled,autosaveIntervalSeconds:i.autosave_interval_seconds})},{id:"project-settings-diagrams-theme",title:a("common.themes"),body:(0,g.jsx)(Ii,{setNewProjectSettings:s,defaultProjectSettings:Pi,project:n,themeSettings:i.themes_settings,openResetModal:c,setOpenResetModal:d})}];return t&&r.push({id:"project-settings-ai",title:a("common.ai"),body:(0,g.jsx)(Li,{setNewProjectSettings:s,aiSettings:i.ai_settings})}),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 relative",children:[(0,g.jsx)("div",{className:"top-0 bottom-0 left-0 right-0 "+(c?"absolute":"hidden"),onClick:()=>d(void 0)}),(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:"create"===e.mode?a("home.create_project"):a("project_settings.title")}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsx)(te,{className:"float-right",disabled:!i.description||!i.name||!i.version||"create"===e.mode&&!i.root,onClick:function(){if(i)if(null!==(t=i).autosave_interval_seconds&&(t.autosave_interval_seconds<0||t.autosave_interval_seconds>240)&&Be.toast.error(`${a("common.invalid")} "${a("common.autosave".toLowerCase())}" ${a("common.value").toLowerCase()}`),"edit"===e.mode){if(null!=n&&n.project_settings){const e=Object.assign({},n,{project_settings:Object.assign({},null==n?void 0:n.project_settings,i)});m(!0),async function(e){return(0,qa.invoke)("save_project_settings",{projectSettings:e})}(i).then((t=>{m(!1),o(Ga(e)),Be.toast.info(a("common.info.done"))})).catch((e=>{m(!1),Be.toast.error(e.msg)}))}}else m(!0),async function(e,t){return Qe.WEB_MODE?(0,qa.invoke)(Va,{projectSettings:e,dirHandle:t}):(0,qa.invoke)(Va,{projectSettings:e})}(i,l).then((t=>{m(!1),Be.toast.info(a("common.info.done")),e.hideModal&&e.hideModal(),e.onProjectCreated&&e.onProjectCreated(t.root,l)})).catch((e=>{m(!1),Be.toast.error(e.msg)}));var t},isLoading:u,children:"edit"===e.mode?a("common.save"):a("common.create")})})]}),(0,g.jsx)("div",{className:"w-full pb-4 pt-9",children:(0,g.jsx)(Ce,{id:"project-settings-tabs",tabs:r,className:"project-settings__tabs",tabClassName:"!my-0 mx-1 data-[te-nav-active]:border-accent-primary data-[te-nav-active]:bg-brand1",bodyClassName:"pt-0 flex-grow",orientation:"top"})})]})}return null},zi=e=>(0,g.jsx)(Bi,{mode:"create",hideModal:e.hideModal,onProjectCreated:e.onProjectCreated});function Ui(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+" is not an object."));var t=e.done;return Promise.resolve(e.value).then((function(e){return{value:e,done:t}}))}return Ui=function(e){this.s=e,this.n=e.next},Ui.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return void 0===n?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return void 0===n?Promise.reject(e):t(n.apply(this.s,arguments))}},new Ui(e)}const Hi=Ze(),Wi=i().memo((e=>{const{t}=(0,G.useTranslation)(),n=Xo(),o=(0,a.useNavigate)(),{modal:i,showModal:s,hideModal:l}=ce(),{modal:_,safeExit:c}=De(Wo),[u,m]=(0,r.useState)(!1);function b(e,a){eo(e,a).then((e=>{n(Xa(e)),o(jo)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}async function p(e,t){let n=t;if(Qe.WEB_MODE&&t){var a,o=!1,r=!1;try{for(var i,s=function(e){var t,n,a,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&null!=(t=e[n]))return t.call(e);if(a&&null!=(t=e[a]))return new Ui(t.call(e));n="@@asyncIterator",a="@@iterator"}throw new TypeError("Object is not async iterable")}(t.entries());o=!(i=await s.next()).done;o=!1){const t=i.value;if(t[0]===(null==e?void 0:e.replace("/",""))){n=t[1];break}}}catch(e){r=!0,a=e}finally{try{o&&null!=s.return&&await s.return()}finally{if(r)throw a}}}b(e,n)}return(0,r.useEffect)((()=>{if(!Qe.WEB_MODE){const e=Hi.onDragDropEvent((async e=>{"over"===e.payload.type?m(!0):"drop"===e.payload.type?(e.payload.paths&&e.payload.paths.length>0&&await async function(e){try{return await ki.path.extname(e),!1}catch(e){return!0}}(e.payload.paths[0])&&b(e.payload.paths[0],void 0),m(!1)):m(!1)}));return bo(s,t,!1),()=>{e&&e.then((e=>e()))}}}),[]),(0,g.jsxs)("div",{className:"relative flex h-full w-full flex-col justify-center "+(u?"border-brand1 border-solid border-4":""),children:[i,_,(Qe.WEB_MODE&&A(window)||!Qe.WEB_MODE)&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:"-mt-28 text-center",children:(0,g.jsx)("img",{src:"mina-logo-full.svg",width:650,alt:"Keadex Mina Logo ",className:"inline-block pointer-events-none"})}),(0,g.jsxs)("div",{className:"mt-28 text-center text-5xl",children:[(0,g.jsx)(U,{icon:d.faFolderOpen,className:"w-60 align-top",onClick:async function(){if(Qe.WEB_MODE)try{b(void 0,await window.showDirectoryPicker({mode:"readwrite"}))}catch(e){}else za.open({directory:!0}).then((async e=>{Array.isArray(e)?Be.toast.error(t("common.error.invalid_path")):e&&b(e,void 0)}))},children:(0,g.jsx)("span",{className:"text-lg",children:t("home.open_local_project")})}),(0,g.jsx)(U,{icon:Pe,onClick:async function(){o(So)},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.open_remote_project")})}),(0,g.jsx)(U,{icon:d.faPlus,onClick:function(){s({id:"createProjectModal",title:"",body:(0,g.jsx)(zi,{hideModal:l,mode:"create",onProjectCreated:p}),buttons:!1,size:"lg"})},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.create_project")})}),(0,g.jsx)(U,{icon:d.faCloud,onClick:async function(){ys(c,[])},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.remote_diagrams")})})]})]}),Qe.WEB_MODE&&!A(window)&&(0,g.jsxs)("div",{className:"text-center text-lg",children:["This browser does not support opening local folders.",(0,g.jsx)("br",{})," Check the list of compatible browsers"," ",(0,g.jsx)("a",{href:"https://developer.mozilla.org/en-US/docs/Web/API/Window/showDirectoryPicker#browser_compatibility",target:"_blank",rel:"noreferrer",children:"here"}),"."]})]})})),Ki=function(e,t,n,a,o,r,i,s,l){const _=`${o}_${a}`;function c(t){r({id:`${t}DiargamModal`,title:`${e(`common.${t}`)} ${e("common.diagram").toLowerCase()}`,body:(0,g.jsx)(Er,{diagramName:a,diagramType:o,mode:t,hideModal:i,forceUpdate:s}),buttons:!1})}return{menuItemsProps:[{isHeaderMenuItem:!0,id:_,label:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faEllipsisH}),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:`${_}_open`,label:e("common.open").toString(),onClick:function(){l(a,o)}},{isHeaderMenuItem:!1,id:`${_}_edit`,label:e("common.edit").toString(),onClick:()=>c("edit")},{isHeaderMenuItem:!1,id:`${_}_duplicate`,label:e("common.duplicate").toString(),onClick:()=>c("duplicate")},{isHeaderMenuItem:!1,id:`${_}_delete`,label:e("common.delete").toString(),onClick:function(){r({id:"confirmDeleteDiagram",title:e("common.confirmation").toString(),body:e("common.question.confirm_delete_diagram",{diagramName:a,diagramType:Cn(o)}).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.no")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.yes")}),className:"button--dangerous",onClick:()=>{t&&async function(e,t){return(0,qa.invoke)("delete_diagram",{diagramName:e,diagramType:t})}(a,o).then((r=>{Be.toast.info(e("common.info.done")),go({data:{Diagram:{diagram_name:a,diagram_type:o}},hook_type:"onDiagramDeleted"});const l=Object.assign({},t,{project_library:r});n(Ga(l)),s(),i()})).catch((t=>{Be.toast.error(e("common.error.cannot_delete_diagram",{errorMessage:t.msg}))}))}}]})}}]}]}},Xi=i().memo((e=>{const{t}=(0,G.useTranslation)(),{modal:n,showModal:o,hideModal:s}=ce(),{forceUpdate:l,updatedCounter:_}=Ie(),c=(0,a.useNavigate)(),m=(0,r.useRef)(null),b=Xo(),p=Go((e=>e.project.value)),[h,f]=(0,r.useState)([]),[w,y]=i().useState(""),v={data:h,columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),pageCount:1};function x(e,t){e&&t&&c(Eo,{state:{diagramName:e,diagramType:t}})}return(0,r.useEffect)((()=>{p&&no().then((e=>{var n;const a=function(e,t,n,a){const r=[];let i=1;for(const _ of Je){i++;const c={name:Cn(_),children:[]};var l;e[_]&&e[_].length>0?(i+=e[_].length,e[_].forEach((e=>{var r;null==(r=c.children)||r.push({name:e,diagramName:e,diagramType:_,menu:(0,g.jsx)(Z,{menuOptions:Ki(t,p,b,e,_,o,s,n,a).menuItemsProps})})}))):(i++,null==(l=c.children)||l.push({name:t("common.info.no_diagrams").toString()})),r.push(c)}return{data:r,totalRows:i}}(e,t,l,x);f(a.data),null==(n=m.current)||n.setPageSize(a.totalRows)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}),[t,_,p]),(0,g.jsxs)("div",{className:"h-full w-full p-3",children:[n,(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none",children:t("common.diagrams")}),(0,g.jsx)("div",{className:"ml-5 inline-block w-64",children:(0,g.jsx)(J,{onChange:e=>y(e.target.value)})}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsxs)(te,{className:"float-right bg-red-400",onClick:()=>{o({id:"newDiargamModal",title:`${t("common.new")} ${t("common.diagram").toLowerCase()}`,body:(0,g.jsx)(Er,{mode:"create",hideModal:s,forceUpdate:l}),buttons:!1})},children:[(0,g.jsx)("span",{children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus})}),(0,g.jsx)("span",{className:"ml-1",children:`${t("common.create")} ${t("common.diagram")}`})]})})]}),(0,g.jsx)("div",{className:"home-project w-full pb-4 pt-4",children:(0,g.jsx)(Y,{ref:m,defaultExpanded:!0,disableExpandControls:!0,columns:[{accessorKey:"name",label:"Name"},{accessorKey:"menu",label:"Options",size:0}],tableOptions:v,globalFilter:w,hidePaginationControls:!0,hideHeader:!0,onRowClick:(e,t)=>x(t.diagramName,t.diagramType),suppressRowClickColIDs:["menu"]})})]})})),Gi=Xi,Yi="Keadex",Zi={GH_TOKEN:`${Yi}-Gh-Token`,GH_AUTH:`${Yi}-Gh-Authorization`,GH_URL:`${Yi}-Gh-Url`,GH_REPO:`${Yi}-Gh-Repo`,GH_OWNER:`${Yi}-Gh-Owner`,GH_BRANCH:`${Yi}-Gh-Branch`},qi={path:"/api/github/auth/{clientId}",variables:{clientId:"clientId"}},Vi={path:"/api/github/repo/download",headers:{ghToken:Zi.GH_TOKEN,ghRepo:Zi.GH_REPO,ghOwner:Zi.GH_OWNER,ghBranch:Zi.GH_BRANCH}};function Qi(e,t){return`https://keadex.dev${function(e,t){let n=e.toString();return Object.keys(null!=t?t:{}).forEach((a=>{var o;n=e.replace(`{${a}}`,null!=(o=null==t?void 0:t[a])?o:"")})),n}(e,t)}`}const Ji=require("@octokit/auth-oauth-user"),es=require("@octokit/core"),ts=require("@octokit/plugin-rest-endpoint-methods"),ns=es.Octokit.plugin(ts.restEndpointMethods),as=e=>{const{className:t}=e,{t:n}=(0,G.useTranslation)(),a=(0,r.useContext)(l),o=(0,r.useCallback)(((e,t={})=>new Promise(((n,a)=>{var o,r;const i=null!=(o=t.width)?o:500,s=null!=(r=t.height)?r:600,l=window.screenX+(window.outerWidth-i)/2,_=window.screenY+(window.outerHeight-s)/2,c=window.open(e,"popup",`width=${i},height=${s},left=${l},top=${_}`);if(!c)return void a(new Error("Popup blocked"));const d=e=>{e.origin===window.location.origin&&(n(e.data),g())};window.addEventListener("message",d);const u=setInterval((()=>{c.closed&&(clearInterval(u),n(void 0),g())}),500),g=()=>{window.removeEventListener("message",d),clearInterval(u),c.closed||c.close()}}))),[]),[i,_]=(0,r.useState)(void 0),[c,m]=(0,r.useState)(void 0),[b,p]=(0,r.useState)(void 0),[h,f]=(0,r.useState)(void 0),[w,y]=(0,r.useState)({});function v(){return!!i&&!!c}function x(e){return`${e}-branches`}return null==a||a.useSubscription((e=>{e.type===s.GitHubTokenChanged&&_(e.data.token)})),(0,r.useEffect)((()=>{Qe.WEB_MODE&&(new BroadcastChannel("keadex_gh_channel").onmessage=e=>{const{token:t}=e.data;t&&_(t)})}),[]),(0,r.useEffect)((()=>{"123"!=i&&async function(e){if(e){const t=new ns({authStrategy:Ji.createOAuthUserAuth,auth:{token:e}});try{const e=await t.rest.users.getAuthenticated();m(e.data.login);const n=await t.rest.repos.listForAuthenticatedUser();p(n);const a=new Map,o={};for(const e of n.data){const n=await t.rest.repos.listBranches({owner:e.owner.login,repo:e.name});a.set(x(e.name),n.data),o[e.name]=e.default_branch}f(a),y(o)}catch(e){const t=e;console.error("Error invokig GH API:",t.message)}}}(i)}),[i]),(0,g.jsxs)("div",{className:`w-full h-full relative ${null!=t?t:""}`,children:[(0,g.jsxs)("div",{className:"text-center w-full",children:[(0,g.jsx)(te,{onClick:function(){const e=Qe.WEB_MODE?"mina_web":"mina_desktop";o(`https://github.com/login/oauth/authorize?client_id=${Qe.GITHUB_CLIENT_ID_MINA}&scope=repo&redirect_uri=${Qi(qi.path,{[qi.variables.clientId]:e})}`,{width:700})},className:"!bg-black hover:!bg-dark-primary disabled:hover:!bg-black !text-lg normal-case "+(v()?"rounded-se-none rounded-ee-none":""),disabled:v(),children:v()?`${n("common.hi")}, ${c}!`:n("common.login")}),v()&&(0,g.jsx)(te,{onClick:function(){m(void 0),p(void 0),f(void 0),_(void 0),null==a||a.emit({type:s.GitHubTokenChanged,data:{token:void 0}})},className:"!text-lg button--dangerous !min-w-0 !px-0 w-10 rounded-ss-none rounded-es-none",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faRightFromBracket})})]}),v()&&(!b||!h)&&(0,g.jsx)("div",{className:"w-full absolute bottom-0 top-20",children:(0,g.jsxs)("div",{className:"m-auto",children:[n("remote_project.loading_repos_data"),"..."]})}),v()&&b&&h&&(0,g.jsxs)("div",{className:"w-full absolute bottom-0 top-20",children:[(0,g.jsx)("div",{className:"text-brand1 text-lg mb-3",children:n("remote_diagrams.gh_select_repo")}),(0,g.jsxs)("div",{className:"w-full overflow-y-auto absolute bottom-0 top-10 pr-3",children:[0===b.data.length&&(0,g.jsx)("div",{children:n("remote_diagrams.gh_no_repos")}),b.data.map((t=>{var a,o;return(0,g.jsxs)("div",{className:"p-2 border-b-[0.5px] border-b-secondary last:border-b-0 hover:bg-secondary container-link flex",children:[(0,g.jsx)("div",{className:"flex items-center grow",onClick:()=>{null==e.onRepoSelected||e.onRepoSelected(t,w[t.name],i)},children:t.name}),(0,g.jsx)("div",{className:"my-auto",children:(0,g.jsx)(me,{id:x(t.name),label:n("common.branch"),options:null!=(a=null==(o=h.get(x(t.name)))?void 0:o.map((e=>({value:e.name,label:e.name}))).sort())?a:[],className:"w-40 !mt-3 !mb-2",value:w[t.name],onChange:e=>{y((n=>Object.assign({},n,{[t.name]:e.target.value})))}})})]},t.id)}))]})]})]})},os=i().memo((e=>{const{className:t,showLoading:n,label:a,hideLogo:o}=e,{t:r}=(0,G.useTranslation)();return(0,g.jsx)("div",{className:`absolute flex h-full w-full flex-col justify-center bg-primary ${null!=t?t:""}`,children:(0,g.jsxs)("div",{className:"-mt-28 text-center",children:[!o&&(0,g.jsx)("img",{src:"mina-logo-full.svg",width:650,alt:"Keadex Mina Logo ",className:"inline-block pointer-events-none"}),n&&(0,g.jsxs)("div",{className:"flex flex-row mt-10 text-center w-full justify-center",children:[(0,g.jsx)("div",{className:"text-3xl mr-2 font-light",children:null!=a?a:`${r("common.loading")}`}),(0,g.jsxs)("div",{className:"flex space-x-2 justify-center items-end pb-1",children:[(0,g.jsx)("div",{className:"h-3 w-3 bg-brand1 rounded-full animate-bounce [animation-delay:-0.3s]"}),(0,g.jsx)("div",{className:"h-3 w-3 bg-brand2 rounded-full animate-bounce [animation-delay:-0.15s]"}),(0,g.jsx)("div",{className:"h-3 w-3 bg-brand3 rounded-full animate-bounce"})]})]})]})})})),rs=require("@tauri-apps/plugin-fs"),is=e=>{const{t}=(0,G.useTranslation)(),n=Xo(),o=(0,a.useNavigate)(),[i,s]=(0,r.useState)(!1),[l,_]=(0,r.useState)("");async function c(e){let t,n;return Qe.WEB_MODE?n=await async function(e){var t;const n=await B().loadAsync(e),a=await async function(){const e=await navigator.storage.getDirectory();return await e.getDirectoryHandle(D,{create:!0})}();let o;for(const[e,t]of Object.entries(n.files))if(t.dir){const t=e.split("/").filter(Boolean);if(t.length>0){let e=await P(a,t);o||(o=e)}}else{const n=e.split("/").filter(Boolean),o=n.pop(),r=n.length>0?await P(a,n):a,i=await t.async("uint8array"),s=await r.getFileHandle(o,{create:!0}),l=await s.createWritable();await l.write(i),await l.close()}return null!=(t=o)?t:a}(e):t=await async function(e){var t;const n=await B().loadAsync(e),a=await(0,Qo.tempDir)();let o;for(const[e,t]of Object.entries(n.files)){const n=await(0,Qo.join)(a,e);if(t.dir)await(0,rs.mkdir)(n,{recursive:!0}),o||(o=n);else{await(0,rs.mkdir)(await(0,Qo.dirname)(n),{recursive:!0});const e=await t.async("uint8array");await(0,rs.writeFile)(n,e)}}return null!=(t=o)?t:a}(e),{root:t,dirHandle:n}}async function d(e,a){s(!0),fetch(e,a).then((async e=>{if(e.ok){const a=await e.blob(),r=await c(a);s(!1),eo(r.root,r.dirHandle).then((e=>{n(Xa(e)),o(jo)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}else s(!1),Be.toast.error(t("common.error.cannot_download_project",{errorMessage:e.statusText}))})).catch((e=>{s(!1),Be.toast.error(t("common.error.cannot_download_project",{errorMessage:e}))}))}return(0,g.jsxs)("div",{className:"w-full h-full p-3",children:[i&&(0,g.jsx)(os,{className:"!fixed top-0 bottom-0 z-[1] bg-opacity-90",label:t("remote_diagrams.downloading_project"),showLoading:!0,hideLogo:!0}),(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("remote_project.title")}),(0,g.jsxs)("div",{className:"flex absolute left-3 right-2 top-14 bottom-0",children:[(0,g.jsxs)("div",{className:"w-1/2 h-full p-2 flex flex-col",children:[(0,g.jsx)("div",{className:"text-center mt-14 text-xl text-white",children:t("remote_project.from_github")}),(0,g.jsx)("div",{className:"mt-14 h-full",children:(0,g.jsx)(as,{onRepoSelected:async function(e,t,n){n&&d(Qi(Vi.path),{headers:{[Vi.headers.ghToken]:n,[Vi.headers.ghRepo]:e.name,[Vi.headers.ghOwner]:e.owner.login,[Vi.headers.ghBranch]:t}})}})})]}),(0,g.jsx)(he,{orientation:"vertical",className:"h-full"}),(0,g.jsxs)("div",{className:"w-1/2 p-2 flex flex-col",children:[(0,g.jsx)("div",{className:"text-center mt-14 text-xl text-white",children:t("remote_project.from_url")}),(0,g.jsxs)("div",{className:"flex flex-col mt-14 h-full",children:[(0,g.jsx)(ue,{classNameRoot:"mx-2",label:t("remote_diagrams.type_url_mina_project"),info:`${t("common.example")}: https://example.com/my-mina-project.zip`,value:l,onChange:e=>_(e.target.value)}),(0,g.jsx)(te,{className:"mt-5 w-36 mx-auto",onClick:()=>d(l),children:t("common.open")})]})]})]})]})},ss=i().memo((e=>{var t;const{projectRootUrl:n,diagramUrl:a,ghToken:o}=e,i=(0,r.useRef)(null),[s,l]=(0,r.useState)(),[_,c]=(0,r.useState)(),[d,u]=(0,r.useState)();async function m(e,t){if(t){const n="https://keadex.dev/api/download-gh-raw-file",a={headers:{"Keadex-Gh-Url":e}};return t&&(a.headers["Keadex-Gh-Authorization"]=t),await fetch(n,a)}return await fetch(e)}async function b(e){var t;let a,r,s;null==(t=i.current)||t.resetCanvas();try{a=await async function(e){return(0,qa.invoke)("project_settings_url",{projectRootUrl:e})}(n),r=await async function(e,t){return(0,qa.invoke)("diagram_plantuml_url_from_diagram_url",{projectRootUrl:e,diagramUrl:t})}(n,e),s=await async function(e,t){return(0,qa.invoke)("diagram_spec_url_from_diagram_url",{projectRootUrl:e,diagramUrl:t})}(n,e)}catch(e){console.error(e),p("Invalid URL: the provided URL is an invalid Mina project or diagram.")}if(a&&r&&s){let t,i,_;try{const e=await m(a,o),n=await m(r,o),l=await m(s,o);if(!(e.ok&&n.ok&&l.ok))throw new Error;t=await e.text(),i=await n.text(),_=await l.text()}catch(e){console.error(e),p("Diagram or project settings not found. Please verify the URLs provided, or, if linking to a private repository, ensure the GitHub token is configured.")}if(t&&i&&_)try{c(JSON.parse(t)),l(await async function(e,t,n,a){return(0,qa.invoke)("open_remote_diagram",{projectRootUrl:e,diagramUrl:t,rawPlantuml:n,rawDiagramSpec:a})}(n,e,i,_))}catch(e){p("Invalid diagram or project settings.")}}}function p(e){l(null),u(e)}const h={onOpenDiagramClick:async e=>{let t;try{t=await async function(e,t){return(0,qa.invoke)("diagram_url_from_link_string",{projectRootUrl:e,linkString:t})}(n,e)}catch(e){console.error(e),p("Invalid URL: the provided URL is an invalid Mina project or diagram.")}t&&b(t)},onOpenExternalLinkClick:e=>{window.open(e,"_blank")}};return(0,r.useEffect)((()=>{p(null),b(a)}),[a,n,o]),(0,g.jsxs)("div",{className:"h-full w-full border-t flex items-center",children:[null===d&&s&&(0,g.jsx)(Si,{diagramListener:h,diagram:s,ref:i,diagramsThemeSettings:null==_||null==(t=_.themes_settings)?void 0:t.diagrams_theme_settings,target:"web",readOnly:!0}),d&&(0,g.jsx)("div",{className:"w-full text-center text-black",children:d})]})})),ls=ss;function _s(e,t,n){let a=`https://keadex.dev/api/mina-diagram/${btoa(e)}/${btoa(t)}`;return n&&(a=a.concat(`/${n}`)),a}const cs=e=>{const{t}=(0,G.useTranslation)(),{projectRootUrl:n,diagramUrl:o,ghToken:i}={projectRootUrl:(s=(0,a.useParams)()).projectRootUrl?atob(s.projectRootUrl):void 0,diagramUrl:s.diagramUrl?atob(s.diagramUrl):void 0,ghToken:s.ghToken};var s;const[l,_]=(0,r.useState)(n&&0!==n.replace(/ /g,"").length?n:"https://raw.githubusercontent.com/keadex/keadex/main/apps/keadex-diagrams"),[c,d]=(0,r.useState)(o&&0!==o.replace(/ /g,"").length?o:"https://raw.githubusercontent.com/keadex/keadex/main/apps/keadex-diagrams/diagrams/container/keadex-mina"),[u,m]=(0,r.useState)(i&&0!==i.replace(/ /g,"").length?i:""),[b,p]=(0,r.useState)(l),[h,f]=(0,r.useState)(c),[w,y]=(0,r.useState)(u);function v(){return 0===l.replace(/ /g,"").length||0===c.replace(/ /g,"").length}function x(e,t,n){e&&t&&(p(e),f(t),n&&y(n))}function j(e){if(l&&c){const n=("deep-link"===e?hr:_s)(l,c,u);(0,ho.writeText)(n),Be.toast.info(t("remote_diagrams.link_copied")),u&&Be.toast.warn(t("remote_diagrams.gh_token_copy_warning"),{autoClose:!1})}}return(0,r.useEffect)((()=>{x(l,c,u)}),[]),(0,r.useEffect)((()=>{n&&_(n),o&&d(o),i&&m(i),x(n,o,i)}),[n,o,i]),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 flex flex-col",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("remote_diagrams.title")}),(0,g.jsx)("div",{className:"w-full mt-5",children:t("remote_diagrams.description")}),(0,g.jsxs)("div",{className:"w-full mt-10 flex flex-col",children:[(0,g.jsx)(ue,{value:l,onChange:e=>_(e.target.value),label:`${t("remote_diagrams.project_root_url")}*`,info:`*${t("common.required")}`}),(0,g.jsx)(ue,{value:c,onChange:e=>d(e.target.value),label:`${t("remote_diagrams.diagram_url")}*`,info:`*${t("common.required")}`,classNameRoot:"mt-5"}),(0,g.jsx)(ue,{value:u,onChange:e=>m(e.target.value),label:t("common.github_token"),info:t("remote_diagrams.gh_token_info"),classNameRoot:"mt-5"}),(0,g.jsxs)("div",{className:"flex flex-col md:flex-row mx-auto mt-5",children:[(0,g.jsx)(te,{disabled:v(),className:"mr-2 w-48",onClick:()=>x(l,c,u),children:t("common.render")}),(0,g.jsx)(te,{disabled:v(),className:"mr-2 w-48",onClick:()=>j("deep-link"),children:t("common.action.copy_deep_link")}),(0,g.jsx)(te,{disabled:v(),className:"w-48",onClick:()=>j("ssr-link"),children:t("common.action.copy_ssr_link")})]}),(0,g.jsx)("div",{className:"w-full h-[50rem] mt-14 bg-white",children:(0,g.jsx)(ls,{projectRootUrl:b,diagramUrl:h,ghToken:w})})]})]})},ds=(0,Wa.createSlice)({name:"counter",initialState:{value:0},reducers:{increment:e=>{e.value+=1},decrement:e=>{e.value-=1},incrementByAmount:(e,t)=>{e.value+=t.payload}}}),{increment:us,decrement:gs,incrementByAmount:ms}=ds.actions,bs=ds.reducer,ps=(0,Wa.configureStore)({reducer:{counter:bs,project:Za}}),hs=(0,a.createMemoryRouter)([{element:(0,g.jsx)(Fe.ErrorBoundary,{FallbackComponent:ze,children:(0,g.jsx)(ur,{})}),children:[{path:Wo[xo].path,element:(0,g.jsx)(Wi,{})},{path:Wo[jo].path,element:(0,g.jsx)(Gi,{})},{path:Wo[Oo].path,element:(0,g.jsx)(Bi,{mode:"edit"})},{path:Wo[Eo].path,element:(0,g.jsx)(Ci,{})},{path:Wo[ko].path,element:(0,g.jsx)(Gr,{c4ElementType:"Person"})},{path:Wo[No].path,element:(0,g.jsx)(Gr,{c4ElementType:"SoftwareSystem"})},{path:Wo[To].path,element:(0,g.jsx)(Gr,{c4ElementType:"Container"})},{path:Wo[Ro].path,element:(0,g.jsx)(Gr,{c4ElementType:"Component"})},{path:Wo[Mo].path,element:(0,g.jsx)(fr,{})},{path:Wo[Po].path,element:(0,g.jsx)(cs,{})},{path:Wo[So].path,element:(0,g.jsx)(is,{})}]}]);async function fs(e,t,n,a,o){const r="fs_path"===t?await lo(e):await io(e);if(r&&r.diagram_name&&r.diagram_type){const e={diagramName:r.diagram_name,diagramType:r.diagram_type};n===Eo?null==a||a.emit({type:s.OpenDiagram,data:{state:e}}):o(Eo,{state:e})}}function ws(e,t){e(Mo.replace(Lo,null!=t?t:""))}function ys(e,t){const n=[];for(let e=0;e<3;e++)t.length>e?n.push(t[e]):n.push("");e(Po.replace($o,n[0]).replace(Io,n[1]).replace(Do,n[2]))}const vs=require("i18next");var xs=n.n(vs);const js=require("i18next-http-backend");var Os=n.n(js);const Ss=require("ahooks/lib/useEventEmitter");var Es,Cs=n.n(Ss);console.log=()=>{},console.debug=()=>{},Es={backend:{loadPath:"/_next/static/keadex-mina/locales/{{lng}}/{{ns}}.json"}},xs().use(Os()).use(G.initReactI18next).init(Object.assign({lng:"en",fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}},Es||{}));const ks=i().memo((({scriptPath:e})=>{const t=(0,r.useRef)(!1),n=(0,r.useRef)(!1),o=(0,r.useRef)(!1),i=Cs()(),{forceUpdate:s}=Ie();return(0,r.useEffect)((()=>{o.current||(o.current=!0,(0,Xe.default)().then((a=>{console.debug("Wasm module loaded"),async function(){const e=await navigator.storage.getDirectory();await e.getDirectoryHandle(D).catch((()=>!1))&&(console.debug("Clearing OPFS temp directory..."),await e.removeEntry(D,{recursive:!0}).catch((e=>{console.debug(`Entry "${D}" not found, nothing to clear.`)})))}(),setTimeout((()=>{n.current||(console.debug("Tailwind Elements initialized"),(0,oe.initTE)({Dropdown:oe.Dropdown,Button:oe.Button,Modal:oe.Modal,Input:oe.Input,Select:oe.Select,Collapse:oe.Collapse})),n.current=!0}),1e3),t.current||(null==a||a.init_app(e),console.debug("Mina app initialized"),s()),t.current=!0})).catch((e=>{console.error("Error loading Wasm module:",e)})))}),[]),(0,g.jsxs)(g.Fragment,{children:[t.current&&(0,g.jsx)(Ko.Provider,{store:ps,children:(0,g.jsx)(l.Provider,{value:i,children:(0,g.jsx)(a.RouterProvider,{router:hs})})}),!t.current&&(0,g.jsx)("div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-xl",children:"Mina is loading..."})]})})),Ns=ks},732:e=>{e.exports=require("react/jsx-runtime")},734:(e,t,n)=>{e.exports=n.p+"mina_live_bg.wasm"},971:(e,t,n)=>{let a;n.r(t),n.d(t,{AISettings:()=>de,AddElementTag:()=>ge,BaseElement:()=>be,Boundary:()=>he,C4Elements:()=>we,Component:()=>ve,Container:()=>je,DeploymentNode:()=>Se,Diagram:()=>Ce,DiagramElementSpec:()=>Ne,DiagramPlantUML:()=>Re,DiagramSpec:()=>Me,DiagramsThemeSettings:()=>Ie,ElementData:()=>Ae,HookPayload:()=>Fe,IntoUnderlyingByteSource:()=>ze,IntoUnderlyingSink:()=>He,IntoUnderlyingSource:()=>Ke,MinaError:()=>Ge,Person:()=>Ze,Point:()=>Ve,Position:()=>Je,Project:()=>tt,ProjectLibrary:()=>at,ProjectSettings:()=>rt,Relationship:()=>st,Shape:()=>_t,Size:()=>dt,SoftwareSystem:()=>gt,ThemesSettings:()=>bt,UserSettings:()=>ht,close_diagram:()=>U,close_project:()=>C,create_diagram:()=>B,create_library_element:()=>ee,create_project:()=>E,default:()=>xt,delete_diagram:()=>I,delete_library_element:()=>J,dependent_elements_in_diagram:()=>L,deserialize_plantuml_by_string:()=>$,diagram_from_link_string:()=>R,diagram_name_type_from_path:()=>P,diagram_plantuml_url_from_diagram_url:()=>G,diagram_spec_url_from_diagram_url:()=>Z,diagram_to_link_string:()=>M,diagram_url_from_link_string:()=>Y,execute_hook:()=>S,export_diagram_to_file:()=>F,generate_plantuml:()=>ie,get_diagram:()=>H,get_user_settings:()=>re,initSync:()=>yt,init_app:()=>k,library_element_type_from_path:()=>Q,list_diagrams:()=>D,list_library_elements:()=>q,open_diagram:()=>z,open_project:()=>N,open_remote_diagram:()=>A,parsed_element_to_plantuml:()=>W,project_settings_url:()=>T,save_project_settings:()=>x,save_spec_diagram_raw_plantuml:()=>K,save_user_settings:()=>oe,search:()=>ne,search_and_replace:()=>ae,search_diagram_element_alias:()=>te,task_worker_entry_point:()=>y,update_library_element:()=>V}),e=n.hmd(e);let o=0,r=null;function i(){return null!==r&&0!==r.byteLength||(r=new Uint8Array(a.memory.buffer)),r}const s="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},l="function"==typeof s.encodeInto?function(e,t){return s.encodeInto(e,t)}:function(e,t){const n=s.encode(e);return t.set(n),{read:e.length,written:n.length}};function _(e,t,n){if(void 0===n){const n=s.encode(e),a=t(n.length,1)>>>0;return i().subarray(a,a+n.length).set(n),o=n.length,a}let a=e.length,r=t(a,1)>>>0;const _=i();let c=0;for(;c<a;c++){const t=e.charCodeAt(c);if(t>127)break;_[r+c]=t}if(c!==a){0!==c&&(e=e.slice(c)),r=n(r,a,a=c+3*e.length,1)>>>0;const t=i().subarray(r+c,r+a);c+=l(e,t).written,r=n(r,a,c,1)>>>0}return o=c,r}let c=null;function d(){return(null===c||!0===c.buffer.detached||void 0===c.buffer.detached&&c.buffer!==a.memory.buffer)&&(c=new DataView(a.memory.buffer)),c}const u="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};function g(e,t){return e>>>=0,u.decode(i().subarray(e,e+t))}function m(e){const t=a.__externref_table_alloc();return a.__wbindgen_export_4.set(t,e),t}function b(e,t){try{return e.apply(this,t)}catch(e){const t=m(e);a.__wbindgen_exn_store(t)}}function p(e){return null==e}"undefined"!=typeof TextDecoder&&u.decode();const h="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>{a.__wbindgen_export_6.get(e.dtor)(e.a,e.b)}));function f(e,t,n,o){const r={a:e,b:t,cnt:1,dtor:n},i=(...e)=>{r.cnt++;const t=r.a;r.a=0;try{return o(t,r.b,...e)}finally{0==--r.cnt?(a.__wbindgen_export_6.get(r.dtor)(t,r.b),h.unregister(r)):r.a=t}};return i.original=r,h.register(i,r,r),i}function w(e){const t=typeof e;if("number"==t||"boolean"==t||null==e)return`${e}`;if("string"==t)return`"${e}"`;if("symbol"==t){const t=e.description;return null==t?"Symbol":`Symbol(${t})`}if("function"==t){const t=e.name;return"string"==typeof t&&t.length>0?`Function(${t})`:"Function"}if(Array.isArray(e)){const t=e.length;let n="[";t>0&&(n+=w(e[0]));for(let a=1;a<t;a++)n+=", "+w(e[a]);return n+="]",n}const n=/\[object ([^\]]+)\]/.exec(toString.call(e));let a;if(!(n&&n.length>1))return toString.call(e);if(a=n[1],"Object"==a)try{return"Object("+JSON.stringify(e)+")"}catch(e){return"Object"}return e instanceof Error?`${e.name}: ${e.message}\n${e.stack}`:a}function y(e){return a.task_worker_entry_point(e)}function v(e,t){if(!(e instanceof t))throw new Error(`expected instance of ${t.name}`)}function x(e){return a.save_project_settings(e)}function j(e,t){e>>>=0;const n=d(),o=[];for(let r=e;r<e+4*t;r+=4)o.push(a.__wbindgen_export_4.get(n.getUint32(r,!0)));return a.__externref_drop_slice(e,t),o}function O(e,t){const n=t(4*e.length,4)>>>0;for(let t=0;t<e.length;t++){const a=m(e[t]);d().setUint32(n+4*t,a,!0)}return o=e.length,n}function S(e){return a.execute_hook(e)}function E(e,t){return a.create_project(e,p(t)?0:m(t))}function C(){return a.close_project()}function k(e){return a.init_app(e)}function N(e){return a.open_project(p(e)?0:m(e))}function T(e){let t,n;try{const r=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),i=o,s=a.project_settings_url(r,i);return t=s[0],n=s[1],g(s[0],s[1])}finally{a.__wbindgen_free(t,n,1)}}function R(e){return a.diagram_from_link_string(e)}function L(e,t,n){return a.dependent_elements_in_diagram(e,t,n)}function M(e,t){return a.diagram_to_link_string(e,t)}function $(e){return a.deserialize_plantuml_by_string(e)}function I(e,t){return a.delete_diagram(e,t)}function D(){return a.list_diagrams()}function A(e,t,n,o){return a.open_remote_diagram(e,t,n,o)}function P(e){return a.diagram_name_type_from_path(e)}function F(e,t,n,o){return a.export_diagram_to_file(e,t,n,o)}function B(e){return a.create_diagram(e)}function z(e,t){return a.open_diagram(e,t)}function U(e,t){return a.close_diagram(e,t)}function H(e,t){return a.get_diagram(e,t)}function W(e,t){return a.parsed_element_to_plantuml(e,t)}function K(e,t,n,o){return a.save_spec_diagram_raw_plantuml(e,t,n,o)}function X(e){const t=a.__wbindgen_export_4.get(e);return a.__externref_table_dealloc(e),t}function G(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_plantuml_url_from_diagram_url(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,X(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function Y(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_url_from_link_string(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,X(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function Z(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_spec_url_from_diagram_url(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,X(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function q(e){return a.list_library_elements(e)}function V(e,t){return a.update_library_element(e,t)}function Q(e){return a.library_element_type_from_path(e)}function J(e,t){return a.delete_library_element(e,t)}function ee(e){return a.create_library_element(e)}function te(e,t,n,o){return a.search_diagram_element_alias(e,t,n,o)}function ne(e,t,n,o){return a.search(e,t,n,o)}function ae(e,t,n,o){return a.search_and_replace(e,t,n,o)}function oe(e){return a.save_user_settings(e)}function re(){return a.get_user_settings()}function ie(e){return a.generate_plantuml(e)}function se(e,t,n){a.closure102_externref_shim(e,t,n)}const le=["omit","same-origin","include"],_e=["same-origin","no-cors","cors","navigate"],ce="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_aisettings_free(e>>>0,1)));class de{static __wrap(e){e>>>=0;const t=Object.create(de.prototype);return t.__wbg_ptr=e,ce.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ce.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_aisettings_free(e,0)}get api_key(){const e=a.__wbg_get_aisettings_api_key(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set api_key(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_key(this.__wbg_ptr,t,n)}get api_base_url(){const e=a.__wbg_get_aisettings_api_base_url(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set api_base_url(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_base_url(this.__wbg_ptr,t,n)}get model(){const e=a.__wbg_get_aisettings_model(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set model(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_model(this.__wbg_ptr,t,n)}}const ue="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_addelementtag_free(e>>>0,1)));class ge{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ue.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_addelementtag_free(e,0)}get tag(){const e=a.__wbg_get_addelementtag_tag(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set tag(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_tag(this.__wbg_ptr,t,n)}get bg_color(){const e=a.__wbg_get_addelementtag_bg_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_bg_color(this.__wbg_ptr,t,n)}get font_color(){const e=a.__wbg_get_addelementtag_font_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set font_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_font_color(this.__wbg_ptr,t,n)}get border_color(){const e=a.__wbg_get_addelementtag_border_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_color(this.__wbg_ptr,t,n)}get shadowing(){const e=a.__wbg_get_addelementtag_shadowing(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set shadowing(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_shadowing(this.__wbg_ptr,t,n)}get shape(){const e=a.__wbg_get_addelementtag_shape(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set shape(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_shape(this.__wbg_ptr,t,n)}get sprite(){const e=a.__wbg_get_addelementtag_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_sprite(this.__wbg_ptr,t,n)}get techn(){const e=a.__wbg_get_addelementtag_techn(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set techn(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_techn(this.__wbg_ptr,t,n)}get legend_text(){const e=a.__wbg_get_addelementtag_legend_text(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set legend_text(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_text(this.__wbg_ptr,t,n)}get legend_sprite(){const e=a.__wbg_get_addelementtag_legend_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set legend_sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_sprite(this.__wbg_ptr,t,n)}get border_style(){const e=a.__wbg_get_addelementtag_border_style(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_style(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_style(this.__wbg_ptr,t,n)}get border_thickness(){const e=a.__wbg_get_addelementtag_border_thickness(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_thickness(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_thickness(this.__wbg_ptr,t,n)}}const me="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_baseelement_free(e>>>0,1)));class be{static __wrap(e){e>>>=0;const t=Object.create(be.prototype);return t.__wbg_ptr=e,me.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,me.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_baseelement_free(e,0)}get alias(){const e=a.__wbg_get_baseelement_alias(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set alias(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_alias(this.__wbg_ptr,t,n)}get label(){const e=a.__wbg_get_baseelement_label(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set label(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_label(this.__wbg_ptr,t,n)}get description(){const e=a.__wbg_get_baseelement_description(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set description(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_description(this.__wbg_ptr,t,n)}get sprite(){const e=a.__wbg_get_baseelement_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_sprite(this.__wbg_ptr,t,n)}get tags(){const e=a.__wbg_get_baseelement_tags(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set tags(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_tags(this.__wbg_ptr,t,n)}get link(){const e=a.__wbg_get_baseelement_link(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set link(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_link(this.__wbg_ptr,t,n)}get uuid(){const e=a.__wbg_get_baseelement_uuid(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set uuid(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_uuid(this.__wbg_ptr,t,n)}get notes(){const e=a.__wbg_get_baseelement_notes(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set notes(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_notes(this.__wbg_ptr,t,n)}}const pe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_boundary_free(e>>>0,1)));class he{static __wrap(e){e>>>=0;const t=Object.create(he.prototype);return t.__wbg_ptr=e,pe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof he?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,pe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_boundary_free(e,0)}get base_data(){const e=a.__wbg_get_boundary_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_boundary_base_data(this.__wbg_ptr,t)}get boundary_type(){return a.__wbg_get_boundary_boundary_type(this.__wbg_ptr)}set boundary_type(e){a.__wbg_set_boundary_boundary_type(this.__wbg_ptr,p(e)?0:m(e))}get boundary_custom_type(){const e=a.__wbg_get_boundary_boundary_custom_type(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set boundary_custom_type(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_boundary_boundary_custom_type(this.__wbg_ptr,t,n)}get sub_elements(){const e=a.__wbg_get_boundary_sub_elements(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set sub_elements(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_boundary_sub_elements(this.__wbg_ptr,t,n)}}const fe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_c4elements_free(e>>>0,1)));class we{static __wrap(e){e>>>=0;const t=Object.create(we.prototype);return t.__wbg_ptr=e,fe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,fe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_c4elements_free(e,0)}get persons(){const e=a.__wbg_get_c4elements_persons(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set persons(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_persons(this.__wbg_ptr,t,n)}get software_systems(){const e=a.__wbg_get_c4elements_software_systems(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set software_systems(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_software_systems(this.__wbg_ptr,t,n)}get containers(){const e=a.__wbg_get_c4elements_containers(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set containers(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_containers(this.__wbg_ptr,t,n)}get components(){const e=a.__wbg_get_c4elements_components(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set components(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_components(this.__wbg_ptr,t,n)}get deployment_nodes(){const e=a.__wbg_get_c4elements_deployment_nodes(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set deployment_nodes(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_deployment_nodes(this.__wbg_ptr,t,n)}get relationships(){const e=a.__wbg_get_c4elements_relationships(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set relationships(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_relationships(this.__wbg_ptr,t,n)}get boundaries(){const e=a.__wbg_get_c4elements_boundaries(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set boundaries(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_boundaries(this.__wbg_ptr,t,n)}}const ye="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_component_free(e>>>0,1)));class ve{static __wrap(e){e>>>=0;const t=Object.create(ve.prototype);return t.__wbg_ptr=e,ye.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof ve?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ye.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_component_free(e,0)}get base_data(){const e=a.__wbg_get_component_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_component_base_data(this.__wbg_ptr,t)}get technology(){const e=a.__wbg_get_component_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_component_technology(this.__wbg_ptr,t,n)}get component_type(){return a.__wbg_get_component_component_type(this.__wbg_ptr)}set component_type(e){a.__wbg_set_component_component_type(this.__wbg_ptr,p(e)?0:m(e))}}const xe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_container_free(e>>>0,1)));class je{static __wrap(e){e>>>=0;const t=Object.create(je.prototype);return t.__wbg_ptr=e,xe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof je?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,xe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_container_free(e,0)}get base_data(){const e=a.__wbg_get_container_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_container_base_data(this.__wbg_ptr,t)}get technology(){const e=a.__wbg_get_container_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_text(this.__wbg_ptr,t,n)}get container_type(){return a.__wbg_get_container_container_type(this.__wbg_ptr)}set container_type(e){a.__wbg_set_container_container_type(this.__wbg_ptr,p(e)?0:m(e))}}const Oe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_deploymentnode_free(e>>>0,1)));class Se{static __wrap(e){e>>>=0;const t=Object.create(Se.prototype);return t.__wbg_ptr=e,Oe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Se?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Oe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_deploymentnode_free(e,0)}get base_data(){const e=a.__wbg_get_deploymentnode_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_deploymentnode_base_data(this.__wbg_ptr,t)}get deploymeny_node_custom_type(){const e=a.__wbg_get_deploymentnode_deploymeny_node_custom_type(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set deploymeny_node_custom_type(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_deploymentnode_deploymeny_node_custom_type(this.__wbg_ptr,t,n)}get deployment_node_type(){return a.__wbg_get_deploymentnode_deployment_node_type(this.__wbg_ptr)}set deployment_node_type(e){a.__wbg_set_deploymentnode_deployment_node_type(this.__wbg_ptr,p(e)?0:m(e))}get sub_elements(){const e=a.__wbg_get_deploymentnode_sub_elements(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set sub_elements(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_deploymentnode_sub_elements(this.__wbg_ptr,t,n)}}const Ee="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagram_free(e>>>0,1)));class Ce{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ee.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagram_free(e,0)}get diagram_name(){const e=a.__wbg_get_diagram_diagram_name(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set diagram_name(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_diagram_name(this.__wbg_ptr,t,n)}get diagram_type(){return a.__wbg_get_diagram_diagram_type(this.__wbg_ptr)}set diagram_type(e){a.__wbg_set_diagram_diagram_type(this.__wbg_ptr,p(e)?0:m(e))}get diagram_spec(){const e=a.__wbg_get_diagram_diagram_spec(this.__wbg_ptr);return 0===e?void 0:Me.__wrap(e)}set diagram_spec(e){let t=0;p(e)||(v(e,Me),t=e.__destroy_into_raw()),a.__wbg_set_diagram_diagram_spec(this.__wbg_ptr,t)}get diagram_plantuml(){const e=a.__wbg_get_diagram_diagram_plantuml(this.__wbg_ptr);return 0===e?void 0:Re.__wrap(e)}set diagram_plantuml(e){let t=0;p(e)||(v(e,Re),t=e.__destroy_into_raw()),a.__wbg_set_diagram_diagram_plantuml(this.__wbg_ptr,t)}get raw_plantuml(){const e=a.__wbg_get_diagram_raw_plantuml(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set raw_plantuml(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_raw_plantuml(this.__wbg_ptr,t,n)}get last_modified(){const e=a.__wbg_get_diagram_last_modified(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set last_modified(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_last_modified(this.__wbg_ptr,t,n)}get auto_layout_errors(){const e=a.__wbg_get_diagram_auto_layout_errors(this.__wbg_ptr);let t;return 0!==e[0]&&(t=j(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set auto_layout_errors(e){var t=p(e)?0:O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagram_auto_layout_errors(this.__wbg_ptr,t,n)}get auto_layout(){return a.diagram_auto_layout(this.__wbg_ptr)}set auto_layout(e){a.diagram_set_auto_layout(this.__wbg_ptr,e)}}const ke="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramelementspec_free(e>>>0,1)));class Ne{static __wrap(e){e>>>=0;const t=Object.create(Ne.prototype);return t.__wbg_ptr=e,ke.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ne?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ke.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramelementspec_free(e,0)}get alias(){const e=a.__wbg_get_diagramelementspec_alias(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set alias(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_alias(this.__wbg_ptr,t,n)}get from(){const e=a.__wbg_get_diagramelementspec_from(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set from(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_from(this.__wbg_ptr,t,n)}get to(){const e=a.__wbg_get_diagramelementspec_to(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set to(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_to(this.__wbg_ptr,t,n)}get shapes(){const e=a.__wbg_get_diagramelementspec_shapes(this.__wbg_ptr);let t;return 0!==e[0]&&(t=j(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set shapes(e){var t=p(e)?0:O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramelementspec_shapes(this.__wbg_ptr,t,n)}get element_type(){return a.__wbg_get_diagramelementspec_element_type(this.__wbg_ptr)}set element_type(e){a.__wbg_set_diagramelementspec_element_type(this.__wbg_ptr,p(e)?0:m(e))}get position(){const e=a.__wbg_get_diagramelementspec_position(this.__wbg_ptr);return 0===e?void 0:Je.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Je),t=e.__destroy_into_raw()),a.__wbg_set_diagramelementspec_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_diagramelementspec_size(this.__wbg_ptr);return 0===e?void 0:dt.__wrap(e)}set size(e){let t=0;p(e)||(v(e,dt),t=e.__destroy_into_raw()),a.__wbg_set_diagramelementspec_size(this.__wbg_ptr,t)}get inner_specs(){const e=a.__wbg_get_diagramelementspec_inner_specs(this.__wbg_ptr);let t;return 0!==e[0]&&(t=j(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set inner_specs(e){var t=p(e)?0:O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramelementspec_inner_specs(this.__wbg_ptr,t,n)}}const Te="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramplantuml_free(e>>>0,1)));class Re{static __wrap(e){e>>>=0;const t=Object.create(Re.prototype);return t.__wbg_ptr=e,Te.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Te.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramplantuml_free(e,0)}get tags(){return a.diagramplantuml_tags(this.__wbg_ptr)}set tags(e){a.diagramplantuml_set_tags(this.__wbg_ptr,e)}get diagram_id(){const e=a.__wbg_get_diagramplantuml_diagram_id(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set diagram_id(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_description(this.__wbg_ptr,t,n)}get elements(){const e=a.__wbg_get_diagramplantuml_elements(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set elements(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramplantuml_elements(this.__wbg_ptr,t,n)}get aliases(){const e=a.__wbg_get_diagramplantuml_aliases(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set aliases(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramplantuml_aliases(this.__wbg_ptr,t,n)}}const Le="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramspec_free(e>>>0,1)));class Me{static __wrap(e){e>>>=0;const t=Object.create(Me.prototype);return t.__wbg_ptr=e,Le.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Le.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramspec_free(e,0)}get uuid(){let e,t;try{const n=a.__wbg_get_diagramspec_uuid(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set uuid(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramspec_uuid(this.__wbg_ptr,t,n)}get description(){const e=a.__wbg_get_diagramspec_description(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set description(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramspec_description(this.__wbg_ptr,t,n)}get tags(){const e=a.__wbg_get_diagramspec_tags(this.__wbg_ptr);let t;return 0!==e[0]&&(t=j(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set tags(e){var t=p(e)?0:O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_tags(this.__wbg_ptr,t,n)}get elements_specs(){const e=a.__wbg_get_diagramspec_elements_specs(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set elements_specs(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_elements_specs(this.__wbg_ptr,t,n)}get shapes(){const e=a.__wbg_get_diagramspec_shapes(this.__wbg_ptr);var t=j(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set shapes(e){const t=O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_shapes(this.__wbg_ptr,t,n)}get auto_layout_enabled(){return 0!==a.__wbg_get_diagramspec_auto_layout_enabled(this.__wbg_ptr)}set auto_layout_enabled(e){a.__wbg_set_diagramspec_auto_layout_enabled(this.__wbg_ptr,e)}get auto_layout_orientation(){return a.__wbg_get_diagramspec_auto_layout_orientation(this.__wbg_ptr)}set auto_layout_orientation(e){a.__wbg_set_diagramspec_auto_layout_orientation(this.__wbg_ptr,e)}get auto_layout_only_straight_arrows(){return 0!==a.__wbg_get_diagramspec_auto_layout_only_straight_arrows(this.__wbg_ptr)}set auto_layout_only_straight_arrows(e){a.__wbg_set_diagramspec_auto_layout_only_straight_arrows(this.__wbg_ptr,e)}get auto_layout_ranksep(){return a.__wbg_get_diagramspec_auto_layout_ranksep(this.__wbg_ptr)}set auto_layout_ranksep(e){a.__wbg_set_diagramspec_auto_layout_ranksep(this.__wbg_ptr,e)}get auto_layout_subgraph_inner_margin(){return a.__wbg_get_diagramspec_auto_layout_subgraph_inner_margin(this.__wbg_ptr)}set auto_layout_subgraph_inner_margin(e){a.__wbg_set_diagramspec_auto_layout_subgraph_inner_margin(this.__wbg_ptr,e)}get auto_layout_subgraph_outer_margin(){return a.__wbg_get_diagramspec_auto_layout_subgraph_outer_margin(this.__wbg_ptr)}set auto_layout_subgraph_outer_margin(e){a.__wbg_set_diagramspec_auto_layout_subgraph_outer_margin(this.__wbg_ptr,e)}get grid_enabled(){return 0!==a.__wbg_get_diagramspec_grid_enabled(this.__wbg_ptr)}set grid_enabled(e){a.__wbg_set_diagramspec_grid_enabled(this.__wbg_ptr,e)}}const $e="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramsthemesettings_free(e>>>0,1)));class Ie{static __wrap(e){e>>>=0;const t=Object.create(Ie.prototype);return t.__wbg_ptr=e,$e.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,$e.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramsthemesettings_free(e,0)}get bg_color_diagram(){const e=a.__wbg_get_diagramsthemesettings_bg_color_diagram(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_diagram(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_diagram(this.__wbg_ptr,t,n)}get text_color_legend_title(){const e=a.__wbg_get_diagramsthemesettings_text_color_legend_title(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_legend_title(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_legend_title(this.__wbg_ptr,t,n)}get bg_color_person(){const e=a.__wbg_get_diagramsthemesettings_bg_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_person(this.__wbg_ptr,t,n)}get bg_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_person_ext(this.__wbg_ptr,t,n)}get border_color_person(){const e=a.__wbg_get_diagramsthemesettings_border_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_person(this.__wbg_ptr,t,n)}get border_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_person_ext(this.__wbg_ptr,t,n)}get text_color_person(){const e=a.__wbg_get_diagramsthemesettings_text_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_person(this.__wbg_ptr,t,n)}get text_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_person_ext(this.__wbg_ptr,t,n)}get bg_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_bg_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_software_system(this.__wbg_ptr,t,n)}get bg_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_software_system_ext(this.__wbg_ptr,t,n)}get border_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_border_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_software_system(this.__wbg_ptr,t,n)}get border_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_software_system_ext(this.__wbg_ptr,t,n)}get text_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_text_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_software_system(this.__wbg_ptr,t,n)}get text_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_software_system_ext(this.__wbg_ptr,t,n)}get bg_color_container(){const e=a.__wbg_get_diagramsthemesettings_bg_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_container(this.__wbg_ptr,t,n)}get bg_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_container_ext(this.__wbg_ptr,t,n)}get border_color_container(){const e=a.__wbg_get_diagramsthemesettings_border_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_container(this.__wbg_ptr,t,n)}get border_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_container_ext(this.__wbg_ptr,t,n)}get text_color_container(){const e=a.__wbg_get_diagramsthemesettings_text_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_container(this.__wbg_ptr,t,n)}get text_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_container_ext(this.__wbg_ptr,t,n)}get bg_color_component(){const e=a.__wbg_get_diagramsthemesettings_bg_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_component(this.__wbg_ptr,t,n)}get bg_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_component_ext(this.__wbg_ptr,t,n)}get border_color_component(){const e=a.__wbg_get_diagramsthemesettings_border_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_component(this.__wbg_ptr,t,n)}get border_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_component_ext(this.__wbg_ptr,t,n)}get text_color_component(){const e=a.__wbg_get_diagramsthemesettings_text_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_component(this.__wbg_ptr,t,n)}get text_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_component_ext(this.__wbg_ptr,t,n)}get bg_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_bg_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_boundary(this.__wbg_ptr,t,n)}get border_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_border_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_boundary(this.__wbg_ptr,t,n)}get text_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_text_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_boundary(this.__wbg_ptr,t,n)}get bg_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_bg_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_deployment_node(this.__wbg_ptr,t,n)}get border_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_border_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_deployment_node(this.__wbg_ptr,t,n)}get text_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_text_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_deployment_node(this.__wbg_ptr,t,n)}get bg_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_bg_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_relationship(this.__wbg_ptr,t,n)}get line_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_line_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set line_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_line_color_relationship(this.__wbg_ptr,t,n)}get text_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_text_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_relationship(this.__wbg_ptr,t,n)}get selected_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_selected_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set selected_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_selected_color_relationship(this.__wbg_ptr,t,n)}}const De="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_elementdata_free(e>>>0,1)));class Ae{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,De.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_elementdata_free(e,0)}get position(){const e=a.__wbg_get_elementdata_position(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_position(this.__wbg_ptr,t)}get start(){const e=a.__wbg_get_elementdata_start(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set start(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_start(this.__wbg_ptr,t)}get end(){const e=a.__wbg_get_elementdata_end(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set end(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_end(this.__wbg_ptr,t)}get path(){const e=a.__wbg_get_elementdata_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=j(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set path(e){var t=p(e)?0:O(e,a.__wbindgen_malloc),n=o;a.__wbg_set_elementdata_path(this.__wbg_ptr,t,n)}get svg_path(){const e=a.__wbg_get_elementdata_svg_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set svg_path(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_elementdata_svg_path(this.__wbg_ptr,t,n)}get label_position(){const e=a.__wbg_get_elementdata_label_position(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set label_position(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_label_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_elementdata_size(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set size(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_size(this.__wbg_ptr,t)}}const Pe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_hookpayload_free(e>>>0,1)));class Fe{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Pe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_hookpayload_free(e,0)}get hook_type(){return a.__wbg_get_hookpayload_hook_type(this.__wbg_ptr)}set hook_type(e){a.__wbg_set_hookpayload_hook_type(this.__wbg_ptr,e)}get data(){return a.__wbg_get_hookpayload_data(this.__wbg_ptr)}set data(e){a.__wbg_set_hookpayload_data(this.__wbg_ptr,p(e)?0:m(e))}}const Be="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingbytesource_free(e>>>0,1)));class ze{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Be.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingbytesource_free(e,0)}get autoAllocateChunkSize(){return a.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr)>>>0}pull(e){return a.intounderlyingbytesource_pull(this.__wbg_ptr,e)}start(e){a.intounderlyingbytesource_start(this.__wbg_ptr,e)}get type(){let e,t;try{const n=a.intounderlyingbytesource_type(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}cancel(){const e=this.__destroy_into_raw();a.intounderlyingbytesource_cancel(e)}}const Ue="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingsink_free(e>>>0,1)));class He{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ue.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingsink_free(e,0)}abort(e){const t=this.__destroy_into_raw();return a.intounderlyingsink_abort(t,e)}close(){const e=this.__destroy_into_raw();return a.intounderlyingsink_close(e)}write(e){return a.intounderlyingsink_write(this.__wbg_ptr,e)}}const We="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingsource_free(e>>>0,1)));class Ke{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,We.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingsource_free(e,0)}pull(e){return a.intounderlyingsource_pull(this.__wbg_ptr,e)}cancel(){const e=this.__destroy_into_raw();a.intounderlyingsource_cancel(e)}}const Xe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_minaerror_free(e>>>0,1)));class Ge{static __wrap(e){e>>>=0;const t=Object.create(Ge.prototype);return t.__wbg_ptr=e,Xe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Xe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_minaerror_free(e,0)}get code(){return a.__wbg_get_minaerror_code(this.__wbg_ptr)}set code(e){a.__wbg_set_minaerror_code(this.__wbg_ptr,e)}get msg(){let e,t;try{const n=a.__wbg_get_minaerror_msg(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set msg(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_minaerror_msg(this.__wbg_ptr,t,n)}}const Ye="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_person_free(e>>>0,1)));class Ze{static __wrap(e){e>>>=0;const t=Object.create(Ze.prototype);return t.__wbg_ptr=e,Ye.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ze?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ye.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_person_free(e,0)}get base_data(){const e=a.__wbg_get_container_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_container_base_data(this.__wbg_ptr,t)}get person_type(){return a.__wbg_get_person_person_type(this.__wbg_ptr)}set person_type(e){a.__wbg_set_person_person_type(this.__wbg_ptr,p(e)?0:m(e))}}const qe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_point_free(e>>>0,1)));class Ve{static __wrap(e){e>>>=0;const t=Object.create(Ve.prototype);return t.__wbg_ptr=e,qe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ve?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,qe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_point_free(e,0)}get x(){return a.__wbg_get_point_x(this.__wbg_ptr)}set x(e){a.__wbg_set_point_x(this.__wbg_ptr,e)}get y(){return a.__wbg_get_point_y(this.__wbg_ptr)}set y(e){a.__wbg_set_point_y(this.__wbg_ptr,e)}}const Qe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_position_free(e>>>0,1)));class Je{static __wrap(e){e>>>=0;const t=Object.create(Je.prototype);return t.__wbg_ptr=e,Qe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Qe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_position_free(e,0)}get left(){const e=a.__wbg_get_position_left(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set left(e){a.__wbg_set_position_left(this.__wbg_ptr,!p(e),p(e)?0:e)}get top(){const e=a.__wbg_get_position_top(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set top(e){a.__wbg_set_position_top(this.__wbg_ptr,!p(e),p(e)?0:e)}get z_index(){const e=a.__wbg_get_position_z_index(this.__wbg_ptr);return 4294967297===e?void 0:e}set z_index(e){a.__wbg_set_position_z_index(this.__wbg_ptr,p(e)?4294967297:0|e)}get angle(){const e=a.__wbg_get_position_angle(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set angle(e){a.__wbg_set_position_angle(this.__wbg_ptr,!p(e),p(e)?0:e)}}const et="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_project_free(e>>>0,1)));class tt{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_project_free(e,0)}get project_settings(){const e=a.__wbg_get_project_project_settings(this.__wbg_ptr);return rt.__wrap(e)}set project_settings(e){v(e,rt);var t=e.__destroy_into_raw();a.__wbg_set_project_project_settings(this.__wbg_ptr,t)}get project_library(){const e=a.__wbg_get_project_project_library(this.__wbg_ptr);return at.__wrap(e)}set project_library(e){v(e,at);var t=e.__destroy_into_raw();a.__wbg_set_project_project_library(this.__wbg_ptr,t)}}const nt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_projectlibrary_free(e>>>0,1)));class at{static __wrap(e){e>>>=0;const t=Object.create(at.prototype);return t.__wbg_ptr=e,nt.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_projectlibrary_free(e,0)}get elements(){const e=a.__wbg_get_projectlibrary_elements(this.__wbg_ptr);return we.__wrap(e)}set elements(e){v(e,we);var t=e.__destroy_into_raw();a.__wbg_set_projectlibrary_elements(this.__wbg_ptr,t)}}const ot="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_projectsettings_free(e>>>0,1)));class rt{static __wrap(e){e>>>=0;const t=Object.create(rt.prototype);return t.__wbg_ptr=e,ot.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_projectsettings_free(e,0)}get root(){let e,t;try{const n=a.__wbg_get_projectsettings_root(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set root(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_root(this.__wbg_ptr,t,n)}get name(){let e,t;try{const n=a.__wbg_get_projectsettings_name(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set name(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_name(this.__wbg_ptr,t,n)}get description(){let e,t;try{const n=a.__wbg_get_projectsettings_description(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set description(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_description(this.__wbg_ptr,t,n)}get version(){let e,t;try{const n=a.__wbg_get_projectsettings_version(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set version(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_version(this.__wbg_ptr,t,n)}get ai_settings(){const e=a.__wbg_get_projectsettings_ai_settings(this.__wbg_ptr);return 0===e?void 0:de.__wrap(e)}set ai_settings(e){let t=0;p(e)||(v(e,de),t=e.__destroy_into_raw()),a.__wbg_set_projectsettings_ai_settings(this.__wbg_ptr,t)}get autosave_enabled(){return 0!==a.__wbg_get_projectsettings_autosave_enabled(this.__wbg_ptr)}set autosave_enabled(e){a.__wbg_set_projectsettings_autosave_enabled(this.__wbg_ptr,e)}get autosave_interval_seconds(){const e=a.__wbg_get_projectsettings_autosave_interval_seconds(this.__wbg_ptr);return 16777215===e?void 0:e}set autosave_interval_seconds(e){a.__wbg_set_projectsettings_autosave_interval_seconds(this.__wbg_ptr,p(e)?16777215:e)}get themes_settings(){const e=a.__wbg_get_projectsettings_themes_settings(this.__wbg_ptr);return 0===e?void 0:bt.__wrap(e)}set themes_settings(e){let t=0;p(e)||(v(e,bt),t=e.__destroy_into_raw()),a.__wbg_set_projectsettings_themes_settings(this.__wbg_ptr,t)}}const it="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_relationship_free(e>>>0,1)));class st{static __wrap(e){e>>>=0;const t=Object.create(st.prototype);return t.__wbg_ptr=e,it.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof st?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,it.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_relationship_free(e,0)}get base_data(){const e=a.__wbg_get_relationship_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_relationship_base_data(this.__wbg_ptr,t)}get from(){const e=a.__wbg_get_relationship_from(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set from(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_relationship_from(this.__wbg_ptr,t,n)}get to(){const e=a.__wbg_get_relationship_to(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set to(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_boundary_boundary_custom_type(this.__wbg_ptr,t,n)}get technology(){const e=a.__wbg_get_relationship_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_relationship_technology(this.__wbg_ptr,t,n)}get relationship_type(){return a.__wbg_get_relationship_relationship_type(this.__wbg_ptr)}set relationship_type(e){a.__wbg_set_relationship_relationship_type(this.__wbg_ptr,p(e)?0:m(e))}}const lt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_shape_free(e>>>0,1)));class _t{static __wrap(e){e>>>=0;const t=Object.create(_t.prototype);return t.__wbg_ptr=e,lt.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof _t?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,lt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_shape_free(e,0)}get shape_type(){return a.__wbg_get_shape_shape_type(this.__wbg_ptr)}set shape_type(e){a.__wbg_set_shape_shape_type(this.__wbg_ptr,p(e)?0:m(e))}get position(){const e=a.__wbg_get_shape_position(this.__wbg_ptr);return 0===e?void 0:Je.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Je),t=e.__destroy_into_raw()),a.__wbg_set_shape_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_shape_size(this.__wbg_ptr);return 0===e?void 0:dt.__wrap(e)}set size(e){let t=0;p(e)||(v(e,dt),t=e.__destroy_into_raw()),a.__wbg_set_shape_size(this.__wbg_ptr,t)}}const ct="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_size_free(e>>>0,1)));class dt{static __wrap(e){e>>>=0;const t=Object.create(dt.prototype);return t.__wbg_ptr=e,ct.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ct.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_size_free(e,0)}get width(){const e=a.__wbg_get_size_width(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set width(e){a.__wbg_set_size_width(this.__wbg_ptr,!p(e),p(e)?0:e)}get height(){const e=a.__wbg_get_size_height(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set height(e){a.__wbg_set_size_height(this.__wbg_ptr,!p(e),p(e)?0:e)}get scale_x(){const e=a.__wbg_get_size_scale_x(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set scale_x(e){a.__wbg_set_size_scale_x(this.__wbg_ptr,!p(e),p(e)?0:e)}get scale_y(){const e=a.__wbg_get_size_scale_y(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set scale_y(e){a.__wbg_set_size_scale_y(this.__wbg_ptr,!p(e),p(e)?0:e)}}const ut="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_softwaresystem_free(e>>>0,1)));class gt{static __wrap(e){e>>>=0;const t=Object.create(gt.prototype);return t.__wbg_ptr=e,ut.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof gt?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ut.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_softwaresystem_free(e,0)}get base_data(){const e=a.__wbg_get_softwaresystem_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_softwaresystem_base_data(this.__wbg_ptr,t)}get system_type(){return a.__wbg_get_softwaresystem_system_type(this.__wbg_ptr)}set system_type(e){a.__wbg_set_softwaresystem_system_type(this.__wbg_ptr,p(e)?0:m(e))}}const mt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_themessettings_free(e>>>0,1)));class bt{static __wrap(e){e>>>=0;const t=Object.create(bt.prototype);return t.__wbg_ptr=e,mt.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,mt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_themessettings_free(e,0)}get diagrams_theme_settings(){const e=a.__wbg_get_themessettings_diagrams_theme_settings(this.__wbg_ptr);return 0===e?void 0:Ie.__wrap(e)}set diagrams_theme_settings(e){let t=0;p(e)||(v(e,Ie),t=e.__destroy_into_raw()),a.__wbg_set_themessettings_diagrams_theme_settings(this.__wbg_ptr,t)}}const pt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_usersettings_free(e>>>0,1)));class ht{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,pt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_usersettings_free(e,0)}get git_path(){const e=a.__wbg_get_usersettings_git_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set git_path(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_key(this.__wbg_ptr,t,n)}}function ft(){const t={wbg:{}};return t.wbg.__wbg_String_1b2069caba3b9783=function(e,t){const n=_(String(t),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_abort_775ef1d17fc65868=function(e){e.abort()},t.wbg.__wbg_append_299d5d48292c0495=function(){return b((function(e,t,n,a,o){e.append(g(t,n),g(a,o))}),arguments)},t.wbg.__wbg_append_8c7dd8d641a5f01b=function(){return b((function(e,t,n,a,o){e.append(g(t,n),g(a,o))}),arguments)},t.wbg.__wbg_append_b2d1fc16de2a0e81=function(){return b((function(e,t,n,a,o,r){e.append(g(t,n),a,g(o,r))}),arguments)},t.wbg.__wbg_append_b44785ebeb668479=function(){return b((function(e,t,n,a){e.append(g(t,n),a)}),arguments)},t.wbg.__wbg_arrayBuffer_d1b44c4390db422f=function(){return b((function(e){return e.arrayBuffer()}),arguments)},t.wbg.__wbg_arrayBuffer_f18c144cd0125f07=function(e){return e.arrayBuffer()},t.wbg.__wbg_async_9ff6d9e405f13772=function(e){return e.async},t.wbg.__wbg_boundary_new=function(e){return he.__wrap(e)},t.wbg.__wbg_boundary_unwrap=function(e){return he.__unwrap(e)},t.wbg.__wbg_buffer_09165b52af8c5237=function(e){return e.buffer},t.wbg.__wbg_buffer_609cc3eee51ed158=function(e){return e.buffer},t.wbg.__wbg_byobRequest_77d9adf63337edfb=function(e){const t=e.byobRequest;return p(t)?0:m(t)},t.wbg.__wbg_byteLength_e674b853d9c77e1d=function(e){return e.byteLength},t.wbg.__wbg_byteOffset_fd862df290ef848d=function(e){return e.byteOffset},t.wbg.__wbg_call_672a4d21634d4a24=function(){return b((function(e,t){return e.call(t)}),arguments)},t.wbg.__wbg_call_7cccdd69e0791ae2=function(){return b((function(e,t,n){return e.call(t,n)}),arguments)},t.wbg.__wbg_close_24caca68e93b9c03=function(e){return e.close()},t.wbg.__wbg_close_304cc1fef3466669=function(){return b((function(e){e.close()}),arguments)},t.wbg.__wbg_close_5ce03e29be453811=function(){return b((function(e){e.close()}),arguments)},t.wbg.__wbg_component_new=function(e){return ve.__wrap(e)},t.wbg.__wbg_component_unwrap=function(e){return ve.__unwrap(e)},t.wbg.__wbg_container_new=function(e){return je.__wrap(e)},t.wbg.__wbg_container_unwrap=function(e){return je.__unwrap(e)},t.wbg.__wbg_createWritable_b4ed240dc879905e=function(e,t){return e.createWritable(t)},t.wbg.__wbg_crypto_ed58b8e10a292839=function(e){return e.crypto},t.wbg.__wbg_data_432d9c3df2630942=function(e){return e.data},t.wbg.__wbg_debug_3cb59063b29f58c1=function(e){console.debug(e)},t.wbg.__wbg_deploymentnode_new=function(e){return Se.__wrap(e)},t.wbg.__wbg_deploymentnode_unwrap=function(e){return Se.__unwrap(e)},t.wbg.__wbg_diagramelementspec_new=function(e){return Ne.__wrap(e)},t.wbg.__wbg_diagramelementspec_unwrap=function(e){return Ne.__unwrap(e)},t.wbg.__wbg_done_769e5ede4b31c67b=function(e){return e.done},t.wbg.__wbg_enqueue_bb16ba72f537dc9e=function(){return b((function(e,t){e.enqueue(t)}),arguments)},t.wbg.__wbg_entries_19efe296f7d36df9=function(e){return e.entries()},t.wbg.__wbg_entries_3265d4158b33e5dc=function(e){return Object.entries(e)},t.wbg.__wbg_error_524f506f44df1645=function(e){console.error(e)},t.wbg.__wbg_error_7534b8e9a36f1ab4=function(e,t){let n,o;try{n=e,o=t,console.error(g(e,t))}finally{a.__wbindgen_free(n,o,1)}},t.wbg.__wbg_fetch_4465c2b10f21a927=function(e){return fetch(e)},t.wbg.__wbg_fetch_509096533071c657=function(e,t){return e.fetch(t)},t.wbg.__wbg_getDirectoryHandle_c48a138373d79b3d=function(e,t,n,a){return e.getDirectoryHandle(g(t,n),a)},t.wbg.__wbg_getFileHandle_5fb877d1ecc74d52=function(e,t,n,a){return e.getFileHandle(g(t,n),a)},t.wbg.__wbg_getFile_2607bc0123c724e0=function(e){return e.getFile()},t.wbg.__wbg_getRandomValues_bcb4912f16000dc4=function(){return b((function(e,t){e.getRandomValues(t)}),arguments)},t.wbg.__wbg_get_67b2ba62fc30de12=function(){return b((function(e,t){return Reflect.get(e,t)}),arguments)},t.wbg.__wbg_get_79e1d7592116244e=function(){return b((function(e,t,n,r){const i=t[g(n,r)];var s=p(i)?0:_(i,a.__wbindgen_malloc,a.__wbindgen_realloc),l=o;d().setInt32(e+4,l,!0),d().setInt32(e+0,s,!0)}),arguments)},t.wbg.__wbg_get_b9b93047fe3cf45b=function(e,t){return e[t>>>0]},t.wbg.__wbg_getwithrefkey_2d7fdfea9645a25b=function(e,t){return e[t]},t.wbg.__wbg_has_a5ea9117f258a0ec=function(){return b((function(e,t){return Reflect.has(e,t)}),arguments)},t.wbg.__wbg_headers_9cb51cfd2ac780a4=function(e){return e.headers},t.wbg.__wbg_info_3daf2e093e091b66=function(e){console.info(e)},t.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc=function(e){let t;try{t=e instanceof ArrayBuffer}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Error_4d54113b22d20306=function(e){let t;try{t=e instanceof Error}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_FileSystemDirectoryHandle_0906fc139d75557b=function(e){let t;try{t=e instanceof FileSystemDirectoryHandle}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_FileSystemFileHandle_d3d037cf85ee546c=function(e){let t;try{t=e instanceof FileSystemFileHandle}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_File_a4e2256bf71955a9=function(e){let t;try{t=e instanceof File}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Response_f2cc20d9f7dfd644=function(e){let t;try{t=e instanceof Response}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9=function(e){let t;try{t=e instanceof Uint8Array}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Window_def73ea0955fc569=function(e){let t;try{t=e instanceof Window}catch(e){t=!1}return t},t.wbg.__wbg_isArray_a1eab7e0d067391b=function(e){return Array.isArray(e)},t.wbg.__wbg_isSafeInteger_343e2beeeece1bb0=function(e){return Number.isSafeInteger(e)},t.wbg.__wbg_iterator_9a24c88df860dc65=function(){return Symbol.iterator},t.wbg.__wbg_lastModified_7a9e61b3961224b8=function(e){return e.lastModified},t.wbg.__wbg_length_a446193dc22c12f8=function(e){return e.length},t.wbg.__wbg_length_e2d2a49132c1b256=function(e){return e.length},t.wbg.__wbg_localStorage_1406c99c39728187=function(){return b((function(e){const t=e.localStorage;return p(t)?0:m(t)}),arguments)},t.wbg.__wbg_log_c222819a41e063d3=function(e){console.log(e)},t.wbg.__wbg_message_97a2af9b89d693a3=function(e){return e.message},t.wbg.__wbg_minaerror_new=function(e){return Ge.__wrap(e)},t.wbg.__wbg_msCrypto_0a36e2ec3a343d26=function(e){return e.msCrypto},t.wbg.__wbg_name_e4a115def9e2bbaa=function(e,t){const n=_(t.name,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_new_018dcc2d6c8c2f6a=function(){return b((function(){return new Headers}),arguments)},t.wbg.__wbg_new_23a2665fac83c611=function(e,t){try{var n={a:e,b:t};const o=new Promise(((e,t)=>{const o=n.a;n.a=0;try{return function(e,t,n,o){a.closure81_externref_shim(e,t,n,o)}(o,n.b,e,t)}finally{n.a=o}}));return o}finally{n.a=n.b=0}},t.wbg.__wbg_new_405e22f390576ce2=function(){return new Object},t.wbg.__wbg_new_5e0be73521bc8c17=function(){return new Map},t.wbg.__wbg_new_78feb108b6472713=function(){return new Array},t.wbg.__wbg_new_8a6f238a6ece86ea=function(){return new Error},t.wbg.__wbg_new_9fd39a253424609a=function(){return b((function(){return new FormData}),arguments)},t.wbg.__wbg_new_a12002a7f91c75be=function(e){return new Uint8Array(e)},t.wbg.__wbg_new_b1a33e5095abf678=function(){return b((function(e,t){return new Worker(g(e,t))}),arguments)},t.wbg.__wbg_new_c68d7209be747379=function(e,t){return new Error(g(e,t))},t.wbg.__wbg_new_e25e5aab09ff45db=function(){return b((function(){return new AbortController}),arguments)},t.wbg.__wbg_new_e9a4a67dbababe57=function(e){return new Int32Array(e)},t.wbg.__wbg_newnoargs_105ed471475aaf50=function(e,t){return new Function(g(e,t))},t.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(e,t,n){return new Uint8Array(e,t>>>0,n>>>0)},t.wbg.__wbg_newwithlength_a381634e90c276d4=function(e){return new Uint8Array(e>>>0)},t.wbg.__wbg_newwithstrandinit_06c535e0a867c635=function(){return b((function(e,t,n){return new Request(g(e,t),n)}),arguments)},t.wbg.__wbg_newwithu8arraysequenceandoptions_068570c487f69127=function(){return b((function(e,t){return new Blob(e,t)}),arguments)},t.wbg.__wbg_next_25feadfc0913fea9=function(e){return e.next},t.wbg.__wbg_next_6574e1a8a62d1055=function(){return b((function(e){return e.next()}),arguments)},t.wbg.__wbg_next_c3ab0d59847b3b5c=function(){return b((function(e){return e.next()}),arguments)},t.wbg.__wbg_node_02999533c4ea02e3=function(e){return e.node},t.wbg.__wbg_of_4a05197bfc89556f=function(e,t,n){return Array.of(e,t,n)},t.wbg.__wbg_person_new=function(e){return Ze.__wrap(e)},t.wbg.__wbg_person_unwrap=function(e){return Ze.__unwrap(e)},t.wbg.__wbg_point_new=function(e){return Ve.__wrap(e)},t.wbg.__wbg_point_unwrap=function(e){return Ve.__unwrap(e)},t.wbg.__wbg_postMessage_6edafa8f7b9c2f52=function(){return b((function(e,t){e.postMessage(t)}),arguments)},t.wbg.__wbg_postMessage_83a8d58d3fcb6c13=function(){return b((function(e,t){e.postMessage(t)}),arguments)},t.wbg.__wbg_process_5c1d670bc53614b8=function(e){return e.process},t.wbg.__wbg_push_737cfc8c1432c2c6=function(e,t){return e.push(t)},t.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5=function(e){queueMicrotask(e)},t.wbg.__wbg_queueMicrotask_d3219def82552485=function(e){return e.queueMicrotask},t.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740=function(){return b((function(e,t){e.randomFillSync(t)}),arguments)},t.wbg.__wbg_relationship_new=function(e){return st.__wrap(e)},t.wbg.__wbg_relationship_unwrap=function(e){return st.__unwrap(e)},t.wbg.__wbg_removeEntry_9f6bc325e3383e59=function(e,t,n){return e.removeEntry(g(t,n))},t.wbg.__wbg_removeEntry_a424e90dff229b19=function(e,t,n,a){return e.removeEntry(g(t,n),a)},t.wbg.__wbg_require_79b1e9274cde3c87=function(){return b((function(){return e.require}),arguments)},t.wbg.__wbg_resolve_4851785c9c5f573d=function(e){return Promise.resolve(e)},t.wbg.__wbg_respond_1f279fa9f8edcb1c=function(){return b((function(e,t){e.respond(t>>>0)}),arguments)},t.wbg.__wbg_seek_3f0f8d7591f648d7=function(){return b((function(e,t){return e.seek(t)}),arguments)},t.wbg.__wbg_set_2873a5cee2324875=function(e,t,n){e[t]=n},t.wbg.__wbg_set_37837023f3d740e8=function(e,t,n){e[t>>>0]=n},t.wbg.__wbg_set_65595bdd868b3009=function(e,t,n){e.set(t,n>>>0)},t.wbg.__wbg_set_8fc6bf8a5b1071d1=function(e,t,n){return e.set(t,n)},t.wbg.__wbg_set_d9a72c1550e3f2b5=function(){return b((function(e,t,n,a,o){e[g(t,n)]=g(a,o)}),arguments)},t.wbg.__wbg_setbody_5923b78a95eedf29=function(e,t){e.body=t},t.wbg.__wbg_setcreate_139bad94b2874fb5=function(e,t){e.create=0!==t},t.wbg.__wbg_setcreate_4ca762e23d9f78da=function(e,t){e.create=0!==t},t.wbg.__wbg_setcredentials_c3a22f1cd105a2c6=function(e,t){e.credentials=le[t]},t.wbg.__wbg_setheaders_834c0bdb6a8949ad=function(e,t){e.headers=t},t.wbg.__wbg_setkeepexistingdata_ee7c8cb466e9477f=function(e,t){e.keepExistingData=0!==t},t.wbg.__wbg_setmethod_3c5280fe5d890842=function(e,t,n){e.method=g(t,n)},t.wbg.__wbg_setmode_5dc300b865044b65=function(e,t){e.mode=_e[t]},t.wbg.__wbg_setonmessage_5a885b16bdc6dca6=function(e,t){e.onmessage=t},t.wbg.__wbg_setrecursive_536113a081d6177a=function(e,t){e.recursive=0!==t},t.wbg.__wbg_setsignal_75b21ef3a81de905=function(e,t){e.signal=t},t.wbg.__wbg_settype_39ed370d3edd403c=function(e,t,n){e.type=g(t,n)},t.wbg.__wbg_shape_new=function(e){return _t.__wrap(e)},t.wbg.__wbg_shape_unwrap=function(e){return _t.__unwrap(e)},t.wbg.__wbg_signal_aaf9ad74119f20a4=function(e){return e.signal},t.wbg.__wbg_size_3808d41635a9c259=function(e){return e.size},t.wbg.__wbg_softwaresystem_new=function(e){return gt.__wrap(e)},t.wbg.__wbg_softwaresystem_unwrap=function(e){return gt.__unwrap(e)},t.wbg.__wbg_stack_0ed75d68575b0f3c=function(e,t){const n=_(t.stack,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){const e=void 0===n.g?null:n.g;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){const e="undefined"==typeof globalThis?null:globalThis;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){const e="undefined"==typeof self?null:self;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){const e="undefined"==typeof window?null:window;return p(e)?0:m(e)},t.wbg.__wbg_status_f6360336ca686bf0=function(e){return e.status},t.wbg.__wbg_stringify_f7ed6987935b4a24=function(){return b((function(e){return JSON.stringify(e)}),arguments)},t.wbg.__wbg_subarray_aa9065fa9dc5df96=function(e,t,n){return e.subarray(t>>>0,n>>>0)},t.wbg.__wbg_text_1f39a8afe3c70a99=function(e){return e.text()},t.wbg.__wbg_then_44b73946d2fb3e7d=function(e,t){return e.then(t)},t.wbg.__wbg_then_48b406749878a531=function(e,t,n){return e.then(t,n)},t.wbg.__wbg_url_ae10c34ca209681d=function(e,t){const n=_(t.url,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_value_cd1ffa7b1ab794f1=function(e){return e.value},t.wbg.__wbg_value_dab73d3d5d4abaaf=function(e){return e.value},t.wbg.__wbg_versions_c71aa1626a93e0a1=function(e){return e.versions},t.wbg.__wbg_view_fd8a56e8983f448d=function(e){const t=e.view;return p(t)?0:m(t)},t.wbg.__wbg_waitAsync_61f0a081053dd3c2=function(e,t,n){return Atomics.waitAsync(e,t>>>0,n)},t.wbg.__wbg_waitAsync_7ce6c8a047c752c3=function(){return Atomics.waitAsync},t.wbg.__wbg_warn_4ca3906c248c47c4=function(e){console.warn(e)},t.wbg.__wbg_write_397d977609afc729=function(){return b((function(e,t){return e.write(t)}),arguments)},t.wbg.__wbindgen_as_number=function(e){return+e},t.wbg.__wbindgen_bigint_from_u64=function(e){return BigInt.asUintN(64,e)},t.wbg.__wbindgen_bigint_get_as_i64=function(e,t){const n="bigint"==typeof t?t:void 0;d().setBigInt64(e+8,p(n)?BigInt(0):n,!0),d().setInt32(e+0,!p(n),!0)},t.wbg.__wbindgen_boolean_get=function(e){return"boolean"==typeof e?e?1:0:2},t.wbg.__wbindgen_cb_drop=function(e){const t=e.original;return 1==t.cnt--&&(t.a=0,!0)},t.wbg.__wbindgen_closure_wrapper1392=function(e,t,n){return f(e,t,103,se)},t.wbg.__wbindgen_closure_wrapper1393=function(e,t,n){return f(e,t,103,se)},t.wbg.__wbindgen_debug_string=function(e,t){const n=_(w(t),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbindgen_error_new=function(e,t){return new Error(g(e,t))},t.wbg.__wbindgen_in=function(e,t){return e in t},t.wbg.__wbindgen_init_externref_table=function(){const e=a.__wbindgen_export_4,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)},t.wbg.__wbindgen_is_bigint=function(e){return"bigint"==typeof e},t.wbg.__wbindgen_is_function=function(e){return"function"==typeof e},t.wbg.__wbindgen_is_object=function(e){return"object"==typeof e&&null!==e},t.wbg.__wbindgen_is_string=function(e){return"string"==typeof e},t.wbg.__wbindgen_is_undefined=function(e){return void 0===e},t.wbg.__wbindgen_jsval_eq=function(e,t){return e===t},t.wbg.__wbindgen_jsval_loose_eq=function(e,t){return e==t},t.wbg.__wbindgen_link_9579f016b4522a24=function(e){const t="onmessage = function (ev) {\n let [ia, index, value] = ev.data;\n ia = new Int32Array(ia.buffer);\n let result = Atomics.wait(ia, index, value);\n postMessage(result);\n };\n ",n=_(void 0===URL.createObjectURL?"data:application/javascript,"+encodeURIComponent(t):URL.createObjectURL(new Blob([t],{type:"text/javascript"})),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbindgen_memory=function(){return a.memory},t.wbg.__wbindgen_number_get=function(e,t){const n="number"==typeof t?t:void 0;d().setFloat64(e+8,p(n)?0:n,!0),d().setInt32(e+0,!p(n),!0)},t.wbg.__wbindgen_number_new=function(e){return e},t.wbg.__wbindgen_rethrow=function(e){throw e},t.wbg.__wbindgen_string_get=function(e,t){const n="string"==typeof t?t:void 0;var r=p(n)?0:_(n,a.__wbindgen_malloc,a.__wbindgen_realloc),i=o;d().setInt32(e+4,i,!0),d().setInt32(e+0,r,!0)},t.wbg.__wbindgen_string_new=function(e,t){return g(e,t)},t.wbg.__wbindgen_throw=function(e,t){throw new Error(g(e,t))},t}function wt(e,t){return a=e.exports,vt.__wbindgen_wasm_module=t,c=null,r=null,a.__wbindgen_start(),a}function yt(e){if(void 0!==a)return a;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module:e}=e):console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));const t=ft();return e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e)),wt(new WebAssembly.Instance(e,t),e)}async function vt(e){if(void 0!==a)return a;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module_or_path:e}=e):console.warn("using deprecated parameters for the initialization function; pass a single object instead")),void 0===e&&(e=new URL(n(734),n.b));const t=ft();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:o,module:r}=await async function(e,t){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if("application/wasm"==e.headers.get("Content-Type"))throw t;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",t)}const n=await e.arrayBuffer();return await WebAssembly.instantiate(n,t)}{const n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}}(await e,t);return wt(o,r)}const xt=vt}},t={};function n(a){var o=t[a];if(void 0!==o)return o.exports;var r=t[a]={id:a,loaded:!1,exports:{}};return e[a](r,r.exports,n),r.loaded=!0,r.exports}n.m=e,n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var a=t.getElementsByTagName("script");if(a.length)for(var o=a.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=a[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),n.b=document.baseURI||self.location.href;var a={};n.r(a),n.d(a,{default:()=>s});var o=n(15),r=n(732);const i=()=>null,s=e=>{const[t,a]=(0,o.useState)((()=>i));return(0,o.useEffect)((()=>{Promise.resolve().then(n.bind(n,290)).then((e=>a((()=>e.default))))}),[]),(0,r.jsx)(t,Object.assign({},e))};module.exports=a})();
1
+ (()=>{"use strict";var e={15:e=>{e.exports=require("react")},290:(e,t,n)=>{n.r(t),n.d(t,{MinaLive:()=>ks,default:()=>Ns});const a=require("react-router-dom");function o(e,t,n){const o=(e,t)=>null!==(0,a.matchPath)(t,e);for(const a of Object.keys(t))if((null!=n?n:o)(e,a))return t[a]}var r=n(15),i=n.n(r);let s=function(e){return e[e.OpenDiagram=0]="OpenDiagram",e[e.OpenSearch=1]="OpenSearch",e[e.GitHubTokenChanged=2]="GitHubTokenChanged",e}({});const l=(0,r.createContext)(null);const _=require("pluralize");var c=n.n(_);c().addPluralRule(/Person/,"Persons");const d=require("@fortawesome/free-solid-svg-icons"),u=require("@fortawesome/react-fontawesome");var g=n(732);const m="hide.te.dropdown",b="show.te.dropdown",p=i().memo((e=>{var t;const n=(0,r.useRef)(null),[a,o]=(0,r.useState)(!1);function i(e){let t;return t=e.isSepator?(0,g.jsx)("li",{className:"relative",children:(0,g.jsx)("span",{className:"bg-third my-1 block h-px w-full"})},e.id):(0,g.jsxs)("li",{className:"relative",children:[(0,g.jsxs)("button",{disabled:void 0!==e.disabled&&e.disabled,id:e.id,className:"\n hover:bg-link\n flex\n w-full\n items-center\n whitespace-nowrap\n px-4\n py-1\n text-left\n text-sm\n hover:text-white\n ","data-te-dropdown-item-ref":!0,onClick:t=>{e.onClick&&e.onClick(t)},children:[e.subMenuItems&&e.subMenuItems.length>0&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("span",{className:"mr-16 basis-11/12 pr-1",children:e.label}),(0,g.jsx)("span",{className:"basis-1/12 text-right",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faAngleRight})})]}),(!e.subMenuItems||0===e.subMenuItems.length)&&e.label]}),s(e.isHeaderMenuItem,e.id,e.subMenuItems)]},e.id),t}function s(e,t,n){const a=[];if(n&&n.length>0){for(const e of n)a.push(i(e));return(0,g.jsx)("ul",{className:`\n bg-secondary\n text-accent-primary\n absolute\n z-50\n m-0\n w-auto\n min-w-max\n list-none\n rounded-md\n border-none\n bg-clip-padding\n py-2\n shadow-[0_1px_2px_rgba(0,0,0,0.6)]\n [&[data-te-dropdown-show]]:block\n ${e?" dropdown-menu float-left hidden origin-top-left":" right-px top-0"}\n `,id:`menu-${t}`,"aria-labelledby":t,"data-te-dropdown-menu-ref":!0,children:a})}return(0,g.jsx)("div",{"data-te-dropdown-menu-ref":!0})}const l=t=>{e.increaseOpenedMenu&&e.setLastOpenedMenu&&e.decreaseOpenedMenu&&(t.type===b?(o(!0),e.increaseOpenedMenu(),e.setLastOpenedMenu(e.id)):(o(!1),e.decreaseOpenedMenu()))};return(0,r.useEffect)((()=>{const t=n.current;return null==t||t.addEventListener(m,l),null==t||t.addEventListener(b,l),(e.alwaysOpen&&!a||e.lastOpenedMenu!==e.id&&a)&&(null==t||t.dispatchEvent(new MouseEvent("click"))),()=>{null==t||t.removeEventListener(m,l),null==t||t.removeEventListener(b,l)}})),(0,g.jsxs)("div",{className:`relative ${null!=(t=e.className)?t:""}`,"data-te-dropdown-ref":!0,children:[(0,g.jsx)("button",{className:`\n ${a?"":" bg-dark-primary text-accent-primary"} \n hover:bg-primary\n flex\n items-center\n whitespace-nowrap\n rounded-md\n px-2\n py-0.5\n text-sm hover:text-white\n hover:shadow-[0_1px_2px_rgba(0,0,0,0.6)]\n focus:outline-none\n focus:ring-0\n ${a?" bg-primary show text-white":""}\n ${e.hidden?" h-0 opacity-0":""}\n ${e.buttonClassName?` ${e.buttonClassName}`:""}\n `,type:"button",id:e.id,"aria-expanded":"false",ref:n,"data-te-dropdown-toggle-ref":!0,"data-te-dropdown-animation":"off",onMouseEnter:t=>{e.atLeastOneOpenedMenu&&e.atLeastOneOpenedMenu()&&!a&&t.target.dispatchEvent(new MouseEvent("click"))},children:e.label}),s(e.isHeaderMenuItem,e.id,e.subMenuItems)]},e.id)})),h=i().memo((e=>{var t;const[n,a]=(0,r.useState)(0),[o,i]=(0,r.useState)("");function s(){a((e=>e+1))}function l(){a((e=>e-1))}function _(){return n>0}return(0,g.jsx)("div",{className:`dropdown-menu group flex ${_()?"open":""} ${null!=(t=e.className)?t:""}`,children:function(){const t=[];if(e.menuItemsProps&&e.menuItemsProps.length>0)for(const n of e.menuItemsProps)t.push((0,r.createElement)(p,Object.assign({},n,{key:n.id,increaseOpenedMenu:s,decreaseOpenedMenu:l,atLeastOneOpenedMenu:_,lastOpenedMenu:o,setLastOpenedMenu:i})));return t}()})})),f=h,w=()=>{const{anchorPoint:e,show:t,contextMenuItems:n}=(()=>{const[e,t]=(0,r.useState)({x:0,y:0}),[n,a]=(0,r.useState)(!1),[o,i]=(0,r.useState)([]),s=(0,r.useCallback)((e=>{if(e.preventDefault(),(n=e)instanceof CustomEvent&&n instanceof CustomEvent&&Object.keys(n.detail).includes("menuItems")){const n=e.detail.pageX,o=e.detail.pageY;i(e.detail.menuItems),t({x:n,y:o}),a(!0)}var n}),[a,t]),l=(0,r.useCallback)((()=>n?a(!1):null),[n]);return(0,r.useEffect)((()=>(document.addEventListener("click",l),document.addEventListener("contextmenu",s),()=>{document.removeEventListener("click",l),document.removeEventListener("contextmenu",s)}))),{anchorPoint:e,show:n,contextMenuItems:o}})(),a=(0,r.useRef)(),[o,i]=(0,r.useState)((0,g.jsx)(g.Fragment,{}));return a.current!==t&&(a.current=t),(0,r.useEffect)((()=>{void 0!==a.current&&(a.current?i((0,g.jsx)("div",{hidden:!t,className:"context-menu absolute",style:{top:e.y,left:e.x},children:(0,g.jsx)(f,{menuItemsProps:n})})):i((0,g.jsx)(g.Fragment,{})))}),[a.current]),o};require("js-cookie"),require("react-ga4");const y=require("fabric"),v="idle",x="panning";class j extends y.fabric.Canvas{constructor(e,t){super(e,t),this.gridEnabled=void 0,this.gridBgColor=void 0,S(this),E(this)}initialize(e,t){return this.gridEnabled=null==t?void 0:t.gridEnabled,S(this),E(this),!0===(null==t?void 0:t.readOnly)&&this.setReadOnly(),!0===(null==t?void 0:t.gridEnabled)&&this.enableGrid(),!0===(null==t?void 0:t.enableSnapToGrid)&&function(e,t){const n=null!=t?t:5;e.on("object:moving",(e=>{var t,a,o;null==(t=e.target)||t.set({left:Math.round((null!=(a=e.target.left)?a:0)/n)*n,top:Math.round((null!=(o=e.target.top)?o:0)/n)*n})}))}(this,t.gridSize),super.initialize(e,t)}isReadOnly(){return y.fabric.Object.prototype.lockMovementX&&y.fabric.Object.prototype.lockMovementY&&y.fabric.Object.prototype.lockRotation&&y.fabric.Object.prototype.lockScalingFlip&&y.fabric.Object.prototype.lockScalingX&&y.fabric.Object.prototype.lockScalingY&&y.fabric.Object.prototype.lockSkewingX&&y.fabric.Object.prototype.lockSkewingY}setReadOnly(){y.fabric.Object.prototype.lockMovementX=!0,y.fabric.Object.prototype.lockMovementY=!0,y.fabric.Object.prototype.lockRotation=!0,y.fabric.Object.prototype.lockScalingFlip=!0,y.fabric.Object.prototype.lockScalingX=!0,y.fabric.Object.prototype.lockScalingY=!0,y.fabric.Object.prototype.lockSkewingX=!0,y.fabric.Object.prototype.lockSkewingY=!0}setReadAndWrite(){y.fabric.Object.prototype.lockMovementX=!1,y.fabric.Object.prototype.lockMovementY=!1,y.fabric.Object.prototype.lockRotation=!1,y.fabric.Object.prototype.lockScalingFlip=!1,y.fabric.Object.prototype.lockScalingX=!1,y.fabric.Object.prototype.lockScalingY=!1,y.fabric.Object.prototype.lockSkewingX=!1,y.fabric.Object.prototype.lockSkewingY=!1}zoomIn(){this.setZoom(1.1*this.getZoom())}zoomOut(){this.setZoom(this.getZoom()/1.1)}resetZoom(){this.setZoom(1)}panLeft(){this.relativePan(new y.fabric.Point(5,0))}panRight(){this.relativePan(new y.fabric.Point(-5,0))}panUp(){this.relativePan(new y.fabric.Point(0,5))}panDown(){this.relativePan(new y.fabric.Point(0,-5))}resetPan(){this.absolutePan(new y.fabric.Point(0,0))}isGridEnabled(){var e;return null!=(e=this.gridEnabled)&&e}enableGrid(){if(!this.gridEnabled){this.gridEnabled=!0,this.gridBgColor=this.backgroundColor;const e=`\n<svg xmlns="http://www.w3.org/2000/svg" width="160" height="160"><rect width="160" height="160" fill="${this.gridBgColor}" /><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><rect x="0.38" y="0.38" width="160" height="160" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.75px"/><line x1="0.38" y1="140.38" x2="160.38" y2="140.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="120.38" x2="160.38" y2="120.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="100.38" x2="160.38" y2="100.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="80.38" x2="160.38" y2="80.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.5px"/><line x1="0.38" y1="60.38" x2="160.38" y2="60.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="40.38" x2="160.38" y2="40.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="0.38" y1="20.38" x2="160.38" y2="20.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="140.38" y1="0.38" x2="140.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="120.38" y1="0.38" x2="120.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="100.38" y1="0.38" x2="100.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="80.38" y1="0.38" x2="80.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.5px"/><line x1="60.38" y1="0.38" x2="60.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="40.38" y1="0.38" x2="40.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/><line x1="20.38" y1="0.38" x2="20.38" y2="160.38" style="fill:none;stroke:#bcbec0;stroke-miterlimit:10;stroke-width:0.25px"/></g></g></svg>\n`,t=new Blob([e],{type:"image/svg+xml"}),n=URL.createObjectURL(t);y.fabric.Image.fromURL(n,(e=>{var t,n;e.scaleToWidth(null!=(t=this.width)?t:0),e.scaleToHeight(null!=(n=this.height)?n:0);const a=new y.fabric.Pattern({source:e.getElement(),repeat:"repeat"});this.setBackgroundColor(a,this.renderAll.bind(this))}))}}disableGrid(){this.gridEnabled&&(this.gridEnabled=!1,this.gridBgColor&&(this.setBackgroundColor(this.gridBgColor,this.renderAll.bind(this)),this.gridBgColor=void 0))}}function O(e){return 3===e.button}function S(e){e.on("mouse:wheel",(function(t){const n=t.e.deltaY;let a=e.getZoom();a*=.999**n,a>20&&(a=20),a<.01&&(a=.01),e.zoomToPoint({x:t.e.offsetX,y:t.e.offsetY},a),t.e.preventDefault(),t.e.stopPropagation()}))}function E(e){let t,n,a=v;e.discardActiveObject(),e.on("mouse:up",(function(t){O(t)&&(a=v,e.defaultCursor="default")})),e.on("mouse:down",(o=>{O(o)&&(e.defaultCursor="move",a=x,t=o.e.clientX,n=o.e.clientY)})),e.on("mouse:move",(o=>{if(a===x&&o&&o.e){let a=0,r=0;t&&(a=o.e.clientX-t),n&&(r=o.e.clientY-n),t=o.e.clientX,n=o.e.clientY;const i=new y.fabric.Point(a,r);e.relativePan(i),e.fire("moved")}}))}function C(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}const k=(e={})=>Object.keys(e).reduce(((t,n)=>(n.startsWith("data-")&&(t[n]=e[n]),t)),{}),N=require("fast-deep-equal/es6/react");var T=n.n(N);const R=require("lodash.clonedeep");var L=n.n(R);const M=(e,t)=>T()(e,t);function $(e){return e?e.replace(/\\n/g,"\n").replace(/\\t/g," ").replace(/\\r/g,"\n"):void 0}function I(e,t=96){return Number.parseFloat((e/t).toFixed(2))}const D="temp";function A(e){return"function"==typeof(null==e?void 0:e.showDirectoryPicker)}async function P(e,t){let n=e;for(const e of t)n=await n.getDirectoryHandle(e,{create:!0});return n}const F=require("jszip");var B=n.n(F);const z=["icon","classNameIcon","classNameContent"],U=i().memo((e=>{const{icon:t,classNameIcon:n,classNameContent:a}=e,o=C(e,z),r=k(e);return(0,g.jsxs)("button",Object.assign({},o,r,{className:`${e.className} text-accent-secondary hover:text-accent-primary [&.active]:text-accent-primary disabled:hover:text-accent-secondary disabled:opacity-50`,children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:null!=t?t:d.faXmark,className:null!=n?n:""}),(0,g.jsx)("div",{className:a,children:e.children})]}))})),H=U,W=require("@tanstack/react-table"),K=e=>{const{table:t,label:n,disableExpandControls:a,className:o}=e;return(0,g.jsxs)("div",{className:`${null!=o?o:""} p-2`,children:[(0,g.jsx)("button",{hidden:!0===a,onClick:t.getToggleAllRowsExpandedHandler(),children:t.getIsAllRowsExpanded()?(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronDown}):(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronRight})})," ",n]})},X=e=>{const{row:t,getValue:n,disableExpandControls:a,className:o}=e,r=Object.assign({},0!==t.depth||t.getCanExpand()?{paddingLeft:`${t.depth}rem`}:{});return(0,g.jsx)("div",{className:"p-2 "+(t.getCanExpand()?"pt-5":`${null!=o?o:""}`),style:r,children:t.getCanExpand()?(0,g.jsxs)("div",{children:[(0,g.jsx)("button",{hidden:!0===a,className:"mr-2",onClick:t.getToggleExpandedHandler(),style:{cursor:"pointer"},children:t.getIsExpanded()?(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronDown}):(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faChevronRight})}),(0,g.jsx)("span",{className:"text-accent-primary text-lg pointer-events-none",children:n()})]}):n()})},G=require("react-i18next"),Y=(0,r.forwardRef)(((e,t)=>{const{tableOptions:n,columns:a,globalFilter:o,hideHeader:s,disableExpandControls:l,defaultExpanded:_,headerClassName:c,cellClassName:u,hidePaginationControls:m}=e,{t:b}=(0,G.useTranslation)();let{expandable:p}=e;void 0===p&&(p=!0);const[h,f]=i().useState(void 0!==_?_:{}),w=(0,W.useReactTable)(Object.assign({state:{expanded:h,globalFilter:o},onExpandedChange:f,getSubRows:e=>e.children,getPaginationRowModel:(0,W.getPaginationRowModel)(),getFilteredRowModel:(0,W.getFilteredRowModel)(),getExpandedRowModel:(0,W.getExpandedRowModel)(),debugTable:!0,filterFromLeafRows:!0},n,{columns:(()=>{const e=[];return a.forEach((t=>{const n={};t.accessorKey?n.accessorKey=t.accessorKey:t.id&&(n.id=t.id,n.accessorFn=t.accessorFn),e.push(Object.assign({},n,{size:t.size,enableResizing:t.enableResizing,header:e=>s?"":(0,g.jsx)(K,Object.assign({},e,{className:`${c}`,label:t.label,disableExpandControls:l})),cell:e=>{var n;return(0,g.jsx)(X,Object.assign({},e,{disableExpandControls:l,className:`${null!=u?u:""} ${null!=(n=t.className)?n:""}`}))},footer:e=>e.column.id}))})),e})()}));return(0,r.useImperativeHandle)(t,(()=>w)),(0,g.jsxs)("div",{className:"w-full",children:[(0,g.jsxs)("table",{className:"w-full",children:[(0,g.jsx)("thead",{children:w.getHeaderGroups().map((e=>(0,g.jsx)("tr",{className:"bg-dark-brand1 text-base "+(s?"opacity-0":""),children:e.headers.map((e=>(0,g.jsxs)("th",{className:"relative first:rounded-bl first:rounded-tl last:rounded-br last:rounded-tr",colSpan:e.colSpan,style:{width:150!==e.getSize()?e.getSize():void 0},children:[e.isPlaceholder?null:(0,g.jsx)("div",{children:(0,W.flexRender)(e.column.columnDef.header,e.getContext())}),e.column.getCanResize()&&(0,g.jsx)("div",{onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler(),className:"resizer "+(e.column.getIsResizing()?"isResizing":"")})]},e.id)))},e.id)))}),(0,g.jsx)("tbody",{children:w.getRowModel().rows.map((t=>(0,g.jsx)("tr",{hidden:p&&0===t.depth&&!t.getCanExpand(),className:t.getCanExpand()?"":"hover:bg-secondary container-link",children:t.getVisibleCells().map((n=>(0,g.jsx)("td",{onClick:a=>{!e.onRowClick||e.suppressRowClickColIDs&&e.suppressRowClickColIDs.includes(n.column.id)||e.onRowClick(a,t.original)},className:"first:rounded-bl first:rounded-tl last:rounded-br last:rounded-tr",children:(0,W.flexRender)(n.column.columnDef.cell,n.getContext())},n.id)))},t.id)))})]}),(0,g.jsxs)("div",{className:"mt-5 flex items-center gap-2 "+(void 0!==m&&m?"hidden":""),children:[(0,g.jsx)(H,{className:"p-1",icon:d.faAnglesLeft,onClick:()=>w.setPageIndex(0),disabled:!w.getCanPreviousPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAngleLeft,onClick:()=>w.previousPage(),disabled:!w.getCanPreviousPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAngleRight,onClick:()=>w.nextPage(),disabled:!w.getCanNextPage()}),(0,g.jsx)(H,{className:"p-1",icon:d.faAnglesRight,onClick:()=>w.setPageIndex(w.getPageCount()-1),disabled:!w.getCanNextPage()}),(0,g.jsx)("span",{className:"flex items-center gap-1",children:(0,g.jsx)("div",{children:b("table.current_page",{currentPage:w.getState().pagination.pageIndex+1,totalPages:w.getPageCount()})})}),(0,g.jsxs)("span",{className:"flex items-center gap-1",children:["| ",b("table.go_to_page"),":",(0,g.jsx)("input",{type:"number",defaultValue:w.getState().pagination.pageIndex+1,min:1,max:w.getPageCount(),onChange:e=>{const t=e.target.value?Number(e.target.value)-1:0;t>=0&&t<w.getPageCount()&&w.setPageIndex(t)},className:"w-16 rounded border p-1"})]})]})]})})),Z=i().memo((e=>{const{menuOptions:t}=e;return(0,g.jsx)("div",{className:"mr-3 text-right",children:(0,g.jsx)(h,{menuItemsProps:t})})})),q=i().memo((e=>{const{className:t}=e;return(0,g.jsx)("div",{className:`inline-block h-8 w-8 animate-spin rounded-full border-4 border-solid border-current border-r-transparent align-[-0.125em] motion-reduce:animate-[spin_1.5s_linear_infinite] ${t}`,role:"status",children:(0,g.jsx)("span",{className:"!absolute !-m-px !h-px !w-px !overflow-hidden !whitespace-nowrap !border-0 !p-0 ![clip:rect(0,0,0,0)]",children:"Loading..."})})})),V=q,Q=["fixedWidth","loading","onIconClick","icon"],J=i().memo((e=>{const{fixedWidth:t,loading:n,onIconClick:a,icon:o}=e,i=C(e,Q),[s,l]=(0,r.useState)();return(0,g.jsx)("div",{className:"input-button__box flex items-center",children:(0,g.jsxs)("div",{className:"input-button__container flex items-center "+(void 0!==t&&t||void 0!==s&&""!==s?"active":""),children:[(void 0===n||!n)&&(0,g.jsx)(u.FontAwesomeIcon,{icon:null!=o?o:d.faSearch,className:"icon",onClick:function(e){a&&a()}}),void 0!==n&&n&&(0,g.jsx)(V,{className:"icon !h-4 !w-4"}),(0,g.jsx)("input",Object.assign({},i,{type:"search",id:"input-button",onChange:e=>{l(e.currentTarget.value),i.onChange&&i.onChange(e)}}))]})})})),ee=["children","isLoading","disabled"],te=i().memo((e=>{const t=k(e),{children:n,isLoading:a,disabled:o}=e,r=C(e,ee);return(0,g.jsxs)("button",Object.assign({},r,t,{disabled:o||a,type:"button","data-te-toggle":"button",className:`button--primary inline-block min-w-[75px] rounded px-5 py-2 text-xs font-medium uppercase leading-tight shadow-md transition duration-75 ease-in-out hover:shadow-lg focus:shadow-lg focus:outline-none focus:ring-0 active:shadow-lg ${e.className}`,children:[a&&(0,g.jsx)(V,{className:"icon !h-4 !w-4"}),!a&&n]}))})),ne="modalRoot",ae=i().memo((()=>(0,g.jsx)("div",{id:ne}))),oe=require("tw-elements"),re=["key"],ie="hidden.te.modal";function se(e){const t=[];return"boolean"!=typeof e&&e&&e.forEach(((e,n,a)=>{const o=k(e),{key:r}=e,i=C(e,re);t.push((0,g.jsx)(te,Object.assign({},i,o,{className:`${0!==n&&a.length>1?"ml-3":""} ${e.className}`}),r))})),t}const le=(0,r.forwardRef)(((e,t)=>{var n;const{id:a,onHiddenModal:o}=e,i=null!=(n=e.size)?n:"md",s=(0,r.useRef)();return(0,r.useEffect)((()=>{function e(){o&&o()}const t=document.getElementById(a);return!s.current&&t&&(s.current=new oe.Modal(t)),t&&t.addEventListener(ie,e),()=>{t&&t.removeEventListener(ie,e)}}),[a,o]),(0,r.useImperativeHandle)(t,(()=>({showModal:()=>{s.current.show()},hideModal:()=>{s.current.hide(),s.current=void 0}}))),(0,g.jsx)("div",{"data-te-modal-init":!0,className:"fixed left-0 top-8 bottom-0 z-[1055] hidden h-auto w-full overflow-y-auto overflow-x-hidden outline-none",id:a,tabIndex:-1,"aria-labelledby":`${a}Label`,children:(0,g.jsx)("div",{"data-te-modal-dialog-ref":!0,className:"pointer-events-none relative flex min-h-[calc(100%-1rem)] w-auto translate-y-[-50px] items-center justify-center opacity-0 transition-all duration-300 ease-in-out min-[576px]:mx-5 min-[576px]:my-7 min-[576px]:min-h-[calc(100%-3.5rem)]",children:(0,g.jsxs)("div",{className:`pointer-events-auto relative flex ${(()=>{switch(i){case"sm":return"w-[25rem]";case"md":return"w-[40rem]";case"lg":return"w-[70rem]";case"full":return"w-full"}})()} ${"full"===e.size?"mx-5":""} bg-primary flex-col rounded-md border-none bg-clip-padding text-current shadow-lg outline-none`,children:[(0,g.jsxs)("div",{className:"border-secondary flex flex-shrink-0 items-center justify-between rounded-t-md border-b-2 border-opacity-50 p-4",children:[(0,g.jsx)("h5",{className:"text-accent-primary text-xl font-medium leading-normal pointer-events-none",id:`${a}Label`,children:e.title}),(0,g.jsx)("button",{type:"button",className:"box-content rounded-none border-none hover:no-underline hover:opacity-75 focus:opacity-100 focus:shadow-none focus:outline-none","data-te-modal-dismiss":!0,"aria-label":"Close",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faXmark})})]}),"boolean"!=typeof e.buttons&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:"modal__body",children:e.body}),(0,g.jsx)("div",{className:"modal__footer",children:se(e.buttons)})]}),"boolean"==typeof e.buttons&&e.body]})})})})),_e=require("react-dom");function ce(){const[e,t]=(0,r.useState)(),[n,a]=(0,r.useState)(!0),o=(0,r.useRef)(null);return(0,r.useEffect)((()=>{o.current&&(n?o.current.showModal():o.current.hideModal())}),[e,n]),{modal:e,showModal:function(e){const n=document.getElementById(ne);n&&(t((0,_e.createPortal)((0,g.jsx)(le,Object.assign({},e,{ref:o,onHiddenModal:()=>{t(void 0)}})),n)),a(!0))},hideModal:function(){a(!1)}}}const de=["label","info","allowedChars","classNameRoot","key"],ue=i().memo((e=>{const[t,n]=(0,r.useState)(e.value),{info:a,classNameRoot:o,key:i}=e,s=C(e,de),l=k(e);return(0,r.useEffect)((()=>{n(e.value)}),[e.value]),(0,g.jsxs)("div",{className:`relative mb-3 ${null!=o?o:""}`,children:[(0,g.jsx)("input",Object.assign({maxLength:200},s,l,{onChange:function(a){!e.allowedChars||""===a.currentTarget.value||e.allowedChars.test(a.currentTarget.value)?(n(a.currentTarget.value),e.onChange&&e.onChange(a)):t&&(a.currentTarget.value=t.toString())},"data-te-input-state-active":!0,className:`peer transition-all duration-200 ease-linear placeholder:opacity-0 motion-reduce:transition-none ${e.className}`,placeholder:e.label}),i),(0,g.jsx)("label",{htmlFor:e.id,className:(null!=t&&""!==t?"input__label -translate-y-[1.1rem] scale-[0.9]":"")+" peer-focus:text-link peer-focus:input__label pointer-events-none absolute left-3 top-0 mb-0 max-w-[90%] origin-[0_0] truncate pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] transition-all duration-200 ease-out peer-focus:-translate-y-[1.1rem] peer-focus:scale-[0.9] motion-reduce:transition-none",children:e.label}),a&&(0,g.jsx)("div",{className:"text-sm px-3 mt-1",children:a})]})})),ge=["label","className","key"],me=i().memo((e=>{const{label:t,className:n,key:a}=e,o=C(e,ge),i=k(e);return(0,r.useEffect)((()=>{const t=document.querySelector(`#${e.id}`);oe.Select.getInstance(t)||new oe.Select(document.querySelector(`#${e.id}`),{},{dropdown:"select__dropdown",formCheckInput:"bg-red-400 checked:after:border-red-500",selectInput:"peer select__input",selectOption:"select__option data-[te-select-option-selected]:data-[te-input-state-active]:link",selectLabelSizeDefault:"select__label-size-default",selectLabel:"select__label",selectArrow:"select__arrow top-[0.65rem]"})})),(0,g.jsxs)("div",{className:`relative mb-3 ${n}`,children:[(0,g.jsx)("select",Object.assign({"data-te-select-init":!0},o,i,{children:function(){const t=[];return e.options.forEach((e=>{var n;t.push((0,g.jsx)("option",{value:e.value,children:e.label},null==(n=e.value)?void 0:n.toString()))})),t}()}),a),(0,g.jsx)("label",{"data-te-select-label-ref":!0,children:t})]})})),be=["label","className","onTyping","initialValue","onDefaultOptionSelected","allowedChars","info","key"],pe=i().memo((e=>{var t,n;const{label:a,className:o,onDefaultOptionSelected:i,info:s,key:l}=e,_=C(e,be),c=k(e),[d,u]=(0,r.useState)(null!=(t=null==(n=e.value)?void 0:n.toString())?t:""),{forceUpdate:m}=Ie();function b(){const t=document.querySelectorAll(`.${e.id}[data-te-select-option-ref]`);if(t&&t.length>0)return t[0]}return(0,r.useEffect)((()=>{const t=document.querySelector(`#${e.id}`);oe.Select.getInstance(t)||new oe.Select(document.querySelector(`#${e.id}`),{},{dropdown:"select__dropdown",formCheckInput:"bg-red-400 checked:after:border-red-500",selectInput:"peer select__input",selectOption:`select__option ${e.id} data-[te-select-option-selected]:data-[te-input-state-active]:link`,selectLabelSizeDefault:"select__label-size-default",selectLabel:"select__label",selectArrow:"select__arrow top-[0.65rem]"});const n=document.querySelector(`.${e.id} [data-te-select-input-ref]`);if(n&&(n.removeAttribute("readonly"),n.removeAttribute("role"),n.oninput=()=>{!e.allowedChars||""===n.value||e.allowedChars.test(n.value)?(u(n.value),e.onTyping(n.value)):d&&(n.value=d)},i&&(n.onkeydown=e=>{if("Enter"===e.key){const e=b();e&&e.hasAttribute("data-te-input-state-active")&&i(d)}})),i){const e=b();e&&(e.onclick=()=>i(d))}})),(0,r.useEffect)((()=>{m()}),[d]),(0,g.jsxs)("div",{className:`${e.id} autocomplete relative mb-3 ${o}`,children:[(0,g.jsx)("select",Object.assign({"data-te-select-init":!0},_,c,{value:d,children:function(){const t=[];return e.options.forEach(((e,n)=>{var a;t.push((0,g.jsx)("option",{value:e.value,children:e.label},`${null==(a=e.value)?void 0:a.toString()}_${n}`))})),t}()}),l),(0,g.jsx)("label",{"data-te-select-label-ref":!0,children:a}),s&&(0,g.jsx)("div",{className:"text-sm px-3",children:s})]})})),he=i().memo((e=>{var t;const{className:n}=e;let{orientation:a}=e;a=null!=(t=a)?t:"vertical";let o="h-auto w-px bg-gradient-to-t";return"horizontal"===a&&(o="w-full h-px bg-gradient-to-r"),(0,g.jsx)("div",{className:`${o} self-stretch from-transparent via-neutral-50 to-transparent opacity-20 ${null!=n?n:""}`})})),fe=["classNameRoot","key"],we=i().memo((e=>{const[t,n]=(0,r.useState)(e.value),a=k(e),{classNameRoot:o,key:i}=e,s=C(e,fe);return(0,r.useEffect)((()=>{n(e.value)}),[e.value]),(0,g.jsxs)("div",{className:`relative mb-3 ${null!=o?o:""}`,"data-te-input-wrapper-init":!0,children:[(0,g.jsx)("div",{"data-te-input-notch-ref":!0,"data-te-input-notch-leading-ref":!0,"data-te-input-notch-middle-ref":!0,"data-te-input-notch-trailing-ref":!0}),(0,g.jsx)("textarea",Object.assign({rows:3},s,a,{onChange:t=>{n(t.currentTarget.value),e.onChange&&e.onChange(t)},className:`peer transition-all duration-200 ease-linear placeholder:opacity-0 motion-reduce:transition-none ${e.className}`,placeholder:e.label}),i),(0,g.jsx)("label",{htmlFor:e.id,className:(t&&""!==t?"input__label -translate-y-[1.1rem] scale-[0.9]":"")+" peer-focus:text-link peer-focus:input__label pointer-events-none absolute left-3 top-0 mb-0 max-w-[90%] origin-[0_0] truncate pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] transition-all duration-200 ease-out peer-focus:-translate-y-[1.1rem] peer-focus:scale-[0.9] motion-reduce:transition-none",children:e.label})]})})),ye=require("react-html-parser");var ve=n.n(ye);const xe=e=>{var t;const{id:n,items:a}=e,[o,i]=(0,r.useState)([]),s=(0,r.useRef)();return M(s.current,a)||(s.current=a),(0,r.useEffect)((()=>{const e=[].slice.call(document.querySelectorAll(`#${n} [data-te-collapse-item][data-te-collapse-item]`));e&&e.length>0&&i(e.map((e=>new oe.Collapse(e,{toggle:!1}))));const t=[].slice.call(document.querySelectorAll(`#${n} [data-te-toggle="tooltip"]`)).map((e=>new oe.Tooltip(e,{trigger:"hover"})));return()=>{t.forEach((e=>{e.dispose()}))}}),[s.current]),(0,g.jsx)("div",{id:n,className:`${null!=(t=e.className)?t:""}`,children:function(){let t=[];return a&&(t=a.map(((t,a)=>{let r={};void 0!==e.showButtonTooltip&&e.showButtonTooltip&&(r={"data-te-toggle":"tooltip","data-te-placement":"right",title:t.header});const i=(0,g.jsx)("span",{className:"overflow-hidden text-ellipsis whitespace-pre",children:t.header});return(0,g.jsxs)("div",{className:"bg-secondary",children:[(0,g.jsx)("h2",{className:"mb-0",id:`${n}-heading-${a}`,children:(0,g.jsxs)("button",Object.assign({className:"accordion-button [&:not([data-te-collapse-collapsed])]:text-accent-primary bg-primary [&:not([data-te-collapse-collapsed])]:bg-primary text-accent-primary group relative flex w-full items-center border-0 px-5 py-4 text-left [overflow-anchor:none] hover:z-[2] focus:z-[3] focus:outline-none ",type:"button","data-te-collapse-init":!0,"data-te-collapse-collapsed":!0,"data-te-target":`#${n}-collapse-${a}`,"aria-expanded":"false","aria-controls":`${n}-collapse-${a}`,onClick:()=>{var e;return null==(e=o[a])?void 0:e.toggle()}},r,{children:[void 0===e.buttonIconPosition||"right"===e.buttonIconPosition?i:"",(0,g.jsx)("span",{className:"accordion-icon mx-1 h-5 w-5 rotate-[0deg] group-[[data-te-collapse-collapsed]]:rotate-[-90deg]",children:(0,g.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:"1.5",stroke:"currentColor",className:"h-6 w-6",children:(0,g.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"})})}),void 0!==e.buttonIconPosition&&"left"===e.buttonIconPosition?i:""]}))}),(0,g.jsx)("div",{id:`${n}-collapse-${a}`,className:"!visible hidden","data-te-collapse-item":!0,"aria-labelledby":`${n}-heading-${a}`,"data-te-parent":`#${n}`,children:(0,g.jsx)("div",{className:"accordion-body px-5 py-4 text-left "+(e.onBodyClick?"cursor-pointer":""),onClick:n=>function(t,n){e.onBodyClick&&e.onBodyClick(n.data)}(0,t),children:void 0!==t.parseHtmlBody&&t.parseHtmlBody&&"string"==typeof t.body?ve()(t.body):t.body})})]},`search-result-item-${a}`)}))),t}()})},je=i().memo((({tags:e,className:t})=>(0,g.jsx)("ul",{className:`tags ${null!=t?t:""}`,children:e.map(((e,t)=>(0,g.jsx)("li",{children:e},t)))}))),Oe=require("@yaireo/tagify");var Se=n.n(Oe);const Ee=i().memo((({id:e,tags:t,label:n,className:a,disabled:o,settings:i})=>{const[s,l]=(0,r.useState)();return(0,r.useEffect)((()=>{const t=document.querySelector(`input[id=${e}]`);t&&!s&&l(new(Se())(t,Object.assign({},i)))}),[e]),(0,r.useEffect)((()=>{if(s){const e=s.value.map((e=>e.value));M(e,t)||(s.removeAllTags({withoutChangeEvent:!0}),s.addTags(t))}}),[s,t]),(0,g.jsxs)("div",{className:`relative ${null!=a?a:""}`,children:[n&&(0,g.jsx)("span",{className:"input__label absolute left-3 top-0 mb-0 -translate-y-[1.1rem] scale-[0.9] pt-[0.37rem] leading-[1.6] drop-shadow-[0_35px_35px_rgba(0,0,0,0.25)] z-[1]",children:n}),(0,g.jsx)("input",{id:e,type:"text",defaultValue:t.join(","),disabled:o})]})})),Ce=i().memo((({id:e,tabs:t,tabClassName:n,bodyClassName:a,className:o,orientation:i})=>{i||(i="top");const[s,l]=(0,r.useState)(-1);return(0,g.jsxs)("div",{id:`${null!=e?e:""}`,className:`flex ${"top"===i?"flex-col":"flex-row"} ${null!=o?o:""}`,children:[(0,g.jsx)("ul",{className:`list-none ${"top"===i?"flex flex-row flex-wrap":"block"} border-b-0 pl-0`,role:"tablist","data-te-nav-ref":!0,children:t.map(((e,t)=>{const a={};return-1===s&&0===t&&(a["data-te-nav-active"]={}),(0,g.jsx)("li",{role:"presentation",className:"flex-auto text-center",children:(0,g.jsx)("a",Object.assign({href:`#${e.id}`,onClick:()=>l(t),className:`my-2 block border-x-0 ${"top"===i?"border-b-2":"border-l-2"} border-t-0 border-transparent px-7 pb-3.5 pt-4 font-medium leading-tight hover:isolate hover:border-transparent focus:isolate focus:border-transparent data-[te-nav-active]:border-link data-[te-nav-active]:text-white hover:text-white bg-primary hover:bg-link ${null!=n?n:""}`,"data-te-toggle":"pill","data-te-target":`#${e.id}`},a,{role:"tab","aria-controls":`#${e.id}`,"aria-selected":"true",children:e.title}))},e.id)}))}),(0,g.jsx)("div",{className:`p-4 ${null!=a?a:""}`,children:t.map(((e,t)=>{const n={};return-1===s&&0===t&&(n["data-te-tab-active"]={}),(0,g.jsx)("div",Object.assign({className:"hidden opacity-100 transition-opacity duration-150 ease-linear data-[te-tab-active]:block",id:e.id,role:"tabpanel"},n,{"aria-labelledby":e.id,children:e.body}),e.id)}))})]})})),ke=e=>{var t;const{className:n,options:a}=e;return(0,g.jsx)("div",{className:`flex justify-center ${null!=n?n:""}`,id:null!=(t=e.id)?t:"",children:a.map(((t,n)=>(0,g.jsxs)("div",{className:"mb-[0.125rem] me-4 inline-block min-h-[1.5rem] ps-[1.5rem]",children:[(0,g.jsx)("input",{className:"relative float-left -ms-[1.5rem] me-1 mt-0.5 h-5 w-5 appearance-none rounded-full border-2 border-solid border-secondary-500 before:pointer-events-none before:absolute before:h-4 before:w-4 before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-checkbox before:shadow-transparent before:content-[''] after:absolute after:z-[1] after:block after:h-4 after:w-4 after:rounded-full after:content-[''] checked:border-accent-secondary checked:before:opacity-[0.16] checked:after:absolute checked:after:left-1/2 checked:after:top-1/2 checked:after:h-[0.625rem] checked:after:w-[0.625rem] checked:after:rounded-full checked:after:border-accent-secondary checked:after:bg-accent-primary checked:after:content-[''] checked:after:[transform:translate(-50%,-50%)] hover:before:opacity-[0.04] hover:before:shadow-black/60 focus:shadow-none focus:outline-none focus:ring-0 focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-black/60 focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:border-accent-secondary checked:focus:before:scale-100 checked:focus:before:shadow-checkbox checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] rtl:float-right "+(e.disabled?"":"hover:cursor-pointer"),type:"radio",name:`inlineRadioOptions-${e.id}`,id:`option-${e.id}-${n}`,value:JSON.stringify(t.value),onChange:()=>{e.onChange(t.value)},checked:JSON.stringify(t.value)===JSON.stringify(e.value),disabled:e.disabled}),(0,g.jsx)("label",{className:"mt-px inline-block ps-[0.15rem] "+(e.disabled?"":"hover:cursor-pointer"),htmlFor:e.disabled?void 0:`option-${e.id}-${n}`,children:t.label})]},`radioOption${n}`)))})},Ne=require("react-color"),Te=require("react-hotkeys-hook"),Re=require("ts-key-enum"),Le=i().memo((({color:e,className:t,onChange:n})=>{const[a,o]=(0,r.useState)(!1);return(0,Te.useHotkeys)([Re.Key.Escape],(e=>{a&&(e.preventDefault(),o(!1))})),(0,g.jsxs)("div",{className:`color-picker ${null!=t?t:""}`,children:[a&&(0,g.jsx)("div",{className:"absolute top-0 bottom-0 left-0 right-0",onClick:()=>o(!1)}),(0,g.jsx)("div",{className:"py-1 px-1 cursor-pointer bg-white w-fit h-fit rounded-sm",onClick:()=>o(!a),children:(0,g.jsx)("div",{className:"w-7 h-3",style:{backgroundColor:e}})}),a?(0,g.jsx)("div",{className:"absolute z-[2] pr-5 pb-5",children:(0,g.jsx)(Ne.SketchPicker,{disableAlpha:!1,color:null!=e?e:"#000000",onChange:(e,t)=>{n&&n(function(e){var t;const n=e.hex,a=Math.round(255*(null!=(t=e.rgb.a)?t:1)).toString(16).padStart(2,"0");return e.hex=`${n}${a}`,e}(e),t)}})}):null]})})),Me=require("change-case"),$e=e=>{const{id:t,className:n,options:a,disabled:o,values:r,onChange:i}=e;return(0,g.jsx)("div",{className:`flex justify-center ${null!=n?n:""}`,id:t,children:a.map(((e,n)=>(0,g.jsxs)("div",{className:"flex "+(n>0?"ml-5":""),children:[(0,g.jsx)("input",{className:"!p-0 !mr-3 relative float-left me-[6px] mt-[0.15rem] h-[1.125rem] w-[1.125rem] appearance-none rounded-[0.25rem] border-[0.125rem] border-solid border-secondary-500 outline-none before:pointer-events-none before:absolute before:h-[0.875rem] before:w-[0.875rem] before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-checkbox before:shadow-transparent before:content-[''] checked:border-primary checked:bg-primary checked:before:opacity-[0.16] checked:after:absolute checked:after:-mt-px checked:after:ms-[0.25rem] checked:after:block checked:after:h-[0.8125rem] checked:after:w-[0.375rem] checked:after:rotate-45 checked:after:border-[0.125rem] checked:after:border-l-0 checked:after:border-t-0 checked:after:border-solid checked:after:border-white checked:after:bg-transparent checked:after:content-[''] hover:before:opacity-[0.04] hover:before:shadow-black/60 focus:shadow-none focus:transition-[border-color_0.2s] focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-black/60 focus:before:transition-[box-shadow_0.2s,transform_0.2s] focus:after:absolute focus:after:z-[1] focus:after:block focus:after:h-[0.875rem] focus:after:w-[0.875rem] focus:after:rounded-[0.125rem] focus:after:content-[''] checked:focus:before:scale-100 checked:focus:before:shadow-checkbox checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:after:-mt-px checked:focus:after:ms-[0.25rem] checked:focus:after:h-[0.8125rem] checked:focus:after:w-[0.375rem] checked:focus:after:rotate-45 checked:focus:after:rounded-none checked:focus:after:border-[0.125rem] checked:focus:after:border-l-0 checked:focus:after:border-t-0 checked:focus:after:border-solid checked:focus:after:border-white checked:focus:after:bg-transparent "+(o?"":"hover:cursor-pointer"),type:"checkbox",name:`checkboxOption${t}_${n}`,id:e.id,value:r&&JSON.stringify(r[e.id]),onChange:()=>{i(e.id,!!r&&!r[e.id])},checked:r&&r[e.id]===e.value,disabled:o}),(0,g.jsx)("label",{htmlFor:o?void 0:e.id,className:o?"":"hover:cursor-pointer",children:(0,Me.capitalCase)(e.label)})]},`checkboxOption${t}_${n}`)))})};function Ie(){const[e,t]=(0,r.useState)(0);return{forceUpdate:()=>t((e=>e+1)),updatedCounter:e}}function De(e){const{modal:t,showModal:n,hideModal:o}=ce(),r=(0,a.useNavigate)(),i=(0,a.useLocation)(),{t:s}=(0,G.useTranslation)();return{safeExit:function(t,a){e[i.pathname]&&e[i.pathname].protectExit?n({id:"confirmSafeExitModal",title:`${s("common.confirmation")}`,body:`${s("common.question.confirm_not_saved_changed")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:s("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:s("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{o(),r(t,a)}}]}):r(t,a)},modal:t}}const Ae={prefix:"fas",iconName:"search",icon:[1024,1024,[],"","M393.846154 738.461538c0-15.753846-13.784615-29.538462-29.538462-29.538461h-295.384615c-15.753846 0-29.538462 13.784615-29.538462 29.538461v216.615385c0 15.753846 13.784615 29.538462 29.538462 29.538462h295.384615c15.753846 0 29.538462-13.784615 29.538462-29.538462v-216.615385zM159.507692 433.230769H63.015385c-19.692308 0-29.538462 17.723077-17.723077 27.569231l157.538461 163.446154c7.876923 5.907692 19.692308 5.907692 27.569231 0l157.538462-163.446154c11.815385-11.815385 1.969231-27.569231-17.723077-27.569231h-92.553847c0-98.461538 96.492308-196.923077 194.953847-196.923077V118.153846C295.384615 118.153846 159.507692 256 159.507692 433.230769z m663.63077-33.476923c-7.876923-5.907692-19.692308-5.907692-27.569231 0l-157.538462 163.446154c-11.815385 11.815385-1.969231 27.569231 17.723077 27.569231h94.523077c0 118.153846-80.738462 196.923077-198.892308 196.923077v118.153846c177.230769 0 317.046154-137.846154 317.046154-315.076923H964.923077c19.692308 0 29.538462-17.723077 17.723077-27.569231l-159.507692-163.446154zM984.615385 68.923077c0-15.753846-13.784615-29.538462-29.538462-29.538462h-295.384615c-15.753846 0-29.538462 13.784615-29.538462 29.538462v216.615385c0 15.753846 13.784615 29.538462 29.538462 29.538461h295.384615c15.753846 0 29.538462-13.784615 29.538462-29.538461v-216.615385z"]},Pe={prefix:"fas",iconName:"folder-open",icon:[500,490,[],"","M571.7,208.1A31.77,31.77,0,0,0,544,192H144a32,32,0,0,0-27.7,15.9l.1-.1-112,192A32.06,32.06,0,0,0,32,448H432a31.86,31.86,0,0,0,27.6-15.8l112-192A32,32,0,0,0,571.7,208.1ZM380.65,281.93H334.41c-4-25.34-11.82-46.56-21.93-60.12A101.72,101.72,0,0,1,380.65,281.93Zm-56,38.07a246,246,0,0,1-1.31,25.38H249.78A237.85,237.85,0,0,1,248.47,320a248.81,248.81,0,0,1,1.31-25.38H323.3A237.85,237.85,0,0,1,324.61,320ZM275.52,224c4.44-4.2,8.13-5.47,11-5.47s6.58,1.27,11,5.47,9.13,11.07,13.29,20.42c4.6,10.31,8.29,23.08,10.71,37.56h-70a159.87,159.87,0,0,1,10.71-37.56C266.39,235,271,228.23,275.52,224Zm-14.92-2.14c-10.11,13.56-18,34.78-21.93,60.12H192.39A101.78,101.78,0,0,1,260.6,221.81ZM185,320a101.27,101.27,0,0,1,3.21-25.38h48.82a254.24,254.24,0,0,0,0,50.76H188.23A101.27,101.27,0,0,1,185,320Zm7.37,38.07h46.28c4,25.34,11.82,46.56,21.93,60.12A101.78,101.78,0,0,1,192.39,358.07ZM297.56,416c-4.44,4.24-8.12,5.51-11,5.51s-6.58-1.27-11-5.47-9.13-11.07-13.29-20.42v0c-4.6-10.31-8.29-23.08-10.71-37.52h70a159,159,0,0,1-10.71,37.52C306.69,405,302.05,411.73,297.56,416Zm15,2.18c10.11-13.56,17.92-34.78,21.93-60.12h46.24A101.8,101.8,0,0,1,312.52,418.19Zm72.33-72.81H336a254.24,254.24,0,0,0,0-50.76h48.82a101.94,101.94,0,0,1,0,50.76ZM88.7,191.7A64,64,0,0,1,144,159.9H480v-32a64.06,64.06,0,0,0-64-64H298.6a64,64,0,0,1-45.3-18.7L226.8,18.7A64,64,0,0,0,181.5,0H64A64.06,64.06,0,0,0,0,64V343.8l88.7-152Z"]},Fe=require("react-error-boundary"),Be=require("react-toastify"),ze=i().memo((({error:e,resetErrorBoundary:t})=>{const{t:n}=(0,G.useTranslation)();return(0,g.jsxs)("div",{className:"absolute flex h-full w-full flex-col justify-center bg-primary",children:[(0,g.jsxs)("div",{className:"mx-auto flex flex-row",children:[(0,g.jsx)("div",{className:"flex items-center mr-10",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faFaceFrownOpen,className:"text-6xl"})}),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"text-2xl font-bold",children:n("error_fallback.title")}),(0,g.jsx)("div",{className:"text-xl mt-5",children:n("error_fallback.description")})]})]}),(0,g.jsx)(te,{onClick:()=>{location.reload()},className:"w-52 mt-16 mx-auto",children:n("common.restart")})]})})),Ue=i().memo((e=>(0,g.jsx)("button",{type:"button",className:`h-full w-10 p-1 ${e.className}`,id:e.id,onClick:t=>{e.onClick&&e.onClick(t)},children:(0,g.jsx)(u.FontAwesomeIcon,{icon:e.icon})}))),He=i().memo((e=>(0,g.jsxs)("nav",{"data-tauri-drag-region":!0,className:"window-titlebar window__inner-border bg-dark-primary fixed left-0 right-0 top-0 z-10 flex h-8 w-full flex-row items-center border-l-0 border-r-0 border-t-0 relative",children:[e.title&&(0,g.jsx)("div",{className:"absolute w-full text-center pointer-events-none",children:e.title}),(0,g.jsxs)("div",{"data-tauri-drag-region":!0,className:"flex basis-3/4 items-center",children:[(0,g.jsx)("img",{src:e.icon,className:"ml-2 h-5 w-5",alt:"Keadex Mina icon"}),(0,g.jsx)("div",{className:"ml-2 flex",children:(0,g.jsx)(f,{menuItemsProps:e.menuProps.menuItemsProps})})]}),(0,g.jsx)("div",{"data-tauri-drag-region":!0,className:"basis-1/4 text-right",children:function(){const t=[];if(e.rightButtonsProps&&e.rightButtonsProps.length>0)for(const n of e.rightButtonsProps)t.push((0,r.createElement)(Ue,Object.assign({},n,{key:n.id})));return t}()})]}))),We=i().memo((e=>(function(){const e=["/","`",`${Re.Key.F3}`,`${Re.Key.F4}`,`${Re.Key.F5}`,`${Re.Key.F10}`,`${Re.Key.F10}+${Re.Key.Enter}`,`${Re.Key.Alt}+D`,`${Re.Key.Alt}+F`,`${Re.Key.Alt}+${Re.Key.F4}`,`${Re.Key.Alt}+${Re.Key.Shift}+B`,`${Re.Key.Control}+B`,`${Re.Key.Control}+F`,`${Re.Key.Control}+G`,`${Re.Key.Control}+K`,`${Re.Key.Control}+P`,`${Re.Key.Control}+U`,`${Re.Key.Control}+${Re.Key.F5}`,`${Re.Key.Control}+${Re.Key.F6}`,`${Re.Key.Control}+${Re.Key.F10}`,`${Re.Key.Control}+${Re.Key.Shift}+A`,`${Re.Key.Control}+${Re.Key.Shift}+C`,`${Re.Key.Control}+${Re.Key.Shift}+E`,`${Re.Key.Control}+${Re.Key.Shift}+J`,`${Re.Key.Control}+${Re.Key.Shift}+M`,`${Re.Key.Control}+${Re.Key.Shift}+N`,`${Re.Key.Control}+${Re.Key.Shift}+O`,`${Re.Key.Control}+${Re.Key.Shift}+P`,`${Re.Key.Control}+${Re.Key.Shift}+Z`,`${Re.Key.Control}+${Re.Key.Shift}+${Re.Key.Delete}`,`${Re.Key.Control}+${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Meta}+B`,`${Re.Key.Meta}+F`,`${Re.Key.Meta}+G`,`${Re.Key.Meta}+K`,`${Re.Key.Meta}+P`,`${Re.Key.Meta}+U`,`${Re.Key.Meta}+${Re.Key.F5}`,`${Re.Key.Meta}+${Re.Key.F6}`,`${Re.Key.Meta}+${Re.Key.F10}`,`${Re.Key.Meta}+${Re.Key.Shift}+A`,`${Re.Key.Meta}+${Re.Key.Shift}+C`,`${Re.Key.Meta}+${Re.Key.Shift}+E`,`${Re.Key.Meta}+${Re.Key.Shift}+J`,`${Re.Key.Meta}+${Re.Key.Shift}+M`,`${Re.Key.Meta}+${Re.Key.Shift}+N`,`${Re.Key.Meta}+${Re.Key.Shift}+O`,`${Re.Key.Meta}+${Re.Key.Shift}+P`,`${Re.Key.Meta}+${Re.Key.Shift}+Z`,`${Re.Key.Meta}+${Re.Key.Shift}+${Re.Key.Delete}`,`${Re.Key.Meta}+${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Shift}+U`,`${Re.Key.Shift}+${Re.Key.F3}`,`${Re.Key.Shift}+${Re.Key.F4}`,`${Re.Key.Shift}+${Re.Key.F5}`,`${Re.Key.Shift}+${Re.Key.F7}`,`${Re.Key.Shift}+${Re.Key.Escape}`,`${Re.Key.Shift}+${Re.Key.Alt}+T`,`${Re.Key.Shift}+${Re.Key.Control}+\\`,`${Re.Key.Shift}+${Re.Key.Control}+D`,`${Re.Key.Shift}+${Re.Key.Meta}+\\`,`${Re.Key.Shift}+${Re.Key.Meta}+D`];(0,Te.useHotkeys)(e,(e=>{e.preventDefault()}))}(),(0,g.jsx)("div",{className:"window__border bg-primary absolute left-0 right-0 top-0 bottom-0 overflow-hidden rounded",children:e.children})))),Ke=require("@tauri-apps/api/event");var Xe=n(971);const Ge={id:"plugin:clipboard-manager",commands:{}};Ge.commands={writeText:`${Ge.id}|write_text`};const Ye={id:"plugin:shell",commands:{}};function Ze(){return{onDragDropEvent:e=>(console.debug('Web-Adapted Tauri WebView Window API "onDragDropEvent"'),Promise.resolve((()=>{}))),isMaximized:()=>(console.debug('Web-Adapted Tauri WebView Window API "isMaximized"'),Promise.resolve(!0)),listen:(e,t)=>(console.debug('Web-Adapted Tauri WebView Window API "listen"'),Promise.resolve((()=>{})))}}Ye.commands={open:`${Ye.id}|open`},window.__TAURI_IPC__=e=>{console.debug(`Web-Adapted Tauri IPC: ${e}`)},window.__TAURI_INTERNALS__={invoke:(e,t,n)=>(console.debug(`Web-Adapted Tauri Internal "invoke": ${e} - ${JSON.stringify(t)} - ${JSON.stringify(n)}`),e.startsWith("plugin:")?async function(e,t){switch(e){case Ge.commands.writeText:{const e=t;e&&navigator.clipboard.writeText(e.text);break}case Ye.commands.open:{const e=t;e&&window.open(e.path,"_blank");break}}return Promise.resolve({})}(e,t):async function(e,t){console.debug("Invoking wasm function:"),console.debug(`\t- Name: ${e}`),console.debug("\t- Args:"),console.debug(t);const n=Xe[e];if(void 0===n){const t=`Wasm function "${e}" not found`;throw console.error(t),new Error(t)}let a=[];t&&(a=Object.values(t));const o=Reflect.apply(n,void 0,a);return Promise.resolve(o)}(e,t)),transformCallback:(e,t)=>(console.debug('Web-Adapted Tauri Internal "transformCallback"'),0)};const qe=require("@tauri-apps/plugin-deep-link"),Ve=require("uuid"),Qe={AI_ENABLED:JSON.parse(!0),WEB_MODE:JSON.parse(!0),APP_VERSION:"2.10.2",GITHUB_CLIENT_ID_MINA:"Ov23li9ibfwKN6wjMwDn"},Je=["SYSTEM_CONTEXT","CONTAINER","COMPONENT","SYSTEM_LANDSCAPE","DYNAMIC","DEPLOYMENT"],et=["Person","SoftwareSystem","Container","Component"],tt=[...et,"Boundary","DeploymentNode","AddElementTag","Relationship"],nt=["Person","Person_Ext"],at=["Component","Component_Ext","ComponentDb","ComponentDb_Ext","ComponentQueue","ComponentQueue_Ext"],ot=["Container","Container_Ext","ContainerDb","ContainerDb_Ext","ContainerQueue","ContainerQueue_Ext"],rt=["System","System_Ext","SystemDb","SystemDb_Ext","SystemQueue","SystemQueue_Ext"],it=["Enterprise_Boundary","System_Boundary","Container_Boundary","Boundary"],st=["Node","Node_R","Node_L","Deployment_Node","Deployment_Node_R","Deployment_Node_L"],lt=["Rel_Neighbor","Rel_Back_Neighbor","Rel_Back","Rel_Down","Rel_D","Rel_Up","Rel_U","Rel_Left","Rel_L","Rel_Right","Rel_R","Rel","BiRel_Neighbor","BiRel_Down","BiRel_D","BiRel_Up","BiRel_U","BiRel_Left","BiRel_L","BiRel_Right","BiRel_R","BiRel"],_t=["AddElementTag"],ct=["TopToBottom","LeftToRight"],dt=["https://","http://"];let ut=function(e){return e.Alias="Alias",e}({});const gt="object:modified",mt="mouseup",bt="modified",pt="selected",ht="deselected",ft="#FFFFFF",wt="#000000",yt=12,vt=10,xt=20,jt=20,Ot=120,St=20,Et=10,Ct={SIZES:{DEFAULT_TOP:xt+St,DEFAULT_LEFT:jt+Ot+50,BORDER_WIDTH:1},FONT:{FAMILY:"Roboto"}},kt={COLORS:{BG_COLOR_SOFTWARE_SYSTEM_PERSON:"#1168BD",BG_COLOR_CONTAINER:"#438DD5",BG_COLOR_COMPONENT:"#85BBF0",BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#686868",BG_COLOR_CONTAINER_EXT:"#999999",BG_COLOR_COMPONENT_EXT:"#CCCCCC",BG_COLOR_BOUNDARY:ft,BG_COLOR_DEPLOYMENT_NODE:ft,BORDER_COLOR_SOFTWARE_SYSTEM_PERSON:"#0F5BA6",BORDER_COLOR_CONTAINER:"#3E84C7",BORDER_COLOR_COMPONENT:"#7BADDE",BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#525252",BORDER_COLOR_CONTAINER_EXT:"#8A8A8A",BORDER_COLOR_COMPONENT_EXT:"#BDBDBD",BORDER_COLOR_BOUNDARY:"#666666",BORDER_COLOR_DEPLOYMENT_NODE:"#666666",TEXT_COLOR_SOFTWARE_SYSTEM_PERSON:"#FFFFFF",TEXT_COLOR_CONTAINER:"#FFFFFF",TEXT_COLOR_COMPONENT:"#000000",TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT:"#FFFFFF",TEXT_COLOR_CONTAINER_EXT:"#FFFFFF",TEXT_COLOR_COMPONENT_EXT:"#000000",TEXT_COLOR_BOUNDARY:"#333333",TEXT_COLOR_DEPLOYMENT_NODE:"#333333"},SIZES:{WIDTH:220,MIN_HEIGHT:100,PADDING_BOTTOM:15,BORDER_RADIUS:10,TOP_LABEL:20,TOP_TAGS:5,TOP_TYPE_TECHNOLOGY:2,TOP_DESCRIPTION:25,PADDING_Y_DESCRIPTION:10},FONT:{SIZE:14,SIZE_TAG:12,SIZE_TYPE_TECHNOLOGY:12,SIZE_DESCRIPTION:10}},Nt={SIZES:{SCALE_Y_TAIL_HEAD:.3,HEAD_BOX_WIDTH:20,RADIUS_TAIL_HEAD:kt.SIZES.MIN_HEIGHT/2-Ct.SIZES.BORDER_WIDTH/2,SCALED_RADIUS_TAIL_HEAD:1/0,WIDTH_TAIL:1/0,WIDTH_HEAD:1/0}};Nt.SIZES.SCALED_RADIUS_TAIL_HEAD=Nt.SIZES.RADIUS_TAIL_HEAD*Nt.SIZES.SCALE_Y_TAIL_HEAD,Nt.SIZES.WIDTH_TAIL=Nt.SIZES.SCALED_RADIUS_TAIL_HEAD,Nt.SIZES.WIDTH_HEAD=Nt.SIZES.HEAD_BOX_WIDTH+Nt.SIZES.SCALED_RADIUS_TAIL_HEAD;const Tt={SIZES:{SCALE_X_TOP_BOTTOM:.15,TOP_BOX_HEIGHT:14,RADIUS_TOP_BOTTOM:kt.SIZES.WIDTH/2-Ct.SIZES.BORDER_WIDTH/2,SCALED_RADIUS_TOP_BOTTOM:1/0,WIDTH_TOP:1/0,WIDTH_BOTTOM:1/0}};Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM=Tt.SIZES.RADIUS_TOP_BOTTOM*Tt.SIZES.SCALE_X_TOP_BOTTOM,Tt.SIZES.WIDTH_TOP=Tt.SIZES.TOP_BOX_HEIGHT+Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM,Tt.SIZES.WIDTH_BOTTOM=Tt.SIZES.SCALED_RADIUS_TOP_BOTTOM;const Rt="rgba(0,0,0,0)",Lt="#828282",Mt="#404040",$t="#ff8f26",It=10,Dt=10,At=3,Pt=3,Ft=9,Bt=1,zt=2,Ut=90,Ht=40,Wt=45,Kt=10,Xt=10,Gt=150,Yt=80,Zt=10,qt={SIZES:{STROKE_DASH_ARRAY:[5,5]}},Vt={'"dashed"':{name:'"dashed"',value:[8,5]}};function Qt(e){return dt.some((t=>e.startsWith(t)))}function Jt(e){try{return`Open Link ${new URL(e).host.replace("www.","")}`}catch(e){return"Open Link"}}function en(e){return`<${e.toString().toUpperCase()}>`}function tn(e){return En(e)||xn(e)||vn(e)||yn(e)}function nn(e,t=!0,n){var a,o,r,i;let s,l,_,c;return e.forEach((e=>{if(e.visible){const a=e.getBoundingRect(!1,!0),o=t?e.getBoundingRect(!0,!1):a;let r=o.left,i=o.top;if(n&&r&&i){const e=fabric.util.transformPoint(new fabric.Point(r,i),n);r=e.x,i=e.y}(void 0===s||r<s)&&(s=r),void 0!==r&&void 0!==a.width&&(void 0===l||r+a.width>l)&&(l=r+a.width),(void 0===c||void 0!==i&&i<c)&&(c=i),void 0!==i&&void 0!==a.height&&(void 0===_||a.height+i>_)&&(_=i+a.height)}})),{left:s,right:l,top:c,bottom:_,width:(null!=(a=l)?a:0)-(null!=(o=s)?o:0),height:(null!=(r=_)?r:0)-(null!=(i=c)?i:0)}}function an(e,t){let n=-1;return e&&(n=e.getObjects().indexOf(t)),-1!==n?n:void 0}function on(e,t,n=Number.MAX_SAFE_INTEGER){let a=n;return t.forEach((t=>{const n=an(e,t);void 0!==n&&n<a&&(a=n)})),a!==Number.MAX_SAFE_INTEGER?a:void 0}function rn(e,t=!0){let n=[];return e&&e.forEach((e=>{(e.visible||!e.visible&&t)&&n.push(e),e.children&&(n=n.concat(rn(e.children,t)))})),n}function sn(e){let t=0,n=0;if(e){const a=e.viewportTransform;t=a?a[4]:0,n=a?a[5]:0}return{panX:t,panY:n}}function ln(e){var t;const n=e.parent,a=function(e){let t=[];const n=new Set;if(e){let a=[];e.forEach((e=>{const t=e.getVirtualGroupRoot();t&&n.add(t)})),n.forEach((e=>{var t;a=a.concat(rn(null!=(t=e.children)?t:[],!0))})),t=e.filter((e=>!a.includes(e)))}return{filteredObjects:t,virtualGroupsRoots:n}}(null==(t=e.canvas)?void 0:t.getActiveObjects());let o,r;if(a.filteredObjects.length>0||a.virtualGroupsRoots.size>1){let e=a.filteredObjects;a.virtualGroupsRoots.forEach((t=>{var n;return e=e.concat(rn(null!=(n=t.children)?n:[],!1))})),o=e,r="multiple"}else{var i;o=rn(null!=(i=null==n?void 0:n.children)?i:[],!1),r="single"}return{objects:o,type:r}}function _n(e,t){var n,a;return(null==e?void 0:e.length)===(null==t?void 0:t.length)&&(null!=(n=null==e?void 0:e.map((e=>{var t;return null!=(t=e.name)?t:"undefined"})))?n:[]).sort().join(",")===(null!=(a=null==t?void 0:t.map((e=>{var t;return null!=(t=e.name)?t:"undefined"})))?a:[]).sort().join(",")}y.fabric.ActiveSelection.prototype._controlsVisibility={tl:!0,tr:!0,br:!0,bl:!0,ml:!1,mt:!1,mr:!1,mb:!1,mtr:!1},y.fabric.Object.prototype.isVirtualGroupParent=function(){return void 0!==this.children&&this.children.length>0},y.fabric.Object.prototype.isVirtualGroupChild=function(){return void 0!==this.parent},y.fabric.Object.prototype.isVirtualGroupRoot=function(){return this.isVirtualGroupParent()&&void 0===this.parent},y.fabric.Object.prototype.isVirtualGroupLeaf=function(){return this.isVirtualGroupChild()&&!this.isVirtualGroupParent()},y.fabric.Object.prototype.isVirtualGroupBaseShape=function(){return this.isVirtualGroupChild()&&this.parent.children[0]===this},y.fabric.Object.prototype.getVirtualGroupRoot=function(){let e=this.parent;for(;e&&e.parent;)e=e.parent;return e};class cn extends y.fabric.Point{constructor(e,t,n){super(e,t),this.customType=void 0,this.data=void 0,this.customType=n}}class dn extends y.fabric.ActiveSelection{}const un=e=>"getUpdatedSpecs"in e;class gn extends y.fabric.Group{constructor(e,t,n,a,o,r,i,s,l=!1){var _,c,d,u,g,m,b,p,h,f,w;super(o,Object.assign({data:{rawDiagramElementSpec:t,rawData:e,rawAutoLayout:a},name:null!=(_=n.alias)?_:"undefined",left:void 0!==(null==t||null==(c=t.position)?void 0:c.left)?null==t||null==(d=t.position)?void 0:d.left:null==(u=n.position)?void 0:u.left,top:void 0!==(null==t||null==(g=t.position)?void 0:g.top)?null==t||null==(m=t.position)?void 0:m.top:null==(b=n.position)?void 0:b.top,scaleX:void 0!==(null==t||null==(p=t.size)?void 0:p.scale_x)?null==t||null==(h=t.size)?void 0:h.scale_x:1,scaleY:void 0!==(null==t||null==(f=t.size)?void 0:f.scale_y)?null==t||null==(w=t.size)?void 0:w.scale_y:1},r)),this.parent=i,this.children=null!=s?s:[],this.setControlsVisibility({mb:!1,ml:!1,mr:!1,mt:!1,mtr:!1}),l||this.on(mt,(e=>{var t;this.onComponentMouseUp(null==(t=e.target)?void 0:t.canvas,e,this)}))}getUpdatedSpecs(){var e,t;null==(e=this.canvas)||e.discardActiveObject();const n=null==(t=this.data)?void 0:t.rawDiagramElementSpec;if(n){var a,o,r,i,s,l,_,c,d,u,g,m,b,p,h,f;const e=(w=n,L()(w));return e.position={left:null!=(a=this.left)?a:null==(o=n.position)?void 0:o.left,top:null!=(r=this.top)?r:null==(i=n.position)?void 0:i.top,z_index:null!=(s=an(this.canvas,this))?s:null==(l=n.position)?void 0:l.z_index,angle:null!=(_=this.angle)?_:null==(c=n.position)?void 0:c.angle},e.size={width:null!=(d=this.width)?d:null==(u=n.size)?void 0:u.width,height:null!=(g=this.height)?g:null==(m=n.size)?void 0:m.height,scale_x:null!=(b=this.scaleX)?b:null==(p=n.size)?void 0:p.scale_x,scale_y:null!=(h=this.scaleY)?h:null==(f=n.size)?void 0:f.scale_y},e}var w}onComponentMouseUp(e,t,n,a){if(e)switch(t.e.preventDefault(),t.button){case 3:{e.setActiveObject(n),e.renderAll();const o=e.contextTop,r=y.fabric.util.getPointer(t.e,o.canvas),i=new CustomEvent("contextmenu",{detail:{sourceEvent:t,pageX:r.x,pageY:r.y,menuItems:null!=a?a:mn(e,t,n)}});document.dispatchEvent(i);break}}}}const mn=(e,t,n,a=!0)=>{var o,r,i,s;const l=[],_=n instanceof dn?n.parent:n,c=null==_?void 0:_.data,d=null==c||null==(o=c.rawDiagramElementSpec)?void 0:o.element_type,u=null==c||null==(r=c.rawData)||null==(r=r.base_data)||null==(r=r.link)?void 0:r.split(";"),g=e.isReadOnly(),m=e.codingFeaturesEnabled,b=void 0!==d&&u&&u.length>0&&void 0!==tn(d);let p=0,h=null==_?void 0:_.parent;for(;h;){var f;p++,h=null==(f=h)?void 0:f.parent}return b&&u.forEach(((t,n)=>{const a=t.replace(/ /gi,"");a.length>0&&(Qt(a)?l.push({isHeaderMenuItem:!1,id:`openLink${n}`,label:Jt(a),onClick:()=>{e.diagramListener&&e.diagramListener.onOpenExternalLinkClick(function(e,t){let n=`${e}`;for(const e in ut){var a;e===ut.Alias.toString()&&n.includes(en(ut.Alias))&&null!=t&&null!=(a=t.base_data)&&a.alias&&(n=n.replace(new RegExp(en(ut.Alias),"gi"),t.base_data.alias))}return n}(a,null==c?void 0:c.rawData))}}):l.push({isHeaderMenuItem:!1,id:"openDiagram",label:"Open Diagram",onClick:()=>{e.diagramListener&&e.diagramListener.onOpenDiagramClick(a)}}))})),m&&null!=c&&c.rawData&&null!=(i=c.rawDiagramElementSpec)&&i.element_type&&l.push({isHeaderMenuItem:!1,id:"selectDiagramElementCode",label:"Select code",onClick:()=>{var t;null!=(t=e.diagramListener)&&t.onSelectElementCode&&e.diagramListener.onSelectElementCode(c.rawData,c.rawDiagramElementSpec.element_type,p)}}),!g&&(b||m&&null!=c&&c.rawData&&null!=(s=c.rawDiagramElementSpec)&&s.element_type)&&l.push({id:"separatorCommon",isSepator:!0}),g||l.push({isHeaderMenuItem:!1,id:"bringToFront",label:"Bring to Front",onClick:()=>{var e;n.bringToFront(),null==(e=n.canvas)||e.fire(gt)}},{isHeaderMenuItem:!1,id:"bringForward",label:"Bring Forward",onClick:()=>{var e;n.bringForward(),null==(e=n.canvas)||e.fire(gt)}},{isHeaderMenuItem:!1,id:"sentToBack",label:"Send to Back",onClick:()=>bn(n)},{isHeaderMenuItem:!1,id:"sendBackwards",label:"Send Backwards",onClick:()=>pn(n)}),a?[{isHeaderMenuItem:!0,id:"baseComponentContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:l}]:l},bn=e=>{var t;e.parent||(e.sendToBack(),null==(t=e.canvas)||t.fire(gt))},pn=e=>{if(e instanceof dn){var t,n,a;const r=e.parent,i=on(e.canvas,null!=(t=null==r?void 0:r.children)?t:[]),s=on(e.canvas,null!=(n=null==r||null==(a=r.parent)?void 0:a.children)?n:[]);var o;void 0===s||void 0===i||i-1>s?(e.sendBackwards(),null==(o=e.canvas)||o.fire(gt)):console.debug(`cannot send backwards ${i} ${s}`)}else{var r,i;const t=an(e.canvas,e),n=on(e.canvas,null!=(r=null==(i=e.parent)?void 0:i.children)?r:[]);var s;void 0===n||void 0===t||t-1>n?(e.sendBackwards(),null==(s=e.canvas)||s.fire(gt)):console.debug(`cannot send backwards ${t} ${n}`)}},hn=(e,t,n,a,o)=>fn(e,t,n,a,o.elements_specs)||wn(e,t,n,a),fn=(e,t,n,a,o)=>{for(let r=0;r<o.length;r++){const i=o[r],s=i.alias===e,l=M(i.element_type,a);if(s&&l)return i;if(i.inner_specs){const o=i.inner_specs,r=fn(e,t,n,a,o);if(r)return r}}},wn=(e,t,n,a)=>({alias:e,from:t,to:n,element_type:a}),yn=e=>{if("Boundary"in e)return e.Boundary},vn=e=>{if("Component"in e)return e.Component},xn=e=>{if("Container"in e)return e.Container},jn=e=>{if("DeploymentNode"in e)return e.DeploymentNode},On=e=>{if("Person"in e)return e.Person},Sn=e=>{if("Relationship"in e)return e.Relationship},En=e=>{if("SoftwareSystem"in e)return e.SoftwareSystem},Cn=e=>(0,Me.capitalCase)((0,Me.noCase)(e)),kn=e=>(0,Me.capitalCase)((0,Me.noCase)(e)),Nn=e=>c()((0,Me.kebabCase)((0,Me.noCase)(e))),Tn=(e,t)=>{var n,a,o;return e&&null!=(n=t[e])&&n.position?{left:null==(a=t[e].position)?void 0:a.x,top:null==(o=t[e].position)?void 0:o.y}:{left:Ct.SIZES.DEFAULT_LEFT,top:Ct.SIZES.DEFAULT_TOP}};function Rn(e){return btoa(e)}const Ln="_margin_hack";function Mn(e,t,n){return 2===n.length?n.map(((n,a)=>{const o=function(e,t=96){return Number.parseFloat((e*t).toFixed(2))}(0===a?e.x:e.y);return function(e,t=96){return Number.parseFloat((e*(t/72)).toFixed(2))}(0===a?n:t-n,$n)+o})):n}const $n=96,In=I(Ct.SIZES.DEFAULT_LEFT),Dn=I(Ct.SIZES.DEFAULT_TOP),An=4.5;function Pn(e){const t={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT+2*Wt},n={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT},a={x:kt.SIZES.WIDTH+Nt.SIZES.WIDTH_TAIL+Nt.SIZES.WIDTH_HEAD,y:kt.SIZES.MIN_HEIGHT},o={x:kt.SIZES.WIDTH,y:kt.SIZES.MIN_HEIGHT+Tt.SIZES.WIDTH_TOP+Tt.SIZES.WIDTH_BOTTOM};if(On(e))return t;if(En(e)){const t=En(e);return"SystemDb"===t.system_type||"SystemDb_Ext"===t.system_type?o:"SystemQueue"===t.system_type||"SystemQueue_Ext"===t.system_type?a:n}if(xn(e)){const t=xn(e);return"ContainerDb"===t.container_type||"ContainerDb_Ext"===t.container_type?o:"ContainerQueue"===t.container_type||"ContainerQueue_Ext"===t.container_type?a:n}if(vn(e)){const t=vn(e);return"ComponentDb"===t.component_type||"ComponentDb_Ext"===t.component_type?o:"ComponentQueue"===t.component_type||"ComponentQueue_Ext"===t.component_type?a:n}return{x:100,y:100}}function Fn(e,t,n,a,o){return`\n subgraph "${r=e,`${r}${Ln}`}" {\n cluster=true\n margin="${o}"\n fontsize="0pt"\n label=""\n subgraph "${e}" {\n cluster=true\n margin="${a}"\n label=" "\n labelloc="b"\n fontsize="17pt"\n "${e}" [peripheries=0, height=0, width=0, label=""] // invisible node that is used as a workaround to let the connection between nodes and subgraphs\n ${Bn(t,n,a,o)}\n }\n }\n `;var r}function Bn(e,t,n,a){let o="";for(const l of e){const e=Pn(l);let _;if(On(l))_=On(l).base_data.alias;else if(En(l))_=En(l).base_data.alias;else if(xn(l))_=xn(l).base_data.alias;else if(vn(l))_=vn(l).base_data.alias;else if(yn(l)){const e=yn(l);_=e.base_data.alias,_&&(t.add(_),o=o.concat(Fn(_,e.sub_elements,t,n,a))),_=void 0}else if(jn(l)){const e=jn(l);_=e.base_data.alias,_&&(t.add(_),o=o.concat(Fn(_,e.sub_elements,t,n,a))),_=void 0}else if(Sn(l)){const e=Sn(l);var r,i;e.from&&e.to&&(o=o.concat(`\n"${e.from}" -> "${e.to}" [name="${e.base_data.alias}", xlabel="${s=[null!=(r=e.base_data.label)?r:"",null!=(i=e.technology)?i:""],s.sort(((e,t)=>t.length-e.length))[0]}", ltail="${e.from}", lhead="${e.to}", fontsize="${It}", keadex_fromissubgraph=${t.has(e.from)}, keadex_toissubgraph=${t.has(e.to)}]`)),_=void 0}_&&(o=o.concat(`\n"${_}" [width=${I(e.x,$n)}, height=${I(e.y,$n)}, peripheries=2]`))}var s;return o}const zn=require("@hpcc-js/wasm-graphviz");function Un(e){if(e)return Vt[e]}const Hn="legend",Wn=(e,t,n,a,o,r)=>{var i,s,l;const _=[],c=n?1:0,d=new y.fabric.Rect({fill:t,stroke:n,strokeWidth:c,strokeDashArray:a,left:jt,top:xt+St*r,width:Ot-c,height:St-c});_.push(d);const u=new y.fabric.Text(e,{fill:o,fontFamily:Ct.FONT.FAMILY,fontSize:vt,fontWeight:"normal",textAlign:"left",originX:"left",originY:"top",left:jt+Et});return u.top=(null!=(i=d.top)?i:0)+(null!=(s=d.height)?s:0)/2-(null!=(l=u.height)?l:0)/2,_.push(u),_},Kn=(e,t)=>{var n,a,o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E,C,k,N,T,R,L,M,$,I,D;let A=[];const P=new y.fabric.Text("LEGEND",{fill:wt,fontFamily:Ct.FONT.FAMILY,fontSize:yt,fontWeight:"bold",textAlign:"left",originX:"left",originY:"top",left:jt,top:xt});A.push(P),A=A.concat(Wn("Person",null!=(n=null==t||null==(a=t.diagramsThemeSettings)?void 0:a.bg_color_person)?n:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,void 0,void 0,null!=(o=null==t||null==(r=t.diagramsThemeSettings)?void 0:r.text_color_person)?o:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,1)),A=A.concat(Wn("Person External",null!=(i=null==t||null==(s=t.diagramsThemeSettings)?void 0:s.bg_color_person_ext)?i:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,void 0,void 0,null!=(l=null==t||null==(_=t.diagramsThemeSettings)?void 0:_.text_color_person_ext)?l:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,2)),A=A.concat(Wn("System",null!=(c=null==t||null==(d=t.diagramsThemeSettings)?void 0:d.bg_color_software_system)?c:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,void 0,void 0,null!=(u=null==t||null==(g=t.diagramsThemeSettings)?void 0:g.text_color_software_system)?u:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,3)),A=A.concat(Wn("System External",null!=(m=null==t||null==(b=t.diagramsThemeSettings)?void 0:b.bg_color_software_system_ext)?m:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,void 0,void 0,null!=(p=null==t||null==(h=t.diagramsThemeSettings)?void 0:h.text_color_software_system_ext)?p:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,4)),A=A.concat(Wn("Container",null!=(f=null==t||null==(w=t.diagramsThemeSettings)?void 0:w.bg_color_container)?f:kt.COLORS.BG_COLOR_CONTAINER,void 0,void 0,null!=(v=null==t||null==(x=t.diagramsThemeSettings)?void 0:x.text_color_container)?v:kt.COLORS.TEXT_COLOR_CONTAINER,5)),A=A.concat(Wn("Container External",null!=(j=null==t||null==(O=t.diagramsThemeSettings)?void 0:O.bg_color_container_ext)?j:kt.COLORS.BG_COLOR_CONTAINER_EXT,void 0,void 0,null!=(S=null==t||null==(E=t.diagramsThemeSettings)?void 0:E.text_color_container_ext)?S:kt.COLORS.TEXT_COLOR_CONTAINER_EXT,6)),A=A.concat(Wn("Component",null!=(C=null==t||null==(k=t.diagramsThemeSettings)?void 0:k.bg_color_component)?C:kt.COLORS.BG_COLOR_COMPONENT,void 0,void 0,null!=(N=null==t||null==(T=t.diagramsThemeSettings)?void 0:T.text_color_component)?N:kt.COLORS.TEXT_COLOR_COMPONENT,7)),A=A.concat(Wn("Component External",null!=(R=null==t||null==(L=t.diagramsThemeSettings)?void 0:L.bg_color_component_ext)?R:kt.COLORS.BG_COLOR_COMPONENT_EXT,void 0,void 0,null!=(M=null==t||null==($=t.diagramsThemeSettings)?void 0:$.text_color_component_ext)?M:kt.COLORS.TEXT_COLOR_COMPONENT_EXT,8));let F=8;var B,z,U,H;null!=t&&null!=(I=t.diagramsThemeSettings)&&I.bg_color_boundary&&(F++,A=A.concat(Wn("Boundary",t.diagramsThemeSettings.bg_color_boundary,void 0,void 0,null!=(B=null==t||null==(z=t.diagramsThemeSettings)?void 0:z.text_color_boundary)?B:kt.COLORS.TEXT_COLOR_BOUNDARY,F))),null!=t&&null!=(D=t.diagramsThemeSettings)&&D.bg_color_deployment_node&&(F++,A=A.concat(Wn("Deployment Node",t.diagramsThemeSettings.bg_color_deployment_node,void 0,void 0,null!=(U=null==t||null==(H=t.diagramsThemeSettings)?void 0:H.text_color_deployment_node)?U:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE,F))),null!=t&&t.tags&&Object.entries(t.tags).forEach((([e,t],n)=>{var a,o,r,i,s;F++,A=A.concat(Wn(null!=(a=null!=(o=t.legend_text)?o:t.tag)?a:"<no tag>",t.bg_color,null!=(r=t.border_color)?r:t.bg_color?void 0:"black",null==(i=Un(t.border_style))?void 0:i.value,null!=(s=t.font_color)?s:"black",F))}));return new gn(void 0,e,{alias:Hn,position:{left:jt,top:xt}},{},A)},Xn="The diagram contains too many elements and relationships, which may cause the auto layout to break. Try adjusting auto layout settings like orientation, ranksep or subgraph margins.",Gn="Graphviz not initialized. Cannot generate auto layout.",Yn="triangulation failed";function Zn(e){return null==e?void 0:e.split("+")}function qn(e,t){if(e&&t){const n=[];for(const a of e){const e=t[Rn(a)];e&&n.push(e)}if(n.length>0)return Object.assign({},...n)}}let Vn=function(e){return e.Rectangle="RECTANGLE",e.Footer="FOOTER",e}({});class Qn extends gn{getUpdatedSpecs(){const e=super.getUpdatedSpecs();var t;if(e&&(null==(t=this.canvas)||t.discardActiveObject(),delete e.position,delete e.size,e.inner_specs=[],e.shapes=[],this.children))for(const t of this.children)if(un(t)){const n=t.getUpdatedSpecs();n&&e.inner_specs.push(n)}else if(t.name!==Vn.Footer){var n,a;e.shapes.push({position:{left:t.left,top:t.top,z_index:an(t.canvas,t)},size:{scale_x:null!=(n=t.scaleX)?n:1,scale_y:null!=(a=t.scaleY)?a:1},shape_type:t.name})}else e.shapes.push({position:{z_index:an(t.canvas,t)},shape_type:t.name});return e}}const Jn=e=>{var t,n,a,o,r,i,s,l,_,c,d;let u,g;const m=(null==(t=e.data)||null==(t=t.rawData)||null==(t=t.base_data)?void 0:t.alias)&&e.data.rawAutoLayout&&void 0!==e.data.rawAutoLayout[e.data.rawData.base_data.alias],b=[];null==(n=e.children)||n.forEach((e=>{e.name===Vn.Footer?g=e:e.name===Vn.Rectangle?u=e:b.push(e)}));const p=nn(rn(b),!1),h=null!=(a=null==(o=u)?void 0:o.scaleX)?a:1,f=null!=(r=null==(i=u)?void 0:i.scaleY)?r:1,w=null!=(s=null==(l=u)||null==(l=l.canvas)?void 0:l.getZoom())?s:1,y=sn(e.canvas),v=Zt*h,x=Zt*f,j=Zt*h,O=Zt*f;var S;u&&void 0!==p.left&&void 0!==p.right&&void 0!==p.top&&void 0!==p.bottom&&void 0!==p.width&&void 0!==p.height&&void 0!==g?(p.left=(p.left-y.panX)/w,p.top=(p.top-y.panY)/w,p.right=(p.right-y.panX)/w,p.bottom=(p.bottom-y.panY)/w,p.width=p.right-p.left,p.height=p.bottom-p.top,m||(u.width=p.width/h+v/h*2,u.height=p.height/f+x/f*3+(null!=(S=g.height)?S:0),u.left=p.left-v,u.top=p.top-x)):u&&void 0!==g&&(u.width=Gt,u.height=Yt+g.getScaledHeight()),null==(_=e.canvas)||_.renderAll(),u&&g&&void 0!==u.left&&void 0!==u.top&&void 0!==u.height&&void 0!==g.height&&(g.top=u.top+u.getScaledHeight()-g.getScaledHeight()-O,g.left=u.left+j),null==(c=u)||c.setCoords(),null==(d=g)||d.setCoords()},ea=e=>{e.on(pt,(t=>{na(t,e)}))},ta=e=>{e.on(pt,(t=>{na(t,e)}))},na=(e,t)=>{var n;if(e.e&&null!=(n=t.parent)&&n.children){var a;const e=ln(t);if(!_n(null==(a=t.canvas)?void 0:a.getActiveObjects(),e.objects)){var o,r,i;null==(o=t.canvas)||o.discardActiveObject();const n=t.parent;let a;"multiple"===e.type?a=new y.fabric.ActiveSelection(e.objects,{canvas:t.canvas}):(a=new dn(e.objects,{canvas:t.canvas}),a.parent=n,a.on(mt,(e=>{oa(a.canvas,e,a,n)})),a.on(bt,(e=>{var a;null==(a=t.canvas)||a.discardActiveObject(),n.fire(bt)}))),null==(r=t.canvas)||r.setActiveObject(a),null==(i=t.canvas)||i.requestRenderAll()}}},aa=(e,t)=>{e&&t&&Jn(e)},oa=(e,t,n,a)=>{n instanceof y.fabric.ActiveSelection&&e&&a.onComponentMouseUp(e,t,n,((e,t,n)=>n instanceof y.fabric.ActiveSelection?[{isHeaderMenuItem:!0,id:"baseElasticContainerContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:[...mn(e,t,n,!1)]}]:[])(e,t,n))},ra=(e,t,n,a,o,r)=>{var i,s;const l=qn(Zn(null==(i=e.base_data)?void 0:i.tags),null==r?void 0:r.tags),_={alias:null==(s=e.base_data)?void 0:s.alias},c=new Qn(e,t,_,a,[],void 0,void 0,void 0,!0);c.visible=!1;const u=((e,t,n,a,o)=>{var r,i,s,l,_,c,d,u,g,m,b,p;const h=null==e||null==(r=e.shapes)?void 0:r.filter((e=>e.shape_type===Vn.Rectangle))[0],f=new y.fabric.Rect({fill:null!=(i=null==o?void 0:o.bg_color)?i:n.bgColor,stroke:null!=(s=null==o?void 0:o.border_color)?s:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,strokeDashArray:n.strokeDashArray,left:null!=(l=null==h||null==(_=h.position)?void 0:_.left)?l:Tn(e.alias,t).left,top:null!=(c=null==h||null==(d=h.position)?void 0:d.top)?c:Tn(e.alias,t).top,name:Vn.Rectangle,rx:kt.SIZES.BORDER_RADIUS,ry:kt.SIZES.BORDER_RADIUS,scaleX:null!=(u=null==h||null==(g=h.size)?void 0:g.scale_x)?u:1,scaleY:null!=(m=null==h||null==(b=h.size)?void 0:b.scale_y)?m:1}),w=((e,t)=>{var n,a,o;if(e&&null!=(n=t[e])&&n.size)return{width:null==(a=t[e].size)?void 0:a.x,height:null==(o=t[e].size)?void 0:o.y}})(e.alias,t);return w&&(f.width=w.width,f.height=w.height),f.data={rawDiagramElementSpec:h},f.parent=a,ea(f),null==(p=a.children)||p.push(f),f})(t,a,o,c,l);((e,t,n,a,o,r,i)=>{var s,l,_,c,u,g,m,b,p,h,f;const w=null==e||null==(s=e.shapes)?void 0:s.filter((e=>e.shape_type===Vn.Footer))[0],v=[],x={fontFamily:Ct.FONT.FAMILY,fill:null!=(l=null==i?void 0:i.font_color)?l:n.textColor};let j;var O;let S;var E,C;null!=(_=a.base_data)&&_.link&&(j=new y.fabric.Path(d.faLink.icon[4].toString(),{fill:null!=(O=null==i?void 0:i.font_color)?O:n.textColor,opacity:1,originX:"left",originY:"top",top:1,left:0}),j.scaleToWidth(10),v.push(j)),null!=(c=a.base_data)&&c.label&&(S=new y.fabric.Text(a.base_data.label,Object.assign({},x,{fontSize:Kt,fontWeight:"bold"})),S.top=0,S.left=null!=(E=j)&&E.getScaledWidth()?(null==(C=j)?void 0:C.getScaledWidth())+3:0,v.push(S));let k=null!=(u=null!=(g=a.boundary_type)?g:a.deployment_node_type)?u:"";k=null!=(m=null!=(b=a.boundary_custom_type)?b:a.deploymeny_node_custom_type)?m:k,k+=a.technology?`: ${a.technology}`:"",k=`[${k}]`;const N=new y.fabric.Text(k,Object.assign({},x,{fontSize:Xt,left:0,top:null!=(p=null==(h=S)?void 0:h.height)?p:0}));v.push(N);const T=new y.fabric.Group(v,{name:Vn.Footer,selectable:!1,evented:!1,left:o.left,top:o.top,scaleX:o.scaleX,scaleY:o.scaleY});T.data={rawDiagramElementSpec:w},T.parent=r,ta(T),null==(f=r.children)||f.push(T)})(t,0,o,e,u,c,l);let g=[];return e.sub_elements&&(g=Fa(void 0,e.sub_elements,n,a,Object.assign({},r,{skipAddToCanvas:!0,skipLegendRendering:!0})),g.forEach((e=>{var t;e.parent=c,null==(t=c.children)||t.push(e)}))),Jn(c),(e=>{var t;null==(t=e.children)||t.forEach((t=>{t.on(bt,(t=>{aa(e,t)})),t.children&&t.children.forEach((t=>{t.on(bt,(t=>{aa(e,t)}))}))}))})(c),c},ia=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.base_data.label&&t.boundary_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a,o,r)=>{var i,s,l,_,c,d;const u={bgColor:null!=(i=null==r||null==(s=r.diagramsThemeSettings)?void 0:s.bg_color_boundary)?i:kt.COLORS.BG_COLOR_BOUNDARY,borderColor:null!=(l=null==r||null==(_=r.diagramsThemeSettings)?void 0:_.border_color_boundary)?l:kt.COLORS.BORDER_COLOR_BOUNDARY,textColor:null!=(c=null==r||null==(d=r.diagramsThemeSettings)?void 0:d.text_color_boundary)?c:kt.COLORS.TEXT_COLOR_BOUNDARY,strokeDashArray:qt.SIZES.STROKE_DASH_ARRAY},g=Object.assign({},u,o);return ra(e,t,n,a,g,r)})(t,hn(t.base_data.alias,void 0,void 0,{Boundary:t.boundary_type},n),n,a,void 0,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...rn(null!=(r=i.children)?r:[])),i}},sa=(e,t,n,a,o)=>{var r,i,s,l,_,c;const u=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),g=[],m=((e,t,n)=>{var a,o,r,i,s,l,_;const c=new y.fabric.Rect({fill:null!=(a=null==n?void 0:n.bg_color)?a:t.bgColor,stroke:null!=(o=null==n?void 0:n.border_color)?o:t.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,left:Ct.SIZES.DEFAULT_LEFT,top:Ct.SIZES.DEFAULT_TOP,width:null!=(r=t.widthBox)?r:kt.SIZES.WIDTH,height:kt.SIZES.MIN_HEIGHT,name:null!=(i=null==(s=e.base_data)?void 0:s.alias)?i:"undefined",rx:null!=(l=t.borderRadius)?l:kt.SIZES.BORDER_RADIUS,ry:null!=(_=t.borderRadius)?_:kt.SIZES.BORDER_RADIUS});return c.on("scaling",(e=>{var t;null!=(t=e.target)&&t.width&&e.target.height&&e.target.scaleX&&e.target.scaleY&&e.target.set({width:e.target.width*e.target.scaleX,height:e.target.height*e.target.scaleY,scaleX:1,scaleY:1})})),c})(e,a,u);let b;g.push(m),null!=(i=e.base_data)&&i.tags&&(b=((e,t,n,a)=>{var o,r,i,s,l;return new y.fabric.Text(`«${null==(o=t.base_data)?void 0:o.tags}»`,{fill:null!=(r=null==a?void 0:a.font_color)?r:n.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_TAG,fontStyle:"italic",fontWeight:"normal",textAlign:"center",originX:"center",originY:"top",left:(null!=(i=e.left)?i:Ct.SIZES.DEFAULT_LEFT)+(null!=(s=e.width)?s:0)/2,top:(null!=(l=e.top)?l:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_TAGS})})(m,e,a,u),g.push(b));const p=((e,t,n,a,o)=>{var r,i,s,l,_,c;return new y.fabric.Text(null!=(r=$(null==(i=n.base_data)?void 0:i.label))?r:"undefined",{fill:null!=(s=null==o?void 0:o.font_color)?s:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE,fontWeight:"bold",textAlign:"center",originX:"center",originY:"top",left:(null!=(l=e.left)?l:Ct.SIZES.DEFAULT_LEFT)+(null!=(_=e.width)?_:0)/2,top:(null!=(c=null==t?void 0:t.top)?c:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_LABEL})})(m,b,e,a,u);g.push(p);const h=((e,t,n,a,o)=>{var r,i,s,l,_,c,d,u,g,m,b,p;const h=`[${null!=(r=null!=(i=null!=(s=null!=(l=null!=(_=null!=(c=null!=(d=n.boundary_custom_type)?d:n.boundary_type)?c:n.component_type)?_:n.container_type)?l:n.deployment_node_type)?s:n.deploymeny_node_custom_type)?i:n.person_type)?r:n.system_type}${n.technology?`: ${n.technology}`:""}]`;return new y.fabric.Text(h,{fill:null!=(u=null==o?void 0:o.font_color)?u:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_TYPE_TECHNOLOGY,fontWeight:"normal",textAlign:"center",originX:"center",originY:"top",left:(null!=(g=e.left)?g:Ct.SIZES.DEFAULT_LEFT)+(null!=(m=e.width)?m:0)/2,top:(null!=(b=null==t?void 0:t.top)?b:Ct.SIZES.DEFAULT_TOP)+kt.SIZES.TOP_TYPE_TECHNOLOGY+(null!=(p=null==t?void 0:t.height)?p:0)})})(m,p,e,a,u);let f;g.push(h),null!=(s=e.base_data)&&s.description&&(f=((e,t,n,a,o)=>{var r,i,s,l,_,c,d;const u=null!=(r=a.widthDescription)?r:e.width;return new y.fabric.Textbox(null!=(i=$(null==(s=n.base_data)?void 0:s.description))?i:"",{fill:null!=(l=null==o?void 0:o.font_color)?l:a.textColor,fontFamily:Ct.FONT.FAMILY,fontSize:kt.FONT.SIZE_DESCRIPTION,fontWeight:400,opacity:.7,splitByGrapheme:!0,width:u?u-kt.SIZES.PADDING_Y_DESCRIPTION:0,textAlign:"center",originX:"center",originY:"top",left:(null!=(_=e.left)?_:Ct.SIZES.DEFAULT_LEFT)+(null!=(c=e.width)?c:0)/2,top:(null!=(d=null==t?void 0:t.top)?d:0)+kt.SIZES.TOP_DESCRIPTION})})(m,h,e,a,u),g.push(f)),null!=(l=e.base_data)&&l.link&&g.push(((e,t,n)=>{var a,o,r;const i=new y.fabric.Path(d.faLink.icon[4].toString(),{fill:null!=(a=null==n?void 0:n.font_color)?a:t.textColor,opacity:1,originX:"left",originY:"top",left:(null!=(o=e.left)?o:0)+5,top:(null!=(r=e.top)?r:0)+5});return i.scaleToWidth(10),i})(m,a,u)),((e,t)=>{var n,a,o;let r=(null!=(n=null==t?void 0:t.height)?n:0)+((null!=(a=null==t?void 0:t.top)?a:0)-(null!=(o=null==e?void 0:e.top)?o:0))+kt.SIZES.PADDING_BOTTOM;r<kt.SIZES.MIN_HEIGHT&&(r=kt.SIZES.MIN_HEIGHT),e.height=r})(m,f);const w={alias:null==(_=e.base_data)?void 0:_.alias,position:Tn(null==(c=e.base_data)?void 0:c.alias,n)};return new gn(e,t,w,n,g)},la=(e,t,n,a,o)=>{var r,i,s,l;const _=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),c=[],d=((e,t,n)=>{const a=Object.assign({},t,{borderRadius:0});return sa(e,{},{},a,n)})(e,a,o);c.push(d);const u=(null!=(i=d.width)?i:0)/2-Ct.SIZES.BORDER_WIDTH/2;c.push(((e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E;const C=[],k=Ct.SIZES.BORDER_WIDTH,N=Tt.SIZES.TOP_BOX_HEIGHT,T=new y.fabric.Rect({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,strokeWidth:0,left:(null!=(r=e.left)?r:0)+Ct.SIZES.BORDER_WIDTH,top:(null!=(i=e.top)?i:0)-N+k,width:(null!=(s=e.width)?s:0)-2*Ct.SIZES.BORDER_WIDTH,height:N});return C.push(T),C.push(new y.fabric.Line([null!=(l=e.left)?l:0,null!=(_=e.top)?_:0,null!=(c=e.left)?c:0,null!=(d=T.top)?d:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(u=null==a?void 0:a.border_color)?u:n.borderColor,originX:"left",originY:"top"})),C.push(new y.fabric.Line([(null!=(g=e.left)?g:0)+(null!=(m=e.width)?m:0)-Ct.SIZES.BORDER_WIDTH,null!=(b=e.top)?b:0,(null!=(p=e.left)?p:0)+(null!=(h=e.width)?h:0)-Ct.SIZES.BORDER_WIDTH,null!=(f=T.top)?f:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(w=null==a?void 0:a.border_color)?w:n.borderColor,originX:"left",originY:"top"})),C.push(new y.fabric.Circle({fill:null!=(v=null==a?void 0:a.bg_color)?v:n.bgColor,stroke:null!=(x=null==a?void 0:a.border_color)?x:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:(null!=(j=T.top)?j:0)-(null!=(O=e.width)?O:0)*Tt.SIZES.SCALE_X_TOP_BOTTOM/2,left:(null!=(S=T.left)?S:0)+ +(null!=(E=e.width)?E:0)-k,angle:90,startAngle:0,endAngle:360,scaleX:Tt.SIZES.SCALE_X_TOP_BOTTOM})),new y.fabric.Group(C)})(d,u,a,_)),c.push(((e,t,n,a)=>{var o,r,i,s,l,_;return new y.fabric.Circle({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,stroke:null!=(r=null==a?void 0:a.border_color)?r:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:(null!=(i=e.top)?i:0)+(null!=(s=e.height)?s:0)-2*t*Tt.SIZES.SCALE_X_TOP_BOTTOM/2-Ct.SIZES.BORDER_WIDTH,left:(null!=(l=e.left)?l:0)+(null!=(_=e.width)?_:0),angle:90,startAngle:270,endAngle:90,scaleX:Tt.SIZES.SCALE_X_TOP_BOTTOM})})(d,u,a,_));const g={alias:null==(s=e.base_data)?void 0:s.alias,position:Tn(null==(l=e.base_data)?void 0:l.alias,n)};return new gn(e,t,g,n,c)},_a=(e,t,n,a,o)=>{var r,i,s,l;const _=qn(Zn(null==(r=e.base_data)?void 0:r.tags),null==o?void 0:o.tags),c=[],d=ca(e,a,o);c.push(d);const u=(null!=(i=d.height)?i:0)/2-Ct.SIZES.BORDER_WIDTH/2;c.push(da(d,u,a,_)),c.push(ua(d,u,a,_));const g={alias:null==(s=e.base_data)?void 0:s.alias,position:Tn(null==(l=e.base_data)?void 0:l.alias,n)};return new gn(e,t,g,n,c)},ca=(e,t,n)=>{const a=Object.assign({},t,{borderRadius:0});return sa(e,{},{},a,n)},da=(e,t,n,a)=>{var o,r,i;return new y.fabric.Circle({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,stroke:null!=(r=null==a?void 0:a.border_color)?r:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:e.top,left:(null!=(i=e.left)?i:0)+2*t*Nt.SIZES.SCALE_Y_TAIL_HEAD/2+2*Ct.SIZES.BORDER_WIDTH,angle:90,startAngle:0,endAngle:180,scaleY:Nt.SIZES.SCALE_Y_TAIL_HEAD})},ua=(e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b,p,h,f,w,v,x,j,O,S,E,C,k;const N=[],T=Ct.SIZES.BORDER_WIDTH,R=new y.fabric.Rect({fill:null!=(o=null==a?void 0:a.bg_color)?o:n.bgColor,strokeWidth:0,left:(null!=(r=e.left)?r:0)+(null!=(i=e.width)?i:0)-T,top:(null!=(s=e.top)?s:0)+Ct.SIZES.BORDER_WIDTH,width:Nt.SIZES.HEAD_BOX_WIDTH,height:(null!=(l=e.height)?l:0)-2*Ct.SIZES.BORDER_WIDTH});return N.push(R),N.push(new y.fabric.Line([null!=(_=R.left)?_:0,null!=(c=e.top)?c:0,(null!=(d=R.left)?d:0)+(null!=(u=R.width)?u:0),null!=(g=e.top)?g:0],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(m=null==a?void 0:a.border_color)?m:n.borderColor,originX:"left",originY:"top"})),N.push(new y.fabric.Line([null!=(b=R.left)?b:0,(null!=(p=R.top)?p:0)+(null!=(h=R.height)?h:0),(null!=(f=R.left)?f:0)+(null!=(w=R.width)?w:0),(null!=(v=R.top)?v:0)+(null!=(x=R.height)?x:0)],{strokeWidth:Ct.SIZES.BORDER_WIDTH,stroke:null!=(j=null==a?void 0:a.border_color)?j:n.borderColor,originX:"left",originY:"top"})),N.push(new y.fabric.Circle({fill:null!=(O=null==a?void 0:a.bg_color)?O:n.bgColor,stroke:null!=(S=null==a?void 0:a.border_color)?S:n.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH,radius:t,top:e.top,left:(null!=(E=R.left)?E:0)+(null!=(C=R.width)?C:0)+(null!=(k=e.height)?k:0)*Nt.SIZES.SCALE_Y_TAIL_HEAD/2-T,angle:90,startAngle:0,endAngle:360,scaleY:Nt.SIZES.SCALE_Y_TAIL_HEAD})),new y.fabric.Group(N)},ga=_a,ma=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.component_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.component_type){case"Component":case"ComponentDb":case"ComponentQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_component)?r:kt.COLORS.BG_COLOR_COMPONENT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_component)?s:kt.COLORS.BORDER_COLOR_COMPONENT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_component)?_:kt.COLORS.TEXT_COLOR_COMPONENT},u=Object.assign({},d,a);if(e.component_type)switch(e.component_type){case"Component":return sa(e,t,n,u,o);case"ComponentDb":return la(e,t,n,u,o);case"ComponentQueue":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Component:t.component_type},n),a,void 0,o);break;case"Component_Ext":case"ComponentDb_Ext":case"ComponentQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_component_ext)?r:kt.COLORS.BG_COLOR_COMPONENT_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_component_ext)?s:kt.COLORS.BORDER_COLOR_COMPONENT_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_component_ext)?_:kt.COLORS.TEXT_COLOR_COMPONENT_EXT},u=Object.assign({},d,a);if(e.component_type)switch(e.component_type){case"Component_Ext":return sa(e,t,n,u,o);case"ComponentDb_Ext":return la(e,t,n,u,o);case"ComponentQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Component:t.component_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}},ba=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.container_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.container_type){case"Container":case"ContainerDb":case"ContainerQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_container)?r:kt.COLORS.BG_COLOR_CONTAINER,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_container)?s:kt.COLORS.BORDER_COLOR_CONTAINER,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_container)?_:kt.COLORS.TEXT_COLOR_CONTAINER},u=Object.assign({},d,a);if(e.container_type)switch(e.container_type){case"Container":return sa(e,t,n,u,o);case"ContainerDb":return la(e,t,n,u,o);case"ContainerQueue":return _a(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Container:t.container_type},n),a,void 0,o);break;case"Container_Ext":case"ContainerDb_Ext":case"ContainerQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_container_ext)?r:kt.COLORS.BG_COLOR_CONTAINER_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_container_ext)?s:kt.COLORS.BORDER_COLOR_CONTAINER_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_container_ext)?_:kt.COLORS.TEXT_COLOR_CONTAINER_EXT},u=Object.assign({},d,a);if(e.container_type)switch(e.container_type){case"Container_Ext":return sa(e,t,n,u,o);case"ContainerDb_Ext":return la(e,t,n,u,o);case"ContainerQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{Container:t.container_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}},pa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.base_data.label&&t.deployment_node_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a,o,r)=>{var i,s,l,_,c,d;const u={bgColor:null!=(i=null==r||null==(s=r.diagramsThemeSettings)?void 0:s.bg_color_deployment_node)?i:kt.COLORS.BG_COLOR_DEPLOYMENT_NODE,borderColor:null!=(l=null==r||null==(_=r.diagramsThemeSettings)?void 0:_.border_color_deployment_node)?l:kt.COLORS.BORDER_COLOR_DEPLOYMENT_NODE,textColor:null!=(c=null==r||null==(d=r.diagramsThemeSettings)?void 0:d.text_color_deployment_node)?c:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE},g=Object.assign({},u,o);return ra(e,t,n,a,g,r)})(t,hn(t.base_data.alias,void 0,void 0,{DeploymentNode:t.deployment_node_type},n),n,a,void 0,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...rn(null!=(r=i.children)?r:[])),i}},ha=(e,t,n,a,o)=>{var r,i;const s=[],l=((e,t,n)=>{const a=Object.assign({},t,{borderRadius:Ht});return sa(e,{},{},a,n)})(e,a,o);s.push(l);const _=((e,t)=>{var n,a,o,r,i;const s=new y.fabric.Circle({radius:Wt,top:t.top,left:t.left,fill:e.bgColor,stroke:e.borderColor,strokeWidth:Ct.SIZES.BORDER_WIDTH});return s.left=(null!=(n=s.left)?n:0)+(null!=(a=t.getScaledWidth())?a:0)/2-(null!=(o=s.getScaledWidth())?o:0)/2,s.top=(null!=(r=s.top)?r:0)-(null!=(i=s.getScaledWidth())?i:0)+5,s})(a,l);s.push(_);const c={alias:null==(r=e.base_data)?void 0:r.alias,position:Tn(null==(i=e.base_data)?void 0:i.alias,n)};return new gn(e,t,c,n,s)},fa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.person_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.person_type){case"Person":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_person)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_person)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_person)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON},u=Object.assign({},d,a);return ha(e,t,n,u,o)})(t,hn(t.base_data.alias,void 0,void 0,{Person:t.person_type},n),a,void 0,o);break;case"Person_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_person_ext)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_person_ext)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_person_ext)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT},u=Object.assign({},d,a);return ha(e,t,n,u,o)})(t,hn(t.base_data.alias,void 0,void 0,{Person:t.person_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}};let wa=function(e){return e.Dot="DOT",e.Line="LINE",e.Text="TEXT",e.Triangle="TRIANGLE",e.Rectangle="RECTANGLE",e}({});class ya extends gn{getUpdatedSpecs(){const e=super.getUpdatedSpecs();var t,n;return e&&(null==(t=this.canvas)||t.discardActiveObject(),delete e.position,delete e.size,e.shapes=[],null==(n=this.children)||n.forEach((t=>{const n=y.fabric.util.object.clone(t);if(n.name===wa.Line||n.name===wa.Rectangle)e.shapes.push({position:{z_index:an(n.canvas,n)},shape_type:n.name});else{var a,o;let t=0,r=0;const i=n.angle;if(n.name===wa.Text)t=n.getCenterPoint().x,r=n.getCenterPoint().y;else if(n.name===wa.Dot||n.name===wa.Triangle){n.name===wa.Triangle&&n.rotate(Ut);const e=Sa(this.canvas,n.left,n.top,n.name===wa.Triangle,i,n.scaleX,n.scaleY,!0);t=e.left,r=e.top}const s={position:{left:t,top:r,z_index:an(n.canvas,n)},size:{scale_x:null!=(a=n.scaleX)?a:1,scale_y:null!=(o=n.scaleY)?o:1},shape_type:n.name};n.name===wa.Triangle&&(s.position.angle=i),e.shapes.push(s)}}))),e}}const va=e=>{var t;e.children=null==(t=e.children)?void 0:t.sort(((e,t)=>e.name===wa.Rectangle||e.name===wa.Line&&t.name!==wa.Rectangle?-1:t.name===wa.Rectangle||e.name!==wa.Rectangle&&t.name===wa.Line?1:e.name===t.name?0:1))},xa=e=>{const t=e.parent;let n,a=1;const o=e.canvas;if(t&&o){const s=[],l=[];if(t.children){var r,i;t.children.forEach((e=>{if(e.name===wa.Triangle&&(n=e),e.name===wa.Dot||e.name===wa.Triangle){var t;l.push(e),a=null!=(t=e.scaleX)?t:1;const n=e.getPointByOrigin("center","center"),o=new cn(n.x,n.y,e.name);s.push(o)}}));const _=t.children.findIndex((e=>e.name===wa.Line));void 0!==_&&_>-1&&t.children.splice(_,1);const c=an(o,e),d=null==(r=e.data)?void 0:r.rawDiagramElementSpec,u=e.stroke,g=e.strokeDashArray,m=null==(i=e.data)?void 0:i.otherData.selectedRelColor;o.remove(e);const b=Na(d,s,t,a,u,m,void 0,g);o.add(b),c&&b.moveTo(c),n&&Oa(s,n)}}},ja=e=>{const t=e.findIndex((e=>e.customType===wa.Triangle)),n=e[t],a=e[t>0?t-1:t+1];return 180*Math.atan2(n.y-a.y,n.x-a.x)/Math.PI+90},Oa=(e,t)=>{let n;e&&(n=ja(e),t.rotate(n))},Sa=(e,t,n,a,o=Ut,r=1,i=1,s)=>{var l;const _=null!=(l=null==e?void 0:e.getZoom())?l:1,c=sn(e);let d=t,u=n;if(a){const e=Ft*r/2+Bt*r/2,t=Ft*i/2+Bt*i/2;s?(d-=e,u+=t):(d+=e,u-=t)}else{const e=Pt*r*2+Bt*r/2,t=Pt*i+Bt*i/2;s?(d+=e,u+=t):(d-=e,u-=t)}return s||(d=(d-c.panX)/_,u=(u-c.panY)/_),{left:d,top:u,angle:o}},Ea=(e,t)=>{let n=[];if(null!=e&&e.shapes)null==e||e.shapes.forEach((e=>{var t,a;if((e.shape_type===wa.Dot||e.shape_type===wa.Triangle)&&void 0!==(null==(t=e.position)?void 0:t.left)&&void 0!==(null==(a=e.position)?void 0:a.top)){const t=new cn(e.position.left,e.position.top,e.shape_type);t.data={rawDiagramElementSpec:e},n.push(t)}}));else{var a,o;let r;null!=e&&e.alias&&null!=(a=t[e.alias])&&a.start&&null!=(o=t[e.alias])&&o.end?(r=[],r.push(new cn(t[e.alias].start.x,t[e.alias].start.y,wa.Dot)),t[e.alias].path&&t[e.alias].path.forEach((e=>{r.push(new cn(e.x,e.y,wa.Dot))})),r.push(new cn(t[e.alias].end.x,t[e.alias].end.y,wa.Triangle))):r=[new cn(Ct.SIZES.DEFAULT_LEFT,Ct.SIZES.DEFAULT_TOP,wa.Dot),new cn(100+Ct.SIZES.DEFAULT_LEFT,Ct.SIZES.DEFAULT_TOP,wa.Triangle)],n=n.concat(r)}return n},Ca=(e,t,n,a,o,r)=>{const i=[],s=void 0!==(null==e?void 0:e.alias)&&void 0!==t[e.alias];for(let e=0;e<n.length;e++){var l,_,c,d;i.push(ka(void 0,n[e],n[e].customType===wa.Triangle?null!=(l=null==(_=n[e].data)||null==(_=_.rawDiagramElementSpec)||null==(_=_.position)?void 0:_.angle)?l:ja(n):void 0,n[e].customType===wa.Triangle,a,!0,null==(c=n[e].data)||null==(c=c.rawDiagramElementSpec)||null==(c=c.size)?void 0:c.scale_x,null==(d=n[e].data)||null==(d=d.rawDiagramElementSpec)||null==(d=d.size)?void 0:d.scale_y,o,r,s))}return i},ka=(e,t,n,a,o,r=!0,i=1,s=1,l,_,c)=>{var d;l=null!=(d=l)?d:Lt;const{left:u,top:g,angle:m}=Sa(e,t.x,t.y,a,n,i,s,!1);if(a){var b,p;const e=new y.fabric.Triangle({left:u,top:g,width:Ft,height:Ft,fill:l,scaleX:i,scaleY:s,hasControls:!1,name:wa.Triangle,angle:Ut});return e.rotate(m),e.data={rawDiagramElementSpec:null==(b=t.data)?void 0:b.rawDiagramElementSpec,otherData:{selectedRelColor:null!=_?_:$t}},e.parent=o,r&&(null==(p=o.children)||p.push(e)),La(e,l),e}{var h,f;const e=new y.fabric.Circle({left:u,top:g,radius:Pt,fill:l,opacity:.2,scaleX:i,scaleY:s,hasControls:!1,name:wa.Dot,visible:!c,selectable:!c,hasBorders:!c});return e.data={rawDiagramElementSpec:null==(h=t.data)?void 0:h.rawDiagramElementSpec,otherData:{selectedRelColor:null!=_?_:$t}},e.parent=o,r&&(null==(f=o.children)||f.push(e)),La(e,l),e}},Na=(e,t,n,a=1,o,r,i,s)=>{var l,_,c;const d=null==e||null==(l=e.shapes)?void 0:l.filter((e=>e.shape_type===wa.Line))[0];let u;return u=i&&null!=e&&e.alias&&null!=(_=i[e.alias])&&_.svg_path?new y.fabric.Path(i[e.alias].svg_path,{stroke:null!=o?o:Lt,strokeDashArray:s,fill:"",strokeWidth:Bt*a,scaleX:1,scaleY:1,name:wa.Line,perPixelTargetFind:!0,hasBorders:!1}):new y.fabric.Polyline(t,{stroke:null!=o?o:Lt,strokeDashArray:s,fill:"",strokeWidth:Bt*a,scaleX:1,scaleY:1,name:wa.Line,perPixelTargetFind:!0,hasBorders:!1}),u.data={rawDiagramElementSpec:d,otherData:{selectedRelColor:null!=r?r:$t}},u.parent=n,Ra(u,u.stroke,u.strokeWidth),null==(c=n.children)||c.push(u),u},Ta=(e,t,n,a,o,r,i,s)=>{var l,_,c,d,u,g,m;let b,p=1,h=1;var f,w,v,x;null!=t&&t.shapes&&(b=t.shapes.filter((e=>e.shape_type===wa.Text))[0],b&&(p=null!=(f=null==(w=b.size)?void 0:w.scale_x)?f:1,h=null!=(v=null==(x=b.size)?void 0:x.scale_y)?v:1));const j=[],O={fontFamily:Ct.FONT.FAMILY,fill:null!=(l=null!=(_=null==s?void 0:s.font_color)?_:null==i||null==(c=i.diagramsThemeSettings)?void 0:c.text_color_relationship)?l:Mt};if(null!=(d=e.base_data)&&d.label){var S,E,C,k,N;const t=new y.fabric.Text($(e.base_data.label),Object.assign({},O,{fontSize:It,fontWeight:"bold",textAlign:"center"}));t.top=e.technology?-(null!=(S=t.height)?S:0):-(null!=(E=t.height)?E:0)/2,t.left=(null!=(C=a.width)?C:0)/2-(null!=(k=t.width)?k:0)/2-(null!=(N=o[0].width)?N:0)/2,j.push(t)}if(e.technology){var T,R,L;const t=new y.fabric.Text(`[${e.technology}]`,Object.assign({},O,{fontSize:Dt,textAlign:"center"}));t.left=(null!=(T=a.width)?T:0)/2-(null!=(R=t.width)?R:0)/2-(null!=(L=o[0].width)?L:0)/2,j.push(t)}const M=new y.fabric.Group(j),I=M.getBoundingRect(),D=new y.fabric.Rect({top:I.top-At,left:I.left-At,width:I.width+2*At,height:I.height+2*At,fill:null!=(u=null==i||null==(g=i.diagramsThemeSettings)?void 0:g.bg_color_relationship)?u:Rt});let A,P;var F,B,z,U,H,W,K,X;null!=t&&t.alias&&n[t.alias]&&n[t.alias].label_position?(A=n[t.alias].label_position.x-(null!=(F=D.width)?F:0)/2,P=n[t.alias].label_position.y-(null!=(B=D.height)?B:0)/2):(A=(null!=(z=a.left)?z:0)+(null!=(U=a.width)?U:0)/2-(null!=(H=D.width)?H:0)/2,P=(null!=(W=a.top)?W:0)+(null!=(K=a.height)?K:0)/2-(null!=(X=D.height)?X:0)/2);const G=new y.fabric.Group([D,M],{name:wa.Text,hasControls:!1,left:A,top:P,scaleX:p,scaleY:h});var Y,Z;return G.data={rawDiagramElementSpec:b},G.parent=r,null==(m=r.children)||m.push(G),b&&void 0!==(null==(Y=b.position)?void 0:Y.left)&&void 0!==(null==(Z=b.position)?void 0:Z.top)&&G.setPositionByOrigin(new y.fabric.Point(b.position.left,b.position.top),"center","center"),G},Ra=(e,t,n)=>{const a=e.parent;e.on(pt,(t=>{var n,a,o;e.stroke=null==(n=e.data)||null==(n=n.otherData)?void 0:n.selectedRelColor,e.strokeWidth=(null!=(a=e.strokeWidth)?a:0)+zt,e.dirty=!0,null==(o=e.canvas)||o.renderAll(),((e,t)=>{var n;if(e.e&&null!=(n=t.parent)&&n.children){var a;const e=ln(t);if(!_n(null==(a=t.canvas)?void 0:a.getActiveObjects(),e.objects)){var o,r,i;null==(o=t.canvas)||o.discardActiveObject();const n=t.parent;let a;"multiple"===e.type?a=new y.fabric.ActiveSelection(e.objects,{canvas:t.canvas}):(a=new dn(e.objects,{canvas:t.canvas}),a.parent=t.parent,a.on(mt,(e=>{Ia(a.canvas,e,a,n)})),a.on(bt,(e=>{var a;null==(a=t.canvas)||a.discardActiveObject(),n.fire(bt)}))),a.hasBorders=!1,null==(r=t.canvas)||r.setActiveObject(a),null==(i=t.canvas)||i.requestRenderAll()}}})(t,e)})),e.on(ht,(a=>{var o;e.stroke=t,e.strokeWidth=n,e.dirty=!0,null==(o=e.canvas)||o.renderAll()})),e.on(mt,(t=>{Ia(e.canvas,t,e,a)}))},La=(e,t)=>{const n=e.parent;e.on("moving",(e=>{Ma(e)})),e.on(mt,(t=>{Ia(e.canvas,t,e,n)})),e.on(pt,(t=>{var n,a;e.fill=null==(n=e.data)||null==(n=n.otherData)?void 0:n.selectedRelColor,e.dirty=!0,null==(a=e.canvas)||a.renderAll()})),e.on(ht,(n=>{var a;e.fill=t,e.dirty=!0,null==(a=e.canvas)||a.renderAll()}))},Ma=e=>{var t;if(null!=(t=e.transform)&&t.target){const t=e.transform.target.parent;if(t){var n;const e=null==(n=t.children)?void 0:n.filter((e=>e.name===wa.Line))[0];e&&xa(e)}}},$a=(e,t,n)=>{if(n instanceof y.fabric.ActiveSelection){const a=[];return e.isReadOnly()?e.codingFeaturesEnabled&&a.push(...mn(e,t,n,!1)):a.push({isHeaderMenuItem:!1,id:"addPoint",label:"Add point",onClick:()=>{((e,t)=>{const n=e.canvas;if(t.pointer&&n){const o=e.getObjects().filter((e=>e.name===wa.Line))[0],r=e.getObjects().filter((e=>e.name===wa.Dot))[0];n.discardActiveObject();const i=o.parent;if(i){var a;const e=new cn(t.pointer.x,t.pointer.y,wa.Dot),s=ka(n,e,void 0,!1,i,!1,r.scaleX,r.scaleY,o.stroke,null==(a=r.data)?void 0:a.otherData.selectedRelColor,!1);((e,t)=>{const n=e.parent;if(n){var a;let o,r;const i=[];null==(a=n.children)||a.forEach((e=>{e.name===wa.Text?o=e:e.name===wa.Rectangle?r=e:e.name!==wa.Dot&&e.name!==wa.Triangle||i.push(e)})),i.push(t),i.sort(((e,t)=>e.getCenterPoint().x-t.getCenterPoint().x)),n.children=i,n.children.push(e),o&&n.children.push(o),r&&n.children.push(r)}})(o,s),n.add(s),xa(o)}}})(n,t)}},{id:"separatorRel",isSepator:!0},...mn(e,t,n,!1)),[{isHeaderMenuItem:!0,id:"relationshipContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:a}]}return n.name!==wa.Dot||e.isReadOnly()?[]:[{isHeaderMenuItem:!0,id:"dotContextMenu",label:"",hidden:!0,alwaysOpen:!0,subMenuItems:[{isHeaderMenuItem:!1,id:"removePoint",label:"Remove point",onClick:()=>{(e=>{const t=e.parent;if(t&&e.canvas){var n;const i=null==(n=t.children)?void 0:n.filter((e=>e.name===wa.Dot||e.name===wa.Triangle));if(void 0!==i&&i.length>2){var a,o;const n=null==(a=t.children)?void 0:a.filter((e=>e.name===wa.Line))[0],i=null==(o=t.children)?void 0:o.findIndex((t=>t.getCenterPoint().eq(e.getCenterPoint())));var r;void 0!==i&&i>-1&&(null==(r=t.children)||r.splice(i,1)),e.canvas.remove(e),xa(n)}}})(n)}}]}]},Ia=(e,t,n,a)=>{n.name!==wa.Line&&n.name!==wa.Rectangle&&e&&a.onComponentMouseUp(e,t,n,$a(e,t,n))},Da=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.relationship_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){var r;const i=((e,t,n,a)=>{var o,r,i,s,l,_,c,d,u,g,m,b;const p=qn(Zn(null==(o=e.base_data)?void 0:o.tags),null==a?void 0:a.tags),h={alias:null==(r=e.base_data)?void 0:r.alias};let f=1;const w=null==(i=t.shapes)?void 0:i.filter((e=>e.shape_type===wa.Dot));w&&w.length>0&&(f=null!=(s=null==(l=w[0].size)?void 0:l.scale_x)?s:1);const y=new ya(e,t,h,n,[],{visible:!1,selectable:!1},void 0,void 0,!0),v=Ea(t,n),x=Ca(t,n,v,y,null!=(_=null==p?void 0:p.border_color)?_:null==a||null==(c=a.diagramsThemeSettings)?void 0:c.line_color_relationship,null==a||null==(d=a.diagramsThemeSettings)?void 0:d.selected_color_relationship),j=x.map((e=>new cn(e.getCenterPoint().x,e.getCenterPoint().y,e.name))),O=Na(t,j,y,f,null!=(u=null==p?void 0:p.border_color)?u:null==a||null==(g=a.diagramsThemeSettings)?void 0:g.line_color_relationship,null==a||null==(m=a.diagramsThemeSettings)?void 0:m.selected_color_relationship,n,null==(b=Un(null==p?void 0:p.border_style))?void 0:b.value);return Ta(e,t,n,O,x,y,a,p),va(y),y})(t,hn(t.base_data.alias,t.from,t.to,{Relationship:t.relationship_type},n),a,o);return o&&o.skipAddToCanvas||!i||null==e||e.add(i,...null!=(r=i.children)?r:[]),i}},Aa=(e,t,n,a,o)=>{if(t.base_data&&t.base_data.alias&&t.system_type&&(n.auto_layout_enabled&&a[t.base_data.alias]||!n.auto_layout_enabled)){let r;switch(t.system_type){case"System":case"SystemDb":case"SystemQueue":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_software_system)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_software_system)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_software_system)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON},u=Object.assign({},d,a);if(e.system_type)switch(e.system_type){case"System":return sa(e,t,n,u,o);case"SystemDb":return la(e,t,n,u,o);case"SystemQueue":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{SoftwareSystem:t.system_type},n),a,void 0,o);break;case"System_Ext":case"SystemDb_Ext":case"SystemQueue_Ext":r=((e,t,n,a,o)=>{var r,i,s,l,_,c;const d={bgColor:null!=(r=null==o||null==(i=o.diagramsThemeSettings)?void 0:i.bg_color_software_system_ext)?r:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,borderColor:null!=(s=null==o||null==(l=o.diagramsThemeSettings)?void 0:l.border_color_software_system_ext)?s:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,textColor:null!=(_=null==o||null==(c=o.diagramsThemeSettings)?void 0:c.text_color_software_system_ext)?_:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT},u=Object.assign({},d,a);if(e.system_type)switch(e.system_type){case"System_Ext":return sa(e,t,n,u,o);case"SystemDb_Ext":return la(e,t,n,u,o);case"SystemQueue_Ext":return ga(e,t,n,u,o)}})(t,hn(t.base_data.alias,void 0,void 0,{SoftwareSystem:t.system_type},n),a,void 0,o)}return o&&o.skipAddToCanvas||!r||null==e||e.add(r),r}};class Pa{constructor(){this.graphviz=void 0}async initialize(){return this.graphviz=await zn.Graphviz.load(),this}renderDiagram(e,t,n,a){if(e&&n){var o,r,i,s,l,_,c,d;if(e.diagramListener=t,e.autoLayoutEnabled=null==(o=n.diagram_spec)?void 0:o.auto_layout_enabled,e.autoLayoutOrientation=null==(r=n.diagram_spec)?void 0:r.auto_layout_orientation,e.backgroundColor=null!=(i=null==a?void 0:a.bg_color_diagram)?i:ft,null!=(s=n.diagram_spec)&&s.auto_layout_enabled)if(this.graphviz){const e=function(e,t){var n,a;const o={},r=[];if(null!=(n=t.diagram_spec)&&n.auto_layout_enabled&&t.diagram_spec.auto_layout_orientation&&null!=(a=t.diagram_plantuml)&&a.elements){console.time("autoLayoutGeneration");const n=t.diagram_plantuml.elements,a=t.diagram_spec.auto_layout_orientation,l=t.diagram_spec.auto_layout_ranksep,_=t.diagram_spec.auto_layout_subgraph_inner_margin,c=t.diagram_spec.auto_layout_subgraph_outer_margin,d=t.diagram_spec.auto_layout_only_straight_arrows,u=(e=>{for(const t of e)if(yn(t)||jn(t))return!0;return!1})(n),g=function(e){let t=In,n=Dn;return e&&(t-=.1,n-=.1),{x:Number.parseFloat(t.toFixed(2)),y:Number.parseFloat(n.toFixed(2))}}(u),m=function(e,t,n,a,o,r,i){const s=new Set;return`\n digraph G {\n pad = "${i.x},${i.y}"\n dpi = ${$n.toFixed(1)}\n penwidth="1"\n rankdir = ${"LeftToRight"===t?"LR":"TB"}\n nodesep=0\n ranksep=${n}\n compound=true\n bgcolor="red"\n ${r?"splines=ortho":""}\n node [shape="rect", fixedsize=true, penwidth="1"]\n ${Bn(e,s,a,o)}\n }\n `}(n,a,l,_,c,d,g);try{var i,s;let t=e.dot(m,"json");const n=JSON.parse(t),a=function(e){const t=e.split(",");return Number.parseFloat(t[3])}(n.bb);null==(i=n.objects)||i.forEach((e=>{if(!function(e){return e.width&&0===Number.parseInt(e.width)&&e.height&&0===Number.parseInt(e.height)&&e.peripheries&&0===Number.parseInt(e.peripheries)&&""===e.label}(e)&&!function(e){return e.name.endsWith(Ln)}(e)&&e._draw_){const t=e._draw_.filter((e=>"p"===e.op||"P"===e.op))[0],n=Mn(g,a,t.points[0]),r=Mn(g,a,t.points[1]),i=Mn(g,a,t.points[2]),s=r[0],l=r[1];let _;4===t.points.length&&(_={x:i[0]-r[0],y:n[1]-r[1]}),o[e.name]={position:{x:s,y:l},size:_}}})),null==(s=n.edges)||s.forEach((e=>{const t={path:[]};if(e._draw_?e._draw_.filter((e=>"b"===e.op))[0].points.forEach(((e,n)=>{var o;const r=Mn(g,a,e),i=r[0],s=r[1];0===n?t.start={x:i,y:s}:null==(o=t.path)||o.push({x:i,y:s})})):r.push(Yn),e._hdraw_){const n=e._hdraw_.filter((e=>"P"===e.op))[0].points,o=Mn(g,a,n[1]);t.end={x:o[0],y:o[1]}}if(e._ldraw_){var n;const o=null==(n=e._ldraw_)?void 0:n.filter((e=>"T"===e.op))[0].pt;if(o){const e=Mn(g,a,o);t.label_position={x:e[0],y:e[1]}}}if(t.start&&t.end){const n=t.path&&t.path.length>2?t.path[1]:t.end,o=t.path&&t.path.length>2?t.path[t.path.length-2]:t.start;"false"===e.keadex_fromissubgraph&&n.x&&n.y&&(t.start.x<n.x?t.start.x-=An:t.start.x>n.x&&(t.start.x+=An),t.start.y<n.y?t.start.y-=An:t.start.y>n.y&&(t.start.y+=An)),"false"===e.keadex_toissubgraph&&o.x&&o.y&&(t.end.x<o.x?t.end.x-=An:t.end.x>o.x&&(t.end.x+=An),t.end.y<o.y?t.end.y-=An:t.end.y>o.y&&(t.end.y+=An)),t.svg_path=function(e,t,n,a,o){const r=e.split(" ").slice(1).map((e=>e.split(",").map(Number)));let i=`M ${n.x} ${n.y}`;for(let e=r.length-3;e>=0;e-=3){const[n,s]=Mn(a,o,r[e+1]),[l,_]=Mn(a,o,r[e]),[c,d]=Mn(a,o,r[e-1]);let u=c,g=d;1===e&&(u=t.x,g=t.y),i+=` C ${n} ${s}, ${l} ${_}, ${u} ${g}`}return i}(e.pos,t.start,t.end,g,a)}o[e.name]=t}))}catch(e){console.error(e),r.push(Yn)}}return console.timeEnd("autoLayoutGeneration"),{positions:o,errors:r}}(this.graphviz,n);n.auto_layout=e.positions,n.auto_layout_errors=e.errors,e.errors.length>0&&(e.errors.indexOf(Yn)>=0?(console.warn(Xn),Be.toast.warn(Xn)):(console.error(e.errors.join(", ")),Be.toast.error(e.errors.join(", "))))}else console.error(Gn),Be.toast.error(Gn);null!=(l=n.diagram_spec)&&l.grid_enabled?e.enableGrid():e.disableGrid();const u=Fa(e,null==(_=n.diagram_plantuml)?void 0:_.elements,n.diagram_spec,null!=(c=n.auto_layout)?c:{},{diagramsThemeSettings:a,tags:null==(d=n.diagram_plantuml)?void 0:d.tags});return Ba(u),u}}}const Fa=(e,t,n,a,o)=>{const r=[];if(n){if(!o||!o.skipLegendRendering){const t=Kn(hn(Hn,void 0,void 0,void 0,n),o);t&&(r.push(t),null==e||e.add(t))}if(t)for(const i of t)if(yn(i)){const t=ia(e,yn(i),n,a,o);t&&r.push(t)}else if(vn(i)){const t=ma(e,vn(i),n,a,o);t&&r.push(t)}else if(xn(i)){const t=ba(e,xn(i),n,a,o);t&&r.push(t)}else if(jn(i)){const t=pa(e,jn(i),n,a,o);t&&r.push(t)}else if(On(i)){const t=fa(e,On(i),n,a,o);t&&r.push(t)}else if(Sn(i)){const t=Da(e,Sn(i),n,a,o);t&&r.push(t)}else if(En(i)){const t=Aa(e,En(i),n,a,o);t&&r.push(t)}}return r},Ba=(e,t)=>{e.forEach((e=>{let n=function(e){let t;var n,a;return t=e.isVirtualGroupParent()?null==(n=e.data)||null==(n=n.rawDiagramElementSpec)||null==(n=n.shapes)||null==(n=n.reduce(((e,t)=>{var n,a;return void 0===(null==(n=e.position)?void 0:n.z_index)?t:(void 0===(null==(a=t.position)?void 0:a.z_index)||(t.position.z_index,e.position.z_index),e)})).position)?void 0:n.z_index:null==(a=e.data)||null==(a=a.rawDiagramElementSpec)||null==(a=a.position)?void 0:a.z_index,t}(e);var a;n&&(t&&n<=t&&(n=t+1,t++),e.moveTo(n)),e.isVirtualGroupParent()&&Ba(e.children,null!=(a=n)?a:an(e.canvas,e.children[0]))}))},za=require("@tauri-apps/plugin-dialog"),Ua=require("@tauri-apps/plugin-process"),Ha=require("@tauri-apps/plugin-shell"),Wa=require("@reduxjs/toolkit"),Ka=(0,Wa.createSlice)({name:"project",initialState:{value:void 0},reducers:{openProject:(e,t)=>{e.value=t.payload},saveProject:(e,t)=>{e.value=t.payload},closeProject:e=>{e.value=void 0}}}),{openProject:Xa,saveProject:Ga,closeProject:Ya}=Ka.actions,Za=Ka.reducer,qa=require("@tauri-apps/api/core"),Va="create_project",Qa="open_project",Ja="close_project";async function eo(e,t){return Qe.WEB_MODE?(0,qa.invoke)(Qa,{dirHandle:t}):(0,qa.invoke)(Qa,{root:e})}async function to(e){return Qe.WEB_MODE?(0,qa.invoke)(Ja):(0,qa.invoke)(Ja,{root:e})}async function no(){return(0,qa.invoke)("list_diagrams")}async function ao(e,t,n,a){return(0,qa.invoke)("save_spec_diagram_raw_plantuml",{rawPlantuml:n,diagramSpec:a,diagramName:e,diagramType:t})}async function oo(e,t){return(0,qa.invoke)("parsed_element_to_plantuml",{parsedElement:e,elementLevel:null!=t?t:0})}async function ro(e,t){return(0,qa.invoke)("diagram_to_link_string",{diagramHumanName:e,diagramType:t})}async function io(e){return(0,qa.invoke)("diagram_from_link_string",{linkString:e})}async function so(e){return(0,qa.invoke)("deserialize_plantuml_by_string",{rawPlantuml:e})}async function lo(e){return(0,qa.invoke)("diagram_name_type_from_path",{path:e})}async function _o(e,t,n){return(0,qa.invoke)("dependent_elements_in_diagram",{alias:e,diagramName:t,diagramType:n})}async function co(e){return(0,qa.invoke)("create_library_element",{diagramElement:e})}async function uo(e,t){return(0,qa.invoke)("update_library_element",{oldDiagramElement:e,newDiagramElement:t})}async function go(e){return(0,qa.invoke)("execute_hook",{payload:e})}const mo=require("@tauri-apps/plugin-updater");function bo(e,t,n){(0,mo.check)().then((async a=>{var o;null!=a&&a.available?e({id:"confirmMinaUpdateModal",title:`${t("updater.title",{version:a.version})}`,body:null!=(o=(0,g.jsx)("div",{className:"whitespace-pre-wrap",children:a.body}))?o:"",buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:t("common.proceed")}),className:"button--safe",onClick:async()=>{Be.toast.info(t("updater.updating")),await a.downloadAndInstall(),await(0,Ua.relaunch)()}}]}):n&&Be.toast.info(t("common.info.youre_up_to_date"))}))}const po=require("@tauri-apps/api/app"),ho=require("@tauri-apps/plugin-clipboard-manager"),fo=require("@tauri-apps/plugin-os"),wo=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)();return(0,r.useEffect)((()=>{(async()=>{let e,t,n,o,r,i;Qe.WEB_MODE?(e=Qe.APP_VERSION,o="web"):(e=await(0,po.getVersion)(),t=await(0,po.getTauriVersion)(),n=await(0,fo.arch)(),o=await(0,fo.platform)(),r=await(0,fo.type)(),i=await(0,fo.version)()),a({version:e,tauriVersion:t,arch:n,platform:o,osType:r,kernelVersion:i})})()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"modal__body",children:n&&(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"font-bold",children:"Keadex Mina:"}),(0,g.jsxs)("ul",{className:"ml-2",children:[(0,g.jsxs)("li",{children:[t("common.version"),": ",n.version]}),n.tauriVersion&&(0,g.jsxs)("li",{children:["Tauri ",t("common.version"),": ",n.tauriVersion]})]}),(0,g.jsxs)("div",{className:"font-bold",children:[t("common.system"),":"]}),(0,g.jsxs)("ul",{className:"ml-2",children:[n.arch&&(0,g.jsxs)("li",{children:[t("common.architecture"),": ",n.arch]}),(0,g.jsxs)("li",{children:[t("common.platform"),": ",n.platform]}),n.osType&&(0,g.jsxs)("li",{children:[t("about.os_type"),": ",n.osType]}),n.kernelVersion&&(0,g.jsxs)("li",{children:[t("about.kernel_version"),": ",n.kernelVersion]})]})]})}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-copy",children:(0,g.jsx)("span",{children:t("common.copy")}),onClick:()=>{(0,ho.writeText)(JSON.stringify(n,null,2)),Be.toast.info(t("common.info.copied_to_clipboard"))}},{key:"button-ok",children:(0,g.jsx)("span",{children:"Ok"}),"data-te-modal-dismiss":!0}])})]})},yo=(e,t,n,a,o)=>{const r=t=>{let a=t,r="common.question.confirm_exit";void 0===t&&(a=()=>{o.dispatch(Ya()),o.hideModal(),n(xo)},r="common.question.confirm_close_project"),o.showModal({id:"confirmCloseProjectModal",title:e("common.confirmation").toString(),body:e(r).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{o.currentProjectRoot?((t,n)=>{to(t).then((t=>{t?n():Be.toast.error(e("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((t=>{Be.toast.error(e("common.error.project_not_closed",{errorMessage:t.msg}))}))})(o.currentProjectRoot,a):a()}}]})},i=t=>{o.showModal({id:"confirmOpenProjectModal",title:`${e("common.confirmation")}`,body:`${e("common.question.confirm_not_saved_changed_current_project")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{o.currentProjectRoot&&(to(o.currentProjectRoot).then((n=>{n?t():Be.toast.error(e("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((t=>{Be.toast.error(e("common.error.project_not_closed",{errorMessage:t.msg}))})),o.hideModal())}}]})},l=[],_=[];return a.pathname!==xo&&(a.pathname.startsWith(Ao)||a.pathname==So?_.push({isHeaderMenuItem:!1,id:"wbar_file_close",label:e("common.close").toString(),onClick:()=>{n(xo)}}):(Qe.WEB_MODE||(_.push({isHeaderMenuItem:!1,id:"wbar_file_open_local_project",label:e("common.action.open_local_project").toString(),onClick:()=>{za.open({directory:!0}).then((async t=>{Array.isArray(t)?Be.toast.error(e("common.error.invalid_path")):t&&i((()=>{(t=>{eo(t,void 0).then((e=>{o.dispatch(Xa(e)),n(jo)})).catch((t=>{Be.toast.error(e("common.error.project_not_opened",{errorMessage:t.msg}))}))})(t)}))}))}}),_.push({isHeaderMenuItem:!1,id:"wbar_file_open_remote_project",label:e("common.action.open_remote_project").toString(),onClick:()=>{i((()=>{n(So)}))}})),_.push({isHeaderMenuItem:!1,id:"wbar_file_close_project",label:e("common.action.close_project").toString(),onClick:()=>r()}))),Qe.WEB_MODE||_.push({isHeaderMenuItem:!1,id:"wbar_file_exit",label:e("common.exit").toString(),onClick:()=>{r((()=>{(0,Ua.exit)()}))}}),_.length>0&&l.push({isHeaderMenuItem:!0,id:"wbar_file",label:e("common.file").toString(),onClick:void 0,subMenuItems:_}),a.pathname===xo||a.pathname.startsWith(Ao)||a.pathname==So||Qe.WEB_MODE||l.push({isHeaderMenuItem:!0,id:"wbar_edit",label:e("common.edit").toString(),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:"wbar_edit_search",label:e("common.search").toString(),onClick:()=>{null==t||t.emit({type:s.OpenSearch})}}]}),l.push({isHeaderMenuItem:!0,id:"wbar_help",label:e("common.help").toString(),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:"wbar_help_documentation",label:e("common.documentation").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/docs/mina/introduction")}},{isHeaderMenuItem:!1,id:"wbar_help_github_repo",label:e("common.github_repo").toString(),onClick:()=>{(0,Ha.open)("https://github.com/keadex/keadex/tree/main/apps/keadex-mina")}},{isHeaderMenuItem:!1,id:"wbar_help_download_mina_cli",label:e("common.action.download_mina_cli").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/projects/keadex-mina")}},...Qe.WEB_MODE?[{isHeaderMenuItem:!1,id:"wbar_help_download_desktop_app",label:e("common.action.download_desktop_app").toString(),onClick:()=>{(0,Ha.open)("https://keadex.dev/en/projects/keadex-mina")}}]:[],{id:"wbar_help_separator1",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_c4_model",label:e("common.c4_model").toString(),onClick:()=>{(0,Ha.open)("https://c4model.com/")}},{isHeaderMenuItem:!1,id:"wbar_help_c4_plantuml",label:e("common.c4_plantuml").toString(),onClick:()=>{(0,Ha.open)("https://github.com/plantuml-stdlib/C4-PlantUML/")}},{id:"wbar_help_separator2",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_report_issue",label:e("common.action.report_issue").toString(),onClick:()=>{(0,Ha.open)("https://github.com/keadex/keadex/issues/new?assignees=&labels=keadex+mina&projects=&template=keadex-mina-bug.md&title=%5BKeadex+Mina+Bug%5D")}},...Qe.WEB_MODE?[]:[{id:"wbar_help_separator3",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_check_for_updates",label:e("common.action.check_for_updates").toString(),onClick:()=>{bo(o.showModal,e,!0)}}],{id:"wbar_help_separator4",isSepator:!0},{isHeaderMenuItem:!1,id:"wbar_help_about",label:e("common.about").toString(),onClick:()=>{o.showModal({id:"aboutModal",title:"Keadex Mina",body:(0,g.jsx)(wo,{}),buttons:!1})}}]}),{menuItemsProps:l}},vo={},xo="/";vo[xo]={path:xo,titlebarMenuFactory:yo};const jo="/project/home",Oo="/project/settings",So="/project/open/remote";vo[jo]={path:jo,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[Oo]={path:Oo,isAppMenuVisible:!0,protectExit:!0,titlebarMenuFactory:yo},vo[So]={path:So,isAppMenuVisible:!1,titlebarMenuFactory:yo};const Eo="/diagram/edit";vo[Eo]={path:Eo,isAppMenuVisible:!0,titlebarMenuFactory:yo};const Co="/library/",ko=`${Co}${Nn("Person")}`,No=`${Co}${Nn("SoftwareSystem")}`,To=`${Co}${Nn("Container")}`,Ro=`${Co}${Nn("Component")}`;vo[ko]={path:ko,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[No]={path:No,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[To]={path:To,isAppMenuVisible:!0,titlebarMenuFactory:yo},vo[Ro]={path:Ro,isAppMenuVisible:!0,titlebarMenuFactory:yo};const Lo=":alias?",Mo=`/dependency-table/${Lo}`;vo[Mo]={path:Mo,isAppMenuVisible:!0,isAppMenuCollapsed:!0,titlebarMenuFactory:yo};const $o=":projectRootUrl?",Io=":diagramUrl?",Do=":ghToken?",Ao="/remote-diagrams",Po=`${Ao}/${$o}/${Io}/${Do}`;vo[Po]={path:Po,isAppMenuVisible:!1,titlebarMenuFactory:yo};const Fo="mina://",Bo=`${Fo}open-diagram/`,zo=`${Fo}dependency-table/`,Uo=`${Fo}remote-diagrams/`,Ho=`${Fo}github-authenticated/`;vo[Bo]={path:Bo,data:{requiresProject:!0}},vo[zo]={path:zo,data:{requiresProject:!0}},vo[Uo]={path:Uo,data:{requiresProject:!1}},vo[Ho]={path:Ho,data:{requiresProject:!1}};const Wo=vo,Ko=require("react-redux"),Xo=Ko.useDispatch,Go=Ko.useSelector,Yo=require("react-resizable"),Zo={prefix:"fas",iconName:"diagram-project",icon:[166.78,135.15,[],"","M84.54,59.45V84.31m4.25,0V59.45a4.26,4.26,0,0,0-8.51,0V84.31a4.26,4.26,0,1,0,8.51,0ZM128.3,46.82V12a12,12,0,0,0-12-12H50.48a12,12,0,0,0-12,12V46.82a12,12,0,0,0,12,12H116.3A12,12,0,0,0,128.3,46.82Zm0,76.33V88.33a12,12,0,0,0-12-12H50.48a12,12,0,0,0-12,12v34.82a12,12,0,0,0,12,12H116.3A12,12,0,0,0,128.3,123.15ZM20.49,36.55l-13,28.9M28,33.71,17.65,29.06,0,68.3,10.34,73Zm-7.5,66.21L7.5,71M28,102.76,10.34,63.52,0,68.17l17.65,39.24Zm118.3-2.84,13-28.9m7.49-2.85-10.34-4.65L138.8,102.76l10.34,4.65Zm-7.49-2.72-13-28.9M166.78,68.3,149.14,29.06,138.8,33.71,156.44,73Z"]},qo=i().memo((e=>{const{t}=(0,G.useTranslation)(),n=(0,a.useLocation)(),{modal:o,safeExit:r}=De(Wo);return(0,g.jsxs)("div",{className:"flex flex-col",children:[o,(0,g.jsxs)("div",{className:"p-4 text-center",children:[(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faBook})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:t("common.library")})]}),(0,g.jsx)("ul",{className:"mt-3",children:et.map((e=>(0,g.jsx)("li",{className:"pl-2 "+(n.pathname===`${Co}${Nn(e)}`?"active":""),onClick:()=>r(`${Co}${Nn(e)}`),children:c()(kn(e))},e)))})]})})),Vo=i().memo((e=>{var t,n,o;const{t:r}=(0,G.useTranslation)(),{modal:i,showModal:s,hideModal:l}=ce(),{modal:_,safeExit:c}=De(Wo),d=Xo(),m=(0,a.useNavigate)(),b=Go((e=>e.project.value));return(0,g.jsxs)("div",{className:"flex flex-col p-4 text-center",children:[i,_,(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:Zo})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:null==b||null==(t=b.project_settings)?void 0:t.name}),(0,g.jsxs)("div",{className:"mt-1 text-sm font-light italic pointer-events-none",children:["v",null==b||null==(n=b.project_settings)?void 0:n.version]}),(0,g.jsx)("div",{className:"mt-4 text-left pointer-events-none",children:null==b||null==(o=b.project_settings)?void 0:o.description}),(0,g.jsxs)("div",{className:"mt-5",children:[(0,g.jsx)(te,{className:"mr-3 mt-3 w-24",onClick:function(e){c(Oo)},children:r("common.settings")}),(0,g.jsx)(te,{className:"mr-3 mt-3 w-24",onClick:function(e){c(jo)},children:r("common.diagrams")})]}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsx)(te,{className:"button--dangerous absolute bottom-8 left-1/2 w-36 -translate-x-1/2",onClick:function(){s({id:"confirmCloseProjectModal",title:r("common.confirmation").toString(),body:r("common.question.confirm_close_project").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:r("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:r("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{null!=b&&b.project_settings.root?to(null==b?void 0:b.project_settings.root).then((e=>{e?(d(Ya()),l(),m(xo)):Be.toast.error(r("common.error.project_not_closed",{errorMessage:"unknown error"}))})).catch((e=>{Be.toast.error(r("common.error.project_not_closed",{errorMessage:e.msg}))})):(d(Ya()),l(),m(xo))}}]})},children:r("common.action.close_project")})})]})})),Qo=require("@tauri-apps/api/path"),Jo=require("escape-html");var er=n.n(Jo);const tr=require("escape-string-regexp");var nr=n.n(tr),ar=function(e){return e[e.SearchOnly=0]="SearchOnly",e[e.SearchAndReplace=1]="SearchAndReplace",e}(ar||{});const or={diagrams:!0,library:!0},rr=i().memo((e=>{const t=(0,a.useLocation)(),{t:n}=(0,G.useTranslation)(),{modal:o,safeExit:i}=De(Wo),{modal:s,showModal:_,hideModal:c}=ce(),m=Go((e=>e.project.value)),[b,p]=(0,r.useState)(!1),[h,f]=(0,r.useState)(""),[w,y]=(0,r.useState)(!1),[v,x]=(0,r.useState)(""),[j,O]=(0,r.useState)(or),[S,E]=(0,r.useState)(!1),[C,k]=(0,r.useState)((0,g.jsx)(g.Fragment,{})),N=(0,r.useContext)(l);function T(e,t){const n=new RegExp(nr()(t),"gi");return er()(e).replace(n,(e=>`<span class='search-highlighted'>${er()(e)}</span>`))}function R(e,a){if(e.replace(/ /g,"").length>0){if(a&&Object.keys(a.results).length>0){const o=1===a.count?n("common.result").toLowerCase():n("common.results").toLowerCase();let r=`${a.count} ${o}`;a.reached_limit&&(r=n("common.info.limit_results",{count:a.count}));const s=[];return Object.keys(a.results).forEach((t=>{s.push({header:null!=m&&m.project_settings.root?t.replace(new RegExp(nr()(`${m.project_settings.root}${(0,Qo.sep)()}`),"gi"),""):t,body:T(a.results[t].map((e=>e.line_content)).join("\n"),e),parseHtmlBody:!0,data:a.results[t]})})),(0,g.jsxs)("div",{className:"contents h-full",children:[(0,g.jsx)("div",{className:"mb-2 w-full px-4 text-left text-sm",children:r}),(0,g.jsx)(xe,{id:"search-results",className:"h-full overflow-auto",items:s,showButtonTooltip:!0,buttonIconPosition:"left",onBodyClick:e=>async function(e){if(e&&e.length>0){const n=e[0].category,a=e[0].path;"Diagram"===n?await fs(a,"fs_path",t.pathname,N,i):"Library"===n&&await async function(e){const t=await async function(e){return(0,qa.invoke)("library_element_type_from_path",{path:e})}(e);i(`${Co}${Nn(t)}`)}(a)}}(e)})]})}return(0,g.jsx)("span",{className:"mt-4",children:n("common.info.no_results")})}return(0,g.jsx)(g.Fragment,{})}async function L(){if(h.replace(/ /g,"").length>0){p(!0);let e=await async function(e,t,n){return(0,qa.invoke)("search",{stringToSearch:e,includeDiagramsDir:t,includeLibraryDir:n,limit:1e3})}(h,j.diagrams,j.library);return p(!1),k(R(h,e)),e}}async function M(){if(function(){const e=!j.diagrams||j.diagrams&&t.pathname!==Wo[Eo].path,a=!j.library||j.library&&!t.pathname.startsWith(Co);return e?a||Be.toast.error(n("common.error.cannot_change_library")):Be.toast.error(n("common.error.cannot_change_diagrams")),h.replace(/ /g,"").length>0&&e&&a}()){const e=await L();if(e&&e.count>0){const t=Object.keys(e.results).reduce(((t,n)=>{var a,o;return t+(null!=(a=null==(o=e.results[n])?void 0:o.length)?a:0)}),0),a=e.count;e&&_({id:"confirmReplaceAllModal",title:n("common.confirmation").toString(),body:n("common.question.confirm_replace_all",{numOccurrences:t,numFiles:a}).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:n("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:n("common.replace")}),className:"button--safe",onClick:()=>{y(!0),async function(e,t,n,a){return(0,qa.invoke)("search_and_replace",{stringToSearch:e,replacement:t,includeDiagramsDir:n,includeLibraryDir:a})}(h,v,j.diagrams,j.library).then((()=>{y(!1),c(),L()}))}}]})}}}async function $(e,t){if("Enter"===e.key)switch(t){case ar.SearchOnly:L();break;case ar.SearchAndReplace:M()}}return(0,r.useEffect)((()=>{f(""),x(""),k((0,g.jsx)(g.Fragment,{})),O(or)}),[m]),(0,g.jsxs)("div",{id:"search-panel",className:"flex h-full flex-col text-center",children:[o,s,(0,g.jsxs)("div",{className:"p-4 pb-0",children:[(0,g.jsx)("div",{className:"text-brand1 mt-4 text-4xl",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faSearch})}),(0,g.jsx)("div",{className:"text-accent-primary mt-2 text-lg font-bold pointer-events-none",children:n("common.search")}),(0,g.jsxs)("div",{className:"mt-5",children:[(0,g.jsxs)("div",{className:"flex",children:[(0,g.jsx)(U,{icon:S?d.faAngleDown:d.faAngleRight,className:"icon w-5 text-left text-[0.9rem] self-start mt-[0.85rem]",onClick:()=>E(!S)}),(0,g.jsxs)("div",{className:"w-full mr-4 ml-[0.1rem]",children:[(0,g.jsx)(J,{autoComplete:"off",value:h,onKeyDown:e=>$(e,ar.SearchOnly),fixedWidth:!0,loading:b,onChange:e=>{f(e.target.value)},onIconClick:()=>L()}),S&&(0,g.jsx)(J,{autoComplete:"off",value:v,onKeyDown:e=>$(e,ar.SearchAndReplace),icon:Ae,fixedWidth:!0,loading:w,onChange:e=>{x(e.target.value)},onIconClick:()=>M()})]})]}),(0,g.jsx)($e,{id:"search-filters",className:"mt-3 mb-5 ml-5 !justify-start text-sm leading-[1.7]",options:[{id:"diagrams",label:n("common.diagrams"),value:!0},{id:"library",label:n("common.library"),value:!0}],onChange:(e,t)=>{let n=Object.assign({},j);n[e]=t,O(n)},values:j})]})]}),C]})}));var ir=function(e){return e[e.Project=0]="Project",e[e.Search=1]="Search",e[e.Library=2]="Library",e[e.DependencyTable=3]="DependencyTable",e}(ir||{});const sr=(0,r.forwardRef)(((e,t)=>{const{visible:n}=e,{t:a}=(0,G.useTranslation)(),o=(0,r.useContext)(l),{modal:i,safeExit:_}=De(Wo),[c,u]=(0,r.useState)(300),[m,b]=(0,r.useState)(!1),[p,h]=(0,r.useState)(ir.Project),f=[{menuItem:ir.Project,icon:Zo,title:a("common.project")},{menuItem:ir.Search,icon:d.faMagnifyingGlass,title:a("common.search")},{menuItem:ir.Library,icon:d.faBook,title:a("common.library")},{menuItem:ir.DependencyTable,icon:d.faSitemap,title:a("common.dependency_table"),onClick:()=>{ws(_,"")}}],w=e=>{e.onClick?(e.onClick(),b(!0)):(e.menuItem===p||m&&e.menuItem!==p)&&b(!m),h(e.menuItem)},y=e=>p===e&&!m;return null==o||o.useSubscription((e=>{e.type===s.OpenSearch&&(h(ir.Search),b(!1))})),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useImperativeHandle)(t,(()=>({collapse:()=>b(!0)}))),(0,g.jsxs)("div",{className:"h-full "+(n?"":"app-menu__parent--hidden"),children:[i,(0,g.jsx)("nav",{id:"app-menu-sidenav",className:`absolute h-full ${n?"":"!hidden"} bg-dark-primary group fixed left-0 overflow-hidden shadow-[0_4px_12px_0_rgba(0,0,0,0.07),_0_2px_4px_rgba(0,0,0,0.05)]`,children:(0,g.jsxs)("div",{className:"flex h-full flex-row",children:[(0,g.jsx)("div",{style:{width:"50px"},className:"window__inner-border border-b-0 border-l-0 border-t-0",children:(0,g.jsx)("ul",{className:"relative m-0 list-none text-center text-lg",children:(()=>{const e=[];return f.forEach((t=>{e.push((0,g.jsx)("li",{className:"relative "+(y(t.menuItem)?"active":""),onClick:()=>w(t),"data-te-toggle":"tooltip","data-te-placement":"right",title:t.title,children:(0,g.jsx)(U,{icon:t.icon,className:y(t.menuItem)?"active":"",onClick:()=>w(t)})},t.menuItem))})),e})()})}),(0,g.jsx)(Yo.Resizable,{height:1/0,width:c,onResize:(e,t)=>{u(t.size.width)},resizeHandles:["e"],children:(0,g.jsxs)("div",{style:{width:`${c}px`,height:"100%"},className:"window__inner-border box border-b-0 border-l-0 border-t-0 "+(m?"hidden":""),children:[(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Project,children:(0,g.jsx)(Vo,{})}),(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Search,children:(0,g.jsx)(rr,{})}),(0,g.jsx)("div",{className:"h-full",hidden:p!==ir.Library,children:(0,g.jsx)(qo,{})})]})})]})}),(0,g.jsx)("div",{id:"slim-content",className:"flex h-full",style:{paddingLeft:m?"50px":`${c+50}px`},children:(0,g.jsx)("div",{className:"h-full w-full overflow-auto",children:e.children})})]})})),lr=Ze();function _r(e,t,n,a){const o=[];t.current=!0,lr.isMaximized().then((r=>{t.current=!1,o.push({id:"minimize-close",icon:d.faMinus,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.minimize()}),r?o.push({id:"restore-btn",icon:d.faWindowRestore,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.unmaximize()}):o.push({id:"maximize-btn",icon:d.faWindowMaximize,className:"text-accent-primary hover:bg-accent-third",onClick:()=>lr.maximize()}),o.push({id:"restore-close",icon:d.faXmark,className:"text-accent-primary hover:bg-red-600",onClick:()=>{n({id:"confirmSafeExitModal",title:`${a("common.confirmation")}`,body:`${a("common.question.confirm_close_app")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:a("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:a("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{lr.close()}}]})}}),e(o)}))}const cr=Ze(),dr={menuItemsProps:[]},ur=i().memo((e=>{const t=(0,a.useLocation)(),n=(0,a.useNavigate)(),{t:i}=(0,G.useTranslation)(),_=(0,r.useContext)(l),{modal:c,showModal:d,hideModal:u}=ce(),m=Xo(),b=Go((e=>e.project.value)),{routeDeepLink:p,modalSafeExit:h}=function(){const{t:e}=(0,G.useTranslation)(),{modal:t,safeExit:n}=De(Wo),i=(0,r.useContext)(l),_=(0,a.useLocation)();return{routeDeepLink:async function(t){console.debug("Routing deep link:",t);const a=o(t,Wo,((e,t)=>e.startsWith(t)));var r;if(a)if(null!=(r=a.data)&&r.requiresProject&&void 0===ps.getState().project.value)Be.toast.error(e("deep_link.required_open_project",{deepLink:t}));else{const o=t.replace(a.path,"");switch(a.path){case Bo:try{await fs(o,"link",_.pathname,i,n)}catch(n){Be.toast.error(e("deep_link.invalid_diagram_path",{deepLink:t}))}break;case zo:{const a=o.split("/");1!==a.length||1===a.length&&0===a[0].replace(/ /gi,"").length?Be.toast.error(e("deep_link.invalid_dependency_table_path",{deepLink:t})):ws(n,a[0])}break;case Uo:if(_.pathname===Wo[xo].path||_.pathname.startsWith(Ao)){const a=o.split("/");a.length<2||a.length>3?Be.toast.error(e("deep_link.invalid_remote_diagram_path",{deepLink:t})):ys(n,a)}else Be.toast.error(e("deep_link.remote_diagrams_project_opened"));break;case Ho:const a=o.split("/");1!=a.length?Be.toast.error(e("deep_link.invalid_gh_authenticated_path",{deepLink:t})):null==i||i.emit({type:s.GitHubTokenChanged,data:{token:a[0]}});break;default:Be.toast.error(e("deep_link.unsupported_deep_link"))}}else Be.toast.error(e("deep_link.unsupported_deep_link"))},modalSafeExit:t}}(),[f,y]=(0,r.useState)([]),[v,x]=(0,r.useState)(dr),[j,O]=(0,r.useState)(!1),S=(0,r.useRef)(!0),E=(0,r.useRef)(!1),C=(0,r.useRef)({}),k=(0,r.useRef)(null);return(0,r.useEffect)((()=>{console.debug("Deep link initializing");const e=(0,Ve.v4)();C.current[e]={unsubscribed:!1},E.current=!0,console.debug(C.current);const t=(0,qe.onOpenUrl)((t=>{if(!C.current[e].unsubscribed){if(!E.current&&t&&t.length>0){const e=t[0];p(e)}console.debug("Deep link initialized"),E.current=!1,function(){for(const e of Object.keys(C.current))C.current[e].unsubscribed&&delete C.current[e]}()}}));return()=>{console.debug("Deep link unlisten"),t&&(C.current[e]={unsubscribed:!0},t.then((e=>e())))}}),[t]),(0,r.useEffect)((()=>{let e;return console.debug("Layout -> useEffect()"),f&&0!==f.length||(_r(y,S,d,i),e=cr.listen(Ke.TauriEvent.WINDOW_RESIZED,(()=>{console.debug(`Layout -> on window resized() ${S.current}`),S.current||_r(y,S,d,i)}))),()=>{e&&e.then((e=>e()))}}),[]),(0,r.useEffect)((()=>{console.debug("Location changed!",t.pathname);const e=o(t.pathname,Wo);var a;e?(x(e.titlebarMenuFactory?e.titlebarMenuFactory(i,_,n,t,{showModal:d,hideModal:u,dispatch:m,currentProjectRoot:null==b?void 0:b.project_settings.root}):dr),O(void 0!==e.isAppMenuVisible&&e.isAppMenuVisible),e.isAppMenuCollapsed&&(null==(a=k.current)||a.collapse())):(O(!0),x(dr))}),[t]),(0,g.jsxs)("div",{className:"container max-w-none",children:[c,h,(0,g.jsx)(w,{}),(0,g.jsx)(Be.ToastContainer,{autoClose:4e3,hideProgressBar:!0,closeOnClick:!0,pauseOnHover:!0,draggable:!0,theme:"dark",position:"bottom-right"}),(0,g.jsx)(ae,{}),(0,g.jsxs)(We,{children:[(0,g.jsx)(He,{rightButtonsProps:Qe.WEB_MODE?[]:f,icon:"mina-logo.svg",menuProps:v,title:(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"inline opacity-20",children:"Keadex Mina"}),(0,g.jsx)("div",{className:"inline ml-1 px-1 py-[0.10rem] bg-primary text-brand1 rounded text-sm",children:"v2"})]})}),(0,g.jsx)("div",{className:"absolute bottom-0 left-0 right-0 top-8 overflow-auto",children:(0,g.jsx)(sr,{visible:j,ref:k,children:(0,g.jsx)(a.Outlet,{})})})]})]})})),gr=/^[A-Za-z0-9 ]+$/,mr=/^[A-Za-z0-9 \.\-_/?!]+$/,br=/^[A-Za-z0-9.-]+$/,pr=/^[A-Za-z0-9_]+$/;function hr(e,t,n){let a=`${Wo[Uo].path}${btoa(e)}/${btoa(t)}`;return n&&(a=a.concat(`/${n}`)),a}const fr=e=>{const{t}=(0,G.useTranslation)(),n=(0,a.useNavigate)(),{alias:o}=(0,a.useParams)(),[i,s]=(0,r.useState)(null!=o?o:""),[l,_]=(0,r.useState)(!1),[c,m]=(0,r.useState)(),b=(0,r.useRef)(null),p=[{accessorKey:"name",label:t("common.diagram_name"),size:400,className:"max-w-[400px] truncate",enableResizing:!1},{accessorKey:"humanType",label:t("common.diagram_type"),size:300,className:"max-w-[300px] truncate",enableResizing:!1},{id:"dependents",accessorFn:e=>{var t;return null==(t=e.dependents)?void 0:t.join(", ")},label:t("common.dependent_elements"),className:"text-ellipsis",enableResizing:!1}],h={data:null!=c?c:[],columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),pageCount:1};function f(){return i&&i.replace(/ /gi,"").length>0}async function w(e){_(!0),async function(e){return(0,qa.invoke)("search_diagram_element_alias",{alias:e,includeDiagramsDir:!0,includeLibraryDir:!1,limit:1e4})}(e).then((async t=>{if(_(!1),t&&t.count>0){var n;const a=[];for(const n of Object.keys(t.results)){const t=await lo(n);if(t.diagram_name&&t.diagram_type){const n=await ro(t.diagram_name,t.diagram_type),o=await _o(e,t.diagram_name,t.diagram_type);a.push({name:t.diagram_name,type:t.diagram_type,humanType:Cn(t.diagram_type),link:n,dependents:o})}}m(a),null==(n=b.current)||n.setPageSize(a.length)}else m([])})).catch((e=>{console.error(e),_(!1),m([]),Be.toast.error(t("dependency_table.dependencies_retrieval_error",{errorMessage:e.msg}))}))}return(0,r.useEffect)((()=>{f()&&w(i)}),[]),(0,r.useEffect)((()=>{o&&(s(o),w(o))}),[o]),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 flex flex-col",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("common.dependency_table")}),(0,g.jsx)("div",{className:"w-full mt-5",children:t("dependency_table.description_feature")}),(0,g.jsxs)("div",{className:"w-full mt-10 flex",children:[(0,g.jsx)("div",{className:"w-96",children:(0,g.jsx)(ue,{type:"text",label:`${t("dependency_table.alias_hint")}`,className:"",value:i,allowedChars:pr,info:`${t("common.allowed_pattern")}: ${pr}`,onChange:e=>s(e.target.value),onKeyDown:function(e){"Enter"===e.key&&f()&&w(i)}})}),(0,g.jsx)(te,{disabled:!f(),className:"ml-5 h-fit mt-1 w-60",onClick:()=>w(i),children:l?(0,g.jsx)(q,{className:"icon !h-4 !w-4"}):t("common.generate")}),(0,g.jsxs)(te,{disabled:!f(),className:"ml-2 h-fit mt-1 w-60",onClick:()=>function(e){const n=function(e){return`${Wo[zo].path}${e}`}(e);(0,ho.writeText)(n),Be.toast.info(t("common.info.copied_to_clipboard"))}(i),children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faShareNodes}),(0,g.jsx)("span",{className:"ml-2",children:t("common.action.copy_deep_link")})]})]}),c&&c.length>0&&(0,g.jsx)("div",{className:"w-full mt-10",children:(0,g.jsx)(Y,{ref:b,defaultExpanded:!0,disableExpandControls:!0,hidePaginationControls:!0,columns:p,tableOptions:h,globalFilter:"",expandable:!1,onRowClick:(e,t)=>{if(t.name&&t.type){const e={diagramName:t.name,diagramType:t.type};n(Eo,{state:e})}}})}),c&&0===c.length&&(0,g.jsx)("div",{className:"w-full mt-10 text-center text-accent-primary",children:t("dependency_table.no_dependencies_found")})]})},wr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",yr="text-accent-secondary hover:text-accent-primary [&.active]:text-accent-primary disabled:hover:text-accent-secondary disabled:opacity-50 leading-6",vr=(0,r.forwardRef)(((e,t)=>{const{diagramCodeViewCommands:n}=e,a=Qe.AI_ENABLED,{t:o}=(0,G.useTranslation)(),{forceUpdate:i}=Ie();return(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,r.useImperativeHandle)(t,(()=>({forceUpdate:i}))),(0,g.jsx)("div",{id:"diagram-code-view-toolbar",className:"w-full z-[6]",children:(0,g.jsx)("div",{className:"p-3",children:(0,g.jsxs)("div",{className:"bg-primary flex w-full flex-1 rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{disabled:!1===(null==n?void 0:n.canUndo()),icon:d.faRotateLeft,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.undo").toString(),onClick:()=>{null==n||n.undo(),i()}}),(0,g.jsx)(U,{disabled:!1===(null==n?void 0:n.canRedo()),icon:d.faRotateRight,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.redo").toString(),onClick:()=>{null==n||n.redo(),i()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faCopy,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.copy").toString(),onClick:()=>{null==n||n.copy()}}),(0,g.jsx)(U,{icon:d.faCut,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.cut").toString(),onClick:()=>{null==n||n.cut()}}),(0,g.jsx)(U,{icon:d.faPaste,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.paste").toString(),onClick:()=>{null==n||n.paste()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faSearch,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.find").toString(),onClick:()=>{null==n||n.find()}}),(0,g.jsx)(U,{icon:d.faTerminal,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.commands").toString(),onClick:()=>{null==n||n.commands()}}),(0,g.jsx)(he,{}),(0,g.jsx)(h,{menuItemsProps:function(){const e=[{id:"dropdown-add-diagram-element",label:(0,g.jsx)("div",{className:`${wr} ${yr} text-base`,children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.add_diagram_element").toString()})}),isHeaderMenuItem:!0,buttonClassName:"!p-0 !bg-transparent",subMenuItems:[]}];return tt.forEach((t=>{var a;null==(a=e[0].subMenuItems)||a.push({id:`add-diagram-element-${(0,Me.kebabCase)(t)}`,label:o(`common.${(0,Me.snakeCase)(t)}`),onClick:()=>null==n?void 0:n.addDiagramElement(t)})})),e}()}),(0,g.jsx)(h,{menuItemsProps:[{id:"dropdown-library",label:(0,g.jsx)("div",{className:`${wr} ${yr}`,children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faBook,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("common.library").toString()})}),isHeaderMenuItem:!0,buttonClassName:"!p-0 !bg-transparent",subMenuItems:[{id:"add-to-library",label:o("diagram_editor.add_to_library"),onClick:()=>null==n?void 0:n.addToLibrary()},{id:"import-from-library",label:o("diagram_editor.import_from_library"),onClick:()=>null==n?void 0:n.importFromLibrary()}]}]}),(0,g.jsx)(U,{icon:d.faLink,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.link_to").toString(),onClick:()=>{null==n||n.addDiagramLink()}}),a&&(0,g.jsx)(U,{icon:d.faRobot,className:`${wr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:o("diagram_editor.ai_diagram_generator").toString(),onClick:()=>{null==n||n.openAI()}})]})})})})),xr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",jr=(0,r.forwardRef)(((e,t)=>{var n,a,o;const{diagramDesignViewCommands:i}=e,{t:s}=(0,G.useTranslation)(),{forceUpdate:l}=Ie();return(0,r.useImperativeHandle)(t,(()=>({forceUpdate:l}))),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,g.jsx)("div",{id:"diagram-design-view-toolbar",className:"w-full z-[6]",children:(0,g.jsx)("div",{className:"p-3",children:(0,g.jsxs)("div",{className:"bg-primary flex w-full flex-1 rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{disabled:!1===(null==i||null==(n=i.current)?void 0:n.canUndo()),icon:d.faRotateLeft,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.undo").toString(),onClick:()=>{var e;null==i||null==(e=i.current)||e.undo(),l()}}),(0,g.jsx)(U,{disabled:!1===(null==i||null==(a=i.current)?void 0:a.canRedo()),icon:d.faRotateRight,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.redo").toString(),onClick:()=>{var e;null==i||null==(e=i.current)||e.redo(),l()}}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faGear,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:s("common.settings").toString(),onClick:()=>{var e,t;null==i||null==(e=i.current)||e.updateDiagramDesignViewSettings(null==i||null==(t=i.current)?void 0:t.diagramDesignViewSettings()),l()}}),(0,g.jsxs)("div",{className:`${xr} w-fit px-3 cursor-pointer flex truncate`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${s("diagram_editor.configure_auto_layout").toString()}`,onClick:()=>{var e,t,n,a,o,r,s;null==i||null==(e=i.current)||e.updateAutoLayoutOptions(null==i||null==(t=i.current)?void 0:t.isAutoLayoutEnabled(),null==i||null==(n=i.current)?void 0:n.autoLayoutOrientation(),null==i||null==(a=i.current)?void 0:a.isGenerateOnlyStraightArrowsEnabled(),null==i||null==(o=i.current)?void 0:o.ranksep(),null==i||null==(r=i.current)?void 0:r.subgraphInnerMargin(),null==i||null==(s=i.current)?void 0:s.subgraphOuterMargin()),l()},children:[(0,g.jsx)("div",{className:"my-auto w-3 h-3 mr-2 rounded-full "+(null!=i&&null!=(o=i.current)&&o.isAutoLayoutEnabled()?"bg-green-700":"bg-red-700")}),(0,g.jsx)("span",{className:"my-auto truncate",children:s("common.auto_layout")})]}),(0,g.jsx)(he,{}),(0,g.jsx)(U,{icon:d.faFileExport,className:`${xr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${s("common.export").toString()} ${s("common.diagram").toString().toLowerCase()}`,onClick:()=>{var e;null==i||null==(e=i.current)||e.exportDiagram()}})]})})})})),Or=i().memo((e=>{var t,n,a;const{tagsDirection:o,scrollable:r,diagram:i,handleDiagramHeaderClick:s}=e;return(null==i?void 0:i.diagram_type)&&(0,g.jsxs)("div",{className:"w-full flex flex-col items-center py-1 pr-3 "+(s?"cursor-pointer":""),onClick:function(){s&&s()},children:[(0,g.jsxs)("div",{className:"flex w-full my-auto "+("bottom"===o?"flex-col":""),children:[(0,g.jsxs)("div",{className:"text-lg text-accent-primary grow truncate",children:[Cn(i.diagram_type)," Diagram -"," ",i.diagram_name]}),(null==(t=i.diagram_spec)?void 0:t.tags)&&(0,g.jsx)("div",{className:"bottom"===o?"mt-2 mb-5":"",children:(0,g.jsx)(je,{tags:i.diagram_spec.tags,className:"right"===o?"float-right top-1/2 -translate-y-1/2":""})})]}),(null==(n=i.diagram_spec)?void 0:n.description)&&(0,g.jsx)("div",{className:"w-full text-sm whitespace-break-spaces "+(r?"":"line-clamp-3"),children:null==(a=i.diagram_spec)?void 0:a.description})]})})),Sr={diagram_name:"",diagram_type:Je[0],diagram_spec:{uuid:(0,Ve.v4)(),tags:[],shapes:[],elements_specs:[],auto_layout_enabled:!0,auto_layout_orientation:"TopToBottom",auto_layout_only_straight_arrows:!0,auto_layout_ranksep:1,auto_layout_subgraph_inner_margin:0,auto_layout_subgraph_outer_margin:6.5,grid_enabled:!1}},Er=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(Sr),[m,b]=(0,r.useState)([]),[p,h]=(0,r.useState)(!1);function f(e){b(e.detail.tagify.value.map((e=>e.value)))}return(0,r.useEffect)((()=>{e.diagramName&&e.diagramType&&async function(e,t){return(0,qa.invoke)("get_diagram",{diagramName:e,diagramType:t})}(e.diagramName,e.diagramType).then((e=>{var t,n;u(e),b(null!=(t=null==(n=e.diagram_spec)?void 0:n.tags)?t:[])}))}),[e.diagramName,e.diagramType]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body flex flex-col",children:[(0,g.jsx)("span",{className:"text-brand1 font-bold text-lg",children:c("common.general")}),(0,g.jsx)(ue,{type:"text",disabled:"edit"===e.mode||"readonly"===e.mode,label:`${c("common.name")}*`,classNameRoot:"mt-2",value:d.diagram_name,allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,onChange:e=>u(Object.assign({},d,{diagram_name:e.target.value}))}),(0,g.jsx)(me,{id:"diagram-type-selector",disabled:"edit"===e.mode||"readonly"===e.mode,label:`${c("common.type")}*`,className:"mt-6",value:d.diagram_type,options:Je.map((e=>({label:Cn(e),value:e}))),onChange:e=>u(Object.assign({},d,{diagram_type:e.target.value}))}),(0,g.jsx)(we,{disabled:"readonly"===e.mode,label:`${c("common.description")}`,classNameRoot:"mt-6",value:null!=(t=null==(n=d.diagram_spec)?void 0:n.description)?t:"",onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{description:e.target.value})}))}),(0,g.jsx)(Ee,{disabled:"readonly"===e.mode,id:"diagram-tags",className:"mt-6",label:c("common.tags"),tags:m,settings:{callbacks:{add:f,remove:f},editTags:!1}}),(0,g.jsx)("span",{className:"text-brand1 font-bold mt-6 text-lg "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:c("common.auto_layout")}),(0,g.jsxs)("div",{className:"flex flex-row mt-5 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:[(0,g.jsxs)("span",{children:[`${c("common.enabled")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:null==(a=d.diagram_spec)?void 0:a.auto_layout_enabled,options:[{label:c("common.yes"),value:!0},{label:c("common.no"),value:!1}],onChange:e=>{u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_enabled:e})}))}})]}),(0,g.jsxs)("div",{className:"flex flex-row mt-5 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),children:[(0,g.jsxs)("span",{children:[`${c("diagrams_settings.gen_only_straight_arrows")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-straight-arrows-status",className:"ml-5",value:null==(o=d.diagram_spec)?void 0:o.auto_layout_only_straight_arrows,options:[{label:c("common.yes"),value:!0},{label:c("common.no"),value:!1}],onChange:e=>{u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_only_straight_arrows:e})}))}})]}),(0,g.jsx)(me,{id:"autolayout-orientation-selector",label:`${c("common.orientation")}*`,className:"mt-8 "+("edit"===e.mode||"readonly"===e.mode?"hidden":""),value:null==(i=d.diagram_spec)?void 0:i.auto_layout_orientation,options:ct.map((e=>({label:e,value:e}))),onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_orientation:e.target.value})}))}),(0,g.jsx)(ue,{id:"autolayout-ranksep",type:"number",label:"ranksep*",min:0,classNameRoot:"mt-6",info:`${c("diagrams_settings.ranksep_description")}`,value:null==(s=d.diagram_spec)?void 0:s.auto_layout_ranksep,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_ranksep:Number.parseFloat(e.target.value)})}))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-inner-margin",type:"number",label:`${c("diagrams_settings.subgraph_inner_margin")}`,min:0,classNameRoot:"mt-6",value:null==(l=d.diagram_spec)?void 0:l.auto_layout_subgraph_inner_margin,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_subgraph_inner_margin:Number.parseFloat(e.target.value)})}))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-outer-margin",type:"number",label:`${c("diagrams_settings.subgraph_outer_margin")}`,min:0,classNameRoot:"mt-6",value:null==(_=d.diagram_spec)?void 0:_.auto_layout_subgraph_outer_margin,onChange:e=>u(Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{auto_layout_subgraph_outer_margin:Number.parseFloat(e.target.value)})}))})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:p,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0}].concat("readonly"!==e.mode?[{key:"button-create",children:(0,g.jsx)("span",{children:"edit"===e.mode?c("common.save"):c(`common.${e.mode}`)}),disabled:!d.diagram_name||!d.diagram_type,isLoading:p,onClick:function(){const t=Object.assign({},d,{diagram_spec:Object.assign({},d.diagram_spec,{tags:m})});"create"===e.mode||"duplicate"===e.mode?(h(!0),async function(e){return(0,qa.invoke)("create_diagram",{newDiagram:e})}(t).then((n=>{h(!1),n&&(Be.toast.info(c("common.info.done")),go({data:{Diagram:t},hook_type:"onDiagramCreated"}),e.forceUpdate(),e.hideModal())})).catch((e=>{h(!1),Be.toast.error(e.msg)}))):"edit"===e.mode&&t.diagram_name&&t.diagram_type&&t.raw_plantuml&&t.diagram_spec&&(h(!0),ao(t.diagram_name,t.diagram_type,t.raw_plantuml,t.diagram_spec).then((()=>{h(!1),Be.toast.info(c("common.info.done")),go({data:{Diagram:t},hook_type:"onDiagramSaved"}),e.forceUpdate(),e.hideModal()})).catch((e=>{h(!1),Be.toast.error(e.msg)})))}}]:[]))})]})},Cr="container-link-bg hover:bg-secondary disabled:hover:bg-transparent w-10 h-10",kr=e=>{const{diagram:t}=e,{t:n}=(0,G.useTranslation)(),{forceUpdate:a}=Ie(),{modal:o,showModal:i,hideModal:s}=ce();return(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).map((e=>new oe.Tooltip(e,{trigger:"hover"})))}),[]),(0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll('[data-te-toggle="tooltip"]')).forEach((e=>{const t=oe.Tooltip.getInstance(e);null==t||t.enable(),null==t||t.hide()}))})),(0,g.jsxs)("div",{id:"diagram-editor-toolbar",className:"w-full z-[6] flex",children:[o,(0,g.jsx)("div",{className:"py-1 px-3",children:(0,g.jsxs)("div",{className:"h-full flex flex-1 items-center rounded text-sm drop-shadow-md",children:[(0,g.jsx)(U,{icon:d.faFloppyDisk,className:`${Cr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${n("common.save").toString()} ${n("common.diagram").toString().toLowerCase()}`,onClick:()=>{e.saveDiagram()}}),(0,g.jsx)(U,{icon:d.faShareNodes,className:`${Cr}`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:n("diagram_editor.copy_deep_link"),onClick:async function(){if(null!=t&&t.diagram_name&&null!=t&&t.diagram_type){const e=await async function(e,t){const n=await ro(e,t);return`${Wo[Bo].path}${n}`}(null==t?void 0:t.diagram_name,null==t?void 0:t.diagram_type);(0,ho.writeText)(e),Be.toast.info(n("common.info.copied_to_clipboard"))}}}),(0,g.jsx)(U,{icon:d.faXmark,className:`${Cr} hover:!bg-red-600`,"data-te-toggle":"tooltip","data-te-placement":"bottom",title:`${n("common.close").toString()} ${n("common.diagram").toString().toLowerCase()}`,onClick:()=>{e.closeDiagram()}})]})}),(0,g.jsx)(Or,{diagram:t,handleDiagramHeaderClick:function(){t&&t.diagram_type&&t.diagram_name&&i({id:"showInfoDiargamModal",title:`${Cn(t.diagram_type)} ${n("common.diagram")} - ${t.diagram_name}`,body:(0,g.jsx)(Er,{diagramName:t.diagram_name,diagramType:t.diagram_type,mode:"readonly",hideModal:s,forceUpdate:a}),buttons:!1})},tagsDirection:"right",scrollable:!1})]})},Nr=require("@monaco-editor/react");var Tr=n.n(Nr);const Rr=require("monaco-editor"),Lr=i().memo((e=>{const{aiHidden:t,diagram:n,addCodeAtCursorPosition:a,closeAI:o}=e,[i,s]=(0,r.useState)(""),[l,_]=(0,r.useState)(!1),{t:c}=(0,G.useTranslation)(),u=Go((e=>e.project.value));return(0,g.jsxs)("div",{className:(t?"scale-0 opacity-0":"scale-100 opacity-100")+" z-[5] absolute bottom-0 left-0 right-0 text-center transition delay-150 duration-300 ease-in-out",children:[(0,g.jsx)(U,{className:"absolute right-0 z-[1] -mt-3 mr-6 text-xl",icon:d.faXmark,onClick:o}),(0,g.jsx)("div",{className:"content-center px-7",children:(0,g.jsx)(we,{className:"resize-none",onChange:e=>s(e.target.value),value:i,label:c("diagram_editor.ai_hint"),disabled:void 0===n})}),(0,g.jsx)(te,{className:"relative -top-6",onClick:()=>async function(){var e,t;null!=u&&null!=(e=u.project_settings.ai_settings)&&e.api_key&&0!==u.project_settings.ai_settings.api_key.length?null!=u&&null!=(t=u.project_settings.ai_settings)&&t.api_base_url&&0!==u.project_settings.ai_settings.api_base_url.length?void 0!==n&&(_(!0),await async function(e){return(0,qa.invoke)("generate_plantuml",{description:e})}(i).then((e=>{Be.toast.success(`${c("diagram_editor.plantuml_generated")}!`),n.raw_plantuml=e,a(e),_(!1)})).catch((e=>{Be.toast.error(e.msg),_(!1)}))):Be.toast.error(c("common.error.missing_ai_api_base_url")):Be.toast.error(c("common.error.missing_ai_api_key"))}(),disabled:l,children:l?`${c("common.generating")}...`:c("common.generate")})]})})),Mr=i().memo((e=>{var t;let{limit:n}=e;void 0===n&&(n=4);const{t:a}=(0,G.useTranslation)(),[o,i]=(0,r.useState)([{label:"",value:""}]),[s,l]=(0,r.useState)();function _(e,t,o){const r=null!=s?s:o;let l=e?[{label:""===t?`${a("common.unlink")}...`:t,value:t}]:[];if(r){const e=r.filter((e=>""===t||e.toLowerCase().includes(t.toLowerCase())));l=l.concat(e.map((e=>({label:e,value:e}))))}l.length>=n&&(l=l.slice(0,n)),i(l)}function c(t){s&&s.includes(t)?e.onDiagramSelected(t):e.onDiagramSelected()}return(0,r.useEffect)((()=>{no().then((async t=>{var n;let a=[];for(const e in t){const n=e;a=a.concat(await Promise.all(t[n].map((async e=>await ro(e,n)))))}l(a),_(!e.value||""===e.value,null!=(n=e.value)?n:"",a)}))}),[]),(0,g.jsx)(pe,{disabled:e.disabled,id:"diagram-picker",label:`${a("common.action.link_existing_diagram")}`,className:`${null!=(t=e.className)?t:""} mt-6`,value:e.value,options:o,onTyping:e=>{_(!0,e)},onChange:e=>{c(e.target.value)},onDefaultOptionSelected:e=>{c(e)}})})),$r=e=>{var t;const{className:n,diagramPickerClassName:a,disabled:o,link:i,hideButtons:s,onLinkConfirmed:l,onLinkChanged:_}=e,{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(p("internal",i)),[m,b]=(0,r.useState)(null!=(t=p("external",i))?t:[]);function p(e,t){if(t){const n=t.split(";").filter((t=>"internal"===e?!Qt(t):Qt(t)));if("internal"===e&&n.length>0)return n[0];if("external"===e)return n}}function h(){const e=[];return d&&e.push(d),m&&e.push(...m),e.length>0?e.join(";"):void 0}function f(e){b(e.detail.tagify.value.map((e=>e.value)).filter((e=>Qt(e))))}return(0,r.useEffect)((()=>{_&&_(h())}),[d,m]),(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:`modal__body ${null!=n?n:""}`,children:(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)(Mr,{disabled:o,className:`!mb-0 !mt-4 !p-0 ${null!=a?a:""}`,value:d,onDiagramSelected:function(e){u(e)}}),(0,g.jsx)(Ee,{id:"diagram-linker-external-links",disabled:o,className:"mt-6 cursor-text",label:c("common.external_links"),tags:m,settings:{callbacks:{add:f,remove:f},maxTags:5,editTags:!1}}),(0,g.jsx)("div",{className:"text-sm px-3",children:c("diagram_editor.external_links_info",{maxNumExternalLinks:5,allowedLinks:dt.map((e=>e.replace("://",""))).join(", "),allowedVariables:Object.keys(ut).map((e=>en(e))).join(", ")})})]})}),!s&&(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-create",children:(0,g.jsx)("span",{children:c("common.confirm")}),onClick:()=>{l&&l(h())}}])})]})};function Ir(e){return""===e.base_data.description&&(e.base_data.description=void 0),"technology"in e&&""===e.technology&&(e.technology=void 0),e}function Dr(e,t){t((t=>{return Object.assign({},t,{base_data:Object.assign({},null==t?void 0:t.base_data,{tags:(n=e.detail.tagify.value.map((e=>e.value)),n&&n.length>0?n.join("+"):void 0)})});var n}))}const Ar={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""}},Pr=e=>{var t,n,a,o,i,s;const{t:l}=(0,G.useTranslation)(),_=Xo(),[c,d]=(0,r.useState)(e.libraryElement?e.libraryElement:Ar),[u,m]=(0,r.useState)(!1);function b(){var e,t;return!(null!=c&&null!=(e=c.base_data)&&e.alias&&null!=c&&null!=(t=c.base_data)&&t.label&&c.person_type)}return(0,r.useEffect)((()=>{Ar.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==c||null==(t=c.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${l("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${l("common.allowed_pattern")}: ${pr}`,value:null==c||null==(n=c.base_data)?void 0:n.alias,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${l("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${l("common.allowed_pattern")}: ${gr}`,value:null==c||null==(a=c.base_data)?void 0:a.label,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${l("common.type")}*`,className:"mt-6",value:null==c?void 0:c.person_type,options:[{label:"",value:""}].concat(nt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e})))),onChange:e=>d(Object.assign({},c,{person_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-person-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:l("common.tags"),tags:null!=(o=Zn(c.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,d),remove:e=>Dr(e,d)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{disabled:!e.enableEdit,label:l("common.description"),className:"mt-6",value:null==c||null==(i=c.base_data)?void 0:i.description,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{description:e.target.value})}))}),"serializer"!==e.mode&&(0,g.jsx)(we,{disabled:!e.enableEdit,label:`${l("common.notes")}`,className:"mt-6",value:null==c||null==(s=c.base_data)?void 0:s.notes,onChange:e=>d(Object.assign({},c,{base_data:Object.assign({},null==c?void 0:c.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(b()?"block":"hidden"),children:["* ",l("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:u,children:(0,g.jsx)("span",{children:l("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:l("common.save")}),disabled:b(),isLoading:u,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Person:Ir(c)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(m(!0),uo({Person:e.libraryElement},{Person:Ir(c)}).then((t=>{var n,a;if(m(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});_(Ga(n)),Be.toast.info(l("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;m(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(m(!0),co({Person:Ir(c)}).then((t=>{var n,a;if(m(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});_(Ga(n)),Be.toast.info(l("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;m(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Fr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""}},Br=e=>{var t,n,a,o,i,s,l;const{t:_}=(0,G.useTranslation)(),c=Xo(),[d,u]=(0,r.useState)(e.libraryElement?e.libraryElement:Fr),[m,b]=(0,r.useState)(!1);function p(){var e,t;return!(null!=d&&null!=(e=d.base_data)&&e.alias&&null!=d&&null!=(t=d.base_data)&&t.label&&d.system_type)}return(0,r.useEffect)((()=>{Fr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==d||null==(t=d.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${_("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${_("common.allowed_pattern")}: ${pr}`,value:null==d||null==(n=d.base_data)?void 0:n.alias,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${_("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${_("common.allowed_pattern")}: ${gr}`,value:null==d||null==(a=d.base_data)?void 0:a.label,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${_("common.type")}*`,className:"mt-6",value:null==d?void 0:d.system_type,options:[{label:"",value:""}].concat([...new Set(rt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>u(Object.assign({},d,{system_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-software-system-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:_("common.tags"),tags:null!=(o=Zn(d.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,u),remove:e=>Dr(e,u)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"software-system-description",disabled:!e.enableEdit,label:_("common.description"),className:"mt-6",value:null==d||null==(i=d.base_data)?void 0:i.description,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==d||null==(s=d.base_data)?void 0:s.link,onLinkChanged:e=>{u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"software-system-note",disabled:!e.enableEdit,label:`${_("common.notes")}`,className:"mt-6",value:null==d||null==(l=d.base_data)?void 0:l.notes,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(p()?"block":"hidden"),children:["* ",_("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:m,children:(0,g.jsx)("span",{children:_("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:_("common.save")}),disabled:p(),isLoading:m,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({SoftwareSystem:Ir(d)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(b(!0),uo({SoftwareSystem:e.libraryElement},{SoftwareSystem:Ir(d)}).then((t=>{var n,a;if(b(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});c(Ga(n)),Be.toast.info(_("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;b(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(b(!0),co({SoftwareSystem:Ir(d)}).then((t=>{var n,a;if(b(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});c(Ga(n)),Be.toast.info(_("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;b(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},zr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""},technology:""},Ur=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),d=Xo(),[u,m]=(0,r.useState)(e.libraryElement?e.libraryElement:zr),[b,p]=(0,r.useState)(!1);function h(){var e,t;return!(null!=u&&null!=(e=u.base_data)&&e.alias&&null!=u&&null!=(t=u.base_data)&&t.label&&u.container_type)}return(0,r.useEffect)((()=>{zr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==u||null==(t=u.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${c("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==u||null==(n=u.base_data)?void 0:n.alias,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==u||null==(a=u.base_data)?void 0:a.label,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==u?void 0:u.container_type,options:[{label:"",value:""}].concat([...new Set(ot.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>m(Object.assign({},u,{container_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(o=null==u?void 0:u.technology)?o:"",onChange:e=>m(Object.assign({},u,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-container-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(i=Zn(u.base_data.tags))?i:[],settings:{callbacks:{add:e=>Dr(e,m),remove:e=>Dr(e,m)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"container-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==u||null==(s=u.base_data)?void 0:s.description,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==u||null==(l=u.base_data)?void 0:l.link,onLinkChanged:e=>{m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"container-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==u||null==(_=u.base_data)?void 0:_.notes,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(h()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:b,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:h(),isLoading:b,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Container:Ir(u)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(p(!0),uo({Container:e.libraryElement},{Container:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(p(!0),co({Container:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Hr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",description:"",notes:""},technology:""},Wr=e=>{var t,n,a,o,i,s,l,_;const{t:c}=(0,G.useTranslation)(),d=Xo(),[u,m]=(0,r.useState)(e.libraryElement?e.libraryElement:Hr),[b,p]=(0,r.useState)(!1);function h(){var e,t;return!(null!=u&&null!=(e=u.base_data)&&e.alias&&null!=u&&null!=(t=u.base_data)&&t.label&&u.component_type)}return(0,r.useEffect)((()=>{Hr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==u||null==(t=u.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${c("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==u||null==(n=u.base_data)?void 0:n.alias,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==u||null==(a=u.base_data)?void 0:a.label,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==u?void 0:u.component_type,options:[{label:"",value:""}].concat([...new Set(at.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>m(Object.assign({},u,{component_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(o=null==u?void 0:u.technology)?o:"",onChange:e=>m(Object.assign({},u,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-component-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(i=Zn(u.base_data.tags))?i:[],settings:{callbacks:{add:e=>Dr(e,m),remove:e=>Dr(e,m)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"component-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==u||null==(s=u.base_data)?void 0:s.description,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{description:e.target.value})}))}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==u||null==(l=u.base_data)?void 0:l.link,onLinkChanged:e=>{m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"component-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==u||null==(_=u.base_data)?void 0:_.notes,onChange:e=>m(Object.assign({},u,{base_data:Object.assign({},null==u?void 0:u.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(h()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",disabled:b,children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:h(),isLoading:b,onClick:()=>{"serializer"===e.mode?e.onElementCreated&&(e.onElementCreated({Component:Ir(u)}),e.hideModal()):e.project&&(e.libraryElement&&"createLibraryElement"!==e.mode?(p(!0),uo({Component:e.libraryElement},{Component:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))):(p(!0),co({Component:Ir(u)}).then((t=>{var n,a;if(p(!1),null!=(n=e.project)&&n.project_settings&&null!=(a=e.project)&&a.project_library){const n=Object.assign({},e.project,{project_library:t});d(Ga(n)),Be.toast.info(c("common.info.done")),e.forceUpdate&&e.forceUpdate(),e.hideModal()}})).catch((e=>{var t;p(!1),Be.toast.error(null!=(t=e.msg)?t:e)}))))}}])})]})},Kr=function(e,t,n,a,o,r,i,s,l){var _;const c=`${null==(_=n.base_data)?void 0:_.alias}`;return{menuItemsProps:[{isHeaderMenuItem:!0,id:c,label:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faEllipsisH}),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:`${c}_open`,label:e("common.edit").toString(),onClick:function(){o("u",n,a,!0)}},{isHeaderMenuItem:!1,id:`${c}_delete`,label:e("common.delete").toString(),onClick:function(){i({id:"condirmDeleteElement",title:e("common.confirmation").toString(),body:e("common.question.confirm_delete_element").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.no")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.yes")}),className:"button--dangerous",onClick:()=>{n.base_data.uuid&&async function(e,t){return(0,qa.invoke)("delete_library_element",{uuidElement:e,elementType:t})}(n.base_data.uuid,t).then((()=>{Be.toast.info(e("common.info.done")),l(),s()})).catch((t=>{Be.toast.error(e("common.error.cannot_delete_element",{errorMessage:t.msg}))}))}}]})}},{isHeaderMenuItem:!1,id:`${c}_check-dependencies`,label:e("common.check_dependencies").toString(),onClick:function(){var e;null!=(e=n.base_data)&&e.alias&&r(n.base_data.alias)}}]}]}},Xr=["menu"],Gr=e=>{const{c4ElementType:t,pageSize:n,embedMode:a,onRowClick:o}=e,{t:s}=(0,G.useTranslation)(),{forceUpdate:l,updatedCounter:_}=Ie(),m=(0,r.useRef)(null),{modal:b,showModal:p,hideModal:h}=ce(),{modal:f,safeExit:w}=De(Wo),y=Go((e=>e.project.value)),[v,x]=(0,r.useState)([]),[j,O]=i().useState(""),S=function(e){const t=`${(0,Me.snakeCase)(e).toLowerCase()}`,n=`${t}s`,a=`${t.replace("software_","")}_type`;let o=Pr;switch(e){case"Person":o=Pr;break;case"Container":o=Ur;break;case"Component":o=Wr;break;case"SoftwareSystem":o=Br}return{accessor:n,i18nKey:t,typeColumnId:a,typeAccessorFn:t=>{var n,a,o,r,i,s,l,_;let c="";switch(e){case"Person":c=null!=(n=null==(a=t.person_type)?void 0:a.toString())?n:"";break;case"Container":c=null!=(o=null==(r=t.container_type)?void 0:r.toString())?o:"";break;case"Component":c=null!=(i=null==(s=t.component_type)?void 0:s.toString())?i:"";break;case"SoftwareSystem":c=null!=(l=null==(_=t.system_type)?void 0:_.toString())?l:""}return(0,Me.capitalCase)((0,Me.noCase)(c))},modal:o}}(t),E=[{accessorKey:"base_data.alias",label:s("common.alias")},{accessorKey:"base_data.label",label:s("common.label")},{id:S.typeColumnId,accessorFn:S.typeAccessorFn,label:s("common.type")},{accessorKey:"base_data.description",label:s("common.description")}];a||E.push({accessorKey:"menu",label:""}),"Component"!==t&&"Container"!==t||E.splice(2,0,{accessorKey:"technology",label:s("common.technology")});const k={data:v,columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),enableColumnResizing:!0,columnResizeMode:"onChange"};function N(e,n,a,o=!1){let r="";switch(e){case"c":r=`${s("common.new")} ${s(`common.${S.i18nKey}`)}`;break;case"u":r=`${s("common.edit")} ${s(`common.${S.i18nKey}`)}`}p({id:`${t.toLowerCase()}Modal`,title:r,body:(0,g.jsx)(S.modal,{enableEdit:o,project:a,libraryElement:n,hideModal:h,forceUpdate:l,diagramAliases:[]}),buttons:!1})}function T(e){ws(w,e)}return(0,r.useEffect)((()=>{(async function(e){return(0,qa.invoke)("list_library_elements",{filterC4ElementType:e})})(t).then((e=>{var a;x(e[S.accessor].map((e=>Object.assign({},e,{menu:(0,g.jsx)(Z,{menuOptions:Kr(s,t,e,y,N,T,p,h,l).menuItemsProps})})))),null==(a=m.current)||a.setPageSize(void 0!==n?n:e[S.accessor].length)})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))}),[s,_,t,n]),(0,g.jsxs)("div",{className:"h-full w-full p-3",children:[b,f,(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none "+(a?"hidden":""),children:c()(s(`common.${S.i18nKey}`))}),(0,g.jsx)("div",{className:(a?"w-full":"ml-5 w-64")+" inline-block",children:(0,g.jsx)(J,{onChange:e=>O(e.target.value)})}),(0,g.jsx)("div",{className:"flex-grow "+(a?"hidden":""),children:(0,g.jsxs)(te,{className:"float-right bg-red-400",onClick:()=>{N("c",void 0,y,!0)},children:[(0,g.jsx)("span",{children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus})}),(0,g.jsx)("span",{className:"ml-1",children:`${s("common.create")} ${s(`common.${S.i18nKey}`)}`})]})})]}),(0,g.jsx)("div",{className:"home-project w-full pb-4 pt-4",children:(0,g.jsx)(Y,{ref:m,defaultExpanded:!0,disableExpandControls:!0,columns:E,tableOptions:k,globalFilter:j,hidePaginationControls:void 0===n,expandable:!1,onRowClick:(e,t)=>{o?o(e,t):N("u",C(t,Xr),y,!0)},suppressRowClickColIDs:["menu"]})})]})},Yr=["menu"],Zr=i().memo((e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)("Person");return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body flex h-[500px] flex-col",children:[(0,g.jsx)(me,{id:"element-type-selector",label:`${t("diagram_editor.select_element_type_to_import")}`,className:"mx-3 mt-6",value:n,options:[...new Set(et.map((e=>({label:c()(kn(e)),value:e}))))],onChange:e=>a(e.target.value)}),(0,g.jsx)(Gr,{c4ElementType:n,pageSize:5,embedMode:!0,onRowClick:function(t,a){const o=C(a,Yr);let r;switch(n){case"Person":r={Person:o};break;case"SoftwareSystem":r={SoftwareSystem:o};break;case"Container":r={Container:o};break;case"Component":r={Component:o}}r&&(e.onLibraryElementSelected(r),e.hideModal())}})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0}])})]})})),qr=require("monaco-editor/esm/vs/platform/quickinput/common/quickInput"),Vr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",notes:""},sub_elements:[]},Qr=e=>{var t,n,a,o,i,s;const{t:l}=(0,G.useTranslation)(),[_,c]=(0,r.useState)(e.libraryElement?e.libraryElement:Vr);function d(){var e,t;return!(null!=_&&null!=(e=_.base_data)&&e.alias&&null!=_&&null!=(t=_.base_data)&&t.label&&_.boundary_type)}return(0,r.useEffect)((()=>{Vr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==_||null==(t=_.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${l("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${l("common.allowed_pattern")}: ${pr}`,value:null==_||null==(n=_.base_data)?void 0:n.alias,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${l("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${l("common.allowed_pattern")}: ${gr}`,value:null==_||null==(a=_.base_data)?void 0:a.label,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${l("common.type")}*`,className:"mt-6",value:null==_?void 0:_.boundary_type,options:[{label:"",value:""}].concat([...new Set(it.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>c(Object.assign({},_,{boundary_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-boundary-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:l("common.tags"),tags:null!=(o=Zn(_.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,c),remove:e=>Dr(e,c)},maxTags:5,editTags:!1}}),(0,g.jsx)($r,{hideButtons:!0,className:"p-0",disabled:!e.enableEdit,link:null==_||null==(i=_.base_data)?void 0:i.link,onLinkChanged:e=>{c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{link:e})}))}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"boundary-note",disabled:!e.enableEdit,label:`${l("common.notes")}`,className:"mt-6",value:null==_||null==(s=_.base_data)?void 0:s.notes,onChange:e=>c(Object.assign({},_,{base_data:Object.assign({},null==_?void 0:_.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(d()?"block":"hidden"),children:["* ",l("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:l("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:l("common.save")}),disabled:d(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({Boundary:_}),e.hideModal())}}])})]})},Jr={base_data:{uuid:(0,Ve.v4)(),alias:"",label:"",notes:""},sub_elements:[]},ei=e=>{var t,n,a,o,i;const{t:s}=(0,G.useTranslation)(),[l,_]=(0,r.useState)(e.libraryElement?e.libraryElement:Jr);function c(){var e,t;return!(null!=l&&null!=(e=l.base_data)&&e.alias&&null!=l&&null!=(t=l.base_data)&&t.label&&l.deployment_node_type)}return(0,r.useEffect)((()=>{Jr.base_data.uuid=(0,Ve.v4)()}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==l||null==(t=l.base_data)?void 0:t.uuid}),(0,g.jsx)(ue,{disabled:void 0!==e.libraryElement||!e.enableEdit,type:"text",label:`${s("common.alias")}*`,className:"mt-6",allowedChars:pr,info:`${s("common.allowed_pattern")}: ${pr}`,value:null==l||null==(n=l.base_data)?void 0:n.alias,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{alias:e.target.value.replace(" ","")})}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${s("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${s("common.allowed_pattern")}: ${gr}`,value:null==l||null==(a=l.base_data)?void 0:a.label,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${s("common.type")}*`,className:"mt-6",value:null==l?void 0:l.deployment_node_type,options:[{label:"",value:""}].concat([...new Set(st.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>_(Object.assign({},l,{deployment_node_type:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-deploy-node-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:s("common.tags"),tags:null!=(o=Zn(l.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,_),remove:e=>Dr(e,_)},maxTags:5,editTags:!1}}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"deployment-node-note",disabled:!e.enableEdit,label:`${s("common.notes")}`,className:"mt-6",value:null==l||null==(i=l.base_data)?void 0:i.notes,onChange:e=>_(Object.assign({},l,{base_data:Object.assign({},null==l?void 0:l.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(c()?"block":"hidden"),children:["* ",s("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:s("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:s("common.save")}),disabled:c(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({DeploymentNode:l}),e.hideModal())}}])})]})},ti={base_data:{uuid:(0,Ve.v4)(),label:"",notes:""},from:"",to:"",technology:""},ni=e=>{var t,n,a,o,i,s;const{libraryElement:l,diagramAliases:_}=e,{t:c}=(0,G.useTranslation)(),[d,u]=(0,r.useState)(l||ti),[m,b]=(0,r.useState)([]),[p,h]=(0,r.useState)([]);function f(e,t,n,a){let o=t?[{label:n,value:n}]:[];const r=(null!=_?_:a).filter((e=>!(e=>"legend"===e)(e)&&!(e=>e.includes(" -> "))(e)&&(!n||e.toLowerCase().includes(n.toLowerCase())))).sort(((e,t)=>e.localeCompare(t)));o=o.concat(r.map((e=>({label:e,value:e})))),o.length>=5&&(o=o.slice(0,5)),e(o)}function w(){var e;return!(null!=d&&d.from&&null!=d&&d.to&&null!=d&&null!=(e=d.base_data)&&e.label&&d.relationship_type)}return(0,r.useEffect)((()=>{var e,t;ti.base_data.uuid=(0,Ve.v4)(),f(b,!d.from||""===d.from,null!=(e=d.from)?e:"",_),f(h,!d.to||""===d.to,null!=(t=d.to)?t:"",_)}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!0,type:"text",label:"UUID",className:"mt-2",value:null==d||null==(t=d.base_data)?void 0:t.uuid}),(0,g.jsx)(pe,{id:"rel-from-autocomplete",disabled:void 0!==e.libraryElement||!e.enableEdit,label:`${c("common.from")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==d?void 0:d.from,options:m,onChange:e=>{u(Object.assign({},d,{from:e.target.value.replace(" ","")}))},onDefaultOptionSelected:e=>{u(Object.assign({},d,{from:e}))},onTyping:e=>{f(b,!0,e)}}),(0,g.jsx)(pe,{id:"rel-to-autocomplete",disabled:void 0!==e.libraryElement||!e.enableEdit,label:`${c("common.to")}*`,className:"mt-6",allowedChars:pr,info:`${c("common.allowed_pattern")}: ${pr}`,value:null==d?void 0:d.to,options:p,onChange:e=>u(Object.assign({},d,{to:e.target.value.replace(" ","")})),onDefaultOptionSelected:e=>{u(Object.assign({},d,{to:e}))},onTyping:e=>{f(h,!0,e)}}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.label")}*`,className:"mt-6",allowedChars:gr,info:`${c("common.allowed_pattern")}: ${gr}`,value:null==d||null==(n=d.base_data)?void 0:n.label,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{label:e.target.value})}))}),(0,g.jsx)(me,{id:"type-selector",disabled:!e.enableEdit,label:`${c("common.type")}*`,className:"mt-6",value:null==d?void 0:d.relationship_type,options:[{label:"",value:""}].concat([...new Set(lt.map((e=>({label:(0,Me.capitalCase)((0,Me.noCase)(e)),value:e}))))]),onChange:e=>u(Object.assign({},d,{relationship_type:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${c("common.technology")}`,className:"mt-6",allowedChars:mr,info:`${c("common.allowed_pattern")}: ${mr}`,value:null!=(a=null==d?void 0:d.technology)?a:"",onChange:e=>u(Object.assign({},d,{technology:e.target.value}))}),(0,g.jsx)(Ee,{id:"modal-cru-relationship-tags",disabled:!e.enableEdit,className:"mt-6 cursor-text",label:c("common.tags"),tags:null!=(o=Zn(d.base_data.tags))?o:[],settings:{callbacks:{add:e=>Dr(e,u),remove:e=>Dr(e,u)},maxTags:5,editTags:!1}}),(0,g.jsx)(we,{id:"relationship-description",disabled:!e.enableEdit,label:c("common.description"),className:"mt-6",value:null==d||null==(i=d.base_data)?void 0:i.description,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{description:e.target.value})}))}),"serializer"!==e.mode&&(0,g.jsx)(we,{id:"relationship-note",disabled:!e.enableEdit,label:`${c("common.notes")}`,className:"mt-6",value:null==d||null==(s=d.base_data)?void 0:s.notes,onChange:e=>u(Object.assign({},d,{base_data:Object.assign({},null==d?void 0:d.base_data,{notes:e.target.value})}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(w()?"block":"hidden"),children:["* ",c("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:c("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:c("common.save")}),disabled:w(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({Relationship:Ir(d)}),e.hideModal())}}])})]})},ai={tag:"",bg_color:"",font_color:"",border_color:"",legend_text:""},oi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.libraryElement?e.libraryElement:ai);function o(){return!(null!=n&&n.tag)}return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("common.tag")}*`,className:"mt-2",value:null==n?void 0:n.tag,onChange:e=>a(Object.assign({},n,{tag:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.bg_color")}`,className:"mt-6",value:null==n?void 0:n.bg_color,onChange:e=>a(Object.assign({},n,{bg_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.font_color")}`,className:"mt-6",value:null==n?void 0:n.font_color,onChange:e=>a(Object.assign({},n,{font_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.border_color")}`,className:"mt-6",value:null==n?void 0:n.border_color,onChange:e=>a(Object.assign({},n,{border_color:e.target.value}))}),(0,g.jsx)(ue,{disabled:!e.enableEdit,type:"text",label:`${t("plantuml.properties.legend_text")}`,className:"mt-6",value:null==n?void 0:n.legend_text,onChange:e=>a(Object.assign({},n,{legend_text:e.target.value}))}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(o()?"block":"hidden"),children:["* ",t("common.info.fill_required_fields")]})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),disabled:o(),onClick:()=>{"serializer"===e.mode&&e.onElementCreated&&(e.onElementCreated({AddElementTag:n}),e.hideModal())}}])})]})},ri="plantuml",ii={alias:{label:"alias",documentation:{value:'Unique identification of the element.\n\nExample: `"myAlias"`',isTrusted:!0}},label:{label:"label",documentation:{value:'Label of the element that will be rendered in the diagram.\n\nExample: `"My Label"`',isTrusted:!0}},description:{label:"?description",documentation:{value:'Optional description of the element that will be rendered in the diagram.\n\nExample: `"My description."`',isTrusted:!0}},type:{label:"?type",documentation:{value:'Optional custom type of a C4 Boundary or Deployment Node element.\n\nExample: `"My type"`',isTrusted:!0}},technology:{label:"?technology",documentation:{value:'Optional technology that the element is based on or uses to interact with another element.\n\nExample: `"My technology"`',isTrusted:!0}},from:{label:"from",documentation:{value:'Alias of the source element in the relationship.\n\nExample: `"fromAlias"`',isTrusted:!0}},to:{label:"to",documentation:{value:'Alias of the destination element in the relationship.\n\nExample: `"toAlias"`',isTrusted:!0}},sprite:{label:"?sprite",documentation:{value:'Optional PlantUML Sprite: a small graphic element that can be used in diagrams.\nSprites are ignored by Mina, but they are supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$sprite="person"`',isTrusted:!0}},tags:{label:"?tags",documentation:{value:'Optional tags for tagging the element.\n\nExample: `$tags="tag1&tag2"`',isTrusted:!0}},link:{label:"?link",documentation:{value:'Optional link for connecting the element to another Mina diagram. The syntax of the link string follows this pattern: `<DIAGRAM_TYPE>/<DIAGRAM_NAME>`.\n\nExample: `$link="system-context/my-diagram"`',isTrusted:!0}},tag:{label:"tag",documentation:{value:'Tag you want to use to customize elements.\n\nExample: `"my-tag"`',isTrusted:!0}},bgColor:{label:"?bgColor",documentation:{value:'Optional background color.\n\nExample: `$bgColor="#000000"`',isTrusted:!0}},fontColor:{label:"?fontColor",documentation:{value:'Optional font color.\n\nExample: `$fontColor="#000000"`',isTrusted:!0}},borderColor:{label:"?borderColor",documentation:{value:'Optional border color.\n\nExample: `$borderColor="#000000"`',isTrusted:!0}},shadowing:{label:"?shadowing",documentation:{value:'Optional boolean that indicates whether to add a shadow.\nShadowing is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$shadowing="true"`',isTrusted:!0}},shape:{label:"?shape",documentation:{value:"Optional PlantUML function or string to customize the shape.\nShape is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$shape=RoundedBoxShape()`",isTrusted:!0}},explicitTechnology:{label:"?technology",documentation:{value:'Optional technology of the element.\n\nExample: `$techn="My technology"`',isTrusted:!0}},legendText:{label:"?legendText",documentation:{value:'Optional text to display in the legend entry for this tag.\n\nExample: `"My Legend Text"`',isTrusted:!0}},legendSprite:{label:"?legendSprite",documentation:{value:'Optional PlantUML Sprite for the legend entry.\nLegend Sprite is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$legendSprite="my_legend_sprite"`',isTrusted:!0}},borderStyle:{label:"?borderStyle",documentation:{value:'Optional PlantUML function or string to customize the border style.\nBorder Style is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$borderStyle="dashed"`',isTrusted:!0}},borderThickness:{label:"?borderThickness",documentation:{value:'Optional number to customize the border thickness.\nBorder thickness is ignored by Mina, but it is supported to accept PlantUML code from other PlantUML tools.\n\nExample: `$borderThickness="2"`',isTrusted:!0}}},si=function(){const e={context_person:{label:"",parameters:[ii.alias,ii.label,li(["description","sprite","tags","link"])]},container_component:{label:"",parameters:[ii.alias,ii.label,li(["technology","description","sprite","tags","link"])]},boundary_custom_type:{label:"",parameters:[ii.alias,ii.label,li(["type","tags","link"])]},boundary:{label:"",parameters:[ii.alias,ii.label,li(["tags","link"])]},relationship:{label:"",parameters:[ii.from,ii.to,ii.label,li(["technology","description","sprite","tags","link"])]},deployment_node:{label:"",parameters:[ii.alias,ii.label,li(["type","description","sprite","tags","link"])]},add_element_tag:{label:"",parameters:[ii.tag,li(["bgColor","fontColor","borderColor","shadowing","shape","sprite","explicitTechnology","legendText","legendSprite","borderStyle","borderThickness"])]}};return Object.keys(e).forEach((t=>{const n=t,a=`\${ELEMENT_TYPE}(${e[n].parameters.map((e=>e.label)).join(", ")})`;e[n].label=a})),e}();function li(e){const t=[];let n="",a="";return e.forEach((e=>{const n="string"==typeof ii[e].label?ii[e].label:"",a="string"==typeof ii[e].documentation?ii[e].documentation:ii[e].documentation.value;t.push({label:n,documentation:a})})),n=`[${t.map((e=>e.label)).join(", ")}]`,a=`#### Optional inputs:\n\n\n${t.map((e=>`• \`${e.label.replace(new RegExp("\\?","gi"),"")}\`: ${e.documentation}`)).join("\n\n")}`,{label:n,documentation:{value:a,isTrusted:!0},numAggregatedParameters:e.length}}function _i(e,t){let n=0;const a=e.split(",");return a.length>0&&(n=a.length-1,n>=t.length&&(n=t[t.length-1].numAggregatedParameters&&n>=t.length-1+t[t.length-1].numAggregatedParameters?-1:t.length-1)),n}function ci(e){const t=[...nt,...rt,...ot,...at,...it,...st,...lt,..._t];try{return t.map((t=>({label:{label:t.toString()},kind:Rr.languages.CompletionItemKind.Function,insertText:t.toString(),insertTextRules:Rr.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:e})))}catch(e){return console.error(e),[]}}-1===Rr.languages.getLanguages().findIndex((e=>e.id===ri))&&(Rr.languages.register({id:ri}),Rr.languages.registerCompletionItemProvider(ri,{provideCompletionItems:function(e,t){if(null===e.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column-1}).match(/^(\s|\n)*$/gm))return{suggestions:[]};const n=e.getWordUntilPosition(t);return{suggestions:ci({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:n.startColumn,endColumn:n.endColumn})}}}),Rr.languages.registerSignatureHelpProvider(ri,{signatureHelpTriggerCharacters:["(",","],provideSignatureHelp:(e,t,n)=>{const a=e.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),o=function(e){try{let t;if(nt.includes(e)||rt.includes(e)?t="context_person":ot.includes(e)||at.includes(e)?t="container_component":"Boundary"===e?t="boundary":it.includes(e)?t="boundary_custom_type":lt.includes(e)?t="relationship":st.includes(e)?t="deployment_node":_t.includes(e)&&(t="add_element_tag"),t&&si[t]){const n=Object.assign({},si[t]);return n.label=n.label.replace(new RegExp("\\${ELEMENT_TYPE}","gi"),e),n}}catch(e){console.error(e)}}(a.substring(0,a.indexOf("(")).replace(new RegExp(" ","gi"),""));return o?{dispose:()=>{},value:{activeParameter:_i(a,o.parameters),activeSignature:0,signatures:[o]}}:{dispose:()=>{},value:{activeParameter:-1,activeSignature:-1,signatures:[]}}}})),Nr.loader.config({monaco:Rr});const di=(0,r.forwardRef)(((e,t)=>{const{diagram:n,saveDiagram:a,isSaving:o,project:i}=e,{t:s}=(0,G.useTranslation)(),{modal:l,showModal:_,hideModal:c}=ce(),{forceUpdate:d}=Ie(),u=(0,r.useRef)(null),[m,b]=(0,r.useState)(""),[p,h]=(0,r.useState)(null),[f,w]=(0,r.useState)(-1),[y,v]=(0,r.useState)(-1),[x,j]=(0,r.useState)(-1),[O,S]=(0,r.useState)(!0),E=(0,r.useRef)(!1),C=(0,r.useRef)(!1),k=(0,r.useRef)([]);function N(e,t){var n,a;null==(n=u.current)||n.focus(),null==(a=u.current)||a.trigger("keyboard","type",{text:e})}async function T(){const e=await M(),t=void 0!==(null==e?void 0:e.diagramPlantUML)&&void 0!==e.diagramPlantUML.elements&&1===e.diagramPlantUML.elements.length&&(n=e.diagramPlantUML.elements[0],void 0!==On(n)?{element:On(n),elementType:"Person"}:void 0!==En(n)?{element:En(n),elementType:"SoftwareSystem"}:void 0!==xn(n)?{element:xn(n),elementType:"Container"}:void 0!==vn(n)?{element:vn(n),elementType:"Component"}:void 0);var n;if(e&&void 0!==t&&"boolean"!=typeof t){let e;switch(t.element.base_data.uuid=(0,Ve.v4)(),t.elementType){case"Person":e=Pr;break;case"SoftwareSystem":e=Br;break;case"Container":e=Ur;break;case"Component":e=Wr}if(void 0!==e)return void _({id:`${t.elementType.toLowerCase()}Modal`,title:`${s("diagram_editor.add_to_library_detailed_title",{elementType:(0,Me.noCase)(t.elementType).toLowerCase(),alias:t.element.base_data.alias})}`,body:(0,g.jsx)(e,{mode:"createLibraryElement",enableEdit:!0,project:i,libraryElement:t.element,hideModal:c,diagramAliases:[]}),buttons:!1})}Be.toast.error(s("common.error.cannot_add_to_library"))}function R(){var e,t;h(null!=(e=null==(t=u.current)?void 0:t.getPosition())?e:null),_({id:"importLibraryElementModal",title:s("diagram_editor.import_from_library").toString(),body:(0,g.jsx)(Zr,{onLibraryElementSelected:e=>{oo(e).then((e=>{N(e),Be.toast.success(s("diagram_editor.element_imported"))})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))},hideModal:c}),buttons:!1,size:"full"})}async function L(e){var t,n;h(null!=(t=null==(n=u.current)?void 0:n.getPosition())?t:null);let a=Pr;switch(e){case"Person":a=Pr;break;case"Container":a=Ur;break;case"Component":a=Wr;break;case"SoftwareSystem":a=Br;break;case"Boundary":a=Qr;break;case"DeploymentNode":a=ei;break;case"AddElementTag":a=oi;break;case"Relationship":a=ni}_({id:`${e.toLowerCase()}Modal`,title:`${s("common.new")} ${s(`common.${(0,Me.snakeCase)(e)}`)}`,body:(0,g.jsx)(a,{mode:"serializer",enableEdit:!0,hideModal:c,forceUpdate:d,onElementCreated:e=>{oo(e).then((e=>{N(e)})).catch((e=>{var t;Be.toast.error(s("common.error.internal",{errorMessage:null!=(t=e.msg)?t:e}))}))},diagramAliases:k.current}),buttons:!1})}async function M(){var e,t;let n;const a=null==(e=u.current)?void 0:e.getPosition();h(null!=a?a:null);const o=null==(t=u.current)?void 0:t.getSelection();if(o&&a){const e=Array.from({length:o.endLineNumber-o.startLineNumber+1},((e,t)=>o.startLineNumber+t)).map((e=>{var t,n;return null!=(t=null==(n=u.current)||null==(n=n.getModel())?void 0:n.getLineContent(e))?t:""})).join("\n");if(e)try{n={selectedPlantUMLLine:e,diagramPlantUML:await so(`@startuml\n${e}\n@enduml`),selection:o}}catch(e){n=void 0}}return n}async function $(){const e=await M(),t=void 0!==(null==e?void 0:e.diagramPlantUML)&&void 0!==e.diagramPlantUML.elements&&1===e.diagramPlantUML.elements.length&&tn(e.diagramPlantUML.elements[0]);e&&void 0!==t&&"boolean"!=typeof t?_({id:"linkDiagramModal",title:s("common.action.link_to_diagram",{alias:t.base_data.alias}).toString(),body:(0,g.jsx)($r,{link:t.base_data.link,onLinkConfirmed:async n=>{t.base_data.link=n;let a=e.selectedPlantUMLLine;En(e.diagramPlantUML.elements[0])?a=await oo({SoftwareSystem:t}):xn(e.diagramPlantUML.elements[0])?a=await oo({Container:t}):vn(e.diagramPlantUML.elements[0])?a=await oo({Component:t}):yn(e.diagramPlantUML.elements[0])&&(a=await oo({Boundary:t})),function(e,t,n){const a=u.current,o=null==a?void 0:a.getModel();if(a&&o){const r=a.getSelection(),i=a.getValue(),s=null==i?void 0:i.split("\n");if(s){if(e>=1&&t<=s.length){s[e-1]=n;for(let n=e;n<t;n++)s.splice(e,1)}const i=s.join("\n"),l={range:o.getFullModelRange(),text:i,forceMoveMarkers:!1};a.executeEdits("replaceLineContent",[l],null!==r?[r]:[]),a.pushUndoStop()}}}(e.selection.startLineNumber,e.selection.endLineNumber,a.replace(new RegExp("(^\\n)|(\\n$)","gi"),"")),c()}}),buttons:!1,size:"md"}):Be.toast.error(s("common.error.cannot_add_link"))}function I(e){var t;const n=null==(t=u.current)?void 0:t.getModel();if(e){const t=null==n?void 0:n.findMatches(e,!1,!1,!1,null,!1);t&&t.forEach((e=>{var t,n;null==(t=u.current)||t.setSelection(e.range),null==(n=u.current)||n.revealLine(e.range.startLineNumber)}))}}return(0,r.useEffect)((()=>{function e(e){"S"===e.key.toUpperCase()&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),a())}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[n,p,a]),(0,r.useEffect)((()=>{u.current&&(p?(u.current.focus(),u.current.setPosition(p),u.current.updateOptions({readOnly:o})):u.current.setPosition({lineNumber:0,column:0}))})),(0,r.useEffect)((()=>{if(n){var e,t;E.current=!0,k.current=null!=(e=null==(t=n.diagram_plantuml)?void 0:t.aliases)?e:[];const{raw_plantuml:a}=n;b(null!=a?a:"")}}),[n]),(0,r.useImperativeHandle)(t,(()=>({resetCode:()=>{var e,t,n,a,o,r;null==(e=u.current)||null==(e=e.getModel())||e.setValue(""),b(""),null==(t=u.current)||null==(t=t.getModel())||t.setEOL(Rr.editor.EndOfLineSequence.LF),w((null!=(n=null==(a=u.current)||null==(a=a.getModel())?void 0:a.getAlternativeVersionId())?n:-1)+1),v(null!=(o=null==(r=u.current)||null==(r=r.getModel())?void 0:r.getAlternativeVersionId())?o:-1)},getUpdatedRawPlantUML:()=>{if(n&&n.diagram_name&&n.diagram_type&&u.current)return u.current.getValue()},canUndo:()=>E.current,canRedo:()=>C.current,undo:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","undo",{})},redo:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","redo",{})},copy:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardCopyAction",{})},cut:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardCutAction",{})},paste:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.clipboardPasteAction",{})},find:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","actions.find",{})},commands:()=>{var e,t;null==(e=u.current)||e.focus(),null==(t=u.current)||t.trigger("","editor.action.quickCommand",{})},openAI:()=>{S(!1)},addCodeAtCursorPosition:N,addToLibrary:T,importFromLibrary:R,addDiagramElement:L,addDiagramLink:$,selectText:I}))),(0,g.jsxs)("div",{className:"relative h-full w-full",children:[l,(0,g.jsx)(Tr(),{className:`h-full ${n?"":"hidden"} no-underline`,language:ri,value:m,theme:"vs-dark",onMount:function(e){var t,n,a;null==(t=e.getModel())||t.setEOL(Rr.editor.EndOfLineSequence.LF),u.current=e;const o=null!=(n=null==(a=u.current.getModel())?void 0:a.getAlternativeVersionId())?n:-1;w(o),v(o),j(o),function(e){e.addAction({id:"add-to-library",label:s("diagram_editor.add_to_library"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){T()}}),e.addAction({id:"import-from-library",label:s("diagram_editor.import_from_library"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){R()}}),e.addAction({id:"add-diagram-link",label:s("diagram_editor.link_to"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(e){$()}});const t=e.addCommand(0,((e,t,n,a,o)=>{t(e.get(qr.IQuickInputService))}));t&&e.addAction({id:"add-diagram-element",label:s("diagram_editor.add_diagram_element"),contextMenuGroupId:"1_modification",contextMenuOrder:1,run:function(){e.trigger("",t,(e=>{e.pick(tt.map((e=>({type:"item",id:e,label:s(`common.${(0,Me.snakeCase)(e)}`)})))).then((e=>{null!=e&&e.id&&L(e.id)}))}))}})}(u.current)},onChange:function(t,n){var a,o,r,i,s,l,_;null!=(a=u.current)&&a.getModel()&&b(null==(o=u.current)?void 0:o.getModel().getValue()),h(null!=(r=null==(i=u.current)?void 0:i.getPosition())?r:null);const c=null!=(s=null==(l=u.current)||null==(l=l.getModel())?void 0:l.getAlternativeVersionId())?s:-1;c<=f?(C.current=!0,c===y&&(E.current=!1)):(c<=x?c===x&&(C.current=!1):(C.current=!1,f>x&&j(f)),E.current=!0),w(c),null==(_=e.diagramCodeViewToolbarCommands)||_.forceUpdate()},options:{wordWrap:"on",tabSize:2}}),(0,g.jsx)(Lr,{aiHidden:O,addCodeAtCursorPosition:N,diagram:n,closeAI:()=>S(!0)})]})})),ui=require("react-resize-detector"),gi="text-5xl text-dark-primary hover:text-third",mi="text-2xl text-dark-primary hover:text-third",bi=i().memo((e=>{const{canvas:t,readOnly:n,diagramInfoPanelVisible:a,setDiagramInfoPanelVisible:o,diagramCodePanelVisible:r,setDiagramCodePanelVisible:i}=e;function s(){return n}return(0,g.jsxs)("div",{className:"absolute bottom-0 left-0 z-[1] scale-[85%] opacity-20 transition hover:scale-[100%] hover:opacity-100 flex flex-row mx-2",children:[(0,g.jsx)(U,{className:`${mi} ${s()?"absolute":"hidden"}`,icon:d.faCircleInfo,onClick:function(){s()&&(i(!1),o(!a))}}),(0,g.jsx)(U,{className:`${mi} ${s()?"absolute bottom-1":"hidden"}`,icon:d.faCode,onClick:function(){s()&&(o(!1),i(!r))}}),(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsx)(U,{className:`${gi} !my-auto`,icon:d.faCaretLeft,onClick:()=>null==t?void 0:t.panLeft()})}),(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)(U,{className:gi,icon:d.faCaretUp,onClick:()=>null==t?void 0:t.panDown()}),(0,g.jsxs)("div",{children:[(0,g.jsx)(U,{className:`${mi} ml-1`,icon:d.faMagnifyingGlassPlus,onClick:()=>null==t?void 0:t.zoomIn()}),(0,g.jsx)(U,{className:`${mi} mx-2 !text-xl`,icon:d.faRotateLeft,onClick:()=>{null==t||t.resetZoom(),null==t||t.resetPan()}}),(0,g.jsx)(U,{className:`${mi} mr-1`,icon:d.faMagnifyingGlassMinus,onClick:()=>null==t?void 0:t.zoomOut()})]}),(0,g.jsx)(U,{className:gi,icon:d.faCaretDown,onClick:()=>null==t?void 0:t.panUp()})]}),(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsx)(U,{className:`${gi} !my-auto`,icon:d.faCaretRight,onClick:()=>null==t?void 0:t.panRight()})})]})})),pi=require("fontfaceobserver");var hi=n.n(pi);const fi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.enabled),[o,i]=(0,r.useState)(e.orientation),[s,l]=(0,r.useState)(e.generateOnlyStraightArrows),[_,c]=(0,r.useState)(e.ranksep),[m,b]=(0,r.useState)(e.subgraphInnerMargin),[p,h]=(0,r.useState)(e.subgraphOuterMargin);return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"modal__body",children:[(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsxs)("div",{className:"flex flex-row",children:[(0,g.jsxs)("span",{children:[t("common.status"),"*:"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:n,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{a(e)}})]}),(0,g.jsxs)("span",{className:"text-sm text-orange-500 mt-2 "+(!e.enabled&&n?"block":"hidden"),children:[(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faWarning,className:"mr-1 text-yellow-500"}),t("diagram_editor.warning_enable_autolayout")]})]}),(0,g.jsxs)("div",{className:"flex flex-row mt-5",children:[(0,g.jsxs)("span",{children:[`${t("diagrams_settings.gen_only_straight_arrows")}*`,":"]}),(0,g.jsx)(ke,{id:"autolayout-straight-arrows-status",className:"ml-5",value:s,options:[{label:t("common.yes"),value:!0},{label:t("common.no"),value:!1}],onChange:e=>{l(e)}})]}),(0,g.jsx)(me,{id:"autolayout-orientation-selector",label:`${t("common.orientation")}*`,className:"mt-8",value:o,options:ct.map((e=>({label:e,value:e}))),onChange:e=>i(e.target.value)}),(0,g.jsx)(ue,{id:"autolayout-ranksep",type:"number",label:"ranksep*",min:0,classNameRoot:"mt-6",info:`${t("diagrams_settings.ranksep_description")}`,value:_,onChange:e=>c(Number.parseFloat(e.target.value))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-inner-margin",type:"number",label:`${t("diagrams_settings.subgraph_inner_margin")}`,min:0,classNameRoot:"mt-6",value:m,onChange:e=>b(Number.parseFloat(e.target.value))}),(0,g.jsx)(ue,{id:"autolayout-subgraph-outer-margin",type:"number",label:`${t("diagrams_settings.subgraph_outer_margin")}`,min:0,classNameRoot:"mt-6",value:p,onChange:e=>h(Number.parseFloat(e.target.value))})]}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),onClick:function(){e.onAutoLayoutConfigured(n,o,s,_,m,p),e.hideModal()}}])})]})},wi=i().memo((e=>{const{setDiagramInfoPanelVisible:t,diagram:n,hidden:a}=e;return(0,g.jsxs)("div",{className:a?"hidden":"absolute z-[1] bg-dark-primary bg-opacity-90 w-full p-2 max-h-96 overflow-auto",children:[(0,g.jsx)(U,{icon:d.faXmark,className:"absolute right-5 top-3",onClick:()=>t(!1)}),n&&(0,g.jsx)(Or,{diagram:n,tagsDirection:"bottom",scrollable:!0})]})}));var yi=function(e){return e[e.PlantUML=0]="PlantUML",e[e.JSON=1]="JSON",e}(yi||{});const vi=i().memo((e=>{const{setDiagramCodePanelVisible:t,diagram:n,hidden:a}=e,[o,i]=(0,r.useState)(yi.PlantUML),[s,l]=(0,r.useState)(null==n?void 0:n.raw_plantuml);return(0,r.useEffect)((()=>{n&&l(o===yi.PlantUML?n.raw_plantuml:JSON.stringify(n.diagram_spec,null,2))}),[n,o]),(0,g.jsxs)("div",{className:a?"hidden":"absolute z-[1] bg-dark-primary bg-opacity-90 w-full h-full p-2 overflow-auto",children:[(0,g.jsx)(U,{icon:d.faXmark,className:"absolute right-5 top-3",onClick:()=>t(!1)}),n&&(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsxs)("div",{children:[(0,g.jsx)(te,{className:"mr-3 w-32 normal-case "+(o===yi.PlantUML?"!bg-green-700":""),onClick:()=>i(yi.PlantUML),children:"PlantUML"}),(0,g.jsx)(te,{className:"w-32 normal-case "+(o===yi.JSON?"!bg-green-700":""),onClick:()=>i(yi.JSON),children:"JSON"})]}),(0,g.jsxs)("div",{className:"mt-5 p-2 bg-primary rounded-md overflow-auto whitespace-pre-wrap text-sm font-mono",children:[(0,g.jsx)(U,{icon:d.faCopy,className:"absolute right-5 text-xl",onClick:()=>{s&&navigator.clipboard.writeText(s)}}),(0,g.jsx)("div",{children:s})]})]})]})})),xi=e=>{const{t}=(0,G.useTranslation)(),[n,a]=(0,r.useState)(e.settings);return(0,g.jsxs)("div",{children:[(0,g.jsx)("div",{className:"modal__body",children:(0,g.jsx)("div",{className:"flex flex-col",children:(0,g.jsxs)("div",{className:"flex flex-row",children:[(0,g.jsxs)("span",{children:[t("diagrams_settings.grid_enabled"),"*:"]}),(0,g.jsx)(ke,{id:"autolayout-status",className:"ml-5",value:n.gridEnabled,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{a(Object.assign({},n,{gridEnabled:e}))}})]})})}),(0,g.jsx)("div",{className:"modal__footer",children:se([{key:"button-cancel",children:(0,g.jsx)("span",{children:t("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-save",children:(0,g.jsx)("span",{children:t("common.save")}),onClick:function(){e.onSettingsChanged(n),e.hideModal()}}])})]})},ji=["auto_layout"],Oi=["auto_layout"],Si=(0,r.forwardRef)(((e,t)=>{const{readOnly:n,diagram:a,diagramListener:o,diagramDesignViewToolbarCommands:i,saveDiagram:s,diagramsThemeSettings:l}=e,{t:_}=(0,G.useTranslation)(),c=(0,r.useRef)(),d=(0,r.useRef)(null),u=(0,r.useRef)(null),{ref:m}=(0,ui.useResizeDetector)(),b=(0,r.useRef)(),p=(0,r.useRef)(!1),h=(0,r.useRef)(!1),f=(0,r.useRef)(!1),[w,v]=(0,r.useState)([]),[x,O]=(0,r.useState)([]),[S,E]=(0,r.useState)(!1),[k,N]=(0,r.useState)(!1),[T,R]=(0,r.useState)(),{modal:L,showModal:$,hideModal:I}=ce();let D=b.current,A=a;function P(){p.current=!0,n||function(){if(!f.current){const e=W();e&&v((t=>[...t,e]))}}()}function F(t){const n={fireRightClick:!0,fireMiddleClick:!0,stopContextMenu:!0,backgroundColor:"white",readOnly:e.readOnly,enableSnapToGrid:!0},a=new j(d.current,n);a.on("object:added",P),a.on("object:removed",P),a.on(gt,P),a.on("mouse:down",(()=>h.current=!0)),a.on("mouse:out",(()=>h.current=!1)),a.codingFeaturesEnabled="desktop"===e.target,p.current=!1,t&&(a.setZoom(t.zoom),a.relativePan(new y.fabric.Point(t.pan.panX,t.pan.panY))),c.current=a}function B(){c.current&&(c.current.dispose(),c.current=void 0)}function z(e){B(),F(e)}function U(){var e,t;return{zoom:null!=(e=null==(t=c.current)?void 0:t.getZoom())?e:1,pan:sn(c.current)}}async function H(){var e;if(null!=(e=b.current)&&e.diagram_name&&b.current.diagram_type&&c.current){const e="png";console.debug(`Exporting to ${e}`);const t=c.current.viewportTransform;c.current.viewportTransform=y.fabric.iMatrix.slice(0);let{width:n,height:a,left:o,top:r}=nn(c.current.getObjects());n&&a&&o&&r&&(n+=50,a+=50,o-=25,r-=25),await async function(e,t,n,a){return(0,qa.invoke)("export_diagram_to_file",{diagramDataUrl:n,format:a,diagramName:e,diagramType:t})}(b.current.diagram_name,b.current.diagram_type,c.current.toDataURL({format:e,enableRetinaScaling:!0,width:n,height:a,left:o,top:r}),e).then((e=>Be.toast.success(_("common.info.diagram_exported",{pathExportedDiagram:e})))).catch((e=>Be.toast.success(e.msg))),c.current.viewportTransform=t}}function W(){if(b.current&&b.current.diagram_plantuml&&b.current.diagram_spec&&b.current.diagram_name&&b.current.diagram_type){var e,t;const n=void 0!==(null==(e=c.current)?void 0:e.autoLayoutEnabled)?c.current.autoLayoutEnabled:b.current.diagram_spec.auto_layout_enabled;let a=[];return n||(a=(e=>{const t=Array();return e&&e.getObjects().forEach((e=>{if(e instanceof gn){const n=e.getUpdatedSpecs();n&&t.push(n)}})),t})(c.current)),Object.assign({},b.current.diagram_spec,{auto_layout_enabled:n,auto_layout_orientation:void 0!==(null==(t=c.current)?void 0:t.autoLayoutOrientation)?c.current.autoLayoutOrientation:b.current.diagram_spec.auto_layout_orientation,elements_specs:a})}}function K(){return p.current}function X(){var e;return!(null==(e=b.current)||!e.diagram_spec)&&b.current.diagram_spec.auto_layout_enabled}function Y(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_orientation:"TopToBottom"}function Z(){var e;return!(null==(e=b.current)||!e.diagram_spec)&&b.current.diagram_spec.auto_layout_only_straight_arrows}function q(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_ranksep:0}function V(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_subgraph_inner_margin:0}function Q(){var e;return null!=(e=b.current)&&e.diagram_spec?b.current.diagram_spec.auto_layout_subgraph_outer_margin:6.5}function J(e,t,a,o,r,i){c.current&&b.current&&!n&&$({id:"showAutoLayoutConfigurationModal",title:`${_("diagram_editor.configure_auto_layout")}`,body:(0,g.jsx)(fi,{enabled:e,orientation:t,generateOnlyStraightArrows:a,ranksep:o,subgraphInnerMargin:r,subgraphOuterMargin:i,hideModal:I,onAutoLayoutConfigured:(e,t,a,o,r,i)=>{c.current&&b.current&&!n&&(c.current.autoLayoutEnabled=e,c.current.autoLayoutOrientation=t,b.current.diagram_spec&&(b.current.diagram_spec.auto_layout_only_straight_arrows=a,b.current.diagram_spec.auto_layout_ranksep=o,b.current.diagram_spec.auto_layout_subgraph_inner_margin=r,b.current.diagram_spec.auto_layout_subgraph_outer_margin=i),p.current=!0,s&&s())}}),buttons:!1})}function ee(){var e;if(null!=(e=b.current)&&e.diagram_spec)return{gridEnabled:b.current.diagram_spec.grid_enabled}}function te(e){e&&c.current&&b.current&&!n&&$({id:"showDiagramDesignViewSettingsModal",title:`${_("common.settings")}`,body:(0,g.jsx)(xi,{settings:e,hideModal:I,onSettingsChanged:e=>{var t;c.current&&b.current&&!n&&(e.gridEnabled?c.current.enableGrid():c.current.disableGrid(),b.current.diagram_spec&&(b.current.diagram_spec.grid_enabled=null!=(t=e.gridEnabled)&&t),p.current=!0,s&&s())}}),buttons:!1})}function ne(){var t,n;null!=(t=b.current)&&t.diagram_spec&&c.current&&!e.readOnly&&(null!=(n=b.current)&&n.diagram_spec.auto_layout_enabled?c.current.setReadOnly():c.current.setReadAndWrite())}function ae(e){var t;c.current&&(z(U()),ne(),T?T.renderDiagram(c.current,o,Object.assign({},b.current,{diagram_spec:e}),l):console.error("DiagramRenderer not initialized"),null==(t=c.current)||t.renderAll(),p.current=!0,console.debug("Load history completed"))}function oe(){if(f.current=!0,ie()){const e=w[w.length-1],t=w[w.length-2];b.current&&e&&t&&(console.debug("Undo design view"),v((e=>e.filter(((t,n)=>n!==e.length-1)))),O((t=>[...t,e])),ae(t))}f.current=!1}function re(){if(console.debug("Redo design view"),f.current=!0,se()){const e=x[x.length-1];e&&(O((e=>e.filter(((t,n)=>n!==e.length-1)))),v((t=>[...t,e])),ae(e))}f.current=!1}function ie(){return!n&&w.length>1}function se(){return!n&&x.length>0}return D&&(D=C(D,ji)),A&&(A=C(A,Oi)),M(D,A)||(b.current=a),(0,r.useImperativeHandle)(t,(()=>({resetCanvas:z,getCanvasState:U,exportDiagram:H,getUpdatedDiagramSpec:W,isDiagramChanged:K,undo:oe,redo:re,canUndo:ie,canRedo:se,isAutoLayoutEnabled:X,autoLayoutOrientation:Y,updateAutoLayoutOptions:J,isGenerateOnlyStraightArrowsEnabled:Z,ranksep:q,updateDiagramDesignViewSettings:te,diagramDesignViewSettings:ee,subgraphInnerMargin:V,subgraphOuterMargin:Q}))),(0,r.useLayoutEffect)((()=>{var e,t,n,a,o,r,i;console.debug("Diagram Design View changed layout"),d.current&&null!=(e=u.current)&&e.clientWidth&&null!=(t=u.current)&&t.clientHeight&&(console.debug("Canvas resize"),d.current.parentElement&&(d.current.parentElement.style.display="none"),null==(n=c.current)||n.setWidth(null==(a=u.current)?void 0:a.getBoundingClientRect().width),null==(o=c.current)||o.setHeight(null==(r=u.current)?void 0:r.getBoundingClientRect().height),d.current.parentElement&&(d.current.parentElement.style.display="flex"),null==(i=c.current)||i.renderAll())})),(0,r.useEffect)((()=>(new(hi())(Ct.FONT.FAMILY).load(null,36e4).then((function(){c.current&&(function(e){e.getObjects().forEach((e=>e.set("dirty",!0)))}(c.current),c.current.renderAll())})),d.current&&!c.current&&F(),()=>{B()})),[]),(0,r.useEffect)((()=>{function e(e){n||"Z"!==e.key.toUpperCase()&&"Y"!==e.key.toUpperCase()||!e.ctrlKey&&!e.metaKey||!h.current||(e.preventDefault(),"Z"===e.key.toUpperCase()?oe():"Y"===e.key.toUpperCase()&&re())}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[n,w,x]),(0,r.useEffect)((()=>{var e,t;c.current&&b.current&&T&&(f.current=!0,console.debug("Rendering the diagram"),ne(),T.renderDiagram(c.current,o,b.current,l),null==(e=c.current)||e.renderAll(),p.current=!1,f.current=!1,n||(f.current=!1,null!=(t=b.current)&&t.diagram_spec&&v([b.current.diagram_spec]),O([])))}),[b.current,T]),(0,r.useEffect)((()=>{var e;!n&&i&&(console.debug("Update design toolbar"),null==(e=i.current)||e.forceUpdate())}),[n,w,x,i]),(0,r.useEffect)((()=>{!async function(){const e=await(new Pa).initialize();R(e)}()}),[]),(0,Te.useHotkeys)([Re.Key.Escape],(e=>{var t;c.current&&(e.preventDefault(),null==(t=c.current)||t.discardActiveObject())})),(0,g.jsxs)("div",{className:"relative h-full w-full",ref:m,children:[L,(0,g.jsx)(bi,{canvas:c.current,readOnly:n,diagramInfoPanelVisible:S,setDiagramInfoPanelVisible:E,diagramCodePanelVisible:k,setDiagramCodePanelVisible:N}),(0,g.jsx)(wi,{diagram:a,hidden:!S,setDiagramInfoPanelVisible:E}),(0,g.jsx)(vi,{diagram:a,hidden:!k,setDiagramCodePanelVisible:N}),(0,g.jsx)("div",{className:"h-full w-full flex-row flex-wrap",ref:u,children:(0,g.jsx)("canvas",{ref:d})})]})})),Ei={className:"diagram-editor_toast--error",position:"bottom-left",autoClose:!1},Ci=e=>{var t;const{state:n}=(0,a.useLocation)(),o=(0,a.useNavigate)(),{t:i}=(0,G.useTranslation)(),{modal:_,showModal:c,hideModal:d}=ce(),[u,m]=(0,r.useState)(),[b,p]=(0,r.useState)(!1),[h,f]=(0,r.useState)(),w=(0,r.useRef)(null),y=(0,r.useRef)(null),v=(0,r.useRef)(null),x=(0,r.useRef)(null),j=(0,r.useContext)(l),O=Go((e=>e.project.value)),[S,E]=(0,r.useState)(0);null==j||j.useSubscription((e=>{e.type===s.OpenDiagram&&c({id:"confirmOpenDiagramModal",title:`${i("common.confirmation")}`,body:`${i("common.question.confirm_not_saved_changed")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{T(!1),d(),o(Eo,e.data)}}]})}));const C=n,k={onOpenDiagramClick:e=>{c({id:"confirmGoToDiagramModal",title:`${i("common.confirmation")}`,body:`${i("common.question.confirm_go_to_diagram")}`,buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:async()=>{let t;try{t=await io(e)}catch(e){t=void 0}if(t&&t.diagram_name&&t.diagram_type){const e={diagramName:t.diagram_name,diagramType:t.diagram_type};T(!1),d(),o(Eo,{state:e})}else d(),Be.toast.error(i("common.error.invalid_diagram_link"))}}]})},onOpenExternalLinkClick:e=>{(0,Ha.open)(e)},onSelectElementCode:async(e,t,n)=>{let a;if(e&&t&&(void 0!==On(t)?a={Person:e}:void 0!==En(t)?a={SoftwareSystem:e}:void 0!==xn(t)?a={Container:e}:void 0!==vn(t)?a={Component:e}:void 0!==yn(t)?a={Boundary:e}:void 0!==jn(t)?a={DeploymentNode:e}:void 0!==Sn(t)&&(a={Relationship:e}),a))try{var o;const e=await oo(a,n);null==(o=y.current)||o.selectText(e.replace(new RegExp("(^\\n)|(\\n$)","gi"),""))}catch(e){}}};(0,r.useEffect)((()=>{N()}),[C]),(0,r.useEffect)((()=>{let e;return null!=O&&O.project_settings&&O.project_settings.autosave_interval_seconds&&O.project_settings.autosave_enabled&&(e=setInterval((()=>{E((e=>e+1))}),1e3*O.project_settings.autosave_interval_seconds)),()=>{e&&clearInterval(e)}}),[O]),(0,r.useEffect)((()=>{0!==S&&R()}),[S]);const N=async()=>{const e=await async function(e,t){return(0,qa.invoke)("open_diagram",{diagramName:e,diagramType:t})}(C.diagramName,C.diagramType).catch((e=>{Be.toast.error(e.msg,Ei),f(e)}));e&&m(e)},T=async(e,t)=>{var n,a;await async function(e,t){return(0,qa.invoke)("close_diagram",{diagramName:e,diagramType:t})}(C.diagramName,C.diagramType).catch((e=>{Be.toast.error(e.msg,Ei),f(e)})),null==(n=w.current)||n.resetCanvas(t),t||(null==(a=y.current)||a.resetCode(),m(void 0),f(void 0),e&&o(jo))},R=async()=>{if(!b){var e,t;const o=null==(e=y.current)?void 0:e.getUpdatedRawPlantUML(),r=null==(t=w.current)?void 0:t.getUpdatedDiagramSpec();if(u&&u.diagram_name&&u.diagram_type&&o&&r){const e=Object.assign({},u,{raw_plantuml:o,diagram_spec:r});n=e,(u.raw_plantuml!==n.raw_plantuml||!0===(null==(a=w.current)?void 0:a.isDiagramChanged()))&&(p(!0),await ao(u.diagram_name,u.diagram_type,o,r).then((async()=>{var t;f(void 0),await T(!0,null==(t=w.current)?void 0:t.getCanvasState()),await N(),p(!1),go({data:{Diagram:e},hook_type:"onDiagramSaved"})})).catch((e=>{p(!1),Be.toast.error(e.msg,Ei),f(e)})))}}var n,a};return(0,g.jsxs)("div",{className:"bg-dark-primary flex h-full w-full flex-col overflow-auto",children:[_,(0,g.jsx)(kr,{diagram:u,saveDiagram:R,closeDiagram:()=>{c({id:"confirmCloseDiagramModal",title:i("common.confirmation").toString(),body:i("common.question.confirm_close_diagram").toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:i("common.cancel")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:i("common.info.i_saved_my_changes")}),className:"button--safe",onClick:()=>{d(),T(!0)}}]})}}),(0,g.jsxs)("div",{className:"flex w-full grow overflow-hidden",children:[(0,g.jsx)("div",{id:"diagram-code-editor-box",children:(0,g.jsx)(Yo.ResizableBox,{height:1/0,width:500,resizeHandles:["e"],children:(0,g.jsxs)("div",{className:"window__inner-border h-full w-full border-t flex flex-col",children:[(0,g.jsx)(vr,{ref:v,diagramCodeViewCommands:y.current}),(0,g.jsx)(di,{ref:y,project:O,diagram:u,error:h,diagramCodeViewToolbarCommands:v.current,saveDiagram:R,isSaving:b})]})})}),(0,g.jsxs)("div",{className:"window__inner-border h-full w-full border-t flex flex-col overflow-x-auto",children:[(0,g.jsx)(jr,{ref:x,diagramDesignViewCommands:w}),(0,g.jsx)(Si,{ref:w,diagramListener:k,diagram:u,diagramsThemeSettings:null==O||null==(t=O.project_settings.themes_settings)?void 0:t.diagrams_theme_settings,error:h,diagramDesignViewToolbarCommands:x,saveDiagram:R,target:"desktop"})]})]}),(0,g.jsxs)("div",{className:(b?"opacity-90":"opacity-0")+" bg-dark-brand1 z-[6] absolute bottom-5 left-1/2 -translate-x-1/2 text-center transition duration-200 ease-in-out px-10 py-1 rounded-md pointer-events-none flex",children:[(0,g.jsxs)("svg",{className:"animate-spin my-auto mr-3 h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,g.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,g.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),(0,g.jsxs)("span",{children:[i("diagram_editor.saving_rendering_diagram"),"..."]})]})]})},ki=require("@tauri-apps/api"),Ni="http://localhost:11434/v1",Ti="ollama",Ri="deepseek-r1:8b",Li=i().memo((e=>{var t,n,a;const{t:o}=(0,G.useTranslation)(),{setNewProjectSettings:r,aiSettings:i}=e;return(0,g.jsxs)("div",{children:[(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.api_key"),info:`${o("common.example")}: ${Ti}`,className:"mt-6",value:null!=(t=null==i?void 0:i.api_key)?t:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{api_key:e.target.value})})}))}),(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.api_base_url"),info:`${o("common.example")}: ${Ni}`,className:"mt-6",value:null!=(n=null==i?void 0:i.api_base_url)?n:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{api_base_url:e.target.value})})}))}),(0,g.jsx)(ue,{type:"text",label:o("project_settings.ai.model"),info:`${o("common.example")}: ${Ri}`,className:"mt-6",value:null!=(a=null==i?void 0:i.model)?a:"",onChange:e=>r((t=>{if(t)return Object.assign({},t,{ai_settings:Object.assign({},i,{model:e.target.value})})}))})]})})),Mi=[{i18nKey:"common.diagram",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_diagram"}]},{i18nKey:"common.legend",settings:[{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_legend_title"}]},{i18nKey:"common.person",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_person"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_person"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_person"}]},{i18nKey:"common.person_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_person_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_person_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_person_ext"}]},{i18nKey:"common.software_system",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_software_system"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_software_system"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_software_system"}]},{i18nKey:"common.software_system_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_software_system_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_software_system_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_software_system_ext"}]},{i18nKey:"common.container",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_container"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_container"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_container"}]},{i18nKey:"common.container_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_container_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_container_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_container_ext"}]},{i18nKey:"common.component",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_component"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_component"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_component"}]},{i18nKey:"common.component_external",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_component_ext"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_component_ext"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_component_ext"}]},{i18nKey:"common.boundary",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_boundary"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_boundary"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_boundary"}]},{i18nKey:"common.deployment_node",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_deployment_node"},{i18nKey:"project_settings.themes.diagrams_theme.border_color",modelName:"border_color_deployment_node"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_deployment_node"}]},{i18nKey:"common.relationship",settings:[{i18nKey:"project_settings.themes.diagrams_theme.bg_color",modelName:"bg_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.line_color",modelName:"line_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.text_color",modelName:"text_color_relationship"},{i18nKey:"project_settings.themes.diagrams_theme.selection_color",modelName:"selected_color_relationship"}]}],$i=i().memo((e=>{const{t}=(0,G.useTranslation)(),{setNewProjectSettings:n,project:a,defaultProjectSettings:o,themeSettings:r,openResetModal:i,setOpenResetModal:s}=e;function l(e,t){var r;let i;"reset"===e&&null!=a&&null!=(r=a.project_settings.themes_settings)&&r.diagrams_theme_settings&&(i=a.project_settings.themes_settings.diagrams_theme_settings[t]),i&&"default"!==e||(i=o.themes_settings.diagrams_theme_settings[t]),n((e=>{var n;if(e)return Object.assign({},e,{themes_settings:Object.assign({},e.themes_settings,{diagrams_theme_settings:Object.assign({},null==(n=e.themes_settings)?void 0:n.diagrams_theme_settings,{[t]:i})})})}))}return(0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)("span",{className:"text-brand1 font-bold mt-5 text-lg",children:t("project_settings.themes.diagrams_theme.title")}),function(e){const a=[];return e.forEach((e=>{const _=[];e.settings.forEach((a=>{var c,u,m;_.push((0,g.jsxs)("div",{className:"project-settings__diagrams-theme-settings",children:[(0,g.jsxs)("span",{className:"my-auto",children:[t(a.i18nKey),":"]}),(0,g.jsx)(Le,{color:null!=(c=null==r||null==(u=r.diagrams_theme_settings)?void 0:u[`${a.modelName}`])?c:null==(m=o.themes_settings)||null==(m=m.diagrams_theme_settings)?void 0:m[`${a.modelName}`],onChange:e=>{n((t=>{if(t)return Object.assign({},t,{themes_settings:Object.assign({},r,{diagrams_theme_settings:Object.assign({},null==r?void 0:r.diagrams_theme_settings,{[a.modelName]:e.hex})})})}))}}),(0,g.jsxs)("div",{children:[(0,g.jsx)(U,{icon:d.faUndo,className:"ml-2",onClick:()=>s(`${e.i18nKey}-${a.modelName}`)}),(0,g.jsx)("div",{className:"absolute pr-5 pb-5 pointer-events-none",children:(0,g.jsxs)("div",{className:"ml-2 flex flex-row bg-secondary p-2 rounded "+(i===`${e.i18nKey}-${a.modelName}`?"flex":"hidden"),children:[(0,g.jsx)(te,{className:"p-1 h-fit w-[6rem] pointer-events-auto",onClick:()=>l("reset",a.modelName),children:t("common.reset")}),(0,g.jsx)(te,{className:"ml-2 p-1 h-fit w-[6rem] pointer-events-auto",onClick:()=>l("default",a.modelName),children:t("common.default")})]})})]})]},a.i18nKey))})),a.push((0,g.jsxs)("div",{className:"flex flex-col",children:[(0,g.jsx)("span",{className:"mt-5 text-brand1",children:t(e.i18nKey)}),(0,g.jsx)("div",{className:"static mt-2 grid grid-cols-3 gap-x-4",children:_})]},e.i18nKey))})),a}(Mi)]})})),Ii=$i,Di=i().memo((e=>{const{t}=(0,G.useTranslation)(),{setNewProjectSettings:n,autosaveEnabled:a,autosaveIntervalSeconds:o}=e;return(0,g.jsxs)("div",{children:[(0,g.jsxs)("div",{className:"flex flex-row mt-6",children:[(0,g.jsxs)("span",{children:[`${t("common.autosave")}*`,":"]}),(0,g.jsx)(ke,{id:"autosave-status",className:"ml-5",value:a,options:[{label:t("common.enabled"),value:!0},{label:t("common.disabled"),value:!1}],onChange:e=>{n((t=>{if(t)return Object.assign({},t,{autosave_enabled:e,autosave_interval_seconds:e?60:0})}))}})]}),(0,g.jsx)(ue,{type:"number",max:240,label:`${t("common.autosave_interval_sec")}`,info:`${t("common.max")} 240 ${t("common.seconds").toLowerCase()}`,className:"mt-6",value:null!==o?o:0,onChange:e=>{n((t=>{if(t)return Object.assign({},t,{autosave_interval_seconds:e.target.value.length>0?Number.parseInt(e.target.value):0})}))}})]})})),Ai=i().memo((e=>{const{t}=(0,G.useTranslation)(),{mode:n,setNewProjectSettings:a,chooseProjectDirectory:o,root:r,name:i,version:s,description:l}=e;return(0,g.jsxs)("div",{children:["create"===n&&(0,g.jsx)(U,{icon:d.faFolder,onClick:o,className:"flex mt-6",classNameIcon:"mt-[3px]",classNameContent:"ml-3",children:r.replace(/ /g,"").length>0?r:t("home.chose_parent_dir_project")}),(0,g.jsx)(ue,{type:"text",label:`${t("common.name")}*`,className:"mt-6",allowedChars:gr,info:`${t("common.allowed_pattern")}: ${gr}`,value:i,onChange:e=>a((t=>{if(t)return Object.assign({},t,{name:e.target.value})}))}),(0,g.jsx)(ue,{type:"text",label:`${t("common.version")}*`,className:"mt-6",allowedChars:br,info:`${t("common.allowed_pattern")}: ${br}`,value:s,onChange:e=>a((t=>{if(t)return Object.assign({},t,{version:e.target.value})}))}),(0,g.jsx)(we,{label:`${t("common.description")}*`,className:"mt-6",value:l,onChange:e=>a((t=>{if(t)return Object.assign({},t,{description:e.target.value})}))})]})})),Pi={root:"",name:"",description:"",version:"",autosave_enabled:!1,autosave_interval_seconds:0,ai_settings:{api_base_url:Ni,api_key:Ti,model:Ri},themes_settings:{diagrams_theme_settings:{bg_color_diagram:ft,bg_color_boundary:kt.COLORS.BG_COLOR_BOUNDARY,bg_color_component:kt.COLORS.BG_COLOR_COMPONENT,bg_color_component_ext:kt.COLORS.BG_COLOR_COMPONENT_EXT,bg_color_container:kt.COLORS.BG_COLOR_CONTAINER,bg_color_container_ext:kt.COLORS.BG_COLOR_CONTAINER_EXT,bg_color_deployment_node:kt.COLORS.BG_COLOR_DEPLOYMENT_NODE,bg_color_person:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,bg_color_person_ext:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,bg_color_relationship:Rt,bg_color_software_system:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON,bg_color_software_system_ext:kt.COLORS.BG_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,border_color_boundary:kt.COLORS.BORDER_COLOR_BOUNDARY,border_color_component:kt.COLORS.BORDER_COLOR_COMPONENT,border_color_component_ext:kt.COLORS.BORDER_COLOR_COMPONENT_EXT,border_color_container:kt.COLORS.BORDER_COLOR_CONTAINER,border_color_container_ext:kt.COLORS.BORDER_COLOR_CONTAINER_EXT,border_color_deployment_node:kt.COLORS.BORDER_COLOR_DEPLOYMENT_NODE,border_color_person:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,border_color_person_ext:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,border_color_software_system:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON,border_color_software_system_ext:kt.COLORS.BORDER_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,line_color_relationship:Lt,selected_color_relationship:$t,text_color_boundary:kt.COLORS.TEXT_COLOR_BOUNDARY,text_color_component:kt.COLORS.TEXT_COLOR_COMPONENT,text_color_component_ext:kt.COLORS.TEXT_COLOR_COMPONENT_EXT,text_color_container:kt.COLORS.TEXT_COLOR_CONTAINER,text_color_container_ext:kt.COLORS.TEXT_COLOR_CONTAINER_EXT,text_color_deployment_node:kt.COLORS.TEXT_COLOR_DEPLOYMENT_NODE,text_color_legend_title:wt,text_color_person:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,text_color_person_ext:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT,text_color_relationship:Mt,text_color_software_system:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON,text_color_software_system_ext:kt.COLORS.TEXT_COLOR_SOFTWARE_SYSTEM_PERSON_EXT}}},Fi={root:"",name:"",description:"",version:"",autosave_enabled:Pi.autosave_enabled,autosave_interval_seconds:Pi.autosave_interval_seconds},Bi=e=>{const t=Qe.AI_ENABLED,n=Go((e=>e.project.value)),{t:a}=(0,G.useTranslation)(),o=Xo(),[i,s]=(0,r.useState)("edit"===e.mode?null==n?void 0:n.project_settings:Fi),[l,_]=(0,r.useState)(),[c,d]=(0,r.useState)(),[u,m]=(0,r.useState)(!1),b=(0,r.useCallback)((async()=>{if(Qe.WEB_MODE)try{const e=await window.showDirectoryPicker({mode:"readwrite"});_(e),s((t=>{if(t)return Object.assign({},t,{root:e.name})}))}catch(e){}else za.open({directory:!0}).then((async e=>{Array.isArray(e)?Be.toast.error(a("common.error.invalid_path")):e&&s((t=>{if(t)return Object.assign({},t,{root:e})}))}))}),[a]);if((0,r.useEffect)((()=>{[].slice.call(document.querySelectorAll("#project-settings-tabs a")).forEach((e=>{const t=new oe.Tab(e);e.addEventListener("click",(e=>{e.preventDefault(),t.show()}))}))}),[]),(0,Te.useHotkeys)([Re.Key.Escape],(e=>{c&&(e.preventDefault(),d(void 0))})),i){const r=[{id:"project-settings-project",title:a("common.general"),body:(0,g.jsx)(Ai,{mode:e.mode,setNewProjectSettings:s,chooseProjectDirectory:b,description:i.description,name:i.name,root:i.root,version:i.version})},{id:"project-settings-editor",title:a("common.editor"),body:(0,g.jsx)(Di,{setNewProjectSettings:s,autosaveEnabled:i.autosave_enabled,autosaveIntervalSeconds:i.autosave_interval_seconds})},{id:"project-settings-diagrams-theme",title:a("common.themes"),body:(0,g.jsx)(Ii,{setNewProjectSettings:s,defaultProjectSettings:Pi,project:n,themeSettings:i.themes_settings,openResetModal:c,setOpenResetModal:d})}];return t&&r.push({id:"project-settings-ai",title:a("common.ai"),body:(0,g.jsx)(Li,{setNewProjectSettings:s,aiSettings:i.ai_settings})}),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 relative",children:[(0,g.jsx)("div",{className:"top-0 bottom-0 left-0 right-0 "+(c?"absolute":"hidden"),onClick:()=>d(void 0)}),(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:"create"===e.mode?a("home.create_project"):a("project_settings.title")}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsx)(te,{className:"float-right",disabled:!i.description||!i.name||!i.version||"create"===e.mode&&!i.root,onClick:function(){if(i)if(null!==(t=i).autosave_interval_seconds&&(t.autosave_interval_seconds<0||t.autosave_interval_seconds>240)&&Be.toast.error(`${a("common.invalid")} "${a("common.autosave".toLowerCase())}" ${a("common.value").toLowerCase()}`),"edit"===e.mode){if(null!=n&&n.project_settings){const e=Object.assign({},n,{project_settings:Object.assign({},null==n?void 0:n.project_settings,i)});m(!0),async function(e){return(0,qa.invoke)("save_project_settings",{projectSettings:e})}(i).then((t=>{m(!1),o(Ga(e)),Be.toast.info(a("common.info.done"))})).catch((e=>{m(!1),Be.toast.error(e.msg)}))}}else m(!0),async function(e,t){return Qe.WEB_MODE?(0,qa.invoke)(Va,{projectSettings:e,dirHandle:t}):(0,qa.invoke)(Va,{projectSettings:e})}(i,l).then((t=>{m(!1),Be.toast.info(a("common.info.done")),e.hideModal&&e.hideModal(),e.onProjectCreated&&e.onProjectCreated(t.root,l)})).catch((e=>{m(!1),Be.toast.error(e.msg)}));var t},isLoading:u,children:"edit"===e.mode?a("common.save"):a("common.create")})})]}),(0,g.jsx)("div",{className:"w-full pb-4 pt-9",children:(0,g.jsx)(Ce,{id:"project-settings-tabs",tabs:r,className:"project-settings__tabs",tabClassName:"!my-0 mx-1 data-[te-nav-active]:border-accent-primary data-[te-nav-active]:bg-brand1",bodyClassName:"pt-0 flex-grow",orientation:"top"})})]})}return null},zi=e=>(0,g.jsx)(Bi,{mode:"create",hideModal:e.hideModal,onProjectCreated:e.onProjectCreated});function Ui(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+" is not an object."));var t=e.done;return Promise.resolve(e.value).then((function(e){return{value:e,done:t}}))}return Ui=function(e){this.s=e,this.n=e.next},Ui.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return void 0===n?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return void 0===n?Promise.reject(e):t(n.apply(this.s,arguments))}},new Ui(e)}const Hi=Ze(),Wi=i().memo((e=>{const{t}=(0,G.useTranslation)(),n=Xo(),o=(0,a.useNavigate)(),{modal:i,showModal:s,hideModal:l}=ce(),{modal:_,safeExit:c}=De(Wo),[u,m]=(0,r.useState)(!1);function b(e,a){eo(e,a).then((e=>{n(Xa(e)),o(jo)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}async function p(e,t){let n=t;if(Qe.WEB_MODE&&t){var a,o=!1,r=!1;try{for(var i,s=function(e){var t,n,a,o=2;for("undefined"!=typeof Symbol&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&null!=(t=e[n]))return t.call(e);if(a&&null!=(t=e[a]))return new Ui(t.call(e));n="@@asyncIterator",a="@@iterator"}throw new TypeError("Object is not async iterable")}(t.entries());o=!(i=await s.next()).done;o=!1){const t=i.value;if(t[0]===(null==e?void 0:e.replace("/",""))){n=t[1];break}}}catch(e){r=!0,a=e}finally{try{o&&null!=s.return&&await s.return()}finally{if(r)throw a}}}b(e,n)}return(0,r.useEffect)((()=>{if(!Qe.WEB_MODE){const e=Hi.onDragDropEvent((async e=>{"over"===e.payload.type?m(!0):"drop"===e.payload.type?(e.payload.paths&&e.payload.paths.length>0&&await async function(e){try{return await ki.path.extname(e),!1}catch(e){return!0}}(e.payload.paths[0])&&b(e.payload.paths[0],void 0),m(!1)):m(!1)}));return bo(s,t,!1),()=>{e&&e.then((e=>e()))}}}),[]),(0,g.jsxs)("div",{className:"relative flex h-full w-full flex-col justify-center "+(u?"border-brand1 border-solid border-4":""),children:[i,_,(Qe.WEB_MODE&&A(window)||!Qe.WEB_MODE)&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:"-mt-28 text-center",children:(0,g.jsx)("img",{src:"mina-logo-full.svg",width:650,alt:"Keadex Mina Logo ",className:"inline-block pointer-events-none"})}),(0,g.jsxs)("div",{className:"mt-28 text-center text-5xl",children:[(0,g.jsx)(U,{icon:d.faFolderOpen,className:"w-60 align-top",onClick:async function(){if(Qe.WEB_MODE)try{b(void 0,await window.showDirectoryPicker({mode:"readwrite"}))}catch(e){}else za.open({directory:!0}).then((async e=>{Array.isArray(e)?Be.toast.error(t("common.error.invalid_path")):e&&b(e,void 0)}))},children:(0,g.jsx)("span",{className:"text-lg",children:t("home.open_local_project")})}),(0,g.jsx)(U,{icon:Pe,onClick:async function(){o(So)},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.open_remote_project")})}),(0,g.jsx)(U,{icon:d.faPlus,onClick:function(){s({id:"createProjectModal",title:"",body:(0,g.jsx)(zi,{hideModal:l,mode:"create",onProjectCreated:p}),buttons:!1,size:"lg"})},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.create_project")})}),(0,g.jsx)(U,{icon:d.faCloud,onClick:async function(){ys(c,[])},className:"w-60 align-top",children:(0,g.jsx)("span",{className:"text-lg",children:t("home.remote_diagrams")})})]})]}),Qe.WEB_MODE&&!A(window)&&(0,g.jsxs)("div",{className:"text-center text-lg",children:["This browser does not support opening local folders.",(0,g.jsx)("br",{})," Check the list of compatible browsers"," ",(0,g.jsx)("a",{href:"https://developer.mozilla.org/en-US/docs/Web/API/Window/showDirectoryPicker#browser_compatibility",target:"_blank",rel:"noreferrer",children:"here"}),"."]})]})})),Ki=function(e,t,n,a,o,r,i,s,l){const _=`${o}_${a}`;function c(t){r({id:`${t}DiargamModal`,title:`${e(`common.${t}`)} ${e("common.diagram").toLowerCase()}`,body:(0,g.jsx)(Er,{diagramName:a,diagramType:o,mode:t,hideModal:i,forceUpdate:s}),buttons:!1})}return{menuItemsProps:[{isHeaderMenuItem:!0,id:_,label:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faEllipsisH}),onClick:void 0,subMenuItems:[{isHeaderMenuItem:!1,id:`${_}_open`,label:e("common.open").toString(),onClick:function(){l(a,o)}},{isHeaderMenuItem:!1,id:`${_}_edit`,label:e("common.edit").toString(),onClick:()=>c("edit")},{isHeaderMenuItem:!1,id:`${_}_duplicate`,label:e("common.duplicate").toString(),onClick:()=>c("duplicate")},{isHeaderMenuItem:!1,id:`${_}_delete`,label:e("common.delete").toString(),onClick:function(){r({id:"confirmDeleteDiagram",title:e("common.confirmation").toString(),body:e("common.question.confirm_delete_diagram",{diagramName:a,diagramType:Cn(o)}).toString(),buttons:[{key:"button-cancel",children:(0,g.jsx)("span",{children:e("common.no")}),"data-te-modal-dismiss":!0},{key:"button-confirm",children:(0,g.jsx)("span",{children:e("common.yes")}),className:"button--dangerous",onClick:()=>{t&&async function(e,t){return(0,qa.invoke)("delete_diagram",{diagramName:e,diagramType:t})}(a,o).then((r=>{Be.toast.info(e("common.info.done")),go({data:{Diagram:{diagram_name:a,diagram_type:o}},hook_type:"onDiagramDeleted"});const l=Object.assign({},t,{project_library:r});n(Ga(l)),s(),i()})).catch((t=>{Be.toast.error(e("common.error.cannot_delete_diagram",{errorMessage:t.msg}))}))}}]})}}]}]}},Xi=i().memo((e=>{const{t}=(0,G.useTranslation)(),{modal:n,showModal:o,hideModal:s}=ce(),{forceUpdate:l,updatedCounter:_}=Ie(),c=(0,a.useNavigate)(),m=(0,r.useRef)(null),b=Xo(),p=Go((e=>e.project.value)),[h,f]=(0,r.useState)([]),[w,y]=i().useState(""),v={data:h,columns:[],getCoreRowModel:(0,W.getCoreRowModel)(),pageCount:1};function x(e,t){e&&t&&c(Eo,{state:{diagramName:e,diagramType:t}})}return(0,r.useEffect)((()=>{p&&no().then((e=>{var n;const a=function(e,t,n,a){const r=[];let i=1;for(const _ of Je){i++;const c={name:Cn(_),children:[]};var l;e[_]&&e[_].length>0?(i+=e[_].length,e[_].forEach((e=>{var r;null==(r=c.children)||r.push({name:e,diagramName:e,diagramType:_,menu:(0,g.jsx)(Z,{menuOptions:Ki(t,p,b,e,_,o,s,n,a).menuItemsProps})})}))):(i++,null==(l=c.children)||l.push({name:t("common.info.no_diagrams").toString()})),r.push(c)}return{data:r,totalRows:i}}(e,t,l,x);f(a.data),null==(n=m.current)||n.setPageSize(a.totalRows)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}),[t,_,p]),(0,g.jsxs)("div",{className:"h-full w-full p-3",children:[n,(0,g.jsxs)("div",{className:"flex items-center",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none",children:t("common.diagrams")}),(0,g.jsx)("div",{className:"ml-5 inline-block w-64",children:(0,g.jsx)(J,{onChange:e=>y(e.target.value)})}),(0,g.jsx)("div",{className:"flex-grow",children:(0,g.jsxs)(te,{className:"float-right bg-red-400",onClick:()=>{o({id:"newDiargamModal",title:`${t("common.new")} ${t("common.diagram").toLowerCase()}`,body:(0,g.jsx)(Er,{mode:"create",hideModal:s,forceUpdate:l}),buttons:!1})},children:[(0,g.jsx)("span",{children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faPlus})}),(0,g.jsx)("span",{className:"ml-1",children:`${t("common.create")} ${t("common.diagram")}`})]})})]}),(0,g.jsx)("div",{className:"home-project w-full pb-4 pt-4",children:(0,g.jsx)(Y,{ref:m,defaultExpanded:!0,disableExpandControls:!0,columns:[{accessorKey:"name",label:"Name"},{accessorKey:"menu",label:"Options",size:0}],tableOptions:v,globalFilter:w,hidePaginationControls:!0,hideHeader:!0,onRowClick:(e,t)=>x(t.diagramName,t.diagramType),suppressRowClickColIDs:["menu"]})})]})})),Gi=Xi,Yi="Keadex",Zi={GH_TOKEN:`${Yi}-Gh-Token`,GH_AUTH:`${Yi}-Gh-Authorization`,GH_URL:`${Yi}-Gh-Url`,GH_REPO:`${Yi}-Gh-Repo`,GH_OWNER:`${Yi}-Gh-Owner`,GH_BRANCH:`${Yi}-Gh-Branch`},qi={path:"/api/github/auth/{clientId}",variables:{clientId:"clientId"}},Vi={path:"/api/github/repo/download",headers:{ghToken:Zi.GH_TOKEN,ghRepo:Zi.GH_REPO,ghOwner:Zi.GH_OWNER,ghBranch:Zi.GH_BRANCH}};function Qi(e,t){return`https://keadex.dev${function(e,t){let n=e.toString();return Object.keys(null!=t?t:{}).forEach((a=>{var o;n=e.replace(`{${a}}`,null!=(o=null==t?void 0:t[a])?o:"")})),n}(e,t)}`}const Ji=require("@octokit/auth-oauth-user"),es=require("@octokit/core"),ts=require("@octokit/plugin-rest-endpoint-methods"),ns=es.Octokit.plugin(ts.restEndpointMethods),as=e=>{const{className:t}=e,{t:n}=(0,G.useTranslation)(),a=(0,r.useContext)(l),o=(0,r.useCallback)(((e,t={})=>new Promise(((n,a)=>{var o,r;const i=null!=(o=t.width)?o:500,s=null!=(r=t.height)?r:600,l=window.screenX+(window.outerWidth-i)/2,_=window.screenY+(window.outerHeight-s)/2,c=window.open(e,"popup",`width=${i},height=${s},left=${l},top=${_}`);if(!c)return void a(new Error("Popup blocked"));const d=e=>{e.origin===window.location.origin&&(n(e.data),g())};window.addEventListener("message",d);const u=setInterval((()=>{c.closed&&(clearInterval(u),n(void 0),g())}),500),g=()=>{window.removeEventListener("message",d),clearInterval(u),c.closed||c.close()}}))),[]),[i,_]=(0,r.useState)(void 0),[c,m]=(0,r.useState)(void 0),[b,p]=(0,r.useState)(void 0),[h,f]=(0,r.useState)(void 0),[w,y]=(0,r.useState)({});function v(){return!!i&&!!c}function x(e){return`${e}-branches`}return null==a||a.useSubscription((e=>{e.type===s.GitHubTokenChanged&&_(e.data.token)})),(0,r.useEffect)((()=>{Qe.WEB_MODE&&(new BroadcastChannel("keadex_gh_channel").onmessage=e=>{const{token:t}=e.data;t&&_(t)})}),[]),(0,r.useEffect)((()=>{"123"!=i&&async function(e){if(e){const t=new ns({authStrategy:Ji.createOAuthUserAuth,auth:{token:e}});try{const e=await t.rest.users.getAuthenticated();m(e.data.login);const n=await t.rest.repos.listForAuthenticatedUser();p(n);const a=new Map,o={};for(const e of n.data){const n=await t.rest.repos.listBranches({owner:e.owner.login,repo:e.name});a.set(x(e.name),n.data),o[e.name]=e.default_branch}f(a),y(o)}catch(e){const t=e;console.error("Error invokig GH API:",t.message)}}}(i)}),[i]),(0,g.jsxs)("div",{className:`w-full h-full relative ${null!=t?t:""}`,children:[(0,g.jsxs)("div",{className:"text-center w-full",children:[(0,g.jsx)(te,{onClick:function(){const e=Qe.WEB_MODE?"mina_web":"mina_desktop";o(`https://github.com/login/oauth/authorize?client_id=${Qe.GITHUB_CLIENT_ID_MINA}&scope=repo&redirect_uri=${Qi(qi.path,{[qi.variables.clientId]:e})}`,{width:700})},className:"!bg-black hover:!bg-dark-primary disabled:hover:!bg-black !text-lg normal-case "+(v()?"rounded-se-none rounded-ee-none":""),disabled:v(),children:v()?`${n("common.hi")}, ${c}!`:n("common.login")}),v()&&(0,g.jsx)(te,{onClick:function(){m(void 0),p(void 0),f(void 0),_(void 0),null==a||a.emit({type:s.GitHubTokenChanged,data:{token:void 0}})},className:"!text-lg button--dangerous !min-w-0 !px-0 w-10 rounded-ss-none rounded-es-none",children:(0,g.jsx)(u.FontAwesomeIcon,{icon:d.faRightFromBracket})})]}),v()&&(!b||!h)&&(0,g.jsx)("div",{className:"w-full absolute bottom-0 top-20",children:(0,g.jsxs)("div",{className:"m-auto",children:[n("remote_project.loading_repos_data"),"..."]})}),v()&&b&&h&&(0,g.jsxs)("div",{className:"w-full absolute bottom-0 top-20",children:[(0,g.jsx)("div",{className:"text-brand1 text-lg mb-3",children:n("remote_diagrams.gh_select_repo")}),(0,g.jsxs)("div",{className:"w-full overflow-y-auto absolute bottom-0 top-10 pr-3",children:[0===b.data.length&&(0,g.jsx)("div",{children:n("remote_diagrams.gh_no_repos")}),b.data.map((t=>{var a,o;return(0,g.jsxs)("div",{className:"p-2 border-b-[0.5px] border-b-secondary last:border-b-0 hover:bg-secondary container-link flex",children:[(0,g.jsx)("div",{className:"flex items-center grow",onClick:()=>{null==e.onRepoSelected||e.onRepoSelected(t,w[t.name],i)},children:t.name}),(0,g.jsx)("div",{className:"my-auto",children:(0,g.jsx)(me,{id:x(t.name),label:n("common.branch"),options:null!=(a=null==(o=h.get(x(t.name)))?void 0:o.map((e=>({value:e.name,label:e.name}))).sort())?a:[],className:"w-40 !mt-3 !mb-2",value:w[t.name],onChange:e=>{y((n=>Object.assign({},n,{[t.name]:e.target.value})))}})})]},t.id)}))]})]})]})},os=i().memo((e=>{const{className:t,showLoading:n,label:a,hideLogo:o}=e,{t:r}=(0,G.useTranslation)();return(0,g.jsx)("div",{className:`absolute flex h-full w-full flex-col justify-center bg-primary ${null!=t?t:""}`,children:(0,g.jsxs)("div",{className:"-mt-28 text-center",children:[!o&&(0,g.jsx)("img",{src:"mina-logo-full.svg",width:650,alt:"Keadex Mina Logo ",className:"inline-block pointer-events-none"}),n&&(0,g.jsxs)("div",{className:"flex flex-row mt-10 text-center w-full justify-center",children:[(0,g.jsx)("div",{className:"text-3xl mr-2 font-light",children:null!=a?a:`${r("common.loading")}`}),(0,g.jsxs)("div",{className:"flex space-x-2 justify-center items-end pb-1",children:[(0,g.jsx)("div",{className:"h-3 w-3 bg-brand1 rounded-full animate-bounce [animation-delay:-0.3s]"}),(0,g.jsx)("div",{className:"h-3 w-3 bg-brand2 rounded-full animate-bounce [animation-delay:-0.15s]"}),(0,g.jsx)("div",{className:"h-3 w-3 bg-brand3 rounded-full animate-bounce"})]})]})]})})})),rs=require("@tauri-apps/plugin-fs"),is=e=>{const{t}=(0,G.useTranslation)(),n=Xo(),o=(0,a.useNavigate)(),[i,s]=(0,r.useState)(!1),[l,_]=(0,r.useState)("");async function c(e){let t,n;return Qe.WEB_MODE?n=await async function(e){var t;const n=await B().loadAsync(e),a=await async function(){const e=await navigator.storage.getDirectory();return await e.getDirectoryHandle(D,{create:!0})}();let o;for(const[e,t]of Object.entries(n.files))if(t.dir){const t=e.split("/").filter(Boolean);if(t.length>0){let e=await P(a,t);o||(o=e)}}else{const n=e.split("/").filter(Boolean),o=n.pop(),r=n.length>0?await P(a,n):a,i=await t.async("uint8array"),s=await r.getFileHandle(o,{create:!0}),l=await s.createWritable();await l.write(i),await l.close()}return null!=(t=o)?t:a}(e):t=await async function(e){var t;const n=await B().loadAsync(e),a=await(0,Qo.tempDir)();let o;for(const[e,t]of Object.entries(n.files)){const n=await(0,Qo.join)(a,e);if(t.dir)await(0,rs.mkdir)(n,{recursive:!0}),o||(o=n);else{await(0,rs.mkdir)(await(0,Qo.dirname)(n),{recursive:!0});const e=await t.async("uint8array");await(0,rs.writeFile)(n,e)}}return null!=(t=o)?t:a}(e),{root:t,dirHandle:n}}async function d(e,a){s(!0),fetch(e,a).then((async e=>{if(e.ok){const a=await e.blob(),r=await c(a);s(!1),eo(r.root,r.dirHandle).then((e=>{n(Xa(e)),o(jo)})).catch((e=>{Be.toast.error(t("common.error.project_not_opened",{errorMessage:e.msg}))}))}else s(!1),Be.toast.error(t("common.error.cannot_download_project",{errorMessage:e.statusText}))})).catch((e=>{s(!1),Be.toast.error(t("common.error.cannot_download_project",{errorMessage:e}))}))}return(0,g.jsxs)("div",{className:"w-full h-full p-3",children:[i&&(0,g.jsx)(os,{className:"!fixed top-0 bottom-0 z-[1] bg-opacity-90",label:t("remote_diagrams.downloading_project"),showLoading:!0,hideLogo:!0}),(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("remote_project.title")}),(0,g.jsxs)("div",{className:"flex absolute left-3 right-2 top-14 bottom-0",children:[(0,g.jsxs)("div",{className:"w-1/2 h-full p-2 flex flex-col",children:[(0,g.jsx)("div",{className:"text-center mt-14 text-xl text-white",children:t("remote_project.from_github")}),(0,g.jsx)("div",{className:"mt-14 h-full",children:(0,g.jsx)(as,{onRepoSelected:async function(e,t,n){n&&d(Qi(Vi.path),{headers:{[Vi.headers.ghToken]:n,[Vi.headers.ghRepo]:e.name,[Vi.headers.ghOwner]:e.owner.login,[Vi.headers.ghBranch]:t}})}})})]}),(0,g.jsx)(he,{orientation:"vertical",className:"h-full"}),(0,g.jsxs)("div",{className:"w-1/2 p-2 flex flex-col",children:[(0,g.jsx)("div",{className:"text-center mt-14 text-xl text-white",children:t("remote_project.from_url")}),(0,g.jsxs)("div",{className:"flex flex-col mt-14 h-full",children:[(0,g.jsx)(ue,{classNameRoot:"mx-2",label:t("remote_diagrams.type_url_mina_project"),info:`${t("common.example")}: https://example.com/my-mina-project.zip`,value:l,onChange:e=>_(e.target.value)}),(0,g.jsx)(te,{className:"mt-5 w-36 mx-auto",onClick:()=>d(l),children:t("common.open")})]})]})]})]})},ss=i().memo((e=>{var t;const{projectRootUrl:n,diagramUrl:a,ghToken:o}=e,i=(0,r.useRef)(null),[s,l]=(0,r.useState)(),[_,c]=(0,r.useState)(),[d,u]=(0,r.useState)();async function m(e,t){if(t){const n="https://keadex.dev/api/download-gh-raw-file",a={headers:{"Keadex-Gh-Url":e}};return t&&(a.headers["Keadex-Gh-Authorization"]=t),await fetch(n,a)}return await fetch(e)}async function b(e){var t;let a,r,s;null==(t=i.current)||t.resetCanvas();try{a=await async function(e){return(0,qa.invoke)("project_settings_url",{projectRootUrl:e})}(n),r=await async function(e,t){return(0,qa.invoke)("diagram_plantuml_url_from_diagram_url",{projectRootUrl:e,diagramUrl:t})}(n,e),s=await async function(e,t){return(0,qa.invoke)("diagram_spec_url_from_diagram_url",{projectRootUrl:e,diagramUrl:t})}(n,e)}catch(e){console.error(e),p("Invalid URL: the provided URL is an invalid Mina project or diagram.")}if(a&&r&&s){let t,i,_;try{const e=await m(a,o),n=await m(r,o),l=await m(s,o);if(!(e.ok&&n.ok&&l.ok))throw new Error;t=await e.text(),i=await n.text(),_=await l.text()}catch(e){console.error(e),p("Diagram or project settings not found. Please verify the URLs provided, or, if linking to a private repository, ensure the GitHub token is configured.")}if(t&&i&&_)try{c(JSON.parse(t)),l(await async function(e,t,n,a){return(0,qa.invoke)("open_remote_diagram",{projectRootUrl:e,diagramUrl:t,rawPlantuml:n,rawDiagramSpec:a})}(n,e,i,_))}catch(e){p("Invalid diagram or project settings.")}}}function p(e){l(null),u(e)}const h={onOpenDiagramClick:async e=>{let t;try{t=await async function(e,t){return(0,qa.invoke)("diagram_url_from_link_string",{projectRootUrl:e,linkString:t})}(n,e)}catch(e){console.error(e),p("Invalid URL: the provided URL is an invalid Mina project or diagram.")}t&&b(t)},onOpenExternalLinkClick:e=>{window.open(e,"_blank")}};return(0,r.useEffect)((()=>{p(null),b(a)}),[a,n,o]),(0,g.jsxs)("div",{className:"h-full w-full border-t flex items-center",children:[null===d&&s&&(0,g.jsx)(Si,{diagramListener:h,diagram:s,ref:i,diagramsThemeSettings:null==_||null==(t=_.themes_settings)?void 0:t.diagrams_theme_settings,target:"web",readOnly:!0}),d&&(0,g.jsx)("div",{className:"w-full text-center text-black",children:d})]})})),ls=ss;function _s(e,t,n){let a=`https://keadex.dev/api/mina-diagram/${btoa(e)}/${btoa(t)}`;return n&&(a=a.concat(`/${n}`)),a}const cs=e=>{const{t}=(0,G.useTranslation)(),{projectRootUrl:n,diagramUrl:o,ghToken:i}={projectRootUrl:(s=(0,a.useParams)()).projectRootUrl?atob(s.projectRootUrl):void 0,diagramUrl:s.diagramUrl?atob(s.diagramUrl):void 0,ghToken:s.ghToken};var s;const[l,_]=(0,r.useState)(n&&0!==n.replace(/ /g,"").length?n:"https://raw.githubusercontent.com/keadex/keadex/main/apps/keadex-diagrams"),[c,d]=(0,r.useState)(o&&0!==o.replace(/ /g,"").length?o:"https://raw.githubusercontent.com/keadex/keadex/main/apps/keadex-diagrams/diagrams/container/keadex-mina"),[u,m]=(0,r.useState)(i&&0!==i.replace(/ /g,"").length?i:""),[b,p]=(0,r.useState)(l),[h,f]=(0,r.useState)(c),[w,y]=(0,r.useState)(u);function v(){return 0===l.replace(/ /g,"").length||0===c.replace(/ /g,"").length}function x(e,t,n){e&&t&&(p(e),f(t),n&&y(n))}function j(e){if(l&&c){const n=("deep-link"===e?hr:_s)(l,c,u);(0,ho.writeText)(n),Be.toast.info(t("remote_diagrams.link_copied")),u&&Be.toast.warn(t("remote_diagrams.gh_token_copy_warning"),{autoClose:!1})}}return(0,r.useEffect)((()=>{x(l,c,u)}),[]),(0,r.useEffect)((()=>{n&&_(n),o&&d(o),i&&m(i),x(n,o,i)}),[n,o,i]),(0,g.jsxs)("div",{className:"w-full min-h-full p-3 flex flex-col",children:[(0,g.jsx)("div",{className:"text-accent-primary inline-block text-2xl font-bold pointer-events-none mt-2",children:t("remote_diagrams.title")}),(0,g.jsx)("div",{className:"w-full mt-5",children:t("remote_diagrams.description")}),(0,g.jsxs)("div",{className:"w-full mt-10 flex flex-col",children:[(0,g.jsx)(ue,{value:l,onChange:e=>_(e.target.value),label:`${t("remote_diagrams.project_root_url")}*`,info:`*${t("common.required")}`}),(0,g.jsx)(ue,{value:c,onChange:e=>d(e.target.value),label:`${t("remote_diagrams.diagram_url")}*`,info:`*${t("common.required")}`,classNameRoot:"mt-5"}),(0,g.jsx)(ue,{value:u,onChange:e=>m(e.target.value),label:t("common.github_token"),info:t("remote_diagrams.gh_token_info"),classNameRoot:"mt-5"}),(0,g.jsxs)("div",{className:"flex flex-col md:flex-row mx-auto mt-5",children:[(0,g.jsx)(te,{disabled:v(),className:"mr-2 w-48",onClick:()=>x(l,c,u),children:t("common.render")}),(0,g.jsx)(te,{disabled:v(),className:"mr-2 w-48",onClick:()=>j("deep-link"),children:t("common.action.copy_deep_link")}),(0,g.jsx)(te,{disabled:v(),className:"w-48",onClick:()=>j("ssr-link"),children:t("common.action.copy_ssr_link")})]}),(0,g.jsx)("div",{className:"w-full h-[50rem] mt-14 bg-white",children:(0,g.jsx)(ls,{projectRootUrl:b,diagramUrl:h,ghToken:w})})]})]})},ds=(0,Wa.createSlice)({name:"counter",initialState:{value:0},reducers:{increment:e=>{e.value+=1},decrement:e=>{e.value-=1},incrementByAmount:(e,t)=>{e.value+=t.payload}}}),{increment:us,decrement:gs,incrementByAmount:ms}=ds.actions,bs=ds.reducer,ps=(0,Wa.configureStore)({reducer:{counter:bs,project:Za}}),hs=(0,a.createMemoryRouter)([{element:(0,g.jsx)(Fe.ErrorBoundary,{FallbackComponent:ze,children:(0,g.jsx)(ur,{})}),children:[{path:Wo[xo].path,element:(0,g.jsx)(Wi,{})},{path:Wo[jo].path,element:(0,g.jsx)(Gi,{})},{path:Wo[Oo].path,element:(0,g.jsx)(Bi,{mode:"edit"})},{path:Wo[Eo].path,element:(0,g.jsx)(Ci,{})},{path:Wo[ko].path,element:(0,g.jsx)(Gr,{c4ElementType:"Person"})},{path:Wo[No].path,element:(0,g.jsx)(Gr,{c4ElementType:"SoftwareSystem"})},{path:Wo[To].path,element:(0,g.jsx)(Gr,{c4ElementType:"Container"})},{path:Wo[Ro].path,element:(0,g.jsx)(Gr,{c4ElementType:"Component"})},{path:Wo[Mo].path,element:(0,g.jsx)(fr,{})},{path:Wo[Po].path,element:(0,g.jsx)(cs,{})},{path:Wo[So].path,element:(0,g.jsx)(is,{})}]}]);async function fs(e,t,n,a,o){const r="fs_path"===t?await lo(e):await io(e);if(r&&r.diagram_name&&r.diagram_type){const e={diagramName:r.diagram_name,diagramType:r.diagram_type};n===Eo?null==a||a.emit({type:s.OpenDiagram,data:{state:e}}):o(Eo,{state:e})}}function ws(e,t){e(Mo.replace(Lo,null!=t?t:""))}function ys(e,t){const n=[];for(let e=0;e<3;e++)t.length>e?n.push(t[e]):n.push("");e(Po.replace($o,n[0]).replace(Io,n[1]).replace(Do,n[2]))}const vs=require("i18next");var xs=n.n(vs);const js=require("i18next-http-backend");var Os=n.n(js);const Ss=require("ahooks/lib/useEventEmitter");var Es,Cs=n.n(Ss);console.log=()=>{},console.debug=()=>{},Es={backend:{loadPath:"/_next/static/keadex-mina/locales/{{lng}}/{{ns}}.json"}},xs().use(Os()).use(G.initReactI18next).init(Object.assign({lng:"en",fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}},Es||{}));const ks=i().memo((({scriptPath:e})=>{const t=(0,r.useRef)(!1),n=(0,r.useRef)(!1),o=(0,r.useRef)(!1),i=Cs()(),{forceUpdate:s}=Ie();return(0,r.useEffect)((()=>{o.current||(o.current=!0,(0,Xe.default)().then((a=>{console.debug("Wasm module loaded"),async function(){const e=await navigator.storage.getDirectory();await e.getDirectoryHandle(D).catch((()=>!1))&&(console.debug("Clearing OPFS temp directory..."),await e.removeEntry(D,{recursive:!0}).catch((e=>{console.debug(`Entry "${D}" not found, nothing to clear.`)})))}(),setTimeout((()=>{n.current||(console.debug("Tailwind Elements initialized"),(0,oe.initTE)({Dropdown:oe.Dropdown,Button:oe.Button,Modal:oe.Modal,Input:oe.Input,Select:oe.Select,Collapse:oe.Collapse})),n.current=!0}),1e3),t.current||(null==a||a.init_app(e),console.debug("Mina app initialized"),s()),t.current=!0})).catch((e=>{console.error("Error loading Wasm module:",e)})))}),[]),(0,g.jsxs)(g.Fragment,{children:[t.current&&(0,g.jsx)(Ko.Provider,{store:ps,children:(0,g.jsx)(l.Provider,{value:i,children:(0,g.jsx)(a.RouterProvider,{router:hs})})}),!t.current&&(0,g.jsx)("div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-xl",children:"Mina is loading..."})]})})),Ns=ks},732:e=>{e.exports=require("react/jsx-runtime")},734:(e,t,n)=>{e.exports=n.p+"mina_live_bg.wasm"},971:(e,t,n)=>{let a;n.r(t),n.d(t,{AISettings:()=>de,AddElementTag:()=>ge,BaseElement:()=>be,Boundary:()=>he,C4Elements:()=>we,Component:()=>ve,Container:()=>je,DeploymentNode:()=>Se,Diagram:()=>Ce,DiagramElementSpec:()=>Ne,DiagramPlantUML:()=>Re,DiagramSpec:()=>Me,DiagramsThemeSettings:()=>Ie,ElementData:()=>Ae,HookPayload:()=>Fe,IntoUnderlyingByteSource:()=>ze,IntoUnderlyingSink:()=>He,IntoUnderlyingSource:()=>Ke,MinaError:()=>Ge,Person:()=>Ze,Point:()=>Ve,Position:()=>Je,Project:()=>tt,ProjectLibrary:()=>at,ProjectSettings:()=>rt,Relationship:()=>st,Shape:()=>_t,Size:()=>dt,SoftwareSystem:()=>gt,ThemesSettings:()=>bt,UserSettings:()=>ht,close_diagram:()=>H,close_project:()=>R,create_diagram:()=>I,create_library_element:()=>J,create_project:()=>N,default:()=>xt,delete_diagram:()=>G,delete_library_element:()=>Q,dependent_elements_in_diagram:()=>F,deserialize_plantuml_by_string:()=>X,diagram_from_link_string:()=>U,diagram_name_type_from_path:()=>D,diagram_plantuml_url_from_diagram_url:()=>q,diagram_spec_url_from_diagram_url:()=>Z,diagram_to_link_string:()=>P,diagram_url_from_link_string:()=>V,execute_hook:()=>ie,export_diagram_to_file:()=>K,generate_plantuml:()=>C,get_diagram:()=>W,get_user_settings:()=>oe,initSync:()=>yt,init_app:()=>T,library_element_type_from_path:()=>ne,list_diagrams:()=>M,list_library_elements:()=>ee,open_diagram:()=>$,open_project:()=>k,open_remote_diagram:()=>A,parsed_element_to_plantuml:()=>z,project_settings_url:()=>L,save_project_settings:()=>ae,save_spec_diagram_raw_plantuml:()=>B,save_user_settings:()=>re,search:()=>j,search_and_replace:()=>x,search_diagram_element_alias:()=>O,task_worker_entry_point:()=>y,update_library_element:()=>te}),e=n.hmd(e);let o=0,r=null;function i(){return null!==r&&0!==r.byteLength||(r=new Uint8Array(a.memory.buffer)),r}const s="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},l="function"==typeof s.encodeInto?function(e,t){return s.encodeInto(e,t)}:function(e,t){const n=s.encode(e);return t.set(n),{read:e.length,written:n.length}};function _(e,t,n){if(void 0===n){const n=s.encode(e),a=t(n.length,1)>>>0;return i().subarray(a,a+n.length).set(n),o=n.length,a}let a=e.length,r=t(a,1)>>>0;const _=i();let c=0;for(;c<a;c++){const t=e.charCodeAt(c);if(t>127)break;_[r+c]=t}if(c!==a){0!==c&&(e=e.slice(c)),r=n(r,a,a=c+3*e.length,1)>>>0;const t=i().subarray(r+c,r+a);c+=l(e,t).written,r=n(r,a,c,1)>>>0}return o=c,r}let c=null;function d(){return(null===c||!0===c.buffer.detached||void 0===c.buffer.detached&&c.buffer!==a.memory.buffer)&&(c=new DataView(a.memory.buffer)),c}const u="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};function g(e,t){return e>>>=0,u.decode(i().subarray(e,e+t))}function m(e){const t=a.__externref_table_alloc();return a.__wbindgen_export_4.set(t,e),t}function b(e,t){try{return e.apply(this,t)}catch(e){const t=m(e);a.__wbindgen_exn_store(t)}}function p(e){return null==e}"undefined"!=typeof TextDecoder&&u.decode();const h="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>{a.__wbindgen_export_6.get(e.dtor)(e.a,e.b)}));function f(e,t,n,o){const r={a:e,b:t,cnt:1,dtor:n},i=(...e)=>{r.cnt++;const t=r.a;r.a=0;try{return o(t,r.b,...e)}finally{0==--r.cnt?(a.__wbindgen_export_6.get(r.dtor)(t,r.b),h.unregister(r)):r.a=t}};return i.original=r,h.register(i,r,r),i}function w(e){const t=typeof e;if("number"==t||"boolean"==t||null==e)return`${e}`;if("string"==t)return`"${e}"`;if("symbol"==t){const t=e.description;return null==t?"Symbol":`Symbol(${t})`}if("function"==t){const t=e.name;return"string"==typeof t&&t.length>0?`Function(${t})`:"Function"}if(Array.isArray(e)){const t=e.length;let n="[";t>0&&(n+=w(e[0]));for(let a=1;a<t;a++)n+=", "+w(e[a]);return n+="]",n}const n=/\[object ([^\]]+)\]/.exec(toString.call(e));let a;if(!(n&&n.length>1))return toString.call(e);if(a=n[1],"Object"==a)try{return"Object("+JSON.stringify(e)+")"}catch(e){return"Object"}return e instanceof Error?`${e.name}: ${e.message}\n${e.stack}`:a}function y(e){return a.task_worker_entry_point(e)}function v(e,t){if(!(e instanceof t))throw new Error(`expected instance of ${t.name}`)}function x(e,t,n,o){return a.search_and_replace(e,t,n,o)}function j(e,t,n,o){return a.search(e,t,n,o)}function O(e,t,n,o){return a.search_diagram_element_alias(e,t,n,o)}function S(e,t){e>>>=0;const n=d(),o=[];for(let r=e;r<e+4*t;r+=4)o.push(a.__wbindgen_export_4.get(n.getUint32(r,!0)));return a.__externref_drop_slice(e,t),o}function E(e,t){const n=t(4*e.length,4)>>>0;for(let t=0;t<e.length;t++){const a=m(e[t]);d().setUint32(n+4*t,a,!0)}return o=e.length,n}function C(e){return a.generate_plantuml(e)}function k(e){return a.open_project(p(e)?0:m(e))}function N(e,t){return a.create_project(e,p(t)?0:m(t))}function T(e){return a.init_app(e)}function R(){return a.close_project()}function L(e){let t,n;try{const r=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),i=o,s=a.project_settings_url(r,i);return t=s[0],n=s[1],g(s[0],s[1])}finally{a.__wbindgen_free(t,n,1)}}function M(){return a.list_diagrams()}function $(e,t){return a.open_diagram(e,t)}function I(e){return a.create_diagram(e)}function D(e){return a.diagram_name_type_from_path(e)}function A(e,t,n,o){return a.open_remote_diagram(e,t,n,o)}function P(e,t){return a.diagram_to_link_string(e,t)}function F(e,t,n){return a.dependent_elements_in_diagram(e,t,n)}function B(e,t,n,o){return a.save_spec_diagram_raw_plantuml(e,t,n,o)}function z(e,t){return a.parsed_element_to_plantuml(e,t)}function U(e){return a.diagram_from_link_string(e)}function H(e,t){return a.close_diagram(e,t)}function W(e,t){return a.get_diagram(e,t)}function K(e,t,n,o){return a.export_diagram_to_file(e,t,n,o)}function X(e){return a.deserialize_plantuml_by_string(e)}function G(e,t){return a.delete_diagram(e,t)}function Y(e){const t=a.__wbindgen_export_4.get(e);return a.__externref_table_dealloc(e),t}function Z(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_spec_url_from_diagram_url(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,Y(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function q(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_plantuml_url_from_diagram_url(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,Y(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function V(e,t){let n,r;try{const l=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),c=o,d=_(t,a.__wbindgen_malloc,a.__wbindgen_realloc),u=o,m=a.diagram_url_from_link_string(l,c,d,u);var i=m[0],s=m[1];if(m[3])throw i=0,s=0,Y(m[2]);return n=i,r=s,g(i,s)}finally{a.__wbindgen_free(n,r,1)}}function Q(e,t){return a.delete_library_element(e,t)}function J(e){return a.create_library_element(e)}function ee(e){return a.list_library_elements(e)}function te(e,t){return a.update_library_element(e,t)}function ne(e){return a.library_element_type_from_path(e)}function ae(e){return a.save_project_settings(e)}function oe(){return a.get_user_settings()}function re(e){return a.save_user_settings(e)}function ie(e){return a.execute_hook(e)}function se(e,t,n){a.closure102_externref_shim(e,t,n)}const le=["omit","same-origin","include"],_e=["same-origin","no-cors","cors","navigate"],ce="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_aisettings_free(e>>>0,1)));class de{static __wrap(e){e>>>=0;const t=Object.create(de.prototype);return t.__wbg_ptr=e,ce.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ce.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_aisettings_free(e,0)}get api_key(){const e=a.__wbg_get_aisettings_api_key(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set api_key(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_key(this.__wbg_ptr,t,n)}get api_base_url(){const e=a.__wbg_get_aisettings_api_base_url(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set api_base_url(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_base_url(this.__wbg_ptr,t,n)}get model(){const e=a.__wbg_get_aisettings_model(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set model(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_model(this.__wbg_ptr,t,n)}}const ue="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_addelementtag_free(e>>>0,1)));class ge{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ue.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_addelementtag_free(e,0)}get tag(){const e=a.__wbg_get_addelementtag_tag(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set tag(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_tag(this.__wbg_ptr,t,n)}get bg_color(){const e=a.__wbg_get_addelementtag_bg_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_bg_color(this.__wbg_ptr,t,n)}get font_color(){const e=a.__wbg_get_addelementtag_font_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set font_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_font_color(this.__wbg_ptr,t,n)}get border_color(){const e=a.__wbg_get_addelementtag_border_color(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_color(this.__wbg_ptr,t,n)}get shadowing(){const e=a.__wbg_get_addelementtag_shadowing(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set shadowing(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_shadowing(this.__wbg_ptr,t,n)}get shape(){const e=a.__wbg_get_addelementtag_shape(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set shape(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_shape(this.__wbg_ptr,t,n)}get sprite(){const e=a.__wbg_get_addelementtag_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_sprite(this.__wbg_ptr,t,n)}get techn(){const e=a.__wbg_get_addelementtag_techn(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set techn(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_techn(this.__wbg_ptr,t,n)}get legend_text(){const e=a.__wbg_get_addelementtag_legend_text(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set legend_text(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_text(this.__wbg_ptr,t,n)}get legend_sprite(){const e=a.__wbg_get_addelementtag_legend_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set legend_sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_sprite(this.__wbg_ptr,t,n)}get border_style(){const e=a.__wbg_get_addelementtag_border_style(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_style(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_style(this.__wbg_ptr,t,n)}get border_thickness(){const e=a.__wbg_get_addelementtag_border_thickness(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_thickness(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_border_thickness(this.__wbg_ptr,t,n)}}const me="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_baseelement_free(e>>>0,1)));class be{static __wrap(e){e>>>=0;const t=Object.create(be.prototype);return t.__wbg_ptr=e,me.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,me.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_baseelement_free(e,0)}get alias(){const e=a.__wbg_get_baseelement_alias(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set alias(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_alias(this.__wbg_ptr,t,n)}get label(){const e=a.__wbg_get_baseelement_label(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set label(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_label(this.__wbg_ptr,t,n)}get description(){const e=a.__wbg_get_baseelement_description(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set description(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_description(this.__wbg_ptr,t,n)}get sprite(){const e=a.__wbg_get_baseelement_sprite(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set sprite(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_sprite(this.__wbg_ptr,t,n)}get tags(){const e=a.__wbg_get_baseelement_tags(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set tags(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_tags(this.__wbg_ptr,t,n)}get link(){const e=a.__wbg_get_baseelement_link(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set link(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_link(this.__wbg_ptr,t,n)}get uuid(){const e=a.__wbg_get_baseelement_uuid(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set uuid(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_uuid(this.__wbg_ptr,t,n)}get notes(){const e=a.__wbg_get_baseelement_notes(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set notes(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_notes(this.__wbg_ptr,t,n)}}const pe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_boundary_free(e>>>0,1)));class he{static __wrap(e){e>>>=0;const t=Object.create(he.prototype);return t.__wbg_ptr=e,pe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof he?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,pe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_boundary_free(e,0)}get base_data(){const e=a.__wbg_get_boundary_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_boundary_base_data(this.__wbg_ptr,t)}get boundary_type(){return a.__wbg_get_boundary_boundary_type(this.__wbg_ptr)}set boundary_type(e){a.__wbg_set_boundary_boundary_type(this.__wbg_ptr,p(e)?0:m(e))}get boundary_custom_type(){const e=a.__wbg_get_boundary_boundary_custom_type(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set boundary_custom_type(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_boundary_boundary_custom_type(this.__wbg_ptr,t,n)}get sub_elements(){const e=a.__wbg_get_boundary_sub_elements(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set sub_elements(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_boundary_sub_elements(this.__wbg_ptr,t,n)}}const fe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_c4elements_free(e>>>0,1)));class we{static __wrap(e){e>>>=0;const t=Object.create(we.prototype);return t.__wbg_ptr=e,fe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,fe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_c4elements_free(e,0)}get persons(){const e=a.__wbg_get_c4elements_persons(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set persons(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_persons(this.__wbg_ptr,t,n)}get software_systems(){const e=a.__wbg_get_c4elements_software_systems(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set software_systems(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_software_systems(this.__wbg_ptr,t,n)}get containers(){const e=a.__wbg_get_c4elements_containers(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set containers(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_containers(this.__wbg_ptr,t,n)}get components(){const e=a.__wbg_get_c4elements_components(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set components(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_components(this.__wbg_ptr,t,n)}get deployment_nodes(){const e=a.__wbg_get_c4elements_deployment_nodes(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set deployment_nodes(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_deployment_nodes(this.__wbg_ptr,t,n)}get relationships(){const e=a.__wbg_get_c4elements_relationships(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set relationships(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_relationships(this.__wbg_ptr,t,n)}get boundaries(){const e=a.__wbg_get_c4elements_boundaries(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set boundaries(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_c4elements_boundaries(this.__wbg_ptr,t,n)}}const ye="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_component_free(e>>>0,1)));class ve{static __wrap(e){e>>>=0;const t=Object.create(ve.prototype);return t.__wbg_ptr=e,ye.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof ve?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ye.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_component_free(e,0)}get base_data(){const e=a.__wbg_get_component_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_component_base_data(this.__wbg_ptr,t)}get technology(){const e=a.__wbg_get_component_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_component_technology(this.__wbg_ptr,t,n)}get component_type(){return a.__wbg_get_component_component_type(this.__wbg_ptr)}set component_type(e){a.__wbg_set_component_component_type(this.__wbg_ptr,p(e)?0:m(e))}}const xe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_container_free(e>>>0,1)));class je{static __wrap(e){e>>>=0;const t=Object.create(je.prototype);return t.__wbg_ptr=e,xe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof je?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,xe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_container_free(e,0)}get base_data(){const e=a.__wbg_get_container_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_container_base_data(this.__wbg_ptr,t)}get technology(){const e=a.__wbg_get_container_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_addelementtag_legend_text(this.__wbg_ptr,t,n)}get container_type(){return a.__wbg_get_container_container_type(this.__wbg_ptr)}set container_type(e){a.__wbg_set_container_container_type(this.__wbg_ptr,p(e)?0:m(e))}}const Oe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_deploymentnode_free(e>>>0,1)));class Se{static __wrap(e){e>>>=0;const t=Object.create(Se.prototype);return t.__wbg_ptr=e,Oe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Se?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Oe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_deploymentnode_free(e,0)}get base_data(){const e=a.__wbg_get_deploymentnode_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_deploymentnode_base_data(this.__wbg_ptr,t)}get deploymeny_node_custom_type(){const e=a.__wbg_get_deploymentnode_deploymeny_node_custom_type(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set deploymeny_node_custom_type(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_deploymentnode_deploymeny_node_custom_type(this.__wbg_ptr,t,n)}get deployment_node_type(){return a.__wbg_get_deploymentnode_deployment_node_type(this.__wbg_ptr)}set deployment_node_type(e){a.__wbg_set_deploymentnode_deployment_node_type(this.__wbg_ptr,p(e)?0:m(e))}get sub_elements(){const e=a.__wbg_get_deploymentnode_sub_elements(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set sub_elements(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_deploymentnode_sub_elements(this.__wbg_ptr,t,n)}}const Ee="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagram_free(e>>>0,1)));class Ce{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ee.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagram_free(e,0)}get diagram_name(){const e=a.__wbg_get_diagram_diagram_name(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set diagram_name(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_diagram_name(this.__wbg_ptr,t,n)}get diagram_type(){return a.__wbg_get_diagram_diagram_type(this.__wbg_ptr)}set diagram_type(e){a.__wbg_set_diagram_diagram_type(this.__wbg_ptr,p(e)?0:m(e))}get diagram_spec(){const e=a.__wbg_get_diagram_diagram_spec(this.__wbg_ptr);return 0===e?void 0:Me.__wrap(e)}set diagram_spec(e){let t=0;p(e)||(v(e,Me),t=e.__destroy_into_raw()),a.__wbg_set_diagram_diagram_spec(this.__wbg_ptr,t)}get diagram_plantuml(){const e=a.__wbg_get_diagram_diagram_plantuml(this.__wbg_ptr);return 0===e?void 0:Re.__wrap(e)}set diagram_plantuml(e){let t=0;p(e)||(v(e,Re),t=e.__destroy_into_raw()),a.__wbg_set_diagram_diagram_plantuml(this.__wbg_ptr,t)}get raw_plantuml(){const e=a.__wbg_get_diagram_raw_plantuml(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set raw_plantuml(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_raw_plantuml(this.__wbg_ptr,t,n)}get last_modified(){const e=a.__wbg_get_diagram_last_modified(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set last_modified(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagram_last_modified(this.__wbg_ptr,t,n)}get auto_layout_errors(){const e=a.__wbg_get_diagram_auto_layout_errors(this.__wbg_ptr);let t;return 0!==e[0]&&(t=S(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set auto_layout_errors(e){var t=p(e)?0:E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagram_auto_layout_errors(this.__wbg_ptr,t,n)}get auto_layout(){return a.diagram_auto_layout(this.__wbg_ptr)}set auto_layout(e){a.diagram_set_auto_layout(this.__wbg_ptr,e)}}const ke="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramelementspec_free(e>>>0,1)));class Ne{static __wrap(e){e>>>=0;const t=Object.create(Ne.prototype);return t.__wbg_ptr=e,ke.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ne?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ke.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramelementspec_free(e,0)}get alias(){const e=a.__wbg_get_diagramelementspec_alias(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set alias(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_alias(this.__wbg_ptr,t,n)}get from(){const e=a.__wbg_get_diagramelementspec_from(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set from(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_from(this.__wbg_ptr,t,n)}get to(){const e=a.__wbg_get_diagramelementspec_to(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set to(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramelementspec_to(this.__wbg_ptr,t,n)}get shapes(){const e=a.__wbg_get_diagramelementspec_shapes(this.__wbg_ptr);let t;return 0!==e[0]&&(t=S(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set shapes(e){var t=p(e)?0:E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramelementspec_shapes(this.__wbg_ptr,t,n)}get element_type(){return a.__wbg_get_diagramelementspec_element_type(this.__wbg_ptr)}set element_type(e){a.__wbg_set_diagramelementspec_element_type(this.__wbg_ptr,p(e)?0:m(e))}get position(){const e=a.__wbg_get_diagramelementspec_position(this.__wbg_ptr);return 0===e?void 0:Je.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Je),t=e.__destroy_into_raw()),a.__wbg_set_diagramelementspec_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_diagramelementspec_size(this.__wbg_ptr);return 0===e?void 0:dt.__wrap(e)}set size(e){let t=0;p(e)||(v(e,dt),t=e.__destroy_into_raw()),a.__wbg_set_diagramelementspec_size(this.__wbg_ptr,t)}get inner_specs(){const e=a.__wbg_get_diagramelementspec_inner_specs(this.__wbg_ptr);let t;return 0!==e[0]&&(t=S(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set inner_specs(e){var t=p(e)?0:E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramelementspec_inner_specs(this.__wbg_ptr,t,n)}}const Te="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramplantuml_free(e>>>0,1)));class Re{static __wrap(e){e>>>=0;const t=Object.create(Re.prototype);return t.__wbg_ptr=e,Te.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Te.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramplantuml_free(e,0)}get tags(){return a.diagramplantuml_tags(this.__wbg_ptr)}set tags(e){a.diagramplantuml_set_tags(this.__wbg_ptr,e)}get diagram_id(){const e=a.__wbg_get_diagramplantuml_diagram_id(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set diagram_id(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_baseelement_description(this.__wbg_ptr,t,n)}get elements(){const e=a.__wbg_get_diagramplantuml_elements(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set elements(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramplantuml_elements(this.__wbg_ptr,t,n)}get aliases(){const e=a.__wbg_get_diagramplantuml_aliases(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set aliases(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramplantuml_aliases(this.__wbg_ptr,t,n)}}const Le="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramspec_free(e>>>0,1)));class Me{static __wrap(e){e>>>=0;const t=Object.create(Me.prototype);return t.__wbg_ptr=e,Le.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Le.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramspec_free(e,0)}get uuid(){let e,t;try{const n=a.__wbg_get_diagramspec_uuid(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set uuid(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramspec_uuid(this.__wbg_ptr,t,n)}get description(){const e=a.__wbg_get_diagramspec_description(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set description(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramspec_description(this.__wbg_ptr,t,n)}get tags(){const e=a.__wbg_get_diagramspec_tags(this.__wbg_ptr);let t;return 0!==e[0]&&(t=S(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set tags(e){var t=p(e)?0:E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_tags(this.__wbg_ptr,t,n)}get elements_specs(){const e=a.__wbg_get_diagramspec_elements_specs(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set elements_specs(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_elements_specs(this.__wbg_ptr,t,n)}get shapes(){const e=a.__wbg_get_diagramspec_shapes(this.__wbg_ptr);var t=S(e[0],e[1]).slice();return a.__wbindgen_free(e[0],4*e[1],4),t}set shapes(e){const t=E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_diagramspec_shapes(this.__wbg_ptr,t,n)}get auto_layout_enabled(){return 0!==a.__wbg_get_diagramspec_auto_layout_enabled(this.__wbg_ptr)}set auto_layout_enabled(e){a.__wbg_set_diagramspec_auto_layout_enabled(this.__wbg_ptr,e)}get auto_layout_orientation(){return a.__wbg_get_diagramspec_auto_layout_orientation(this.__wbg_ptr)}set auto_layout_orientation(e){a.__wbg_set_diagramspec_auto_layout_orientation(this.__wbg_ptr,e)}get auto_layout_only_straight_arrows(){return 0!==a.__wbg_get_diagramspec_auto_layout_only_straight_arrows(this.__wbg_ptr)}set auto_layout_only_straight_arrows(e){a.__wbg_set_diagramspec_auto_layout_only_straight_arrows(this.__wbg_ptr,e)}get auto_layout_ranksep(){return a.__wbg_get_diagramspec_auto_layout_ranksep(this.__wbg_ptr)}set auto_layout_ranksep(e){a.__wbg_set_diagramspec_auto_layout_ranksep(this.__wbg_ptr,e)}get auto_layout_subgraph_inner_margin(){return a.__wbg_get_diagramspec_auto_layout_subgraph_inner_margin(this.__wbg_ptr)}set auto_layout_subgraph_inner_margin(e){a.__wbg_set_diagramspec_auto_layout_subgraph_inner_margin(this.__wbg_ptr,e)}get auto_layout_subgraph_outer_margin(){return a.__wbg_get_diagramspec_auto_layout_subgraph_outer_margin(this.__wbg_ptr)}set auto_layout_subgraph_outer_margin(e){a.__wbg_set_diagramspec_auto_layout_subgraph_outer_margin(this.__wbg_ptr,e)}get grid_enabled(){return 0!==a.__wbg_get_diagramspec_grid_enabled(this.__wbg_ptr)}set grid_enabled(e){a.__wbg_set_diagramspec_grid_enabled(this.__wbg_ptr,e)}}const $e="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_diagramsthemesettings_free(e>>>0,1)));class Ie{static __wrap(e){e>>>=0;const t=Object.create(Ie.prototype);return t.__wbg_ptr=e,$e.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,$e.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_diagramsthemesettings_free(e,0)}get bg_color_diagram(){const e=a.__wbg_get_diagramsthemesettings_bg_color_diagram(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_diagram(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_diagram(this.__wbg_ptr,t,n)}get text_color_legend_title(){const e=a.__wbg_get_diagramsthemesettings_text_color_legend_title(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_legend_title(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_legend_title(this.__wbg_ptr,t,n)}get bg_color_person(){const e=a.__wbg_get_diagramsthemesettings_bg_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_person(this.__wbg_ptr,t,n)}get bg_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_person_ext(this.__wbg_ptr,t,n)}get border_color_person(){const e=a.__wbg_get_diagramsthemesettings_border_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_person(this.__wbg_ptr,t,n)}get border_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_person_ext(this.__wbg_ptr,t,n)}get text_color_person(){const e=a.__wbg_get_diagramsthemesettings_text_color_person(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_person(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_person(this.__wbg_ptr,t,n)}get text_color_person_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_person_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_person_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_person_ext(this.__wbg_ptr,t,n)}get bg_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_bg_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_software_system(this.__wbg_ptr,t,n)}get bg_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_software_system_ext(this.__wbg_ptr,t,n)}get border_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_border_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_software_system(this.__wbg_ptr,t,n)}get border_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_software_system_ext(this.__wbg_ptr,t,n)}get text_color_software_system(){const e=a.__wbg_get_diagramsthemesettings_text_color_software_system(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_software_system(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_software_system(this.__wbg_ptr,t,n)}get text_color_software_system_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_software_system_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_software_system_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_software_system_ext(this.__wbg_ptr,t,n)}get bg_color_container(){const e=a.__wbg_get_diagramsthemesettings_bg_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_container(this.__wbg_ptr,t,n)}get bg_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_container_ext(this.__wbg_ptr,t,n)}get border_color_container(){const e=a.__wbg_get_diagramsthemesettings_border_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_container(this.__wbg_ptr,t,n)}get border_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_container_ext(this.__wbg_ptr,t,n)}get text_color_container(){const e=a.__wbg_get_diagramsthemesettings_text_color_container(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_container(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_container(this.__wbg_ptr,t,n)}get text_color_container_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_container_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_container_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_container_ext(this.__wbg_ptr,t,n)}get bg_color_component(){const e=a.__wbg_get_diagramsthemesettings_bg_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_component(this.__wbg_ptr,t,n)}get bg_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_bg_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_component_ext(this.__wbg_ptr,t,n)}get border_color_component(){const e=a.__wbg_get_diagramsthemesettings_border_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_component(this.__wbg_ptr,t,n)}get border_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_border_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_component_ext(this.__wbg_ptr,t,n)}get text_color_component(){const e=a.__wbg_get_diagramsthemesettings_text_color_component(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_component(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_component(this.__wbg_ptr,t,n)}get text_color_component_ext(){const e=a.__wbg_get_diagramsthemesettings_text_color_component_ext(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_component_ext(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_component_ext(this.__wbg_ptr,t,n)}get bg_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_bg_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_boundary(this.__wbg_ptr,t,n)}get border_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_border_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_boundary(this.__wbg_ptr,t,n)}get text_color_boundary(){const e=a.__wbg_get_diagramsthemesettings_text_color_boundary(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_boundary(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_boundary(this.__wbg_ptr,t,n)}get bg_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_bg_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_deployment_node(this.__wbg_ptr,t,n)}get border_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_border_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set border_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_border_color_deployment_node(this.__wbg_ptr,t,n)}get text_color_deployment_node(){const e=a.__wbg_get_diagramsthemesettings_text_color_deployment_node(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_deployment_node(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_deployment_node(this.__wbg_ptr,t,n)}get bg_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_bg_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set bg_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_bg_color_relationship(this.__wbg_ptr,t,n)}get line_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_line_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set line_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_line_color_relationship(this.__wbg_ptr,t,n)}get text_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_text_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set text_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_text_color_relationship(this.__wbg_ptr,t,n)}get selected_color_relationship(){const e=a.__wbg_get_diagramsthemesettings_selected_color_relationship(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set selected_color_relationship(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_diagramsthemesettings_selected_color_relationship(this.__wbg_ptr,t,n)}}const De="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_elementdata_free(e>>>0,1)));class Ae{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,De.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_elementdata_free(e,0)}get position(){const e=a.__wbg_get_elementdata_position(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_position(this.__wbg_ptr,t)}get start(){const e=a.__wbg_get_elementdata_start(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set start(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_start(this.__wbg_ptr,t)}get end(){const e=a.__wbg_get_elementdata_end(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set end(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_end(this.__wbg_ptr,t)}get path(){const e=a.__wbg_get_elementdata_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=S(e[0],e[1]).slice(),a.__wbindgen_free(e[0],4*e[1],4)),t}set path(e){var t=p(e)?0:E(e,a.__wbindgen_malloc),n=o;a.__wbg_set_elementdata_path(this.__wbg_ptr,t,n)}get svg_path(){const e=a.__wbg_get_elementdata_svg_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set svg_path(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_elementdata_svg_path(this.__wbg_ptr,t,n)}get label_position(){const e=a.__wbg_get_elementdata_label_position(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set label_position(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_label_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_elementdata_size(this.__wbg_ptr);return 0===e?void 0:Ve.__wrap(e)}set size(e){let t=0;p(e)||(v(e,Ve),t=e.__destroy_into_raw()),a.__wbg_set_elementdata_size(this.__wbg_ptr,t)}}const Pe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_hookpayload_free(e>>>0,1)));class Fe{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Pe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_hookpayload_free(e,0)}get hook_type(){return a.__wbg_get_hookpayload_hook_type(this.__wbg_ptr)}set hook_type(e){a.__wbg_set_hookpayload_hook_type(this.__wbg_ptr,e)}get data(){return a.__wbg_get_hookpayload_data(this.__wbg_ptr)}set data(e){a.__wbg_set_hookpayload_data(this.__wbg_ptr,p(e)?0:m(e))}}const Be="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingbytesource_free(e>>>0,1)));class ze{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Be.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingbytesource_free(e,0)}get autoAllocateChunkSize(){return a.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr)>>>0}pull(e){return a.intounderlyingbytesource_pull(this.__wbg_ptr,e)}start(e){a.intounderlyingbytesource_start(this.__wbg_ptr,e)}get type(){let e,t;try{const n=a.intounderlyingbytesource_type(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}cancel(){const e=this.__destroy_into_raw();a.intounderlyingbytesource_cancel(e)}}const Ue="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingsink_free(e>>>0,1)));class He{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ue.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingsink_free(e,0)}abort(e){const t=this.__destroy_into_raw();return a.intounderlyingsink_abort(t,e)}close(){const e=this.__destroy_into_raw();return a.intounderlyingsink_close(e)}write(e){return a.intounderlyingsink_write(this.__wbg_ptr,e)}}const We="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_intounderlyingsource_free(e>>>0,1)));class Ke{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,We.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_intounderlyingsource_free(e,0)}pull(e){return a.intounderlyingsource_pull(this.__wbg_ptr,e)}cancel(){const e=this.__destroy_into_raw();a.intounderlyingsource_cancel(e)}}const Xe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_minaerror_free(e>>>0,1)));class Ge{static __wrap(e){e>>>=0;const t=Object.create(Ge.prototype);return t.__wbg_ptr=e,Xe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Xe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_minaerror_free(e,0)}get code(){return a.__wbg_get_minaerror_code(this.__wbg_ptr)}set code(e){a.__wbg_set_minaerror_code(this.__wbg_ptr,e)}get msg(){let e,t;try{const n=a.__wbg_get_minaerror_msg(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set msg(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_minaerror_msg(this.__wbg_ptr,t,n)}}const Ye="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_person_free(e>>>0,1)));class Ze{static __wrap(e){e>>>=0;const t=Object.create(Ze.prototype);return t.__wbg_ptr=e,Ye.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ze?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Ye.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_person_free(e,0)}get base_data(){const e=a.__wbg_get_container_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_container_base_data(this.__wbg_ptr,t)}get person_type(){return a.__wbg_get_person_person_type(this.__wbg_ptr)}set person_type(e){a.__wbg_set_person_person_type(this.__wbg_ptr,p(e)?0:m(e))}}const qe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_point_free(e>>>0,1)));class Ve{static __wrap(e){e>>>=0;const t=Object.create(Ve.prototype);return t.__wbg_ptr=e,qe.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof Ve?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,qe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_point_free(e,0)}get x(){return a.__wbg_get_point_x(this.__wbg_ptr)}set x(e){a.__wbg_set_point_x(this.__wbg_ptr,e)}get y(){return a.__wbg_get_point_y(this.__wbg_ptr)}set y(e){a.__wbg_set_point_y(this.__wbg_ptr,e)}}const Qe="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_position_free(e>>>0,1)));class Je{static __wrap(e){e>>>=0;const t=Object.create(Je.prototype);return t.__wbg_ptr=e,Qe.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,Qe.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_position_free(e,0)}get left(){const e=a.__wbg_get_position_left(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set left(e){a.__wbg_set_position_left(this.__wbg_ptr,!p(e),p(e)?0:e)}get top(){const e=a.__wbg_get_position_top(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set top(e){a.__wbg_set_position_top(this.__wbg_ptr,!p(e),p(e)?0:e)}get z_index(){const e=a.__wbg_get_position_z_index(this.__wbg_ptr);return 4294967297===e?void 0:e}set z_index(e){a.__wbg_set_position_z_index(this.__wbg_ptr,p(e)?4294967297:0|e)}get angle(){const e=a.__wbg_get_position_angle(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set angle(e){a.__wbg_set_position_angle(this.__wbg_ptr,!p(e),p(e)?0:e)}}const et="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_project_free(e>>>0,1)));class tt{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_project_free(e,0)}get project_settings(){const e=a.__wbg_get_project_project_settings(this.__wbg_ptr);return rt.__wrap(e)}set project_settings(e){v(e,rt);var t=e.__destroy_into_raw();a.__wbg_set_project_project_settings(this.__wbg_ptr,t)}get project_library(){const e=a.__wbg_get_project_project_library(this.__wbg_ptr);return at.__wrap(e)}set project_library(e){v(e,at);var t=e.__destroy_into_raw();a.__wbg_set_project_project_library(this.__wbg_ptr,t)}}const nt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_projectlibrary_free(e>>>0,1)));class at{static __wrap(e){e>>>=0;const t=Object.create(at.prototype);return t.__wbg_ptr=e,nt.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_projectlibrary_free(e,0)}get elements(){const e=a.__wbg_get_projectlibrary_elements(this.__wbg_ptr);return we.__wrap(e)}set elements(e){v(e,we);var t=e.__destroy_into_raw();a.__wbg_set_projectlibrary_elements(this.__wbg_ptr,t)}}const ot="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_projectsettings_free(e>>>0,1)));class rt{static __wrap(e){e>>>=0;const t=Object.create(rt.prototype);return t.__wbg_ptr=e,ot.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_projectsettings_free(e,0)}get root(){let e,t;try{const n=a.__wbg_get_projectsettings_root(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set root(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_root(this.__wbg_ptr,t,n)}get name(){let e,t;try{const n=a.__wbg_get_projectsettings_name(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set name(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_name(this.__wbg_ptr,t,n)}get description(){let e,t;try{const n=a.__wbg_get_projectsettings_description(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set description(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_description(this.__wbg_ptr,t,n)}get version(){let e,t;try{const n=a.__wbg_get_projectsettings_version(this.__wbg_ptr);return e=n[0],t=n[1],g(n[0],n[1])}finally{a.__wbindgen_free(e,t,1)}}set version(e){const t=_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_projectsettings_version(this.__wbg_ptr,t,n)}get ai_settings(){const e=a.__wbg_get_projectsettings_ai_settings(this.__wbg_ptr);return 0===e?void 0:de.__wrap(e)}set ai_settings(e){let t=0;p(e)||(v(e,de),t=e.__destroy_into_raw()),a.__wbg_set_projectsettings_ai_settings(this.__wbg_ptr,t)}get autosave_enabled(){return 0!==a.__wbg_get_projectsettings_autosave_enabled(this.__wbg_ptr)}set autosave_enabled(e){a.__wbg_set_projectsettings_autosave_enabled(this.__wbg_ptr,e)}get autosave_interval_seconds(){const e=a.__wbg_get_projectsettings_autosave_interval_seconds(this.__wbg_ptr);return 16777215===e?void 0:e}set autosave_interval_seconds(e){a.__wbg_set_projectsettings_autosave_interval_seconds(this.__wbg_ptr,p(e)?16777215:e)}get themes_settings(){const e=a.__wbg_get_projectsettings_themes_settings(this.__wbg_ptr);return 0===e?void 0:bt.__wrap(e)}set themes_settings(e){let t=0;p(e)||(v(e,bt),t=e.__destroy_into_raw()),a.__wbg_set_projectsettings_themes_settings(this.__wbg_ptr,t)}}const it="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_relationship_free(e>>>0,1)));class st{static __wrap(e){e>>>=0;const t=Object.create(st.prototype);return t.__wbg_ptr=e,it.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof st?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,it.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_relationship_free(e,0)}get base_data(){const e=a.__wbg_get_relationship_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_relationship_base_data(this.__wbg_ptr,t)}get from(){const e=a.__wbg_get_relationship_from(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set from(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_relationship_from(this.__wbg_ptr,t,n)}get to(){const e=a.__wbg_get_relationship_to(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set to(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_boundary_boundary_custom_type(this.__wbg_ptr,t,n)}get technology(){const e=a.__wbg_get_relationship_technology(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set technology(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_relationship_technology(this.__wbg_ptr,t,n)}get relationship_type(){return a.__wbg_get_relationship_relationship_type(this.__wbg_ptr)}set relationship_type(e){a.__wbg_set_relationship_relationship_type(this.__wbg_ptr,p(e)?0:m(e))}}const lt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_shape_free(e>>>0,1)));class _t{static __wrap(e){e>>>=0;const t=Object.create(_t.prototype);return t.__wbg_ptr=e,lt.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof _t?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,lt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_shape_free(e,0)}get shape_type(){return a.__wbg_get_shape_shape_type(this.__wbg_ptr)}set shape_type(e){a.__wbg_set_shape_shape_type(this.__wbg_ptr,p(e)?0:m(e))}get position(){const e=a.__wbg_get_shape_position(this.__wbg_ptr);return 0===e?void 0:Je.__wrap(e)}set position(e){let t=0;p(e)||(v(e,Je),t=e.__destroy_into_raw()),a.__wbg_set_shape_position(this.__wbg_ptr,t)}get size(){const e=a.__wbg_get_shape_size(this.__wbg_ptr);return 0===e?void 0:dt.__wrap(e)}set size(e){let t=0;p(e)||(v(e,dt),t=e.__destroy_into_raw()),a.__wbg_set_shape_size(this.__wbg_ptr,t)}}const ct="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_size_free(e>>>0,1)));class dt{static __wrap(e){e>>>=0;const t=Object.create(dt.prototype);return t.__wbg_ptr=e,ct.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ct.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_size_free(e,0)}get width(){const e=a.__wbg_get_size_width(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set width(e){a.__wbg_set_size_width(this.__wbg_ptr,!p(e),p(e)?0:e)}get height(){const e=a.__wbg_get_size_height(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set height(e){a.__wbg_set_size_height(this.__wbg_ptr,!p(e),p(e)?0:e)}get scale_x(){const e=a.__wbg_get_size_scale_x(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set scale_x(e){a.__wbg_set_size_scale_x(this.__wbg_ptr,!p(e),p(e)?0:e)}get scale_y(){const e=a.__wbg_get_size_scale_y(this.__wbg_ptr);return 0===e[0]?void 0:e[1]}set scale_y(e){a.__wbg_set_size_scale_y(this.__wbg_ptr,!p(e),p(e)?0:e)}}const ut="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_softwaresystem_free(e>>>0,1)));class gt{static __wrap(e){e>>>=0;const t=Object.create(gt.prototype);return t.__wbg_ptr=e,ut.register(t,t.__wbg_ptr,t),t}static __unwrap(e){return e instanceof gt?e.__destroy_into_raw():0}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,ut.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_softwaresystem_free(e,0)}get base_data(){const e=a.__wbg_get_softwaresystem_base_data(this.__wbg_ptr);return be.__wrap(e)}set base_data(e){v(e,be);var t=e.__destroy_into_raw();a.__wbg_set_softwaresystem_base_data(this.__wbg_ptr,t)}get system_type(){return a.__wbg_get_softwaresystem_system_type(this.__wbg_ptr)}set system_type(e){a.__wbg_set_softwaresystem_system_type(this.__wbg_ptr,p(e)?0:m(e))}}const mt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_themessettings_free(e>>>0,1)));class bt{static __wrap(e){e>>>=0;const t=Object.create(bt.prototype);return t.__wbg_ptr=e,mt.register(t,t.__wbg_ptr,t),t}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,mt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_themessettings_free(e,0)}get diagrams_theme_settings(){const e=a.__wbg_get_themessettings_diagrams_theme_settings(this.__wbg_ptr);return 0===e?void 0:Ie.__wrap(e)}set diagrams_theme_settings(e){let t=0;p(e)||(v(e,Ie),t=e.__destroy_into_raw()),a.__wbg_set_themessettings_diagrams_theme_settings(this.__wbg_ptr,t)}}const pt="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>a.__wbg_usersettings_free(e>>>0,1)));class ht{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,pt.unregister(this),e}free(){const e=this.__destroy_into_raw();a.__wbg_usersettings_free(e,0)}get git_path(){const e=a.__wbg_get_usersettings_git_path(this.__wbg_ptr);let t;return 0!==e[0]&&(t=g(e[0],e[1]).slice(),a.__wbindgen_free(e[0],1*e[1],1)),t}set git_path(e){var t=p(e)?0:_(e,a.__wbindgen_malloc,a.__wbindgen_realloc),n=o;a.__wbg_set_aisettings_api_key(this.__wbg_ptr,t,n)}}function ft(){const t={wbg:{}};return t.wbg.__wbg_String_1b2069caba3b9783=function(e,t){const n=_(String(t),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_abort_775ef1d17fc65868=function(e){e.abort()},t.wbg.__wbg_append_299d5d48292c0495=function(){return b((function(e,t,n,a,o){e.append(g(t,n),g(a,o))}),arguments)},t.wbg.__wbg_append_8c7dd8d641a5f01b=function(){return b((function(e,t,n,a,o){e.append(g(t,n),g(a,o))}),arguments)},t.wbg.__wbg_append_b2d1fc16de2a0e81=function(){return b((function(e,t,n,a,o,r){e.append(g(t,n),a,g(o,r))}),arguments)},t.wbg.__wbg_append_b44785ebeb668479=function(){return b((function(e,t,n,a){e.append(g(t,n),a)}),arguments)},t.wbg.__wbg_arrayBuffer_d1b44c4390db422f=function(){return b((function(e){return e.arrayBuffer()}),arguments)},t.wbg.__wbg_arrayBuffer_f18c144cd0125f07=function(e){return e.arrayBuffer()},t.wbg.__wbg_async_9ff6d9e405f13772=function(e){return e.async},t.wbg.__wbg_boundary_new=function(e){return he.__wrap(e)},t.wbg.__wbg_boundary_unwrap=function(e){return he.__unwrap(e)},t.wbg.__wbg_buffer_09165b52af8c5237=function(e){return e.buffer},t.wbg.__wbg_buffer_609cc3eee51ed158=function(e){return e.buffer},t.wbg.__wbg_byobRequest_77d9adf63337edfb=function(e){const t=e.byobRequest;return p(t)?0:m(t)},t.wbg.__wbg_byteLength_e674b853d9c77e1d=function(e){return e.byteLength},t.wbg.__wbg_byteOffset_fd862df290ef848d=function(e){return e.byteOffset},t.wbg.__wbg_call_672a4d21634d4a24=function(){return b((function(e,t){return e.call(t)}),arguments)},t.wbg.__wbg_call_7cccdd69e0791ae2=function(){return b((function(e,t,n){return e.call(t,n)}),arguments)},t.wbg.__wbg_close_24caca68e93b9c03=function(e){return e.close()},t.wbg.__wbg_close_304cc1fef3466669=function(){return b((function(e){e.close()}),arguments)},t.wbg.__wbg_close_5ce03e29be453811=function(){return b((function(e){e.close()}),arguments)},t.wbg.__wbg_component_new=function(e){return ve.__wrap(e)},t.wbg.__wbg_component_unwrap=function(e){return ve.__unwrap(e)},t.wbg.__wbg_container_new=function(e){return je.__wrap(e)},t.wbg.__wbg_container_unwrap=function(e){return je.__unwrap(e)},t.wbg.__wbg_createWritable_b4ed240dc879905e=function(e,t){return e.createWritable(t)},t.wbg.__wbg_crypto_ed58b8e10a292839=function(e){return e.crypto},t.wbg.__wbg_data_432d9c3df2630942=function(e){return e.data},t.wbg.__wbg_debug_3cb59063b29f58c1=function(e){console.debug(e)},t.wbg.__wbg_deploymentnode_new=function(e){return Se.__wrap(e)},t.wbg.__wbg_deploymentnode_unwrap=function(e){return Se.__unwrap(e)},t.wbg.__wbg_diagramelementspec_new=function(e){return Ne.__wrap(e)},t.wbg.__wbg_diagramelementspec_unwrap=function(e){return Ne.__unwrap(e)},t.wbg.__wbg_done_769e5ede4b31c67b=function(e){return e.done},t.wbg.__wbg_enqueue_bb16ba72f537dc9e=function(){return b((function(e,t){e.enqueue(t)}),arguments)},t.wbg.__wbg_entries_19efe296f7d36df9=function(e){return e.entries()},t.wbg.__wbg_entries_3265d4158b33e5dc=function(e){return Object.entries(e)},t.wbg.__wbg_error_524f506f44df1645=function(e){console.error(e)},t.wbg.__wbg_error_7534b8e9a36f1ab4=function(e,t){let n,o;try{n=e,o=t,console.error(g(e,t))}finally{a.__wbindgen_free(n,o,1)}},t.wbg.__wbg_fetch_4465c2b10f21a927=function(e){return fetch(e)},t.wbg.__wbg_fetch_509096533071c657=function(e,t){return e.fetch(t)},t.wbg.__wbg_getDirectoryHandle_c48a138373d79b3d=function(e,t,n,a){return e.getDirectoryHandle(g(t,n),a)},t.wbg.__wbg_getFileHandle_5fb877d1ecc74d52=function(e,t,n,a){return e.getFileHandle(g(t,n),a)},t.wbg.__wbg_getFile_2607bc0123c724e0=function(e){return e.getFile()},t.wbg.__wbg_getRandomValues_bcb4912f16000dc4=function(){return b((function(e,t){e.getRandomValues(t)}),arguments)},t.wbg.__wbg_get_67b2ba62fc30de12=function(){return b((function(e,t){return Reflect.get(e,t)}),arguments)},t.wbg.__wbg_get_79e1d7592116244e=function(){return b((function(e,t,n,r){const i=t[g(n,r)];var s=p(i)?0:_(i,a.__wbindgen_malloc,a.__wbindgen_realloc),l=o;d().setInt32(e+4,l,!0),d().setInt32(e+0,s,!0)}),arguments)},t.wbg.__wbg_get_b9b93047fe3cf45b=function(e,t){return e[t>>>0]},t.wbg.__wbg_getwithrefkey_2d7fdfea9645a25b=function(e,t){return e[t]},t.wbg.__wbg_has_a5ea9117f258a0ec=function(){return b((function(e,t){return Reflect.has(e,t)}),arguments)},t.wbg.__wbg_headers_9cb51cfd2ac780a4=function(e){return e.headers},t.wbg.__wbg_info_3daf2e093e091b66=function(e){console.info(e)},t.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc=function(e){let t;try{t=e instanceof ArrayBuffer}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Error_4d54113b22d20306=function(e){let t;try{t=e instanceof Error}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_FileSystemDirectoryHandle_0906fc139d75557b=function(e){let t;try{t=e instanceof FileSystemDirectoryHandle}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_FileSystemFileHandle_d3d037cf85ee546c=function(e){let t;try{t=e instanceof FileSystemFileHandle}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_File_a4e2256bf71955a9=function(e){let t;try{t=e instanceof File}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Response_f2cc20d9f7dfd644=function(e){let t;try{t=e instanceof Response}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9=function(e){let t;try{t=e instanceof Uint8Array}catch(e){t=!1}return t},t.wbg.__wbg_instanceof_Window_def73ea0955fc569=function(e){let t;try{t=e instanceof Window}catch(e){t=!1}return t},t.wbg.__wbg_isArray_a1eab7e0d067391b=function(e){return Array.isArray(e)},t.wbg.__wbg_isSafeInteger_343e2beeeece1bb0=function(e){return Number.isSafeInteger(e)},t.wbg.__wbg_iterator_9a24c88df860dc65=function(){return Symbol.iterator},t.wbg.__wbg_lastModified_7a9e61b3961224b8=function(e){return e.lastModified},t.wbg.__wbg_length_a446193dc22c12f8=function(e){return e.length},t.wbg.__wbg_length_e2d2a49132c1b256=function(e){return e.length},t.wbg.__wbg_localStorage_1406c99c39728187=function(){return b((function(e){const t=e.localStorage;return p(t)?0:m(t)}),arguments)},t.wbg.__wbg_log_c222819a41e063d3=function(e){console.log(e)},t.wbg.__wbg_message_97a2af9b89d693a3=function(e){return e.message},t.wbg.__wbg_minaerror_new=function(e){return Ge.__wrap(e)},t.wbg.__wbg_msCrypto_0a36e2ec3a343d26=function(e){return e.msCrypto},t.wbg.__wbg_name_e4a115def9e2bbaa=function(e,t){const n=_(t.name,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_new_018dcc2d6c8c2f6a=function(){return b((function(){return new Headers}),arguments)},t.wbg.__wbg_new_23a2665fac83c611=function(e,t){try{var n={a:e,b:t};const o=new Promise(((e,t)=>{const o=n.a;n.a=0;try{return function(e,t,n,o){a.closure81_externref_shim(e,t,n,o)}(o,n.b,e,t)}finally{n.a=o}}));return o}finally{n.a=n.b=0}},t.wbg.__wbg_new_405e22f390576ce2=function(){return new Object},t.wbg.__wbg_new_5e0be73521bc8c17=function(){return new Map},t.wbg.__wbg_new_78feb108b6472713=function(){return new Array},t.wbg.__wbg_new_8a6f238a6ece86ea=function(){return new Error},t.wbg.__wbg_new_9fd39a253424609a=function(){return b((function(){return new FormData}),arguments)},t.wbg.__wbg_new_a12002a7f91c75be=function(e){return new Uint8Array(e)},t.wbg.__wbg_new_b1a33e5095abf678=function(){return b((function(e,t){return new Worker(g(e,t))}),arguments)},t.wbg.__wbg_new_c68d7209be747379=function(e,t){return new Error(g(e,t))},t.wbg.__wbg_new_e25e5aab09ff45db=function(){return b((function(){return new AbortController}),arguments)},t.wbg.__wbg_new_e9a4a67dbababe57=function(e){return new Int32Array(e)},t.wbg.__wbg_newnoargs_105ed471475aaf50=function(e,t){return new Function(g(e,t))},t.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(e,t,n){return new Uint8Array(e,t>>>0,n>>>0)},t.wbg.__wbg_newwithlength_a381634e90c276d4=function(e){return new Uint8Array(e>>>0)},t.wbg.__wbg_newwithstrandinit_06c535e0a867c635=function(){return b((function(e,t,n){return new Request(g(e,t),n)}),arguments)},t.wbg.__wbg_newwithu8arraysequenceandoptions_068570c487f69127=function(){return b((function(e,t){return new Blob(e,t)}),arguments)},t.wbg.__wbg_next_25feadfc0913fea9=function(e){return e.next},t.wbg.__wbg_next_6574e1a8a62d1055=function(){return b((function(e){return e.next()}),arguments)},t.wbg.__wbg_next_c3ab0d59847b3b5c=function(){return b((function(e){return e.next()}),arguments)},t.wbg.__wbg_node_02999533c4ea02e3=function(e){return e.node},t.wbg.__wbg_of_4a05197bfc89556f=function(e,t,n){return Array.of(e,t,n)},t.wbg.__wbg_person_new=function(e){return Ze.__wrap(e)},t.wbg.__wbg_person_unwrap=function(e){return Ze.__unwrap(e)},t.wbg.__wbg_point_new=function(e){return Ve.__wrap(e)},t.wbg.__wbg_point_unwrap=function(e){return Ve.__unwrap(e)},t.wbg.__wbg_postMessage_6edafa8f7b9c2f52=function(){return b((function(e,t){e.postMessage(t)}),arguments)},t.wbg.__wbg_postMessage_83a8d58d3fcb6c13=function(){return b((function(e,t){e.postMessage(t)}),arguments)},t.wbg.__wbg_process_5c1d670bc53614b8=function(e){return e.process},t.wbg.__wbg_push_737cfc8c1432c2c6=function(e,t){return e.push(t)},t.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5=function(e){queueMicrotask(e)},t.wbg.__wbg_queueMicrotask_d3219def82552485=function(e){return e.queueMicrotask},t.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740=function(){return b((function(e,t){e.randomFillSync(t)}),arguments)},t.wbg.__wbg_relationship_new=function(e){return st.__wrap(e)},t.wbg.__wbg_relationship_unwrap=function(e){return st.__unwrap(e)},t.wbg.__wbg_removeEntry_9f6bc325e3383e59=function(e,t,n){return e.removeEntry(g(t,n))},t.wbg.__wbg_removeEntry_a424e90dff229b19=function(e,t,n,a){return e.removeEntry(g(t,n),a)},t.wbg.__wbg_require_79b1e9274cde3c87=function(){return b((function(){return e.require}),arguments)},t.wbg.__wbg_resolve_4851785c9c5f573d=function(e){return Promise.resolve(e)},t.wbg.__wbg_respond_1f279fa9f8edcb1c=function(){return b((function(e,t){e.respond(t>>>0)}),arguments)},t.wbg.__wbg_seek_3f0f8d7591f648d7=function(){return b((function(e,t){return e.seek(t)}),arguments)},t.wbg.__wbg_set_2873a5cee2324875=function(e,t,n){e[t]=n},t.wbg.__wbg_set_37837023f3d740e8=function(e,t,n){e[t>>>0]=n},t.wbg.__wbg_set_65595bdd868b3009=function(e,t,n){e.set(t,n>>>0)},t.wbg.__wbg_set_8fc6bf8a5b1071d1=function(e,t,n){return e.set(t,n)},t.wbg.__wbg_set_d9a72c1550e3f2b5=function(){return b((function(e,t,n,a,o){e[g(t,n)]=g(a,o)}),arguments)},t.wbg.__wbg_setbody_5923b78a95eedf29=function(e,t){e.body=t},t.wbg.__wbg_setcreate_139bad94b2874fb5=function(e,t){e.create=0!==t},t.wbg.__wbg_setcreate_4ca762e23d9f78da=function(e,t){e.create=0!==t},t.wbg.__wbg_setcredentials_c3a22f1cd105a2c6=function(e,t){e.credentials=le[t]},t.wbg.__wbg_setheaders_834c0bdb6a8949ad=function(e,t){e.headers=t},t.wbg.__wbg_setkeepexistingdata_ee7c8cb466e9477f=function(e,t){e.keepExistingData=0!==t},t.wbg.__wbg_setmethod_3c5280fe5d890842=function(e,t,n){e.method=g(t,n)},t.wbg.__wbg_setmode_5dc300b865044b65=function(e,t){e.mode=_e[t]},t.wbg.__wbg_setonmessage_5a885b16bdc6dca6=function(e,t){e.onmessage=t},t.wbg.__wbg_setrecursive_536113a081d6177a=function(e,t){e.recursive=0!==t},t.wbg.__wbg_setsignal_75b21ef3a81de905=function(e,t){e.signal=t},t.wbg.__wbg_settype_39ed370d3edd403c=function(e,t,n){e.type=g(t,n)},t.wbg.__wbg_shape_new=function(e){return _t.__wrap(e)},t.wbg.__wbg_shape_unwrap=function(e){return _t.__unwrap(e)},t.wbg.__wbg_signal_aaf9ad74119f20a4=function(e){return e.signal},t.wbg.__wbg_size_3808d41635a9c259=function(e){return e.size},t.wbg.__wbg_softwaresystem_new=function(e){return gt.__wrap(e)},t.wbg.__wbg_softwaresystem_unwrap=function(e){return gt.__unwrap(e)},t.wbg.__wbg_stack_0ed75d68575b0f3c=function(e,t){const n=_(t.stack,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){const e=void 0===n.g?null:n.g;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){const e="undefined"==typeof globalThis?null:globalThis;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){const e="undefined"==typeof self?null:self;return p(e)?0:m(e)},t.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){const e="undefined"==typeof window?null:window;return p(e)?0:m(e)},t.wbg.__wbg_status_f6360336ca686bf0=function(e){return e.status},t.wbg.__wbg_stringify_f7ed6987935b4a24=function(){return b((function(e){return JSON.stringify(e)}),arguments)},t.wbg.__wbg_subarray_aa9065fa9dc5df96=function(e,t,n){return e.subarray(t>>>0,n>>>0)},t.wbg.__wbg_text_1f39a8afe3c70a99=function(e){return e.text()},t.wbg.__wbg_then_44b73946d2fb3e7d=function(e,t){return e.then(t)},t.wbg.__wbg_then_48b406749878a531=function(e,t,n){return e.then(t,n)},t.wbg.__wbg_url_ae10c34ca209681d=function(e,t){const n=_(t.url,a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbg_value_cd1ffa7b1ab794f1=function(e){return e.value},t.wbg.__wbg_value_dab73d3d5d4abaaf=function(e){return e.value},t.wbg.__wbg_versions_c71aa1626a93e0a1=function(e){return e.versions},t.wbg.__wbg_view_fd8a56e8983f448d=function(e){const t=e.view;return p(t)?0:m(t)},t.wbg.__wbg_waitAsync_61f0a081053dd3c2=function(e,t,n){return Atomics.waitAsync(e,t>>>0,n)},t.wbg.__wbg_waitAsync_7ce6c8a047c752c3=function(){return Atomics.waitAsync},t.wbg.__wbg_warn_4ca3906c248c47c4=function(e){console.warn(e)},t.wbg.__wbg_write_397d977609afc729=function(){return b((function(e,t){return e.write(t)}),arguments)},t.wbg.__wbindgen_as_number=function(e){return+e},t.wbg.__wbindgen_bigint_from_u64=function(e){return BigInt.asUintN(64,e)},t.wbg.__wbindgen_bigint_get_as_i64=function(e,t){const n="bigint"==typeof t?t:void 0;d().setBigInt64(e+8,p(n)?BigInt(0):n,!0),d().setInt32(e+0,!p(n),!0)},t.wbg.__wbindgen_boolean_get=function(e){return"boolean"==typeof e?e?1:0:2},t.wbg.__wbindgen_cb_drop=function(e){const t=e.original;return 1==t.cnt--&&(t.a=0,!0)},t.wbg.__wbindgen_closure_wrapper1404=function(e,t,n){return f(e,t,103,se)},t.wbg.__wbindgen_closure_wrapper1405=function(e,t,n){return f(e,t,103,se)},t.wbg.__wbindgen_debug_string=function(e,t){const n=_(w(t),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbindgen_error_new=function(e,t){return new Error(g(e,t))},t.wbg.__wbindgen_in=function(e,t){return e in t},t.wbg.__wbindgen_init_externref_table=function(){const e=a.__wbindgen_export_4,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)},t.wbg.__wbindgen_is_bigint=function(e){return"bigint"==typeof e},t.wbg.__wbindgen_is_function=function(e){return"function"==typeof e},t.wbg.__wbindgen_is_object=function(e){return"object"==typeof e&&null!==e},t.wbg.__wbindgen_is_string=function(e){return"string"==typeof e},t.wbg.__wbindgen_is_undefined=function(e){return void 0===e},t.wbg.__wbindgen_jsval_eq=function(e,t){return e===t},t.wbg.__wbindgen_jsval_loose_eq=function(e,t){return e==t},t.wbg.__wbindgen_link_9579f016b4522a24=function(e){const t="onmessage = function (ev) {\n let [ia, index, value] = ev.data;\n ia = new Int32Array(ia.buffer);\n let result = Atomics.wait(ia, index, value);\n postMessage(result);\n };\n ",n=_(void 0===URL.createObjectURL?"data:application/javascript,"+encodeURIComponent(t):URL.createObjectURL(new Blob([t],{type:"text/javascript"})),a.__wbindgen_malloc,a.__wbindgen_realloc),r=o;d().setInt32(e+4,r,!0),d().setInt32(e+0,n,!0)},t.wbg.__wbindgen_memory=function(){return a.memory},t.wbg.__wbindgen_number_get=function(e,t){const n="number"==typeof t?t:void 0;d().setFloat64(e+8,p(n)?0:n,!0),d().setInt32(e+0,!p(n),!0)},t.wbg.__wbindgen_number_new=function(e){return e},t.wbg.__wbindgen_rethrow=function(e){throw e},t.wbg.__wbindgen_string_get=function(e,t){const n="string"==typeof t?t:void 0;var r=p(n)?0:_(n,a.__wbindgen_malloc,a.__wbindgen_realloc),i=o;d().setInt32(e+4,i,!0),d().setInt32(e+0,r,!0)},t.wbg.__wbindgen_string_new=function(e,t){return g(e,t)},t.wbg.__wbindgen_throw=function(e,t){throw new Error(g(e,t))},t}function wt(e,t){return a=e.exports,vt.__wbindgen_wasm_module=t,c=null,r=null,a.__wbindgen_start(),a}function yt(e){if(void 0!==a)return a;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module:e}=e):console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));const t=ft();return e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e)),wt(new WebAssembly.Instance(e,t),e)}async function vt(e){if(void 0!==a)return a;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module_or_path:e}=e):console.warn("using deprecated parameters for the initialization function; pass a single object instead")),void 0===e&&(e=new URL(n(734),n.b));const t=ft();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:o,module:r}=await async function(e,t){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if("application/wasm"==e.headers.get("Content-Type"))throw t;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",t)}const n=await e.arrayBuffer();return await WebAssembly.instantiate(n,t)}{const n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}}(await e,t);return wt(o,r)}const xt=vt}},t={};function n(a){var o=t[a];if(void 0!==o)return o.exports;var r=t[a]={id:a,loaded:!1,exports:{}};return e[a](r,r.exports,n),r.loaded=!0,r.exports}n.m=e,n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var a=t.getElementsByTagName("script");if(a.length)for(var o=a.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=a[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),n.b=document.baseURI||self.location.href;var a={};n.r(a),n.d(a,{default:()=>s});var o=n(15),r=n(732);const i=()=>null,s=e=>{const[t,a]=(0,o.useState)((()=>i));return(0,o.useEffect)((()=>{Promise.resolve().then(n.bind(n,290)).then((e=>a((()=>e.default))))}),[]),(0,r.jsx)(t,Object.assign({},e))};module.exports=a})();