jekyll-obsidian-site 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +133 -0
  4. data/website/_config.yml +21 -0
  5. data/website/_includes/website/archive-timeline.html +8 -0
  6. data/website/_includes/website/blog-ledger.html +19 -0
  7. data/website/_includes/website/blog-navigation.html +7 -0
  8. data/website/_includes/website/comments.html +22 -0
  9. data/website/_includes/website/contact-icon.html +14 -0
  10. data/website/_includes/website/context-tags.html +7 -0
  11. data/website/_includes/website/context.html +3 -0
  12. data/website/_includes/website/dialogs.html +71 -0
  13. data/website/_includes/website/docs-navigation.html +7 -0
  14. data/website/_includes/website/docs-tree.html +8 -0
  15. data/website/_includes/website/footer.html +14 -0
  16. data/website/_includes/website/github-icon.html +3 -0
  17. data/website/_includes/website/head.html +41 -0
  18. data/website/_includes/website/header.html +35 -0
  19. data/website/_includes/website/language-switcher.html +16 -0
  20. data/website/_includes/website/local-graph.html +25 -0
  21. data/website/_includes/website/note-header.html +35 -0
  22. data/website/_includes/website/outline.html +9 -0
  23. data/website/_includes/website/page-actions.html +34 -0
  24. data/website/_includes/website/portfolio-grid.html +36 -0
  25. data/website/_includes/website/portfolio-topics.html +4 -0
  26. data/website/_includes/website/post-cards.html +16 -0
  27. data/website/_includes/website/related-articles.html +7 -0
  28. data/website/_includes/website/relations.html +16 -0
  29. data/website/_includes/website/source-actions.html +28 -0
  30. data/website/_includes/website/system-page.html +31 -0
  31. data/website/_includes/website/tab-collection.html +28 -0
  32. data/website/_includes/website/tag-filter.html +12 -0
  33. data/website/_layouts/website-docs.html +20 -0
  34. data/website/_layouts/website-minimal.html +93 -0
  35. data/website/_layouts/website-redirect.html +17 -0
  36. data/website/assets/chunks/abnfDiagram-N423BO3Z-TSORAEI2.js +1 -0
  37. data/website/assets/chunks/architecture-TIHT7OUA-OUC5PEC7.js +1 -0
  38. data/website/assets/chunks/architectureDiagram-T3A2C74G-6P5MB2DJ.js +36 -0
  39. data/website/assets/chunks/blockDiagram-VBNYF7ZC-ZWINYROZ.js +132 -0
  40. data/website/assets/chunks/c4Diagram-5PPSVZJV-R5RMEAOT.js +10 -0
  41. data/website/assets/chunks/chunk-22DRK7VS.js +1 -0
  42. data/website/assets/chunks/chunk-25REBZ7M.js +2 -0
  43. data/website/assets/chunks/chunk-2RQCUDTG.js +1 -0
  44. data/website/assets/chunks/chunk-34FHPXU4.js +1 -0
  45. data/website/assets/chunks/chunk-57XXJOQN.js +10 -0
  46. data/website/assets/chunks/chunk-6DCNDVBX.js +2 -0
  47. data/website/assets/chunks/chunk-6DHFEWGX.js +1 -0
  48. data/website/assets/chunks/chunk-6VQ47JJS.js +2 -0
  49. data/website/assets/chunks/chunk-7CSIRG7W.js +127 -0
  50. data/website/assets/chunks/chunk-A43YELH5.js +1 -0
  51. data/website/assets/chunks/chunk-AIX6IH4O.js +1 -0
  52. data/website/assets/chunks/chunk-B3K7RH5O.js +88 -0
  53. data/website/assets/chunks/chunk-CBGUD2NP.js +1 -0
  54. data/website/assets/chunks/chunk-D3WOCELE.js +1 -0
  55. data/website/assets/chunks/chunk-D6FURU6X.js +1 -0
  56. data/website/assets/chunks/chunk-DGEGT77F.js +1 -0
  57. data/website/assets/chunks/chunk-DN52R6U7.js +1 -0
  58. data/website/assets/chunks/chunk-E3T3IFAC.js +1 -0
  59. data/website/assets/chunks/chunk-EIBFAW37.js +1 -0
  60. data/website/assets/chunks/chunk-ERWOH47R.js +1 -0
  61. data/website/assets/chunks/chunk-ETOVTYWF.js +1 -0
  62. data/website/assets/chunks/chunk-GHD3PFWA.js +231 -0
  63. data/website/assets/chunks/chunk-GMBKQ7NZ.js +1 -0
  64. data/website/assets/chunks/chunk-GQM25EPP.js +156 -0
  65. data/website/assets/chunks/chunk-GSOU4UTT.js +1 -0
  66. data/website/assets/chunks/chunk-HEMELP7J.js +1 -0
  67. data/website/assets/chunks/chunk-HZ5I5NJO.js +1 -0
  68. data/website/assets/chunks/chunk-IP56FOSI.js +70 -0
  69. data/website/assets/chunks/chunk-L7BMR7WL.js +1 -0
  70. data/website/assets/chunks/chunk-LGUG3SQB.js +1 -0
  71. data/website/assets/chunks/chunk-LOMHZYS2.js +1 -0
  72. data/website/assets/chunks/chunk-MII4VZEB.js +3 -0
  73. data/website/assets/chunks/chunk-MYMJLHQL.js +62 -0
  74. data/website/assets/chunks/chunk-NBH7YOBD.js +15 -0
  75. data/website/assets/chunks/chunk-NCOVM3YF.js +1 -0
  76. data/website/assets/chunks/chunk-OAGTSILX.js +1 -0
  77. data/website/assets/chunks/chunk-OCX5OCIU.js +321 -0
  78. data/website/assets/chunks/chunk-OE3NOVIH.js +1 -0
  79. data/website/assets/chunks/chunk-PLP5XUTJ.js +1 -0
  80. data/website/assets/chunks/chunk-PNOERP6G.js +1 -0
  81. data/website/assets/chunks/chunk-QBPQ7DPE.js +1 -0
  82. data/website/assets/chunks/chunk-RWFFDL53.js +1 -0
  83. data/website/assets/chunks/chunk-SEGIW3MP.js +1 -0
  84. data/website/assets/chunks/chunk-SZDMZNUS.js +1 -0
  85. data/website/assets/chunks/chunk-T2QBAPVT.js +1 -0
  86. data/website/assets/chunks/chunk-UE533OZ7.js +1 -0
  87. data/website/assets/chunks/chunk-UTWOJE2A.js +1 -0
  88. data/website/assets/chunks/chunk-VOCDYA3H.js +1 -0
  89. data/website/assets/chunks/chunk-VYZZPKGK.js +161 -0
  90. data/website/assets/chunks/chunk-WWLZIRS6.js +1 -0
  91. data/website/assets/chunks/chunk-XNXYDBKX.js +32 -0
  92. data/website/assets/chunks/chunk-XQUIO562.js +1 -0
  93. data/website/assets/chunks/chunk-Y2XVFW7T.js +2 -0
  94. data/website/assets/chunks/chunk-YORIST7Z.js +1 -0
  95. data/website/assets/chunks/chunk-Z2WBQPVY.js +206 -0
  96. data/website/assets/chunks/classDiagram-JCYQIIEL-OFDVDDIM.js +1 -0
  97. data/website/assets/chunks/classDiagram-v2-OCEON4UE-E36B6BGQ.js +1 -0
  98. data/website/assets/chunks/cose-bilkent-JH36ORCC-CBAW64AB.js +1 -0
  99. data/website/assets/chunks/cynefin-VYW2F7L2-CBO6DLNV.js +1 -0
  100. data/website/assets/chunks/cynefinDiagram-MW4NZA55-DFINLOUY.js +62 -0
  101. data/website/assets/chunks/dagre-VZM6K2ZE-BZFBSZAH.js +4 -0
  102. data/website/assets/chunks/diagram-7IWD3JNH-XQHTVOU2.js +30 -0
  103. data/website/assets/chunks/diagram-B4RE2ZJO-FTSXBZJR.js +3 -0
  104. data/website/assets/chunks/diagram-LBJQPF4R-ZSZW4OLH.js +24 -0
  105. data/website/assets/chunks/diagram-Q27KOJAE-2IV5TVCJ.js +24 -0
  106. data/website/assets/chunks/diagram-UB23O5K3-D6PDUTFL.js +41 -0
  107. data/website/assets/chunks/ebnfDiagram-BXEA7PRR-C6MAER3M.js +1 -0
  108. data/website/assets/chunks/erDiagram-JOGREHBK-EDAD2H5M.js +85 -0
  109. data/website/assets/chunks/eventmodeling-45OFAUF4-4K577DMF.js +1 -0
  110. data/website/assets/chunks/flowDiagram-UKHOOZJN-545F4YX3.js +1 -0
  111. data/website/assets/chunks/ganttDiagram-PKOTCBZU-7A7EKMY3.js +292 -0
  112. data/website/assets/chunks/gitGraph-TEB2WS4Q-3WUB7WYQ.js +1 -0
  113. data/website/assets/chunks/gitGraphDiagram-DS77QQ5N-A5UWV5FF.js +106 -0
  114. data/website/assets/chunks/info-DKCQHKI2-EOOHI7XS.js +1 -0
  115. data/website/assets/chunks/infoDiagram-6WML65LV-CWIOOWJP.js +2 -0
  116. data/website/assets/chunks/ishikawaDiagram-WSZJBQD7-CEASQVDL.js +70 -0
  117. data/website/assets/chunks/journeyDiagram-NVQOT4AX-LYG3S2AW.js +139 -0
  118. data/website/assets/chunks/kanban-definition-27J2QSJJ-HCC6KAYI.js +89 -0
  119. data/website/assets/chunks/katex-F4MQ6FB3.js +257 -0
  120. data/website/assets/chunks/mindmap-definition-FAOFIHXS-JMGSM3RE.js +96 -0
  121. data/website/assets/chunks/packet-7NZHBO7P-W3SJA3MY.js +1 -0
  122. data/website/assets/chunks/pegDiagram-VL7TDLO6-4JO3Y3Z3.js +1 -0
  123. data/website/assets/chunks/pie-RZYD4A2V-YOIQBTY7.js +1 -0
  124. data/website/assets/chunks/pieDiagram-7S7Q4E2Y-VFQ7SE46.js +39 -0
  125. data/website/assets/chunks/quadrantDiagram-CIZ2JOQS-JISDI2S6.js +7 -0
  126. data/website/assets/chunks/radar-I7S5WNFK-NMKP5AZO.js +1 -0
  127. data/website/assets/chunks/railroad-3IZDKUUU-7MOIV7CI.js +1 -0
  128. data/website/assets/chunks/railroad-abnf-AHOZXSZD-HXNH5SLO.js +1 -0
  129. data/website/assets/chunks/railroad-ebnf-EBAXGLYW-OWDJEWMK.js +1 -0
  130. data/website/assets/chunks/railroad-peg-LSFZ7HO6-ASSINGP5.js +1 -0
  131. data/website/assets/chunks/railroadDiagram-AXF67PYL-AFV5VP5F.js +1 -0
  132. data/website/assets/chunks/requirementDiagram-LRYGKXZP-RNRPEHHN.js +84 -0
  133. data/website/assets/chunks/sankeyDiagram-W5VNT64P-O54R2L3E.js +40 -0
  134. data/website/assets/chunks/sequenceDiagram-SI44F4Z6-42WISKJ7.js +162 -0
  135. data/website/assets/chunks/sizeCapture-X5ZJPWSS-LRN2Q37T.js +1 -0
  136. data/website/assets/chunks/stateDiagram-OKZ733FA-BWIBJXIR.js +1 -0
  137. data/website/assets/chunks/stateDiagram-v2-UEYNNEHI-L73LHL3L.js +1 -0
  138. data/website/assets/chunks/swimlanes-SLNWSIFB-ECOAE7LQ.js +1 -0
  139. data/website/assets/chunks/swimlanesDiagram-ULZ7WXOC-3CKKKFZZ.js +8 -0
  140. data/website/assets/chunks/timeline-definition-Z64GVDOM-HR2OL5G7.js +120 -0
  141. data/website/assets/chunks/treeView-QDETBFTQ-C6D5WFJA.js +1 -0
  142. data/website/assets/chunks/treemap-6X3UGDF4-JFCDMSCA.js +1 -0
  143. data/website/assets/chunks/vennDiagram-T6HMQDX7-62WAAPTF.js +34 -0
  144. data/website/assets/chunks/wardley-OPB4EBWU-RQIOII7I.js +1 -0
  145. data/website/assets/chunks/wardleyDiagram-T6FBY63Y-KUXO3NHV.js +78 -0
  146. data/website/assets/chunks/xychartDiagram-ELKLHX3M-I54W4HJ7.js +7 -0
  147. data/website/assets/color-scheme-bootstrap-4H4ZR4BW.js +1 -0
  148. data/website/assets/docs-3WBBQT6K.css +1 -0
  149. data/website/assets/docs-W3D5DWQF.js +1 -0
  150. data/website/assets/docs-navigation-75ALFYBA.js +1 -0
  151. data/website/assets/graph-QWL54LWD.js +1 -0
  152. data/website/assets/manifest.json +314 -0
  153. data/website/assets/math-7JTH4OWZ.js +21 -0
  154. data/website/assets/mermaid-RXC6URG4.js +10 -0
  155. data/website/assets/minimal-3NPTDWQX.js +1 -0
  156. data/website/assets/minimal-E2VATXXS.css +1 -0
  157. data/website/assets/previews-FMHOX7UX.js +1 -0
  158. data/website/assets/search-BH73JZDU.js +1 -0
  159. data/website/assets/search-worker-SM4IM4J7.js +1 -0
  160. data/website/exe/jekyll-obsidian +5 -0
  161. data/website/lib/jekyll_obsidian/adapter.rb +733 -0
  162. data/website/lib/jekyll_obsidian/built_in_themes.rb +855 -0
  163. data/website/lib/jekyll_obsidian/cli.rb +84 -0
  164. data/website/lib/jekyll_obsidian/content_policy.rb +194 -0
  165. data/website/lib/jekyll_obsidian/destination_registry.rb +39 -0
  166. data/website/lib/jekyll_obsidian/directory_indexes.rb +30 -0
  167. data/website/lib/jekyll_obsidian/external_media.rb +371 -0
  168. data/website/lib/jekyll_obsidian/front_matter.rb +453 -0
  169. data/website/lib/jekyll_obsidian/github_markdown.rb +664 -0
  170. data/website/lib/jekyll_obsidian/html_publication.rb +206 -0
  171. data/website/lib/jekyll_obsidian/initializer.rb +68 -0
  172. data/website/lib/jekyll_obsidian/localized_compiler.rb +1044 -0
  173. data/website/lib/jekyll_obsidian/media_policy.rb +41 -0
  174. data/website/lib/jekyll_obsidian/ofm_scanner.rb +493 -0
  175. data/website/lib/jekyll_obsidian/output_text.rb +13 -0
  176. data/website/lib/jekyll_obsidian/preview.rb +93 -0
  177. data/website/lib/jekyll_obsidian/published_markdown.rb +32 -0
  178. data/website/lib/jekyll_obsidian/raw_html_manifest.rb +66 -0
  179. data/website/lib/jekyll_obsidian/runtime.rb +197 -0
  180. data/website/lib/jekyll_obsidian/site_compilation.rb +147 -0
  181. data/website/lib/jekyll_obsidian/site_navigation.rb +517 -0
  182. data/website/lib/jekyll_obsidian/url_builder.rb +163 -0
  183. data/website/lib/jekyll_obsidian/value_objects.rb +198 -0
  184. data/website/lib/jekyll_obsidian/vault_compiler.rb +2771 -0
  185. data/website/lib/jekyll_obsidian/version.rb +6 -0
  186. data/website/lib/jekyll_obsidian/workspace_layout.rb +104 -0
  187. data/website/lib/jekyll_obsidian.rb +22 -0
  188. data/website/scripts/audit-site.rb +120 -0
  189. data/website/scripts/templates/pages.yml +55 -0
  190. data/website/scripts/verify-site-urls.rb +585 -0
  191. metadata +319 -0
@@ -0,0 +1,62 @@
1
+ import{a as k}from"./chunk-YORIST7Z.js";import{a as Vt,b as Pt,d as T,e as W}from"./chunk-QBPQ7DPE.js";import{a as Et,b as Zt}from"./chunk-GSOU4UTT.js";import{c as lt}from"./chunk-IP56FOSI.js";import{d as Mt}from"./chunk-CBGUD2NP.js";import{k as Dt,r as Bt,t as K}from"./chunk-6DCNDVBX.js";import{H as It,J as Wt,K as zt,_ as Q,ba as Tt,o as pt,u as bt,y as it}from"./chunk-7CSIRG7W.js";import{b as z}from"./chunk-ERWOH47R.js";import{a as $}from"./chunk-EIBFAW37.js";import{e as Z}from"./chunk-LGUG3SQB.js";var O=$(async(d,t,h)=>{let g,l=t.useHtmlLabels||pt(Q()?.htmlLabels);h?g=h:g="node default";let r=d.insert("g").attr("class",g).attr("id",t.domId||t.id),p=r.insert("g").attr("class","label").attr("style",K(t.labelStyle)),i;t.label===void 0?i="":i=typeof t.label=="string"?t.label:t.label[0];let n=!!t.icon||!!t.img,e=t.labelType==="markdown",s=await lt(p,It(Bt(i),Q()),{useHtmlLabels:l,width:t.width||Q().flowchart?.wrappingWidth,classes:e?"markdown-node-label":"",style:t.labelStyle,addSvgBackground:n,markdown:e},Q()),a=s.getBBox(),o=(t?.padding??0)/2;if(l){let c=s.children[0],y=Z(s);await Zt(c,i),a=c.getBoundingClientRect(),y.attr("width",a.width),y.attr("height",a.height)}return l?p.attr("transform","translate("+-a.width/2+", "+-a.height/2+")"):p.attr("transform","translate(0, "+-a.height/2+")"),t.centerLabel&&p.attr("transform","translate("+-a.width/2+", "+-a.height/2+")"),p.insert("rect",":first-child"),{shapeSvg:r,bbox:a,halfPadding:o,label:p}},"labelHelper"),Xt=$(async(d,t,h)=>{let g=h.useHtmlLabels??it(Q()),l=d.insert("g").attr("class","label").attr("style",h.labelStyle||""),r=await lt(l,It(Bt(t),Q()),{useHtmlLabels:g,width:h.width||Q()?.flowchart?.wrappingWidth,style:h.labelStyle,addSvgBackground:!!h.icon||!!h.img}),p=r.getBBox(),i=h.padding/2;if(it(Q())){let n=r.children[0],e=Z(r);p=n.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}return g?l.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):l.attr("transform","translate(0, "+-p.height/2+")"),h.centerLabel&&l.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:d,bbox:p,halfPadding:i,label:l}},"insertLabel"),X=$((d,t)=>{let h=t.node().getBBox();d.width=h.width,d.height=h.height},"updateNodeBounds"),_=$((d,t)=>(d.look==="handDrawn"?"rough-node":"node")+" "+d.cssClasses+" "+(t||""),"getNodeClasses");function F(d){let t=d.map((h,g)=>`${g===0?"M":"L"}${h.x},${h.y}`);return t.push("Z"),t.join(" ")}$(F,"createPathFromPoints");function ut(d,t,h,g,l,r){let p=[],n=h-d,e=g-t,s=n/r,a=2*Math.PI/s,o=t+e/2;for(let c=0;c<=50;c++){let y=c/50,f=d+y*n,m=o+l*Math.sin(a*(f-d));p.push({x:f,y:m})}return p}$(ut,"generateFullSineWavePoints");function Ct(d,t,h,g,l,r){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(g-1);for(let a=0;a<g;a++){let o=i+a*s,c=d+h*Math.cos(o),y=t+h*Math.sin(o);p.push({x:-c,y:-y})}return p}$(Ct,"generateCirclePoints");function _t(d){let t=Array.from(d.childNodes).filter(n=>n.tagName==="path"),h=document.createElementNS("http://www.w3.org/2000/svg","path"),g=t.map(n=>n.getAttribute("d")).filter(n=>n!==null).join(" ");h.setAttribute("d",g);let l=t.find(n=>n.getAttribute("fill")!=="none"),r=t.find(n=>n.getAttribute("stroke")!=="none"),p=$((n,e)=>n?.getAttribute(e)??void 0,"getAttr");if(l){let n={fill:p(l,"fill"),"fill-opacity":p(l,"fill-opacity")??"1"};Object.entries(n).forEach(([e,s])=>{s&&h.setAttribute(e,s)})}if(r){let n={stroke:p(r,"stroke"),"stroke-width":p(r,"stroke-width")??"1","stroke-opacity":p(r,"stroke-opacity")??"1"};Object.entries(n).forEach(([e,s])=>{s&&h.setAttribute(e,s)})}let i=document.createElementNS("http://www.w3.org/2000/svg","g");return i.appendChild(h),i}$(_t,"mergePaths");var Ma=$((d,t)=>{var h=d.x,g=d.y,l=t.x-h,r=t.y-g,p=d.width/2,i=d.height/2,n,e;return Math.abs(r)*p>Math.abs(l)*i?(r<0&&(i=-i),n=r===0?0:i*l/r,e=i):(l<0&&(p=-p),n=p,e=l===0?0:p*r/l),{x:h+n,y:g+e}},"intersectRect"),xt=Ma,Na=$(async(d,t,h,g=!1,l=!1)=>{let r=t||"";typeof r=="object"&&(r=r[0]);let p=Q(),i=it(p);return await lt(d,r,{style:h,isTitle:g,useHtmlLabels:i,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},p)},"createLabel"),At=Na,dt=$((d,t,h,g,l)=>["M",d+l,t,"H",d+h-l,"A",l,l,0,0,1,d+h,t+l,"V",t+g-l,"A",l,l,0,0,1,d+h-l,t+g,"H",d+l,"A",l,l,0,0,1,d,t+g-l,"V",t+l,"A",l,l,0,0,1,d+l,t,"Z"].join(" "),"createRoundedRectPathD"),Ca=$(async(d,t)=>{let h=Q(),{themeVariables:g,handDrawnSeed:l}=h,{clusterBkg:r,clusterBorder:p}=g,i=p,{labelStyles:n,nodeStyles:e,borderStyles:s,backgroundStyles:a}=T(t),o=d.insert("g").attr("class","cluster swimlane "+(t.cssClasses||"")).attr("id",t.id).attr("data-id",t.id).attr("data-et","cluster").attr("data-look",t.look),c=pt(h.flowchart.htmlLabels),y=t.direction==="LR",f=o.insert("g").attr("class","cluster-label swimlane-label"),m=await lt(f,t.label,{style:t.labelStyle,useHtmlLabels:c,isNode:!0,width:t.width}),u=m.getBBox();if(c){let N=m.children[0],R=Z(m);u=N.getBoundingClientRect(),R.attr("width",u.width),R.attr("height",u.height)}let w=t.padding??0,x=t.width<=u.width+w?u.width+w:t.width;t.width<=u.width+w?t.diff=(x-t.width)/2-w:t.diff=-w;let S=t.height,b=t.y-S/2,v=t.y+S/2,P=t.x-x/2,D=t.swimlaneContentTop!==void 0?t.swimlaneContentTop:b+S/3,B=y?4:0,M=u.height+2*B,C,E;if(y){let N=Math.max(M,u.height+2*B),R=P+N,A=Math.max(0,x-N);if(t.look==="handDrawn"){let Y=k.svg(o),G=W(t,{roughness:.7,fill:r,stroke:i,fillWeight:3,seed:l}),q=W(t,{roughness:.7,fill:"none",stroke:i,seed:l}),ct=Y.rectangle(P,b,N,S,G);C=o.insert(()=>ct,":first-child");let rt=Y.rectangle(R,b,A,S,q);E=o.insert(()=>rt,":first-child"),C.select("path:nth-child(2)").attr("style",s.join(";")),C.select("path").attr("style",a.join(";").replace("fill","stroke"))}else C=o.insert("rect",":first-child"),E=o.insert("rect",":first-child"),C.attr("class","swimlane-title").attr("style",e).attr("x",P).attr("y",b).attr("width",N).attr("height",S).attr("fill",r).attr("stroke",i),E.attr("class","swimlane-body").attr("style",e).attr("x",R).attr("y",b).attr("width",A).attr("height",S).attr("fill","none").attr("stroke",i);let H=P+N/2,I=t.y;f.attr("transform",`translate(${H}, ${I}) rotate(-90) translate(${-u.width/2}, ${-u.height/2})`)}else{let N=Math.max(0,D-b),R=Math.min(M,N),A=b+R,H=Math.max(0,v-A),I=t.x-x/2;if(t.look==="handDrawn"){let q=k.svg(o),ct=W(t,{roughness:.7,fill:r,stroke:i,fillWeight:3,seed:l}),rt=W(t,{roughness:.7,fill:"none",stroke:i,seed:l}),et=q.rectangle(I,b,x,R,ct);C=o.insert(()=>et,":first-child");let st=q.rectangle(I,A,x,H,rt);E=o.insert(()=>st,":first-child"),C.select("path:nth-child(2)").attr("style",s.join(";")),C.select("path").attr("style",a.join(";").replace("fill","stroke"))}else C=o.insert("rect",":first-child"),E=o.insert("rect",":first-child"),C.attr("class","swimlane-title").attr("style",e).attr("x",I).attr("y",b).attr("width",x).attr("height",R).attr("fill",r).attr("stroke",i),E.attr("class","swimlane-body").attr("style",e).attr("x",I).attr("y",A).attr("width",x).attr("height",H).attr("fill","none").attr("stroke",i);let Y=t.x-u.width/2,G=b+(R-u.height)/2;f.attr("transform",`translate(${Y}, ${G})`)}if(z.trace("Swimlane data ",t,JSON.stringify(t)),n){let N=f.select("span");N&&N.attr("style",n)}return t.offsetX=0,t.width=x,t.height=S,t.offsetY=u.height-w/2,t.intersect=function(N){return xt(t,N)},{cluster:o,labelBBox:u}},"swimlane"),ns=$(async(d,t)=>{z.info("Creating subgraph rect for ",t.id,t);let h=Q(),{themeVariables:g,handDrawnSeed:l}=h,{clusterBkg:r,clusterBorder:p}=g,{labelStyles:i,nodeStyles:n,borderStyles:e,backgroundStyles:s}=T(t),a=d.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),o=it(h),c=a.insert("g").attr("class","cluster-label "),y;t.labelType==="markdown"?y=await lt(c,t.label,{style:t.labelStyle,useHtmlLabels:o,isNode:!0,width:t.width}):y=await At(c,t.label,t.labelStyle||"",!1,!0);let f=y.getBBox();if(it(h)){let P=y.children[0],D=Z(y);f=P.getBoundingClientRect(),D.attr("width",f.width),D.attr("height",f.height)}let m=t.width<=f.width+t.padding?f.width+t.padding:t.width;t.width<=f.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let u=t.height,w=t.x-m/2,x=t.y-u/2;z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let P=k.svg(a),D=W(t,{roughness:.7,fill:r,stroke:p,fillWeight:3,seed:l}),B=P.path(dt(w,x,m,u,0),D);S=a.insert(()=>(z.debug("Rough node insert CXC",B),B),":first-child"),S.select("path:nth-child(2)").attr("style",e.join(";")),S.select("path").attr("style",s.join(";").replace("fill","stroke"))}else S=a.insert("rect",":first-child"),S.attr("style",n).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",m).attr("height",u);let{subGraphTitleTopMargin:b}=Et(h);if(c.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2+b})`),i){let P=c.select("span");P&&P.attr("style",i)}let v=S.node().getBBox();return t.offsetX=0,t.width=v.width,t.height=v.height,t.offsetY=f.height-t.padding/2,t.intersect=function(P){return xt(t,P)},{cluster:a,labelBBox:f}},"rect"),Ra=$((d,t)=>{let h=d.insert("g").attr("class","note-cluster").attr("id",t.domId),g=h.insert("rect",":first-child"),l=0*t.padding,r=l/2;g.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-r).attr("y",t.y-t.height/2-r).attr("width",t.width+l).attr("height",t.height+l).attr("fill","none");let p=g.node().getBBox();return t.width=p.width,t.height=p.height,t.intersect=function(i){return xt(t,i)},{cluster:h,labelBBox:{width:0,height:0}}},"noteGroup"),Aa=$(async(d,t)=>{let h=Q(),{themeVariables:g,handDrawnSeed:l}=h,{altBackground:r,compositeBackground:p,compositeTitleBackground:i,nodeBorder:n}=g,e=d.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-id",t.id).attr("data-look",t.look),s=e.insert("g",":first-child"),a=e.insert("g").attr("class","cluster-label"),o=e.append("rect"),c=await At(a,t.label,t.labelStyle,void 0,!0),y=c.getBBox();if(it(h)){let B=c.children[0],M=Z(c);y=B.getBoundingClientRect(),M.attr("width",y.width),M.attr("height",y.height)}let f=0*t.padding,m=f/2,u=(t.width<=y.width+t.padding?y.width+t.padding:t.width)+f;t.width<=y.width+t.padding?t.diff=(u-t.width)/2-t.padding:t.diff=-t.padding;let w=t.height+f,x=t.height+f-y.height-6,S=t.x-u/2,b=t.y-w/2;t.width=u;let v=t.y-t.height/2-m+y.height+2,P;if(t.look==="handDrawn"){let B=t.cssClasses.includes("statediagram-cluster-alt"),M=k.svg(e),C=t.rx||t.ry?M.path(dt(S,b,u,w,10),{roughness:.7,fill:i,fillStyle:"solid",stroke:n,seed:l}):M.rectangle(S,b,u,w,{seed:l});P=e.insert(()=>C,":first-child");let E=M.rectangle(S,v,u,x,{fill:B?r:p,fillStyle:B?"hachure":"solid",stroke:n,seed:l});P=e.insert(()=>C,":first-child"),o=e.insert(()=>E)}else P=s.insert("rect",":first-child"),P.attr("class","outer").attr("x",S).attr("y",b).attr("width",u).attr("height",w).attr("data-look",t.look),o.attr("class","inner").attr("x",S).attr("y",v).attr("width",u).attr("height",x);a.attr("transform",`translate(${t.x-y.width/2}, ${b+1-(it(h)?0:3)})`);let D=P.node().getBBox();return t.height=D.height,t.offsetX=0,t.offsetY=y.height-t.padding/2,t.labelBBox=y,t.intersect=function(B){return xt(t,B)},{cluster:e,labelBBox:y}},"roundedWithTitle"),Ha=$(async(d,t)=>{z.info("Creating subgraph rect for ",t.id,t);let h=Q(),{themeVariables:g,handDrawnSeed:l}=h,{clusterBkg:r,clusterBorder:p}=g,{labelStyles:i,nodeStyles:n,borderStyles:e,backgroundStyles:s}=T(t),a=d.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),o=it(h),c=a.insert("g").attr("class","cluster-label "),y=await lt(c,t.label,{style:t.labelStyle,useHtmlLabels:o,isNode:!0,width:t.width}),f=y.getBBox();if(it(h)){let P=y.children[0],D=Z(y);f=P.getBoundingClientRect(),D.attr("width",f.width),D.attr("height",f.height)}let m=t.width<=f.width+t.padding?f.width+t.padding:t.width;t.width<=f.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let u=t.height,w=t.x-m/2,x=t.y-u/2;z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let P=k.svg(a),D=W(t,{roughness:.7,fill:r,stroke:p,fillWeight:4,seed:l}),B=P.path(dt(w,x,m,u,t.rx),D);S=a.insert(()=>(z.debug("Rough node insert CXC",B),B),":first-child"),S.select("path:nth-child(2)").attr("style",e.join(";")),S.select("path").attr("style",s.join(";").replace("fill","stroke"))}else S=a.insert("rect",":first-child"),S.attr("style",n).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",m).attr("height",u);let{subGraphTitleTopMargin:b}=Et(h);if(c.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2+b})`),i){let P=c.select("span");P&&P.attr("style",i)}let v=S.node().getBBox();return t.offsetX=0,t.width=v.width,t.height=v.height,t.offsetY=f.height-t.padding/2,t.intersect=function(P){return xt(t,P)},{cluster:a,labelBBox:f}},"kanbanSection"),La=$((d,t)=>{let h=Q(),{themeVariables:g,handDrawnSeed:l}=h,{nodeBorder:r}=g,p=d.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-look",t.look),i=p.insert("g",":first-child"),n=0*t.padding,e=t.width+n;t.diff=-t.padding;let s=t.height+n,a=t.x-e/2,o=t.y-s/2;t.width=e;let c;if(t.look==="handDrawn"){let m=k.svg(p).rectangle(a,o,e,s,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:r,seed:l});c=p.insert(()=>m,":first-child")}else{c=i.insert("rect",":first-child");let f="outer";t.look,f="divider",c.attr("class",f).attr("x",a).attr("y",o).attr("width",e).attr("height",s).attr("data-look",t.look)}let y=c.node().getBBox();return t.height=y.height,t.offsetX=0,t.offsetY=0,t.intersect=function(f){return xt(t,f)},{cluster:p,labelBBox:{}}},"divider"),Ia=ns,Wa={rect:ns,squareRect:Ia,roundedWithTitle:Aa,noteGroup:Ra,divider:La,kanbanSection:Ha,swimlane:Ca},cs=new Map,we=$(async(d,t)=>{let h=t.shape||"rect",g=await Wa[h](d,t);return cs.set(t.id,g),g},"insertCluster"),xe=$(()=>{cs=new Map},"clear");function os(d,t){return d.intersect(t)}$(os,"intersectNode");var Ta=os;function hs(d,t,h,g){var l=d.x,r=d.y,p=l-g.x,i=r-g.y,n=Math.sqrt(t*t*i*i+h*h*p*p),e=Math.abs(t*h*p/n);g.x<l&&(e=-e);var s=Math.abs(t*h*i/n);return g.y<r&&(s=-s),{x:l+e,y:r+s}}$(hs,"intersectEllipse");var gs=hs;function fs(d,t,h){return gs(d,t,t,h)}$(fs,"intersectCircle");var Ea=fs;function ys(d,t,h,g){{let l=t.y-d.y,r=d.x-t.x,p=t.x*d.y-d.x*t.y,i=l*h.x+r*h.y+p,n=l*g.x+r*g.y+p,e=1e-6;if(i!==0&&n!==0&&Ot(i,n))return;let s=g.y-h.y,a=h.x-g.x,o=g.x*h.y-h.x*g.y,c=s*d.x+a*d.y+o,y=s*t.x+a*t.y+o;if(Math.abs(c)<e&&Math.abs(y)<e&&Ot(c,y))return;let f=l*a-s*r;if(f===0)return;let m=Math.abs(f/2),u=r*o-a*p,w=u<0?(u-m)/f:(u+m)/f;u=s*p-l*o;let x=u<0?(u-m)/f:(u+m)/f;return{x:w,y:x}}}$(ys,"intersectLine");function Ot(d,t){return d*t>0}$(Ot,"sameSign");var Xa=ys;function ps(d,t,h){let g=d.x,l=d.y,r=[],p=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(s){p=Math.min(p,s.x),i=Math.min(i,s.y)}):(p=Math.min(p,t.x),i=Math.min(i,t.y));let n=g-d.width/2-p,e=l-d.height/2-i;for(let s=0;s<t.length;s++){let a=t[s],o=t[s<t.length-1?s+1:0],c=Xa(d,h,{x:n+a.x,y:e+a.y},{x:n+o.x,y:e+o.y});c&&r.push(c)}return r.length?(r.length>1&&r.sort(function(s,a){let o=s.x-h.x,c=s.y-h.y,y=Math.sqrt(o*o+c*c),f=a.x-h.x,m=a.y-h.y,u=Math.sqrt(f*f+m*m);return y<u?-1:y===u?0:1}),r[0]):d}$(ps,"intersectPolygon");var Ya=ps,L={node:Ta,circle:Ea,ellipse:gs,polygon:Ya,rect:xt};function us(d,t){let{labelStyles:h}=T(t);t.labelStyle=h;let g=_(t),l=g;g||(l="anchor");let r=d.insert("g").attr("class",l).attr("id",t.domId||t.id),p=1,{cssStyles:i}=t,n=k.svg(r),e=W(t,{fill:"black",stroke:"none",fillStyle:"solid"});t.look!=="handDrawn"&&(e.roughness=0);let s=n.circle(0,0,p*2,e),a=r.insert(()=>s,":first-child");return a.attr("class","anchor").attr("style",K(i)),X(t,a),t.intersect=function(o){return z.info("Circle intersect",t,p,o),L.circle(t,p,o)},r}$(us,"anchor");function jt(d,t,h,g,l,r,p){let n=(d+h)/2,e=(t+g)/2,s=Math.atan2(g-t,h-d),a=(h-d)/2,o=(g-t)/2,c=a/l,y=o/r,f=Math.sqrt(c**2+y**2);if(f>1)throw new Error("The given radii are too small to create an arc between the points.");let m=Math.sqrt(1-f**2),u=n+m*r*Math.sin(s)*(p?-1:1),w=e-m*l*Math.cos(s)*(p?-1:1),x=Math.atan2((t-w)/r,(d-u)/l),b=Math.atan2((g-w)/r,(h-u)/l)-x;p&&b<0&&(b+=2*Math.PI),!p&&b>0&&(b-=2*Math.PI);let v=[];for(let P=0;P<20;P++){let D=P/19,B=x+D*b,M=u+l*Math.cos(B),C=w+r*Math.sin(B);v.push({x:M,y:C})}return v}$(jt,"generateArcPoints");function ds(d,t,h){let[g,l]=[t,h].sort((r,p)=>p-r);return l*(1-Math.sqrt(1-(d/g/2)**2))}$(ds,"calculateArcSagitta");async function ms(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=$(B=>B+p,"calcTotalHeight"),n=$(B=>{let M=B/2;return[M/(2.5+B/50),M]},"calcEllipseRadius"),{shapeSvg:e,bbox:s}=await O(d,t,_(t)),a=i(t?.height?t?.height:s.height),[o,c]=n(a),y=ds(a,o,c),m=(t?.width?t?.width:s.width)+r*2+y-y,u=a,{cssStyles:w}=t,x=[{x:m/2,y:-u/2},{x:-m/2,y:-u/2},...jt(-m/2,-u/2,-m/2,u/2,o,c,!1),{x:m/2,y:u/2},...jt(m/2,u/2,m/2,-u/2,o,c,!0)],S=k.svg(e),b=W(t,{});t.look!=="handDrawn"&&(b.roughness=0,b.fillStyle="solid");let v=F(x),P=S.path(v,b),D=e.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",w),g&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",g),D.attr("transform",`translate(${o/2}, 0)`),X(t,D),t.intersect=function(B){return L.polygon(t,x,B)},e}$(ms,"bowTieRect");function ft(d,t,h,g){return d.insert("polygon",":first-child").attr("points",g.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+h/2+")")}$(ft,"insertPolygonShape");var Rt=12;async function ws(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?28:l,p=t.look==="neo"?24:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.width??n.width)+(t.look==="neo"?r*2:r+Rt),s=(t?.height??n.height)+(t.look==="neo"?p*2:p),a=0,o=e,c=-s,y=0,f=[{x:a+Rt,y:c},{x:o,y:c},{x:o,y},{x:a,y},{x:a,y:c+Rt},{x:a+Rt,y:c}],m,{cssStyles:u}=t;if(t.look==="handDrawn"){let w=k.svg(i),x=W(t,{}),S=F(f),b=w.path(S,x);m=i.insert(()=>b,":first-child").attr("transform",`translate(${-e/2}, ${s/2})`),u&&m.attr("style",u)}else m=ft(i,e,s,f);return g&&m.attr("style",g),X(t,m),t.intersect=function(w){return L.polygon(t,f,w)},i}$(ws,"card");function xs(d,t){let{nodeStyles:h}=T(t);t.label="";let g=d.insert("g").attr("class",_(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,r=Math.max(28,t.width??0),p=[{x:0,y:r/2},{x:r/2,y:0},{x:0,y:-r/2},{x:-r/2,y:0}],i=k.svg(g),n=W(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let e=F(p),s=i.path(e,n),a=g.insert(()=>s,":first-child");return l&&t.look!=="handDrawn"&&a.selectAll("path").attr("style",l),h&&t.look!=="handDrawn"&&a.selectAll("path").attr("style",h),t.width=28,t.height=28,t.intersect=function(o){return L.polygon(t,p,o)},g}$(xs,"choice");async function Gt(d,t,h){let{labelStyles:g,nodeStyles:l}=T(t);t.labelStyle=g;let{shapeSvg:r,bbox:p,halfPadding:i}=await O(d,t,_(t)),n=16,e=h?.padding??i,s=t.look==="neo"?p.width/2+n*2:p.width/2+e,a,{cssStyles:o}=t;if(t.look==="handDrawn"){let c=k.svg(r),y=W(t,{}),f=c.circle(0,0,s*2,y);a=r.insert(()=>f,":first-child"),a.attr("class","basic label-container").attr("style",K(o))}else a=r.insert("circle",":first-child").attr("class","basic label-container").attr("style",l).attr("r",s).attr("cx",0).attr("cy",0);return X(t,a),t.calcIntersect=function(c,y){let f=c.width/2;return L.circle(c,f,y)},t.intersect=function(c){return z.info("Circle intersect",t,s,c),L.circle(t,s,c)},r}$(Gt,"circle");function bs(d){let t=Math.cos(Math.PI/4),h=Math.sin(Math.PI/4),g=d*2,l={x:g/2*t,y:g/2*h},r={x:-(g/2)*t,y:g/2*h},p={x:-(g/2)*t,y:-(g/2)*h},i={x:g/2*t,y:-(g/2)*h};return`M ${r.x},${r.y} L ${i.x},${i.y}
2
+ M ${l.x},${l.y} L ${p.x},${p.y}`}$(bs,"createLine");function Ss(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h,t.label="";let l=d.insert("g").attr("class",_(t)).attr("id",t.domId??t.id),r=Math.max(30,t?.width??0),{cssStyles:p}=t,i=k.svg(l),n=W(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let e=i.circle(0,0,r*2,n),s=bs(r),a=i.path(s,n),o=l.insert(()=>e,":first-child");return o.insert(()=>a),o.attr("class","outer-path"),p&&t.look!=="handDrawn"&&o.selectAll("path").attr("style",p),g&&t.look!=="handDrawn"&&o.selectAll("path").attr("style",g),X(t,o),t.intersect=function(c){return z.info("crossedCircle intersect",t,{radius:r,point:c}),L.circle(t,r,c)},l}$(Ss,"crossedCircle");function ht(d,t,h,g=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(g-1);for(let a=0;a<g;a++){let o=i+a*s,c=d+h*Math.cos(o),y=t+h*Math.sin(o);p.push({x:-c,y:-y})}return p}$(ht,"generateCirclePoints");async function $s(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,label:p}=await O(d,t,_(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+i,s=r.height+n,a=Math.max(5,s*.1),{cssStyles:o}=t,c=[...ht(e/2,-s/2,a,30,-90,0),{x:-e/2-a,y:a},...ht(e/2+a*2,-a,a,20,-180,-270),...ht(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:-s/2},...ht(e/2,s/2,a,20,0,90)],y=[{x:e/2,y:-s/2-a},{x:-e/2,y:-s/2-a},...ht(e/2,-s/2,a,20,-90,0),{x:-e/2-a,y:-a},...ht(e/2+e*.1,-a,a,20,-180,-270),...ht(e/2+e*.1,a,a,20,-90,-180),{x:-e/2-a,y:s/2},...ht(e/2,s/2,a,20,0,90),{x:-e/2,y:s/2+a},{x:e/2,y:s/2+a}],f=k.svg(l),m=W(t,{fill:"none"});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let w=F(c).replace("Z",""),x=f.path(w,m),S=F(y),b=f.path(S,{...m}),v=l.insert("g",":first-child");return v.insert(()=>b,":first-child").attr("stroke-opacity",0),v.insert(()=>x,":first-child"),v.attr("class","text"),o&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",o),g&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",g),v.attr("transform",`translate(${a}, 0)`),p.attr("transform",`translate(${-e/2+a-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),X(t,v),t.intersect=function(P){return L.polygon(t,y,P)},l}$($s,"curlyBraceLeft");function gt(d,t,h,g=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(g-1);for(let a=0;a<g;a++){let o=i+a*s,c=d+h*Math.cos(o),y=t+h*Math.sin(o);p.push({x:c,y})}return p}$(gt,"generateCirclePoints");async function ks(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,label:p}=await O(d,t,_(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+(t.look==="neo"?i*2:i),s=r.height+(t.look==="neo"?n*2:n),a=Math.max(5,s*.1),{cssStyles:o}=t,c=[...gt(e/2,-s/2,a,20,-90,0),{x:e/2+a,y:-a},...gt(e/2+a*2,-a,a,20,-180,-270),...gt(e/2+a*2,a,a,20,-90,-180),{x:e/2+a,y:s/2},...gt(e/2,s/2,a,20,0,90)],y=[{x:-e/2,y:-s/2-a},{x:e/2,y:-s/2-a},...gt(e/2,-s/2,a,20,-90,0),{x:e/2+a,y:-a},...gt(e/2+a*2,-a,a,20,-180,-270),...gt(e/2+a*2,a,a,20,-90,-180),{x:e/2+a,y:s/2},...gt(e/2,s/2,a,20,0,90),{x:e/2,y:s/2+a},{x:-e/2,y:s/2+a}],f=k.svg(l),m=W(t,{fill:"none"});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let w=F(c).replace("Z",""),x=f.path(w,m),S=F(y),b=f.path(S,{...m}),v=l.insert("g",":first-child");return v.insert(()=>b,":first-child").attr("stroke-opacity",0),v.insert(()=>x,":first-child"),v.attr("class","text"),o&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",o),g&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",g),v.attr("transform",`translate(${-a}, 0)`),p.attr("transform",`translate(${-e/2+(t.padding??0)/2-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),X(t,v),t.intersect=function(P){return L.polygon(t,y,P)},l}$(ks,"curlyBraceRight");function tt(d,t,h,g=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(g-1);for(let a=0;a<g;a++){let o=i+a*s,c=d+h*Math.cos(o),y=t+h*Math.sin(o);p.push({x:-c,y:-y})}return p}$(tt,"generateCirclePoints");async function vs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,label:p}=await O(d,t,_(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+(t.look==="neo"?i*2:i),s=r.height+(t.look==="neo"?n*2:n),a=Math.max(5,s*.1),{cssStyles:o}=t,c=[...tt(e/2,-s/2,a,30,-90,0),{x:-e/2-a,y:a},...tt(e/2+a*2,-a,a,20,-180,-270),...tt(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:-s/2},...tt(e/2,s/2,a,20,0,90)],y=[...tt(-e/2+a+a/2,-s/2,a,20,-90,-180),{x:e/2-a/2,y:a},...tt(-e/2-a/2,-a,a,20,0,90),...tt(-e/2-a/2,a,a,20,-90,0),{x:e/2-a/2,y:-a},...tt(-e/2+a+a/2,s/2,a,30,-180,-270)],f=[{x:e/2,y:-s/2-a},{x:-e/2,y:-s/2-a},...tt(e/2,-s/2,a,20,-90,0),{x:-e/2-a,y:-a},...tt(e/2+a*2,-a,a,20,-180,-270),...tt(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:s/2},...tt(e/2,s/2,a,20,0,90),{x:-e/2,y:s/2+a},{x:e/2-a-a/2,y:s/2+a},...tt(-e/2+a+a/2,-s/2,a,20,-90,-180),{x:e/2-a/2,y:a},...tt(-e/2-a/2,-a,a,20,0,90),...tt(-e/2-a/2,a,a,20,-90,0),{x:e/2-a/2,y:-a},...tt(-e/2+a+a/2,s/2,a,30,-180,-270)],m=k.svg(l),u=W(t,{fill:"none"});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let x=F(c).replace("Z",""),S=m.path(x,u),v=F(y).replace("Z",""),P=m.path(v,u),D=F(f),B=m.path(D,{...u}),M=l.insert("g",":first-child");return M.insert(()=>B,":first-child").attr("stroke-opacity",0),M.insert(()=>S,":first-child"),M.insert(()=>P,":first-child"),M.attr("class","text"),o&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",o),g&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",g),M.attr("transform",`translate(${a-a/4}, 0)`),p.attr("transform",`translate(${-e/2+(t.padding??0)/2-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),X(t,M),t.intersect=function(C){return L.polygon(t,f,C)},l}$(vs,"curlyBraces");async function Ps(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=20,n=5,{shapeSvg:e,bbox:s}=await O(d,t,_(t)),a=Math.max(i,(s.width+r*2)*1.25,t?.width??0),o=Math.max(n,s.height+p*2,t?.height??0),c=o/2,{cssStyles:y}=t,f=k.svg(e),m=W(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let u=a,w=o,x=u-c,S=w/4,b=[{x,y:0},{x:S,y:0},{x:0,y:w/2},{x:S,y:w},{x,y:w},...Ct(-x,-w/2,c,50,270,90)],v=F(b),P=f.path(v,m),D=e.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&D.selectChildren("path").attr("style",y),g&&t.look!=="handDrawn"&&D.selectChildren("path").attr("style",g),D.attr("transform",`translate(${-a/2}, ${-o/2})`),X(t,D),t.intersect=function(B){return L.polygon(t,b,B)},e}$(Ps,"curvedTrapezoid");var _a=$((d,t,h,g,l,r)=>[`M${d},${t+r}`,`a${l},${r} 0,0,0 ${h},0`,`a${l},${r} 0,0,0 ${-h},0`,`l0,${g}`,`a${l},${r} 0,0,0 ${h},0`,`l0,${-g}`].join(" "),"createCylinderPathD"),Oa=$((d,t,h,g,l,r)=>[`M${d},${t+r}`,`M${d+h},${t+r}`,`a${l},${r} 0,0,0 ${-h},0`,`l0,${g}`,`a${l},${r} 0,0,0 ${h},0`,`l0,${-g}`].join(" "),"createOuterCylinderPathD"),ja=$((d,t,h,g,l,r)=>[`M${d-h/2},${-g/2}`,`a${l},${r} 0,0,0 ${h},0`].join(" "),"createInnerCylinderPathD"),Jt=8,Qt=8;async function Ds(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?24:l,p=t.look==="neo"?24:l;if(t.width||t.height){let m=t.width??0;t.width=(t.width??0)-p,t.width<Qt&&(t.width=Qt);let w=m/2/(2.5+m/50);t.height=(t.height??0)-r-w*3,t.height<Jt&&(t.height=Jt)}let{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=(t.width?t.width:n.width)+p,a=s/2,o=a/(2.5+s/50),c=(t.height?t.height:n.height)+r+o,y,{cssStyles:f}=t;if(t.look==="handDrawn"){let m=k.svg(i),u=Oa(0,0,s,c,a,o),w=ja(0,o,s,c,a,o),x=W(t,{}),S=m.path(u,x),b=m.path(w,W(t,{fill:"none"}));y=i.insert(()=>b,":first-child"),y=i.insert(()=>S,":first-child"),y.attr("class","basic label-container"),f&&y.attr("style",f)}else{let m=_a(0,0,s,c,a,o);y=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container outer-path").attr("style",K(f)).attr("style",g)}return y.attr("label-offset-y",o),y.attr("transform",`translate(${-s/2}, ${-(c/2+o)})`),X(t,y),e.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)+(t.padding??0)/1.5-(n.y-(n.top??0))})`),t.intersect=function(m){let u=L.rect(t,m),w=u.x-(t.x??0);if(a!=0&&(Math.abs(w)<(t.width??0)/2||Math.abs(w)==(t.width??0)/2&&Math.abs(u.y-(t.y??0))>(t.height??0)/2-o)){let x=o*o*(1-w*w/(a*a));x>0&&(x=Math.sqrt(x)),x=o-x,m.y-(t.y??0)>0&&(x=-x),u.y+=x}return u},i}$(Ds,"cylinder");async function vt(d,t,h){let{labelStyles:g,nodeStyles:l}=T(t);t.labelStyle=g;let{shapeSvg:r,bbox:p}=await O(d,t,_(t)),i=Math.max(p.width+h.labelPaddingX*2,t?.width||0),n=Math.max(p.height+h.labelPaddingY*2,t?.height||0),e=-i/2,s=-n/2,a,{rx:o,ry:c}=t,{cssStyles:y}=t;if(h?.rx&&h.ry&&(o=h.rx,c=h.ry),t.look==="handDrawn"){let f=k.svg(r),m=W(t,{}),u=o||c?f.path(dt(e,s,i,n,o||0),m):f.rectangle(e,s,i,n,m);a=r.insert(()=>u,":first-child"),a.attr("class","basic label-container").attr("style",K(y))}else a=r.insert("rect",":first-child"),a.attr("class","basic label-container").attr("style",l).attr("rx",K(o)).attr("ry",K(c)).attr("x",e).attr("y",s).attr("width",i).attr("height",n);return X(t,a),t.calcIntersect=function(f,m){return L.rect(f,m)},t.intersect=function(f){return L.rect(t,f)},r}$(vt,"drawRect");async function Bs(d,t){let{cssClasses:h,labelPaddingX:g,labelPaddingY:l,padding:r,width:p,height:i}=t,n={rx:0,ry:0,classes:h??"",labelPaddingX:g??(r??0)*2,labelPaddingY:l??r??0},e=await vt(d,t,n);if(t.look==="handDrawn"){let c=k.svg(e),y=W(t,{}),f=e.select(".basic.label-container > path:nth-child(2)"),m=f.node();if(!m)return e;let u=null;if(m instanceof SVGGraphicsElement)u=m.getBBox();else return e;return e.insert(()=>c.line(u.x,u.y,u.x+u.width,u.y,y),".basic.label-container g.label"),e.insert(()=>c.line(u.x,u.y+u.height,u.x+u.width,u.y+u.height,y),".basic.label-container g.label"),f.remove(),e}let s=e.select(".basic.label-container"),a=(Number(s.attr("width"))||p)??0,o=(Number(s.attr("height"))||i)??0;return a>0&&o>0&&s.attr("stroke-dasharray",`${a} ${o}`),e}$(Bs,"datastore");async function Ms(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?16:t.padding??0,{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=i.width+l,s=i.height+r,a=s*.2,o=-e/2,c=-s/2-a/2,{cssStyles:y}=t,f=k.svg(p),m=W(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let u=[{x:o,y:c+a},{x:-o,y:c+a},{x:-o,y:-c},{x:o,y:-c},{x:o,y:c},{x:-o,y:c},{x:-o,y:c+a}],w=f.polygon(u.map(S=>[S.x,S.y]),m),x=p.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",y),g&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",g),n.attr("transform",`translate(${o+(t.padding??0)/2-(i.x-(i.left??0))}, ${c+a+(t.padding??0)/2-(i.y-(i.top??0))})`),X(t,x),t.intersect=function(S){return L.rect(t,S)},p}$(Ms,"dividedRectangle");async function Ns(d,t){let{labelStyles:h,nodeStyles:g}=T(t),l=t.look==="neo"?12:5;t.labelStyle=h;let r=t.padding??0,p=t.look==="neo"?16:r,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.width?t?.width/2:n.width/2)+(p??0),s=e-l,a,{cssStyles:o}=t;if(t.look==="handDrawn"){let c=k.svg(i),y=W(t,{roughness:.2,strokeWidth:2.5}),f=W(t,{roughness:.2,strokeWidth:1.5}),m=c.circle(0,0,e*2,y),u=c.circle(0,0,s*2,f);a=i.insert("g",":first-child"),a.attr("class",K(t.cssClasses)).attr("style",K(o)),a.node()?.appendChild(m),a.node()?.appendChild(u)}else{a=i.insert("g",":first-child");let c=a.insert("circle",":first-child"),y=a.insert("circle");a.attr("class","basic label-container").attr("style",g),c.attr("class","outer-circle").attr("style",g).attr("r",e).attr("cx",0).attr("cy",0),y.attr("class","inner-circle").attr("style",g).attr("r",s).attr("cx",0).attr("cy",0)}return X(t,a),t.intersect=function(c){return z.info("DoubleCircle intersect",t,e,c),L.circle(t,e,c)},i}$(Ns,"doublecircle");function Cs(d,t,{config:{themeVariables:h}}){let{labelStyles:g,nodeStyles:l}=T(t);t.label="",t.labelStyle=g;let r=d.insert("g").attr("class",_(t)).attr("id",t.domId??t.id),p=7,{cssStyles:i}=t,n=k.svg(r),{nodeBorder:e}=h,s=W(t,{fillStyle:"solid"});t.look!=="handDrawn"&&(s.roughness=0);let a=n.circle(0,0,p*2,s),o=r.insert(()=>a,":first-child");return o.selectAll("path").attr("style",`fill: ${e} !important;`),i&&i.length>0&&t.look!=="handDrawn"&&o.selectAll("path").attr("style",i),l&&t.look!=="handDrawn"&&o.selectAll("path").attr("style",l),X(t,o),t.intersect=function(c){return z.info("filledCircle intersect",t,{radius:p,point:c}),L.circle(t,p,c)},r}$(Cs,"filledCircle");var Ut=10,Kt=10;async function Rs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?l*2:l;(t.width||t.height)&&(t.height=t?.height??0,t.height<Ut&&(t.height=Ut),t.width=(t?.width??0)-r-r/2,t.width<Kt&&(t.width=Kt));let{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=(t?.width?t?.width:i.width)+(r??0),s=t?.height?t?.height:e+i.height,a=s,o=[{x:0,y:-s},{x:a,y:-s},{x:a/2,y:0}],{cssStyles:c}=t,y=k.svg(p),f=W(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=F(o),u=y.path(m,f),w=p.insert(()=>u,":first-child").attr("transform",`translate(${-s/2}, ${s/2})`).attr("class","outer-path");return c&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",c),g&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",g),t.width=e,t.height=s,X(t,w),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${-s/2+(t.padding??0)/2+(i.y-(i.top??0))})`),t.intersect=function(x){return z.info("Triangle intersect",t,o,x),L.polygon(t,o,x)},p}$(Rs,"flippedTriangle");function As(d,t,{dir:h,config:{state:g,themeVariables:l}}){let{nodeStyles:r}=T(t);t.label="";let p=d.insert("g").attr("class",_(t)).attr("id",t.domId??t.id),{cssStyles:i}=t,n=Math.max(70,t?.width??0),e=Math.max(10,t?.height??0);h==="LR"&&(n=Math.max(10,t?.width??0),e=Math.max(70,t?.height??0));let s=-1*n/2,a=-1*e/2,o=k.svg(p),c=W(t,{stroke:l.lineColor,fill:l.lineColor});t.look!=="handDrawn"&&(c.roughness=0,c.fillStyle="solid");let y=o.rectangle(s,a,n,e,c),f=p.insert(()=>y,":first-child");i&&t.look!=="handDrawn"&&f.selectAll("path").attr("style",i),r&&t.look!=="handDrawn"&&f.selectAll("path").attr("style",r),X(t,f);let m=g?.padding??0;return t.width&&t.height&&(t.width+=m/2||0,t.height+=m/2||0),t.intersect=function(u){return L.rect(t,u)},p}$(As,"forkJoin");async function Hs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=15,r=10,p=t.look==="neo"?16:t.padding??0,i=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.height=(t?.height??0)-i*2,t.height<r&&(t.height=r),t.width=(t?.width??0)-p*2,t.width<l&&(t.width=l));let{shapeSvg:n,bbox:e}=await O(d,t,_(t)),s=(t?.width?t?.width:Math.max(l,e.width))+p*2,a=(t?.height?t?.height:Math.max(r,e.height))+i*2,o=a/2,{cssStyles:c}=t,y=k.svg(n),f=W(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=[{x:-s/2,y:-a/2},{x:s/2-o,y:-a/2},...Ct(-s/2+o,0,o,50,90,270),{x:s/2-o,y:a/2},{x:-s/2,y:a/2}],u=F(m),w=y.path(u,f),x=n.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",c),g&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",g),X(t,x),t.intersect=function(S){return z.info("Pill intersect",t,{radius:o,point:S}),L.polygon(t,m,S)},n}$(Hs,"halfRoundedRectangle");var Ga=$((d,t,h,g,l)=>[`M${d+l},${t}`,`L${d+h-l},${t}`,`L${d+h},${t-g/2}`,`L${d+h-l},${t-g}`,`L${d+l},${t-g}`,`L${d},${t-g/2}`,"Z"].join(" "),"createHexagonPathD");async function Ls(d,t){let{labelStyles:h,nodeStyles:g}=T(t),l=t.look==="neo"?3.5:4;t.labelStyle=h;let r=t.padding??0,p=70,i=32,n=t.look==="neo"?p:r,e=t.look==="neo"?i:r;if(t.width||t.height){let x=(t.height??0)/l;t.width=(t?.width??0)-2*x-e,t.height=(t.height??0)-n}let{shapeSvg:s,bbox:a}=await O(d,t,_(t)),o=(t?.height?t?.height:a.height)+n,c=o/l,y=(t?.width?t?.width:a.width)+2*c+e,f=[{x:c,y:0},{x:y-c,y:0},{x:y,y:-o/2},{x:y-c,y:-o},{x:c,y:-o},{x:0,y:-o/2}],m,{cssStyles:u}=t;if(t.look==="handDrawn"){let w=k.svg(s),x=W(t,{}),S=Ga(0,0,y,o,c),b=w.path(S,x);m=s.insert(()=>b,":first-child").attr("transform",`translate(${-y/2}, ${o/2})`),u&&m.attr("style",u)}else m=ft(s,y,o,f);return g&&m.attr("style",g),t.width=y,t.height=o,X(t,m),t.intersect=function(w){return L.polygon(t,f,w)},s}$(Ls,"hexagon");async function Is(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.label="",t.labelStyle=h;let{shapeSvg:l}=await O(d,t,_(t)),r=Math.max(30,t?.width??0),p=Math.max(30,t?.height??0),{cssStyles:i}=t,n=k.svg(l),e=W(t,{});t.look!=="handDrawn"&&(e.roughness=0,e.fillStyle="solid");let s=[{x:0,y:0},{x:r,y:0},{x:0,y:p},{x:r,y:p}],a=F(s),o=n.path(a,e),c=l.insert(()=>o,":first-child");return c.attr("class","basic label-container outer-path"),i&&t.look!=="handDrawn"&&c.selectChildren("path").attr("style",i),g&&t.look!=="handDrawn"&&c.selectChildren("path").attr("style",g),c.attr("transform",`translate(${-r/2}, ${-p/2})`),X(t,c),t.intersect=function(y){return z.info("Pill intersect",t,{points:s}),L.polygon(t,s,y)},l}$(Is,"hourglass");async function Ws(d,t,{config:{themeVariables:h,flowchart:g}}){let{labelStyles:l}=T(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=g?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,label:a}=await O(d,t,"icon-shape default"),o=t.pos==="t",c=i,y=i,{nodeBorder:f}=h,{stylesMap:m}=Pt(t),u=-y/2,w=-c/2,x=t.label?8:0,S=k.svg(e),b=W(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(b.roughness=0,b.fillStyle="solid");let v=S.rectangle(u,w,y,c,b),P=Math.max(y,s.width),D=c+s.height+x,B=S.rectangle(-P/2,-D/2,P,D,{...b,fill:"transparent",stroke:"none"}),M=e.insert(()=>v,":first-child"),C=e.insert(()=>B);if(t.icon){let E=e.append("g");E.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let N=E.node().getBBox(),R=N.width,A=N.height,H=N.x,I=N.y;E.attr("transform",`translate(${-R/2-H},${o?s.height/2+x/2-A/2-I:-s.height/2-x/2-A/2-I})`),E.attr("style",`color: ${m.get("stroke")??f};`)}return a.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${o?-D/2:D/2-s.height})`),M.attr("transform",`translate(0,${o?s.height/2+x/2:-s.height/2-x/2})`),X(t,C),t.intersect=function(E){if(z.info("iconSquare intersect",t,E),!t.label)return L.rect(t,E);let N=t.x??0,R=t.y??0,A=t.height??0,H=[];return o?H=[{x:N-s.width/2,y:R-A/2},{x:N+s.width/2,y:R-A/2},{x:N+s.width/2,y:R-A/2+s.height+x},{x:N+y/2,y:R-A/2+s.height+x},{x:N+y/2,y:R+A/2},{x:N-y/2,y:R+A/2},{x:N-y/2,y:R-A/2+s.height+x},{x:N-s.width/2,y:R-A/2+s.height+x}]:H=[{x:N-y/2,y:R-A/2},{x:N+y/2,y:R-A/2},{x:N+y/2,y:R-A/2+c},{x:N+s.width/2,y:R-A/2+c},{x:N+s.width/2/2,y:R+A/2},{x:N-s.width/2,y:R+A/2},{x:N-s.width/2,y:R-A/2+c},{x:N-y/2,y:R-A/2+c}],L.polygon(t,H,E)},e}$(Ws,"icon");async function Ts(d,t,{config:{themeVariables:h,flowchart:g}}){let{labelStyles:l}=T(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=g?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,label:a}=await O(d,t,"icon-shape default"),o=20,c=t.label?8:0,y=t.pos==="t",{nodeBorder:f,mainBkg:m}=h,{stylesMap:u}=Pt(t),w=k.svg(e),x=W(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let S=u.get("fill");x.stroke=S??m;let b=e.append("g");t.icon&&b.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let v=b.node().getBBox(),P=v.width,D=v.height,B=v.x,M=v.y,C=Math.max(P,D)*Math.SQRT2+o*2,E=w.circle(0,0,C,x),N=Math.max(C,s.width),R=C+s.height+c,A=w.rectangle(-N/2,-R/2,N,R,{...x,fill:"transparent",stroke:"none"}),H=e.insert(()=>E,":first-child"),I=e.insert(()=>A);return b.attr("transform",`translate(${-P/2-B},${y?s.height/2+c/2-D/2-M:-s.height/2-c/2-D/2-M})`),b.attr("style",`color: ${u.get("stroke")??f};`),a.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${y?-R/2:R/2-s.height})`),H.attr("transform",`translate(0,${y?s.height/2+c/2:-s.height/2-c/2})`),X(t,I),t.intersect=function(Y){return z.info("iconSquare intersect",t,Y),L.rect(t,Y)},e}$(Ts,"iconCircle");async function Es(d,t,{config:{themeVariables:h,flowchart:g}}){let{labelStyles:l}=T(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=g?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,halfPadding:a,label:o}=await O(d,t,"icon-shape default"),c=t.pos==="t",y=i+a*2,f=i+a*2,{nodeBorder:m,mainBkg:u}=h,{stylesMap:w}=Pt(t),x=-f/2,S=-y/2,b=t.label?8:0,v=k.svg(e),P=W(t,{});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let D=w.get("fill");P.stroke=D??u;let B=v.path(dt(x,S,f,y,5),P),M=Math.max(f,s.width),C=y+s.height+b,E=v.rectangle(-M/2,-C/2,M,C,{...P,fill:"transparent",stroke:"none"}),N=e.insert(()=>B,":first-child").attr("class","icon-shape2"),R=e.insert(()=>E);if(t.icon){let A=e.append("g");A.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let H=A.node().getBBox(),I=H.width,Y=H.height,G=H.x,q=H.y;A.attr("transform",`translate(${-I/2-G},${c?s.height/2+b/2-Y/2-q:-s.height/2-b/2-Y/2-q})`),A.attr("style",`color: ${w.get("stroke")??m};`)}return o.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${c?-C/2:C/2-s.height})`),N.attr("transform",`translate(0,${c?s.height/2+b/2:-s.height/2-b/2})`),X(t,R),t.intersect=function(A){if(z.info("iconSquare intersect",t,A),!t.label)return L.rect(t,A);let H=t.x??0,I=t.y??0,Y=t.height??0,G=[];return c?G=[{x:H-s.width/2,y:I-Y/2},{x:H+s.width/2,y:I-Y/2},{x:H+s.width/2,y:I-Y/2+s.height+b},{x:H+f/2,y:I-Y/2+s.height+b},{x:H+f/2,y:I+Y/2},{x:H-f/2,y:I+Y/2},{x:H-f/2,y:I-Y/2+s.height+b},{x:H-s.width/2,y:I-Y/2+s.height+b}]:G=[{x:H-f/2,y:I-Y/2},{x:H+f/2,y:I-Y/2},{x:H+f/2,y:I-Y/2+y},{x:H+s.width/2,y:I-Y/2+y},{x:H+s.width/2/2,y:I+Y/2},{x:H-s.width/2,y:I+Y/2},{x:H-s.width/2,y:I-Y/2+y},{x:H-f/2,y:I-Y/2+y}],L.polygon(t,G,A)},e}$(Es,"iconRounded");async function Xs(d,t,{config:{themeVariables:h,flowchart:g}}){let{labelStyles:l}=T(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=g?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,halfPadding:a,label:o}=await O(d,t,"icon-shape default"),c=t.pos==="t",y=i+a*2,f=i+a*2,{nodeBorder:m,mainBkg:u}=h,{stylesMap:w}=Pt(t),x=-f/2,S=-y/2,b=t.label?8:0,v=k.svg(e),P=W(t,{});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let D=w.get("fill");P.stroke=D??u;let B=v.path(dt(x,S,f,y,.1),P),M=Math.max(f,s.width),C=y+s.height+b,E=v.rectangle(-M/2,-C/2,M,C,{...P,fill:"transparent",stroke:"none"}),N=e.insert(()=>B,":first-child"),R=e.insert(()=>E);if(t.icon){let A=e.append("g");A.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let H=A.node().getBBox(),I=H.width,Y=H.height,G=H.x,q=H.y;A.attr("transform",`translate(${-I/2-G},${c?s.height/2+b/2-Y/2-q:-s.height/2-b/2-Y/2-q})`),A.attr("style",`color: ${w.get("stroke")??m};`)}return o.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${c?-C/2:C/2-s.height})`),N.attr("transform",`translate(0,${c?s.height/2+b/2:-s.height/2-b/2})`),X(t,R),t.intersect=function(A){if(z.info("iconSquare intersect",t,A),!t.label)return L.rect(t,A);let H=t.x??0,I=t.y??0,Y=t.height??0,G=[];return c?G=[{x:H-s.width/2,y:I-Y/2},{x:H+s.width/2,y:I-Y/2},{x:H+s.width/2,y:I-Y/2+s.height+b},{x:H+f/2,y:I-Y/2+s.height+b},{x:H+f/2,y:I+Y/2},{x:H-f/2,y:I+Y/2},{x:H-f/2,y:I-Y/2+s.height+b},{x:H-s.width/2,y:I-Y/2+s.height+b}]:G=[{x:H-f/2,y:I-Y/2},{x:H+f/2,y:I-Y/2},{x:H+f/2,y:I-Y/2+y},{x:H+s.width/2,y:I-Y/2+y},{x:H+s.width/2/2,y:I+Y/2},{x:H-s.width/2,y:I+Y/2},{x:H-s.width/2,y:I-Y/2+y},{x:H-f/2,y:I-Y/2+y}],L.polygon(t,G,A)},e}$(Xs,"iconSquare");async function Ys(d,t,{config:{flowchart:h}}){let g=new Image;g.src=t?.img??"",await g.decode();let l=Number(g.naturalWidth.toString().replace("px","")),r=Number(g.naturalHeight.toString().replace("px",""));t.imageAspectRatio=l/r;let{labelStyles:p}=T(t);t.labelStyle=p;let i=h?.wrappingWidth;t.defaultWidth=h?.wrappingWidth;let n=Math.max(t.label?i??0:0,t?.assetWidth??l),e=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:n,s=t.constraint==="on"?e/t.imageAspectRatio:t?.assetHeight??r;t.width=Math.max(e,i??0);let{shapeSvg:a,bbox:o,label:c}=await O(d,t,"image-shape default"),y=t.pos==="t",f=-e/2,m=-s/2,u=t.label?8:0,w=k.svg(a),x=W(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let S=w.rectangle(f,m,e,s,x),b=Math.max(e,o.width),v=s+o.height+u,P=w.rectangle(-b/2,-v/2,b,v,{...x,fill:"none",stroke:"none"}),D=a.insert(()=>S,":first-child"),B=a.insert(()=>P);if(t.img){let M=a.append("image");M.attr("href",t.img),M.attr("width",e),M.attr("height",s),M.attr("preserveAspectRatio","none"),M.attr("transform",`translate(${-e/2},${y?v/2-s:-v/2})`)}return c.attr("transform",`translate(${-o.width/2-(o.x-(o.left??0))},${y?-s/2-o.height/2-u/2:s/2-o.height/2+u/2})`),D.attr("transform",`translate(0,${y?o.height/2+u/2:-o.height/2-u/2})`),X(t,B),t.intersect=function(M){if(z.info("iconSquare intersect",t,M),!t.label)return L.rect(t,M);let C=t.x??0,E=t.y??0,N=t.height??0,R=[];return y?R=[{x:C-o.width/2,y:E-N/2},{x:C+o.width/2,y:E-N/2},{x:C+o.width/2,y:E-N/2+o.height+u},{x:C+e/2,y:E-N/2+o.height+u},{x:C+e/2,y:E+N/2},{x:C-e/2,y:E+N/2},{x:C-e/2,y:E-N/2+o.height+u},{x:C-o.width/2,y:E-N/2+o.height+u}]:R=[{x:C-e/2,y:E-N/2},{x:C+e/2,y:E-N/2},{x:C+e/2,y:E-N/2+s},{x:C+o.width/2,y:E-N/2+s},{x:C+o.width/2/2,y:E+N/2},{x:C-o.width/2,y:E+N/2},{x:C-o.width/2,y:E-N/2+s},{x:C-e/2,y:E-N/2+s}],L.polygon(t,R,M)},a}$(Ys,"imageSquare");async function _s(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=Math.max(n.width+(p??0)*2,t?.width??0),s=Math.max(n.height+(r??0)*2,t?.height??0),a=[{x:0,y:0},{x:e,y:0},{x:e+3*s/6,y:-s},{x:-3*s/6,y:-s}],o,{cssStyles:c}=t;if(t.look==="handDrawn"){let y=k.svg(i),f=W(t,{}),m=F(a),u=y.path(m,f);o=i.insert(()=>u,":first-child").attr("transform",`translate(${-e/2}, ${s/2})`),c&&o.attr("style",c)}else o=ft(i,e,s,a);return g&&o.attr("style",g),t.width=e,t.height=s,X(t,o),t.intersect=function(y){return L.polygon(t,a,y)},i}$(_s,"inv_trapezoid");async function Os(d,t){let{shapeSvg:h,bbox:g,label:l}=await O(d,t,"label"),r=h.insert("rect",":first-child");return r.attr("width",.1).attr("height",.1),h.attr("class","label edgeLabel"),l.attr("transform",`translate(${-(g.width/2)-(g.x-(g.left??0))}, ${-(g.height/2)-(g.y-(g.top??0))})`),X(t,r),t.intersect=function(n){return L.rect(t,n)},h}$(Os,"labelRect");async function js(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:0,y:0},{x:s+3*e/6,y:0},{x:s,y:-e},{x:-(3*e)/6,y:-e}],o,{cssStyles:c}=t;if(t.look==="handDrawn"){let y=k.svg(i),f=W(t,{}),m=F(a),u=y.path(m,f);o=i.insert(()=>u,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&o.attr("style",c)}else o=ft(i,s,e,a);return g&&o.attr("style",g),t.width=s,t.height=e,X(t,o),t.intersect=function(y){return L.polygon(t,a,y)},i}$(js,"lean_left");async function Gs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:-3*e/6,y:0},{x:s,y:0},{x:s+3*e/6,y:-e},{x:0,y:-e}],o,{cssStyles:c}=t;if(t.look==="handDrawn"){let y=k.svg(i),f=W(t,{}),m=F(a),u=y.path(m,f);o=i.insert(()=>u,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&o.attr("style",c)}else o=ft(i,s,e,a);return g&&o.attr("style",g),t.width=s,t.height=e,X(t,o),t.intersect=function(y){return L.polygon(t,a,y)},i}$(Gs,"lean_right");function Fs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.label="",t.labelStyle=h;let l=d.insert("g").attr("class",_(t)).attr("id",t.domId??t.id),{cssStyles:r}=t,p=Math.max(35,t?.width??0),i=Math.max(35,t?.height??0),n=7,e=[{x:p,y:0},{x:0,y:i+n/2},{x:p-2*n,y:i+n/2},{x:0,y:2*i},{x:p,y:i-n/2},{x:2*n,y:i-n/2}],s=k.svg(l),a=W(t,{});t.look!=="handDrawn"&&(a.roughness=0,a.fillStyle="solid");let o=F(e),c=s.path(o,a),y=l.insert(()=>c,":first-child");return y.attr("class","outer-path"),r&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",r),g&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",g),y.attr("transform",`translate(-${p/2},${-i})`),X(t,y),t.intersect=function(f){return z.info("lightningBolt intersect",t,f),L.polygon(t,e,f)},l}$(Fs,"lightningBolt");var Fa=$((d,t,h,g,l,r,p)=>[`M${d},${t+r}`,`a${l},${r} 0,0,0 ${h},0`,`a${l},${r} 0,0,0 ${-h},0`,`l0,${g}`,`a${l},${r} 0,0,0 ${h},0`,`l0,${-g}`,`M${d},${t+r+p}`,`a${l},${r} 0,0,0 ${h},0`].join(" "),"createCylinderPathD"),qa=$((d,t,h,g,l,r,p)=>[`M${d},${t+r}`,`M${d+h},${t+r}`,`a${l},${r} 0,0,0 ${-h},0`,`l0,${g}`,`a${l},${r} 0,0,0 ${h},0`,`l0,${-g}`,`M${d},${t+r+p}`,`a${l},${r} 0,0,0 ${h},0`].join(" "),"createOuterCylinderPathD"),za=$((d,t,h,g,l,r)=>[`M${d-h/2},${-g/2}`,`a${l},${r} 0,0,0 ${h},0`].join(" "),"createInnerCylinderPathD"),ts=10,ss=10;async function qs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?24:l;if(t.width||t.height){let u=t.width??0;t.width=(t.width??0)-r,t.width<ss&&(t.width=ss);let x=u/2/(2.5+u/50);t.height=(t.height??0)-p-x*3,t.height<ts&&(t.height=ts)}let{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=(t?.width?t?.width:n.width)+r*2,a=s/2,o=a/(2.5+s/50),c=(t?.height?t?.height:n.height)+o+p*2,y=c*.1,f,{cssStyles:m}=t;if(t.look==="handDrawn"){let u=k.svg(i),w=qa(0,0,s,c,a,o,y),x=za(0,o,s,c,a,o),S=W(t,{}),b=u.path(w,S),v=u.path(x,S);i.insert(()=>v,":first-child").attr("class","line"),f=i.insert(()=>b,":first-child"),f.attr("class","basic label-container"),m&&f.attr("style",m)}else{let u=Fa(0,0,s,c,a,o,y);f=i.insert("path",":first-child").attr("d",u).attr("class","basic label-container outer-path").attr("style",K(m)).attr("style",g)}return f.attr("label-offset-y",o),f.attr("transform",`translate(${-s/2}, ${-(c/2+o)})`),X(t,f),e.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)+o-(n.y-(n.top??0))})`),t.intersect=function(u){let w=L.rect(t,u),x=w.x-(t.x??0);if(a!=0&&(Math.abs(x)<(t.width??0)/2||Math.abs(x)==(t.width??0)/2&&Math.abs(w.y-(t.y??0))>(t.height??0)/2-o)){let S=o*o*(1-x*x/(a*a));S>0&&(S=Math.sqrt(S)),S=o-S,u.y-(t.y??0)>0&&(S=-S),w.y+=S}return w},i}$(qs,"linedCylinder");async function zs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;if(t.width||t.height){let S=t.width;t.width=(S??0)*10/11-r*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-p*2,t.height<10&&(t.height=10)}let{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=(t?.width?t?.width:n.width)+(r??0)*2,a=(t?.height?t?.height:n.height)+(p??0)*2,o=t.look==="neo"?a/4:a/8,c=a+o,{cssStyles:y}=t,f=k.svg(i),m=W(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let u=[{x:-s/2-s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:c/2},...ut(-s/2-s/2*.1,c/2,s/2+s/2*.1,c/2,o,.8),{x:s/2+s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:-c/2},{x:-s/2,y:-c/2},{x:-s/2,y:c/2*1.1},{x:-s/2,y:-c/2}],w=f.polygon(u.map(S=>[S.x,S.y]),m),x=i.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",y),g&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",g),x.attr("transform",`translate(0,${-o/2})`),e.attr("transform",`translate(${-s/2+(t.padding??0)+s/2*.1/2-(n.x-(n.left??0))},${-a/2+(t.padding??0)-o/2-(n.y-(n.top??0))})`),X(t,x),t.intersect=function(S){return L.polygon(t,u,S)},i}$(zs,"linedWaveEdgedRect");async function Vs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=t.look==="neo"?10:5;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-r*2-2*i,10),t.height=Math.max((t?.height??0)-p*2-2*i,10));let{shapeSvg:n,bbox:e,label:s}=await O(d,t,_(t)),a=(t?.width?t?.width:e.width)+r*2+2*i,o=(t?.height?t?.height:e.height)+p*2+2*i,c=a-2*i,y=o-2*i,f=-c/2,m=-y/2,{cssStyles:u}=t,w=k.svg(n),x=W(t,{}),S=[{x:f-i,y:m+i},{x:f-i,y:m+y+i},{x:f+c-i,y:m+y+i},{x:f+c-i,y:m+y},{x:f+c,y:m+y},{x:f+c,y:m+y-i},{x:f+c+i,y:m+y-i},{x:f+c+i,y:m-i},{x:f+i,y:m-i},{x:f+i,y:m},{x:f,y:m},{x:f,y:m+i}],b=[{x:f,y:m+i},{x:f+c-i,y:m+i},{x:f+c-i,y:m+y},{x:f+c,y:m+y},{x:f+c,y:m},{x:f,y:m}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let v=F(S),P=w.path(v,x),D=F(b),B=w.path(D,x);t.look!=="handDrawn"&&(P=_t(P),B=_t(B));let M=n.insert("g",":first-child");return M.insert(()=>P),M.insert(()=>B),M.attr("class","basic label-container outer-path"),u&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",u),g&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",g),s.attr("transform",`translate(${-(e.width/2)-i-(e.x-(e.left??0))}, ${-(e.height/2)+i-(e.y-(e.top??0))})`),X(t,M),t.intersect=function(C){return L.polygon(t,S,C)},n}$(Vs,"multiRect");async function Zs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,label:p}=await O(d,t,_(t)),i=t.padding??0,n=t.look==="neo"?16:i,e=t.look==="neo"?12:i,s=!0;(t.width||t.height)&&(s=!1,t.width=(t?.width??0)-n*2,t.height=(t?.height??0)-e*3);let a=Math.max(r.width,t?.width??0)+n*2,o=Math.max(r.height,t?.height??0)+e*3,c=t.look==="neo"?o/4:o/8,y=o+(s?c/2:-c/2),f=-a/2,m=-y/2,u=10,{cssStyles:w}=t,x=ut(f-u,m+y+u,f+a-u,m+y+u,c,.8),S=x?.[x.length-1],b=[{x:f-u,y:m+u},{x:f-u,y:m+y+u},...x,{x:f+a-u,y:S.y-u},{x:f+a,y:S.y-u},{x:f+a,y:S.y-2*u},{x:f+a+u,y:S.y-2*u},{x:f+a+u,y:m-u},{x:f+u,y:m-u},{x:f+u,y:m},{x:f,y:m},{x:f,y:m+u}],v=[{x:f,y:m+u},{x:f+a-u,y:m+u},{x:f+a-u,y:S.y-u},{x:f+a,y:S.y-u},{x:f+a,y:m},{x:f,y:m}],P=k.svg(l),D=W(t,{});t.look!=="handDrawn"&&(D.roughness=0,D.fillStyle="solid");let B=F(b),M=P.path(B,D),C=F(v),E=P.path(C,D),N=l.insert(()=>M,":first-child");return N.insert(()=>E),N.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&N.selectAll("path").attr("style",w),g&&t.look!=="handDrawn"&&N.selectAll("path").attr("style",g),N.attr("transform",`translate(0,${-c/2})`),p.attr("transform",`translate(${-(r.width/2)-u-(r.x-(r.left??0))}, ${-(r.height/2)+u-c/2-(r.y-(r.top??0))})`),X(t,N),t.intersect=function(R){return L.polygon(t,b,R)},l}$(Zs,"multiWaveEdgedRectangle");async function Js(d,t,{config:{themeVariables:h}}){let{labelStyles:g,nodeStyles:l}=T(t);t.labelStyle=g,t.useHtmlLabels||it(bt())||(t.centerLabel=!0);let{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=Math.max(i.width+(t.padding??0)*2,t?.width??0),s=Math.max(i.height+(t.padding??0)*2,t?.height??0),a=-e/2,o=-s/2,{cssStyles:c}=t,y=k.svg(p),f=W(t,{fill:h.noteBkgColor,stroke:h.noteBorderColor});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=y.rectangle(a,o,e,s,f),u=p.insert(()=>m,":first-child");return u.attr("class","basic label-container outer-path"),n.attr("class","label noteLabel"),c&&t.look!=="handDrawn"&&u.selectAll("path").attr("style",c),l&&t.look!=="handDrawn"&&u.selectAll("path").attr("style",l),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),X(t,u),t.intersect=function(w){return L.rect(t,w)},p}$(Js,"note");var Va=$((d,t,h)=>[`M${d+h/2},${t}`,`L${d+h},${t-h/2}`,`L${d+h/2},${t-h}`,`L${d},${t-h/2}`,"Z"].join(" "),"createDecisionBoxPathD");async function Qs(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r}=await O(d,t,_(t)),p=r.width+(t.padding??0),i=r.height+(t.padding??0),n=p+i,e=.5,s=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}],a,{cssStyles:o}=t;if(t.look==="handDrawn"){let c=k.svg(l),y=W(t,{}),f=Va(0,0,n),m=c.path(f,y);a=l.insert(()=>m,":first-child").attr("transform",`translate(${-n/2+e}, ${n/2})`),o&&a.attr("style",o)}else a=ft(l,n,n,s),a.attr("transform",`translate(${-n/2+e}, ${n/2})`);return g&&a.attr("style",g),X(t,a),t.calcIntersect=function(c,y){let f=c.width,m=[{x:f/2,y:0},{x:f,y:-f/2},{x:f/2,y:-f},{x:0,y:-f/2}],u=L.polygon(c,m,y);return{x:u.x-.5,y:u.y-.5}},t.intersect=function(c){return this.calcIntersect(t,c)},l}$(Qs,"question");async function Us(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?21:l??0,p=t.look==="neo"?12:l??0,{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=(t?.width??n.width)+(t.look==="neo"?r*2:r),a=(t?.height??n.height)+(t.look==="neo"?p*2:p),o=-s/2,c=-a/2,y=c/2,f=[{x:o+y,y:c},{x:o,y:0},{x:o+y,y:-c},{x:-o,y:-c},{x:-o,y:c}],{cssStyles:m}=t,u=k.svg(i),w=W(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=F(f),S=u.path(x,w),b=i.insert(()=>S,":first-child");return b.attr("class","basic label-container outer-path"),m&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",m),g&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",g),b.attr("transform",`translate(${-y/2},0)`),e.attr("transform",`translate(${-y/2-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),X(t,b),t.intersect=function(v){return L.polygon(t,f,v)},i}$(Us,"rect_left_inv_arrow");async function Ks(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l;t.cssClasses?l="node "+t.cssClasses:l="node default";let r=d.insert("g").attr("class",l).attr("id",t.domId||t.id),p=r.insert("g"),i=r.insert("g").attr("class","label").attr("style",g),n=t.description,e=t.label,s=await At(i,e,t.labelStyle,!0,!0),a={width:0,height:0};if(it(Q())){let D=s.children[0],B=Z(s);a=D.getBoundingClientRect(),B.attr("width",a.width),B.attr("height",a.height)}z.info("Text 2",n);let o=n||[],c=s.getBBox(),y=await At(i,Array.isArray(o)?o.join("<br/>"):o,t.labelStyle,!0,!0),f=y.children[0],m=Z(y);a=f.getBoundingClientRect(),m.attr("width",a.width),m.attr("height",a.height);let u=(t.padding||0)/2;Z(y).attr("transform","translate( "+(a.width>c.width?0:(c.width-a.width)/2)+", "+(c.height+u+5)+")"),Z(s).attr("transform","translate( "+(a.width<c.width?0:-(c.width-a.width)/2)+", 0)"),a=i.node().getBBox(),i.attr("transform","translate("+-a.width/2+", "+(-a.height/2-u+3)+")");let w=a.width+(t.padding||0),x=a.height+(t.padding||0),S=-a.width/2-u,b=-a.height/2-u,v,P;if(t.look==="handDrawn"){let D=k.svg(r),B=W(t,{}),M=D.path(dt(S,b,w,x,t.rx||0),B),C=D.line(-a.width/2-u,-a.height/2-u+c.height+u,a.width/2+u,-a.height/2-u+c.height+u,B);P=r.insert(()=>(z.debug("Rough node insert CXC",M),C),":first-child"),v=r.insert(()=>(z.debug("Rough node insert CXC",M),M),":first-child")}else v=p.insert("rect",":first-child"),P=p.insert("line"),v.attr("class","outer title-state").attr("style",g).attr("x",-a.width/2-u).attr("y",-a.height/2-u).attr("width",a.width+(t.padding||0)).attr("height",a.height+(t.padding||0)),P.attr("class","divider").attr("x1",-a.width/2-u).attr("x2",a.width/2+u).attr("y1",-a.height/2-u+c.height+u).attr("y2",-a.height/2-u+c.height+u);return X(t,v),t.intersect=function(D){return L.rect(t,D)},r}$(Ks,"rectWithTitle");async function ta(d,t,{config:{themeVariables:h}}){let g=h?.radius??5,l={rx:g,ry:g,classes:"",labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1};return vt(d,t,l)}$(ta,"roundedRect");var wt=8;async function sa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?12:t.padding??0,{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=(t?.width??i.width)+l*2+(t.look==="neo"?wt:wt*2),s=(t?.height??i.height)+r*2,a=e-wt,o=s,c=wt-e/2,y=-s/2,{cssStyles:f}=t,m=k.svg(p),u=W(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let w=[{x:c,y},{x:c+a,y},{x:c+a,y:y+o},{x:c-wt,y:y+o},{x:c-wt,y},{x:c,y},{x:c,y:y+o}],x=m.polygon(w.map(b=>[b.x,b.y]),u),S=p.insert(()=>x,":first-child");return S.attr("class","basic label-container outer-path").attr("style",K(f)),g&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",g),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",g),n.attr("transform",`translate(${wt/2-i.width/2-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),X(t,S),t.intersect=function(b){return L.rect(t,b)},p}$(sa,"shadedProcess");async function aa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-r*2,10),t.height=Math.max((t?.height??0)/1.5-p*2,10));let{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=(t?.width?t?.width:n.width)+r*2,a=((t?.height?t?.height:n.height)+p*2)*1.5,o=s,c=a/1.5,y=-o/2,f=-c/2,{cssStyles:m}=t,u=k.svg(i),w=W(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=[{x:y,y:f},{x:y,y:f+c},{x:y+o,y:f+c},{x:y+o,y:f-c/2}],S=F(x),b=u.path(S,w),v=i.insert(()=>b,":first-child");return v.attr("class","basic label-container outer-path"),m&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",m),g&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",g),v.attr("transform",`translate(0, ${c/4})`),e.attr("transform",`translate(${-o/2+(t.padding??0)-(n.x-(n.left??0))}, ${-c/4+(t.padding??0)-(n.y-(n.top??0))})`),X(t,v),t.intersect=function(P){return L.polygon(t,x,P)},i}$(aa,"slopedRect");async function ea(d,t){let h=t.padding??0,g=t.look==="neo"?16:h*2,l=t.look==="neo"?12:h,r={rx:0,ry:0,classes:"",labelPaddingX:t.labelPaddingX??g,labelPaddingY:l};return vt(d,t,r)}$(ea,"squareRect");async function ia(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?20:l,p=t.look==="neo"?12:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=n.height+(t.look==="neo"?p*2:p),s=n.width+e/4+(t.look==="neo"?r*2:r),a=e/2,{cssStyles:o}=t,c=k.svg(i),y=W(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let f=[{x:-s/2+a,y:-e/2},{x:s/2-a,y:-e/2},...Ct(-s/2+a,0,a,50,90,270),{x:s/2-a,y:e/2},...Ct(s/2-a,0,a,50,270,450)],m=F(f),u=c.path(m,y),w=i.insert(()=>u,":first-child");return w.attr("class","basic label-container outer-path"),o&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",o),g&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",g),X(t,w),t.intersect=function(x){return L.polygon(t,f,x)},i}$(ia,"stadium");async function ra(d,t){let h={rx:t.look==="neo"?3:5,ry:t.look==="neo"?3:5,classes:"flowchart-node"};return vt(d,t,h)}$(ra,"state");function la(d,t,{config:{themeVariables:h}}){let{labelStyles:g,nodeStyles:l}=T(t);t.labelStyle=g;let{cssStyles:r}=t,{lineColor:p,stateBorder:i,nodeBorder:n,nodeShadow:e}=h;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let s=d.insert("g").attr("class","node default").attr("id",t.domId??t.id),a=k.svg(s),o=W(t,{});t.look!=="handDrawn"&&(o.roughness=0,o.fillStyle="solid");let c=a.circle(0,0,t.width,{...o,stroke:p,strokeWidth:2}),y=i??n,f=(t.width??0)*5/14,m=a.circle(0,0,f,{...o,fill:y,stroke:y,strokeWidth:2,fillStyle:"solid"}),u=s.insert(()=>c,":first-child");if(u.insert(()=>m),t.look!=="handDrawn"&&u.attr("class","outer-path"),r&&u.selectAll("path").attr("style",r),l&&u.selectAll("path").attr("style",l),t.width<25&&e&&t.look!=="handDrawn"){let w=d.node()?.ownerSVGElement?.id??"",x=w?`${w}-drop-shadow-small`:"drop-shadow-small";u.attr("style",`filter:url(#${x})`)}return X(t,u),t.intersect=function(w){return L.circle(t,(t.width??0)/2,w)},s}$(la,"stateEnd");function na(d,t,{config:{themeVariables:h}}){let{lineColor:g,nodeShadow:l}=h;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let r=d.insert("g").attr("class","node default").attr("id",t.domId||t.id),p;if(t.look==="handDrawn"){let n=k.svg(r).circle(0,0,t.width,Vt(g));p=r.insert(()=>n),p.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14)}else p=r.insert("circle",":first-child"),p.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14);if(t.width<25&&l&&t.look!=="handDrawn"){let i=d.node()?.ownerSVGElement?.id??"",n=i?`${i}-drop-shadow-small`:"drop-shadow-small";p.attr("style",`filter:url(#${n})`)}return X(t,p),t.intersect=function(i){return L.circle(t,(t.width??7)/2,i)},r}$(na,"stateStart");var St=8;async function ca(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t?.padding??8,r=t.look==="neo"?28:l,p=t.look==="neo"?12:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.width??n.width)+2*St+r,s=(t?.height??n.height)+p,a=e-2*St,o=s,c=-e/2,y=-s/2,f=[{x:0,y:0},{x:a,y:0},{x:a,y:-o},{x:0,y:-o},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-o},{x:-8,y:-o},{x:-8,y:0}];if(t.look==="handDrawn"){let m=k.svg(i),u=W(t,{}),w=m.rectangle(c,y,a+16,o,u),x=m.line(c+St,y,c+St,y+o,u),S=m.line(c+St+a,y,c+St+a,y+o,u);i.insert(()=>x,":first-child"),i.insert(()=>S,":first-child");let b=i.insert(()=>w,":first-child"),{cssStyles:v}=t;b.attr("class","basic label-container").attr("style",K(v)),X(t,b)}else{let m=ft(i,a,o,f);g&&m.attr("style",g),X(t,m)}return t.intersect=function(m){return L.polygon(t,f,m)},i}$(ca,"subroutine");var Yt=.2;async function oa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;(t.width||t.height)&&(t.height=Math.max((t?.height??0)-p*2,10),t.width=Math.max((t?.width??0)-r*2-Yt*(t.height+p*2),10));let{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.height?t?.height:n.height)+p*2,s=Yt*e,a=Yt*e,c=(t?.width?t?.width:n.width)+r*2+s-s,y=e,f=-c/2,m=-y/2,{cssStyles:u}=t,w=k.svg(i),x=W(t,{}),S=[{x:f-s/2,y:m},{x:f+c+s/2,y:m},{x:f+c+s/2,y:m+y},{x:f-s/2,y:m+y}],b=[{x:f+c-s/2,y:m+y},{x:f+c+s/2,y:m+y},{x:f+c+s/2,y:m+y-a}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let v=F(S),P=w.path(v,x),D=F(b),B=w.path(D,{...x,fillStyle:"solid"}),M=i.insert(()=>B,":first-child");return M.insert(()=>P,":first-child"),M.attr("class","basic label-container outer-path"),u&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",u),g&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",g),X(t,M),t.intersect=function(C){return L.polygon(t,S,C)},i}$(oa,"taggedRect");async function ha(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,label:p}=await O(d,t,_(t)),i=Math.max(r.width+(t.padding??0)*2,t?.width??0),n=Math.max(r.height+(t.padding??0)*2,t?.height??0),e=n/8,s=.2*i,a=.2*n,o=n+e,{cssStyles:c}=t,y=k.svg(l),f=W(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=[{x:-i/2-i/2*.1,y:o/2},...ut(-i/2-i/2*.1,o/2,i/2+i/2*.1,o/2,e,.8),{x:i/2+i/2*.1,y:-o/2},{x:-i/2-i/2*.1,y:-o/2}],u=-i/2+i/2*.1,w=-o/2-a*.4,x=[{x:u+i-s,y:(w+n)*1.3},{x:u+i,y:w+n-a},{x:u+i,y:(w+n)*.9},...ut(u+i,(w+n)*1.25,u+i-s,(w+n)*1.3,-n*.02,.5)],S=F(m),b=y.path(S,f),v=F(x),P=y.path(v,{...f,fillStyle:"solid"}),D=l.insert(()=>P,":first-child");return D.insert(()=>b,":first-child"),D.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",c),g&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",g),D.attr("transform",`translate(0,${-e/2})`),p.attr("transform",`translate(${-i/2+(t.padding??0)-(r.x-(r.left??0))},${-n/2+(t.padding??0)-e/2-(r.y-(r.top??0))})`),X(t,D),t.intersect=function(B){return L.polygon(t,m,B)},l}$(ha,"taggedWaveEdgedRectangle");async function ga(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r}=await O(d,t,_(t)),p=Math.max(r.width+(t.padding??0),t?.width||0),i=Math.max(r.height+(t.padding??0),t?.height||0),n=-p/2,e=-i/2,s=l.insert("rect",":first-child");return s.attr("class","text").attr("style",g).attr("rx",0).attr("ry",0).attr("x",n).attr("y",e).attr("width",p).attr("height",i),X(t,s),t.intersect=function(a){return L.rect(t,a)},l}$(ga,"text");var Za=$((d,t,h,g,l,r)=>`M${d},${t}
3
+ a${l},${r} 0,0,1 0,${-g}
4
+ l${h},0
5
+ a${l},${r} 0,0,1 0,${g}
6
+ M${h},${-g}
7
+ a${l},${r} 0,0,0 0,${g}
8
+ l${-h},0`,"createCylinderPathD"),Ja=$((d,t,h,g,l,r)=>[`M${d},${t}`,`M${d+h},${t}`,`a${l},${r} 0,0,0 0,${-g}`,`l${-h},0`,`a${l},${r} 0,0,0 0,${g}`,`l${h},0`].join(" "),"createOuterCylinderPathD"),Qa=$((d,t,h,g,l,r)=>[`M${d+h/2},${-g/2}`,`a${l},${r} 0,0,0 0,${g}`].join(" "),"createInnerCylinderPathD"),as=5,es=10;async function fa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?12:l/2;if(t.width||t.height){let f=t.height??0;t.height=(t.height??0)-r,t.height<as&&(t.height=as);let u=f/2/(2.5+f/50);t.width=(t.width??0)-r-u*3,t.width<es&&(t.width=es)}let{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=(t.height?t.height:i.height)+r,s=e/2,a=s/(2.5+e/50),o=(t.width?t.width:i.width)+a+r,{cssStyles:c}=t,y;if(t.look==="handDrawn"){let f=k.svg(p),m=Ja(0,0,o,e,a,s),u=Qa(0,0,o,e,a,s),w=f.path(m,W(t,{})),x=f.path(u,W(t,{fill:"none"}));y=p.insert(()=>x,":first-child"),y=p.insert(()=>w,":first-child"),y.attr("class","basic label-container"),c&&y.attr("style",c)}else{let f=Za(0,0,o,e,a,s);y=p.insert("path",":first-child").attr("d",f).attr("class","basic label-container").attr("style",K(c)).attr("style",g),y.attr("class","basic label-container outer-path"),c&&y.selectAll("path").attr("style",c),g&&y.selectAll("path").attr("style",g)}return y.attr("label-offset-x",a),y.attr("transform",`translate(${-o/2}, ${e/2} )`),n.attr("transform",`translate(${-(i.width/2)-a-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),X(t,y),t.intersect=function(f){let m=L.rect(t,f),u=m.y-(t.y??0);if(s!=0&&(Math.abs(u)<(t.height??0)/2||Math.abs(u)==(t.height??0)/2&&Math.abs(m.x-(t.x??0))>(t.width??0)/2-a)){let w=a*a*(1-u*u/(s*s));w!=0&&(w=Math.sqrt(Math.abs(w))),w=a-w,f.x-(t.x??0)>0&&(w=-w),m.x+=w}return m},p}$(fa,"tiltedCylinder");async function ya(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=(t.look==="neo",l),p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:-3*e/6,y:0},{x:s+3*e/6,y:0},{x:s,y:-e},{x:0,y:-e}],o,{cssStyles:c}=t;if(t.look==="handDrawn"){let y=k.svg(i),f=W(t,{}),m=F(a),u=y.path(m,f);o=i.insert(()=>u,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&o.attr("style",c)}else o=ft(i,s,e,a);return g&&o.attr("style",g),t.width=s,t.height=e,X(t,o),t.intersect=function(y){return L.polygon(t,a,y)},i}$(ya,"trapezoid");async function pa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=15,n=5;(t.width||t.height)&&(t.height=(t.height??0)-p*2,t.height<n&&(t.height=n),t.width=(t.width??0)-r*2,t.width<i&&(t.width=i));let{shapeSvg:e,bbox:s}=await O(d,t,_(t)),a=(t?.width?t?.width:s.width)+r*2,o=(t?.height?t?.height:s.height)+p*2,{cssStyles:c}=t,y=k.svg(e),f=W(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=[{x:-a/2*.8,y:-o/2},{x:a/2*.8,y:-o/2},{x:a/2,y:-o/2*.6},{x:a/2,y:o/2},{x:-a/2,y:o/2},{x:-a/2,y:-o/2*.6}],u=F(m),w=y.path(u,f),x=e.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",c),g&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",g),X(t,x),t.intersect=function(S){return L.polygon(t,m,S)},e}$(pa,"trapezoidalPentagon");var is=10,rs=10;async function ua(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?l*2:l;(t.width||t.height)&&(t.width=((t?.width??0)-r)/2,t.width<rs&&(t.width=rs),t.height=t?.height??0,t.height<is&&(t.height=is));let{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=pt(Q().flowchart?.htmlLabels),s=(t?.width?t?.width:i.width)+r,a=t?.height?t?.height:s+i.height,o=a,c=[{x:0,y:0},{x:o,y:0},{x:o/2,y:-a}],{cssStyles:y}=t,f=k.svg(p),m=W(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let u=F(c),w=f.path(u,m),x=p.insert(()=>w,":first-child").attr("transform",`translate(${-a/2}, ${a/2})`).attr("class","outer-path");return y&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",y),g&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",g),t.width=s,t.height=a,X(t,x),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${a/2-(i.height+(t.padding??0)/(e?2:1)-(i.y-(i.top??0)))})`),t.intersect=function(S){return z.info("Triangle intersect",t,c,S),L.polygon(t,c,S)},p}$(ua,"triangle");async function da(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=!0;(t.width||t.height)&&(i=!1,t.width=(t?.width??0)-r*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-p*2,t.height<10&&(t.height=10));let{shapeSvg:n,bbox:e,label:s}=await O(d,t,_(t)),a=(t?.width?t?.width:e.width)+(r??0)*2,o=(t?.height?t?.height:e.height)+(p??0)*2,c=t.look==="neo"?o/4:o/8,y=o+(i?c:-c),{cssStyles:f}=t,u=14-a,w=u>0?u/2:0,x=k.svg(n),S=W(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let b=[{x:-a/2-w,y:y/2},...ut(-a/2-w,y/2,a/2+w,y/2,c,.8),{x:a/2+w,y:-y/2},{x:-a/2-w,y:-y/2}],v=F(b),P=x.path(v,S),D=n.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),f&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",f),g&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",g),D.attr("transform",`translate(0,${-c/2})`),s.attr("transform",`translate(${-a/2+(t.padding??0)-(e.x-(e.left??0))},${-o/2+(t.padding??0)-c-(e.y-(e.top??0))})`),X(t,D),t.intersect=function(B){return L.polygon(t,b,B)},n}$(da,"waveEdgedRectangle");async function ma(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?20:l;if(t.width||t.height){t.width=t?.width??0,t.width<20&&(t.width=20),t.height=t?.height??0,t.height<10&&(t.height=10);let S=Math.min(t.height*.2,t.height/4);t.height=Math.ceil(t.height-p-S*(20/9)),t.width=t.width-r*2}let{shapeSvg:i,bbox:n}=await O(d,t,_(t)),e=(t?.width?t?.width:n.width)+r*2,s=(t?.height?t?.height:n.height)+p,a=s/8,o=s+a*2,{cssStyles:c}=t,y=k.svg(i),f=W(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let m=[{x:-e/2,y:o/2},...ut(-e/2,o/2,e/2,o/2,a,1),{x:e/2,y:-o/2},...ut(e/2,-o/2,-e/2,-o/2,a,-1)],u=F(m),w=y.path(u,f),x=i.insert(()=>w,":first-child");return x.attr("class","basic label-container"),c&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",c),g&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",g),X(t,x),t.intersect=function(S){return L.polygon(t,m,S)},i}$(ma,"waveRectangle");var J=10;async function wa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-l*2-J,10),t.height=Math.max((t?.height??0)-r*2-J,10));let{shapeSvg:p,bbox:i,label:n}=await O(d,t,_(t)),e=(t?.width?t?.width:i.width)+l*2+J,s=(t?.height?t?.height:i.height)+r*2+J,a=e-J,o=s-J,c=-a/2,y=-o/2,{cssStyles:f}=t,m=k.svg(p),u=W(t,{}),w=[{x:c-J,y:y-J},{x:c-J,y:y+o},{x:c+a,y:y+o},{x:c+a,y:y-J}],x=`M${c-J},${y-J} L${c+a},${y-J} L${c+a},${y+o} L${c-J},${y+o} L${c-J},${y-J}
9
+ M${c-J},${y} L${c+a},${y}
10
+ M${c},${y-J} L${c},${y+o}`;t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let S=m.path(x,u),b=p.insert(()=>S,":first-child");return b.attr("transform",`translate(${J/2}, ${J/2})`),b.attr("class","basic label-container outer-path"),f&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",f),g&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",g),n.attr("transform",`translate(${-(i.width/2)+J/2-(i.x-(i.left??0))}, ${-(i.height/2)+J/2-(i.y-(i.top??0))})`),X(t,b),t.intersect=function(v){return L.polygon(t,w,v)},p}$(wa,"windowPane");var ls=new Set(["redux-color","redux-dark-color"]),Ua=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);async function Ft(d,t){let h=t;h.alias&&(t.label=h.alias);let{theme:g,themeVariables:l}=bt(),{rowEven:r,rowOdd:p,nodeBorder:i,borderColorArray:n}=l;if(t.look==="handDrawn"){let{themeVariables:j}=bt(),{background:V}=j,U={...t,id:t.id+"-background",domId:(t.domId||t.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${V}`]};await Ft(d,U)}let e=bt();t.useHtmlLabels=e.htmlLabels;let s=e.er?.diagramPadding??10,a=e.er?.entityPadding??6,{cssStyles:o}=t,{labelStyles:c,nodeStyles:y}=T(t);if(h.attributes.length===0&&t.label){let j={rx:0,ry:0,labelPaddingX:s,labelPaddingY:s*1.5,classes:""};Dt(t.label,e)+j.labelPaddingX*2<e.er.minEntityWidth&&(t.width=e.er.minEntityWidth);let V=await vt(d,t,j);if(g!=null&&ls.has(g)){let U=h.colorIndex??0;V.attr("data-color-id",`color-${U%n.length}`)}if(!pt(e.htmlLabels)){let U=V.select("text"),at=U.node()?.getBBox();U.attr("transform",`translate(${-at.width/2}, 0)`)}return V}e.htmlLabels||(s*=1.25,a*=1.25);let f=_(t);f||(f="node default");let m=d.insert("g").attr("class",f).attr("id",t.domId||t.id),u=await $t(m,t.label??"",e,0,0,["name"],c);u.height+=a;let w=0,x=[],S=[],b=0,v=0,P=0,D=0,B=!0,M=!0;for(let j of h.attributes){let V=await $t(m,j.type,e,0,w,["attribute-type"],c);b=Math.max(b,V.width+s);let U=await $t(m,j.name,e,0,w,["attribute-name"],c);v=Math.max(v,U.width+s);let at=await $t(m,j.keys.join(),e,0,w,["attribute-keys"],c);P=Math.max(P,at.width+s);let mt=await $t(m,j.comment,e,0,w,["attribute-comment"],c);D=Math.max(D,mt.width+s);let yt=Math.max(V.height,U.height,at.height,mt.height)+a;S.push({yOffset:w,rowHeight:yt}),w+=yt}let C=4;P<=s&&(B=!1,P=0,C--),D<=s&&(M=!1,D=0,C--);let E=m.node().getBBox();if(u.width+s*2-(b+v+P+D)>0){let j=u.width+s*2-(b+v+P+D);b+=j/C,v+=j/C,P>0&&(P+=j/C),D>0&&(D+=j/C)}let N=b+v+P+D,R=k.svg(m),A=W(t,{});t.look!=="handDrawn"&&(A.roughness=0,A.fillStyle="solid");let H=0;S.length>0&&(H=S.reduce((j,V)=>j+(V?.rowHeight??0),0));let I=Math.max(E.width+s*2,t?.width||0,N),Y=Math.max((H??0)+u.height,t?.height||0),G=-I/2,q=-Y/2;if(m.selectAll("g:not(:first-child)").each((j,V,U)=>{let at=Z(U[V]),mt=at.attr("transform"),yt=0,qt=0;if(mt){let Lt=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(mt);Lt&&(yt=parseFloat(Lt[1]),qt=parseFloat(Lt[2]),at.attr("class").includes("attribute-name")?yt+=b:at.attr("class").includes("attribute-keys")?yt+=b+v:at.attr("class").includes("attribute-comment")&&(yt+=b+v+P))}at.attr("transform",`translate(${G+s/2+yt}, ${qt+q+u.height+a/2})`)}),m.select(".name").attr("transform","translate("+-u.width/2+", "+(q+a/2)+")"),g!=null&&ls.has(g)){let j=h.colorIndex??0;m.attr("data-color-id",`color-${j%n.length}`)}let ct=R.rectangle(G,q,I,Y,A),rt=m.insert(()=>ct,":first-child").attr("class","outer-path").attr("style",o.join(""));x.push(0);for(let[j,V]of S.entries()){let at=(j+1)%2===0&&V.yOffset!==0,mt=R.rectangle(G,u.height+q+V?.yOffset,I,V?.rowHeight,{...A,fill:at?r:p,stroke:i});m.insert(()=>mt,"g.label").attr("style",o.join("")).attr("class",`row-rect-${at?"even":"odd"}`)}let et=1e-4,st=kt(G,u.height+q,I+G,u.height+q,et),ot=R.polygon(st.map(j=>[j.x,j.y]),A);if(m.insert(()=>ot).attr("class","divider"),st=kt(b+G,u.height+q,b+G,Y+q,et),ot=R.polygon(st.map(j=>[j.x,j.y]),A),m.insert(()=>ot).attr("class","divider"),B){let j=b+v+G;st=kt(j,u.height+q,j,Y+q,et),ot=R.polygon(st.map(V=>[V.x,V.y]),A),m.insert(()=>ot).attr("class","divider")}if(M){let j=b+v+P+G;st=kt(j,u.height+q,j,Y+q,et),ot=R.polygon(st.map(V=>[V.x,V.y]),A),m.insert(()=>ot).attr("class","divider")}for(let j of x){let V=u.height+q+j;st=kt(G,V,I+G,V,et),ot=R.polygon(st.map(U=>[U.x,U.y]),A),m.insert(()=>ot).attr("class","divider")}if(X(t,rt),y&&t.look!=="handDrawn")if(g!=null&&Ua.has(g))m.selectAll("path").attr("style",y);else{let V=y.split(";")?.filter(U=>U.includes("stroke"))?.map(U=>`${U}`).join("; ");m.selectAll("path").attr("style",V??""),m.selectAll(".row-rect-even path").attr("style",y)}return t.intersect=function(j){return L.rect(t,j)},m}$(Ft,"erBox");async function $t(d,t,h,g=0,l=0,r=[],p=""){let i=d.insert("g").attr("class",`label ${r.join(" ")}`).attr("transform",`translate(${g}, ${l})`).attr("style",p);t!==Wt(t)&&(t=Wt(t),t=t.replaceAll("<","&lt;").replaceAll(">","&gt;"));let n=i.node().appendChild(await lt(i,t,{width:Dt(t,h)+100,style:p,useHtmlLabels:h.htmlLabels},h));if(t.includes("&lt;")||t.includes("&gt;")){let s=n.children[0];for(s.textContent=s.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">");s.childNodes[0];)s=s.childNodes[0],s.textContent=s.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">")}let e=n.getBBox();if(pt(h.htmlLabels)){let s=n.children[0];s.style.textAlign="start";let a=Z(n);e=s.getBoundingClientRect(),a.attr("width",e.width),a.attr("height",e.height)}return e}$($t,"addText");function kt(d,t,h,g,l){return d===h?[{x:d-l/2,y:t},{x:d+l/2,y:t},{x:h+l/2,y:g},{x:h-l/2,y:g}]:[{x:d,y:t-l/2},{x:d,y:t+l/2},{x:h,y:g+l/2},{x:h,y:g-l/2}]}$(kt,"lineToPolygon");async function xa(d,t,h,g,l=h.class.padding??12){let r=g?0:3,p=d.insert("g").attr("class",_(t)).attr("id",t.domId||t.id),i=null,n=null,e=null,s=null,a=0,o=0,c=0;if(i=p.insert("g").attr("class","annotation-group text"),t.annotations.length>0){let w=t.annotations[0];await Nt(i,{text:`\xAB${w}\xBB`},0),a=i.node().getBBox().height}n=p.insert("g").attr("class","label-group text"),await Nt(n,t,0,["font-weight: bolder"]);let y=n.node().getBBox();o=y.height,e=p.insert("g").attr("class","members-group text");let f=0;for(let w of t.members){let x=await Nt(e,w,f,[w.parseClassifier()]);f+=x+r}c=e.node().getBBox().height,c<=0&&(c=l/2),s=p.insert("g").attr("class","methods-group text");let m=0;for(let w of t.methods){let x=await Nt(s,w,m,[w.parseClassifier()]);m+=x+r}let u=p.node().getBBox();if(i!==null){let w=i.node().getBBox();i.attr("transform",`translate(${-w.width/2})`)}return n.attr("transform",`translate(${-y.width/2}, ${a})`),u=p.node().getBBox(),e.attr("transform",`translate(0, ${a+o+l*2})`),u=p.node().getBBox(),s.attr("transform",`translate(0, ${a+o+(c?c+l*4:l*2)})`),u=p.node().getBBox(),{shapeSvg:p,bbox:u}}$(xa,"textHelper");async function Nt(d,t,h,g=[]){let l=d.insert("g").attr("class","label").attr("style",g.join("; ")),r=bt(),p="useHtmlLabels"in t?t.useHtmlLabels:pt(r.htmlLabels)??!0,i="";"text"in t?i=t.text:i=t.label,!p&&i.startsWith("\\")&&(i=i.substring(1)),zt(i)&&(p=!0);let n=await lt(l,Tt(Bt(i)),{width:Dt(i,r)+50,classes:"markdown-node-label",useHtmlLabels:p},r),e,s=1;if(p){let a=n.children[0],o=Z(n);s=a.innerHTML.split("<br>").length,a.innerHTML.includes("</math>")&&(s+=a.innerHTML.split("<mrow>").length-1);let c=a.getElementsByTagName("img");if(c){let y=i.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...c].map(f=>new Promise(m=>{function u(){if(f.style.display="flex",f.style.flexDirection="column",y){let w=r.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,S=parseInt(w,10)*5+"px";f.style.minWidth=S,f.style.maxWidth=S}else f.style.width="100%";m(f)}$(u,"setupImage"),setTimeout(()=>{f.complete&&u()}),f.addEventListener("error",u),f.addEventListener("load",u)})))}e=a.getBoundingClientRect(),o.attr("width",e.width),o.attr("height",e.height)}else{g.includes("font-weight: bolder")&&Z(n).selectAll("tspan").attr("font-weight",""),s=n.children.length;let a=n.children[0];(n.textContent===""||n.textContent.includes("&gt"))&&(a.textContent=i[0]+i.substring(1).replaceAll("&gt;",">").replaceAll("&lt;","<").trim(),i[1]===" "&&(a.textContent=a.textContent[0]+" "+a.textContent.substring(1))),a.textContent==="undefined"&&(a.textContent=""),e=n.getBBox()}return l.attr("transform","translate(0,"+(-e.height/(2*s)+h)+")"),e.height}$(Nt,"addText");async function ba(d,t){let h=Q(),{themeVariables:g}=h,{useGradient:l}=g,r=h.class.padding??12,p=r,i=t.useHtmlLabels??pt(h.htmlLabels)??!0,n=t;n.annotations=n.annotations??[],n.members=n.members??[],n.methods=n.methods??[];let{shapeSvg:e,bbox:s}=await xa(d,t,h,i,p),{labelStyles:a,nodeStyles:o}=T(t);t.labelStyle=a,t.cssStyles=n.styles||"";let c=n.styles?.join(";")||o||"";t.cssStyles||(t.cssStyles=c.replaceAll("!important","").split(";"));let y=n.members.length===0&&n.methods.length===0&&!h.class?.hideEmptyMembersBox,f=k.svg(e),m=W(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let u=Math.max(t.width??0,s.width),w=Math.max(t.height??0,s.height),x=(t.height??0)>s.height;n.members.length===0&&n.methods.length===0?w+=p:n.members.length>0&&n.methods.length===0&&(w+=p*2);let S=-u/2,b=-w/2,v=y?r*2:n.members.length===0&&n.methods.length===0?-r:0;x&&(v=r*2);let P=f.rectangle(S-r,b-r-(y?r:n.members.length===0&&n.methods.length===0?-r/2:0),u+2*r,w+2*r+v,m),D=e.insert(()=>P,":first-child");D.attr("class","basic label-container outer-path");let B=D.node().getBBox(),M=e.select(".annotation-group").node().getBBox().height-(y?r/2:0)||0,C=e.select(".label-group").node().getBBox().height-(y?r/2:0)||0,E=e.select(".members-group").node().getBBox().height-(y?r/2:0)||0,N=(M+C+b+r-(b-r-(y?r:n.members.length===0&&n.methods.length===0?-r/2:0)))/2;if(e.selectAll(".text").each((R,A,H)=>{let I=Z(H[A]),Y=I.attr("transform"),G=0;if(Y){let et=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(Y);et&&(G=parseFloat(et[2]))}let q=G+b+r-(y?r:n.members.length===0&&n.methods.length===0?-r/2:0);if(I.attr("class").includes("methods-group")){let rt=Math.max(E,p/2);x?q=Math.max(N,M+C+rt+b+p*2+r)+p*2:q=M+C+rt+b+p*4+r}n.members.length===0&&n.methods.length===0&&h.class?.hideEmptyMembersBox&&(n.annotations.length>0?q=G-p:q=G),i||(q-=4);let ct=S;(I.attr("class").includes("label-group")||I.attr("class").includes("annotation-group"))&&(ct=-I.node()?.getBBox().width/2||0,e.selectAll("text").each(function(rt,et,st){window.getComputedStyle(st[et]).textAnchor==="middle"&&(ct=0)})),I.attr("transform",`translate(${ct}, ${q})`)}),n.members.length>0||n.methods.length>0||y){let R=M+C+b+r,A=f.line(B.x,R,B.x+B.width,R+.001,m);e.insert(()=>A).attr("class",`divider${t.look==="neo"&&!l?" neo-line":""}`).attr("style",c)}if(y||n.members.length>0||n.methods.length>0){let R=M+C+E+b+p*2+r,A=f.line(B.x,x?Math.max(N,R):R,B.x+B.width,(x?Math.max(N,R):R)+.001,m);e.insert(()=>A).attr("class",`divider${t.look==="neo"&&!l?" neo-line":""}`).attr("style",c)}if(n.look!=="handDrawn"&&e.selectAll("path").attr("style",c),D.select(":nth-child(2)").attr("style",c),e.selectAll(".divider").select("path").attr("style",c),t.labelStyle?e.selectAll("span").attr("style",t.labelStyle):e.selectAll("span").attr("style",c),!i){let R=RegExp(/color\s*:\s*([^;]*)/),A=R.exec(c);if(A){let H=A[0].replace("color","fill");e.selectAll("tspan").attr("style",H)}else if(a){let H=R.exec(a);if(H){let I=H[0].replace("color","fill");e.selectAll("tspan").attr("style",I)}}}return X(t,D),t.intersect=function(R){return L.rect(t,R)},e}$(ba,"classBox");async function Sa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let l=t,r=t,p=20,i=20,n="verifyMethod"in t,e=_(t),{themeVariables:s}=Q(),{borderColorArray:a,requirementEdgeLabelBackground:o}=s,c=d.insert("g").attr("class",e).attr("id",t.domId??t.id),y;n?y=await nt(c,`&lt;&lt;${l.type}&gt;&gt;`,0,t.labelStyle):y=await nt(c,"&lt;&lt;Element&gt;&gt;",0,t.labelStyle);let f=y,m=await nt(c,l.name,f,t.labelStyle+"; font-weight: bold;");if(f+=m+i,n){let B=await nt(c,`${l.requirementId?`ID: ${l.requirementId}`:""}`,f,t.labelStyle);f+=B;let M=await nt(c,`${l.text?`Text: ${l.text}`:""}`,f,t.labelStyle);f+=M;let C=await nt(c,`${l.risk?`Risk: ${l.risk}`:""}`,f,t.labelStyle);f+=C,await nt(c,`${l.verifyMethod?`Verification: ${l.verifyMethod}`:""}`,f,t.labelStyle)}else{let B=await nt(c,`${r.type?`Type: ${r.type}`:""}`,f,t.labelStyle);f+=B,await nt(c,`${r.docRef?`Doc Ref: ${r.docRef}`:""}`,f,t.labelStyle)}let u=(c.node()?.getBBox().width??200)+p,w=(c.node()?.getBBox().height??200)+p,x=-u/2,S=-w/2,b=k.svg(c),v=W(t,{});t.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let P=b.rectangle(x,S,u,w,v),D=c.insert(()=>P,":first-child");if(D.attr("class","basic label-container outer-path").attr("style",g),a?.length){let B=t.colorIndex??0;c.attr("data-color-id",`color-${B%a.length}`)}if(c.selectAll(".label").each((B,M,C)=>{let E=Z(C[M]),N=E.attr("transform"),R=0,A=0;if(N){let G=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(N);G&&(R=parseFloat(G[1]),A=parseFloat(G[2]))}let H=A-w/2,I=x+p/2;(M===0||M===1)&&(I=R),E.attr("transform",`translate(${I}, ${H+p})`)}),f>y+m+i){let B=S+y+m+i,M;if(t.look==="neo"){let N=[[x,B],[x+u,B],[x+u,B+.001],[x,B+.001]];M=b.polygon(N,v)}else M=b.line(x,B,x+u,B,v);c.insert(()=>M).attr("class","divider")}return X(t,D),t.intersect=function(B){return L.rect(t,B)},g&&t.look!=="handDrawn"&&(o||a?.length)&&c.selectAll("path").attr("style",g),c}$(Sa,"requirementBox");async function nt(d,t,h,g=""){if(t==="")return 0;let l=d.insert("g").attr("class","label").attr("style",g),r=Q(),p=r.htmlLabels??!0,i=await lt(l,Tt(Bt(t)),{width:Dt(t,r)+50,classes:"markdown-node-label",useHtmlLabels:p,style:g},r),n;if(p){let e=i.children[0],s=Z(i);n=e.getBoundingClientRect(),s.attr("width",n.width),s.attr("height",n.height)}else{let e=i.children[0];for(let s of e.children)g&&s.setAttribute("style",g);n=i.getBBox(),n.height+=6}return l.attr("transform",`translate(${-n.width/2},${-n.height/2+h})`),n.height}$(nt,"addText");var Ka=$(d=>{switch(d){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");async function $a(d,t,{config:h}){let{labelStyles:g,nodeStyles:l}=T(t);t.labelStyle=g||"";let r=10,p=t.width;t.width=(t.width??200)-10;let{shapeSvg:i,bbox:n,label:e}=await O(d,t,_(t)),s=t.padding||10,a="",o;"ticket"in t&&t.ticket&&h?.kanban?.ticketBaseUrl&&(a=h?.kanban?.ticketBaseUrl.replace("#TICKET#",t.ticket),o=i.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",a).attr("target","_blank"));let c={useHtmlLabels:t.useHtmlLabels,labelStyle:t.labelStyle||"",width:t.width,img:t.img,padding:t.padding||8,centerLabel:!1},y,f;o?{label:y,bbox:f}=await Xt(o,"ticket"in t&&t.ticket||"",c):{label:y,bbox:f}=await Xt(i,"ticket"in t&&t.ticket||"",c);let{label:m,bbox:u}=await Xt(i,"assigned"in t&&t.assigned||"",c);t.width=p;let w=10,x=t?.width||0,S=Math.max(f.height,u.height)/2,b=Math.max(n.height+w*2,t?.height||0)+S,v=-x/2,P=-b/2;e.attr("transform","translate("+(s-x/2)+", "+(-S-n.height/2)+")"),y.attr("transform","translate("+(s-x/2)+", "+(-S+n.height/2)+")"),m.attr("transform","translate("+(s+x/2-u.width-2*r)+", "+(-S+n.height/2)+")");let D,{rx:B,ry:M}=t,{cssStyles:C}=t;if(t.look==="handDrawn"){let E=k.svg(i),N=W(t,{}),R=B||M?E.path(dt(v,P,x,b,B||0),N):E.rectangle(v,P,x,b,N);D=i.insert(()=>R,":first-child"),D.attr("class","basic label-container").attr("style",C||null)}else{D=i.insert("rect",":first-child"),D.attr("class","basic label-container __APA__").attr("style",l).attr("rx",B??5).attr("ry",M??5).attr("x",v).attr("y",P).attr("width",x).attr("height",b);let E="priority"in t&&t.priority;if(E){let N=i.append("line"),R=v+2,A=P+Math.floor((B??0)/2),H=P+b-Math.floor((B??0)/2);N.attr("x1",R).attr("y1",A).attr("x2",R).attr("y2",H).attr("stroke-width","4").attr("stroke",Ka(E))}}return X(t,D),t.height=b,t.intersect=function(E){return L.rect(t,E)},i}$($a,"kanbanItem");async function ka(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(d,t,_(t)),n=r.width+10*p,e=r.height+8*p,s=.15*n,{cssStyles:a}=t,o=r.width+20,c=r.height+20,y=Math.max(n,o),f=Math.max(e,c);i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`);let m,u=`M0 0
11
+ a${s},${s} 1 0,0 ${y*.25},${-1*f*.1}
12
+ a${s},${s} 1 0,0 ${y*.25},0
13
+ a${s},${s} 1 0,0 ${y*.25},0
14
+ a${s},${s} 1 0,0 ${y*.25},${f*.1}
15
+
16
+ a${s},${s} 1 0,0 ${y*.15},${f*.33}
17
+ a${s*.8},${s*.8} 1 0,0 0,${f*.34}
18
+ a${s},${s} 1 0,0 ${-1*y*.15},${f*.33}
19
+
20
+ a${s},${s} 1 0,0 ${-1*y*.25},${f*.15}
21
+ a${s},${s} 1 0,0 ${-1*y*.25},0
22
+ a${s},${s} 1 0,0 ${-1*y*.25},0
23
+ a${s},${s} 1 0,0 ${-1*y*.25},${-1*f*.15}
24
+
25
+ a${s},${s} 1 0,0 ${-1*y*.1},${-1*f*.33}
26
+ a${s*.8},${s*.8} 1 0,0 0,${-1*f*.34}
27
+ a${s},${s} 1 0,0 ${y*.1},${-1*f*.33}
28
+ H0 V0 Z`;if(t.look==="handDrawn"){let w=k.svg(l),x=W(t,{}),S=w.path(u,x);m=l.insert(()=>S,":first-child"),m.attr("class","basic label-container").attr("style",K(a))}else m=l.insert("path",":first-child").attr("class","basic label-container").attr("style",g).attr("d",u);return m.attr("transform",`translate(${-y/2}, ${-f/2})`),X(t,m),t.calcIntersect=function(w,x){return L.rect(w,x)},t.intersect=function(w){return z.info("Bang intersect",t,w),L.rect(t,w)},l}$(ka,"bang");async function va(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(d,t,_(t)),n=r.width+2*p,e=r.height+2*p,s=.15*n,a=.25*n,o=.35*n,c=.2*n,{cssStyles:y}=t,f,m=`M0 0
29
+ a${s},${s} 0 0,1 ${n*.25},${-1*n*.1}
30
+ a${o},${o} 1 0,1 ${n*.4},${-1*n*.1}
31
+ a${a},${a} 1 0,1 ${n*.35},${n*.2}
32
+
33
+ a${s},${s} 1 0,1 ${n*.15},${e*.35}
34
+ a${c},${c} 1 0,1 ${-1*n*.15},${e*.65}
35
+
36
+ a${a},${s} 1 0,1 ${-1*n*.25},${n*.15}
37
+ a${o},${o} 1 0,1 ${-1*n*.5},0
38
+ a${s},${s} 1 0,1 ${-1*n*.25},${-1*n*.15}
39
+
40
+ a${s},${s} 1 0,1 ${-1*n*.1},${-1*e*.35}
41
+ a${c},${c} 1 0,1 ${n*.1},${-1*e*.65}
42
+ H0 V0 Z`;if(t.look==="handDrawn"){let u=k.svg(l),w=W(t,{}),x=u.path(m,w);f=l.insert(()=>x,":first-child"),f.attr("class","basic label-container").attr("style",K(y))}else f=l.insert("path",":first-child").attr("class","basic label-container").attr("style",g).attr("d",m);return i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),f.attr("transform",`translate(${-n/2}, ${-e/2})`),X(t,f),t.calcIntersect=function(u,w){return L.rect(u,w)},t.intersect=function(u){return z.info("Cloud intersect",t,u),L.rect(t,u)},l}$(va,"cloud");async function Pa(d,t){let{labelStyles:h,nodeStyles:g}=T(t);t.labelStyle=h;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(d,t,_(t)),n=r.width+8*p,e=r.height+2*p,s=5,a=t.look==="neo"?`
43
+ M${-n/2} ${e/2-s}
44
+ v${-e+2*s}
45
+ q0,-${s} ${s},-${s}
46
+ h${n-2*s}
47
+ q${s},0 ${s},${s}
48
+ v${e-s}
49
+ H${-n/2}
50
+ Z
51
+ `:`
52
+ M${-n/2} ${e/2-s}
53
+ v${-e+2*s}
54
+ q0,-${s} ${s},-${s}
55
+ h${n-2*s}
56
+ q${s},0 ${s},${s}
57
+ v${e-2*s}
58
+ q0,${s} ${-s},${s}
59
+ h${-(n-2*s)}
60
+ q${-s},0 ${-s},${-s}
61
+ Z
62
+ `;if(!t.domId)throw new Error(`defaultMindmapNode: node "${t.id}" is missing a domId \u2014 was render.ts domId prefixing skipped?`);let o=l.append("path").attr("id",t.domId).attr("class","node-bkg node-"+t.type).attr("style",g).attr("d",a);return l.append("line").attr("class","node-line-").attr("x1",-n/2).attr("y1",e/2).attr("x2",n/2).attr("y2",e/2),i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),l.append(()=>i.node()),X(t,o),t.calcIntersect=function(c,y){return L.rect(c,y)},t.intersect=function(c){return L.rect(t,c)},l}$(Pa,"defaultMindmapNode");async function Da(d,t){let h={padding:t.padding??0};return Gt(d,t,h)}$(Da,"mindmapCircle");var te=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:ea},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:ta},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:ia},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:ca},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:Ds},{semanticName:"Data Store",name:"Data Store",shortName:"datastore",description:"Data flow diagram data store",aliases:["data-store"],handler:Bs},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:Gt},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:ka},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:va},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:Qs},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:Ls},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:Gs},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:js},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:ya},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:_s},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:Ns},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:ga},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:ws},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:sa},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:na},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:la},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:As},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:Is},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:$s},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:ks},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:vs},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:Fs},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:da},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:Hs},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:fa},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:qs},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:Ps},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:Ms},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:ua},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:wa},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:Cs},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:pa},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:Rs},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:aa},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:Zs},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:Vs},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:ms},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:Ss},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:ha},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:oa},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:ma},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:Us},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:zs}],se=$(()=>{let t=[...Object.entries({state:ra,choice:xs,note:Js,rectWithTitle:Ks,labelRect:Os,iconSquare:Xs,iconCircle:Ts,icon:Ws,iconRounded:Es,imageSquare:Ys,anchor:us,kanbanItem:$a,mindmapCircle:Da,defaultMindmapNode:Pa,classBox:ba,erBox:Ft,requirementBox:Sa}),...te.flatMap(h=>[h.shortName,..."aliases"in h?h.aliases:[],..."internalAliases"in h?h.internalAliases:[]].map(l=>[l,h.handler]))];return Object.fromEntries(t)},"generateShapeMap"),Ba=se();function ae(d){return d in Ba}$(ae,"isValidShape");var Ht=new Map;async function ee(d,t,h){let g,l;t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect");let r=t.shape?Ba[t.shape]:void 0;if(!r)throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let p;h.config.securityLevel==="sandbox"?p="_top":t.linkTarget&&(p=t.linkTarget||"_blank"),g=d.insert("svg:a").attr("xlink:href",t.link).attr("target",p??null),l=await r(g,t,h)}else l=await r(d,t,h),g=l;return g.attr("data-look",K(t.look)),t.tooltip&&l.attr("title",t.tooltip),Ht.set(t.id,g),t.haveCallback&&g.attr("class",g.attr("class")+" clickable"),g}$(ee,"insertNode");var Ci=$((d,t)=>{Ht.set(t.id,d)},"setNodeElem"),Ri=$(()=>{Ht.clear()},"clear"),Ai=$(d=>{let t=Ht.get(d.id);z.trace("Transforming node",d.diff,d,"translate("+(d.x-d.width/2-5)+", "+d.width/2+")");let h=8,g=d.diff||0;return d.clusterNode?t.attr("transform","translate("+(d.x+g-d.width/2)+", "+(d.y-d.height/2-h)+")"):t.attr("transform","translate("+d.x+", "+d.y+")"),g},"positionNode");export{O as a,X as b,At as c,we as d,xe as e,ae as f,ee as g,Ci as h,Ri as i,Ai as j};
@@ -0,0 +1,15 @@
1
+ import{a as e}from"./chunk-EIBFAW37.js";var l=e(()=>`
2
+ /* Font Awesome icon styling - consolidated */
3
+ .label-icon {
4
+ display: inline-block;
5
+ height: 1em;
6
+ overflow: visible;
7
+ vertical-align: -0.125em;
8
+ }
9
+
10
+ .node .label-icon path {
11
+ fill: currentColor;
12
+ stroke: revert;
13
+ stroke-width: revert;
14
+ }
15
+ `,"getIconStyles");export{l as a};
@@ -0,0 +1 @@
1
+ import{a as i}from"./chunk-EIBFAW37.js";function t(c,e){c.accDescr&&e.setAccDescription?.(c.accDescr),c.accTitle&&e.setAccTitle?.(c.accTitle),c.title&&e.setDiagramTitle?.(c.title)}i(t,"populateCommonDb");export{t as a};
@@ -0,0 +1 @@
1
+ import{a as e,b as o,c,d as t,e as n,g as i,m as u,x as d,y as l}from"./chunk-VYZZPKGK.js";var k=class extends l{static{e(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},m={parser:{TokenBuilder:e(()=>new k,"TokenBuilder"),ValueConverter:e(()=>new d,"ValueConverter")}};function v(s=n){let r=t(c(s),i),a=t(o({shared:r}),u,m);return r.ServiceRegistry.register(a),{shared:r,Packet:a}}e(v,"createPacketServices");export{m as a,v as b};