@aiquants/markdown 8.1.1 → 9.0.1

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 (137) hide show
  1. package/README.md +104 -4
  2. package/dist/{abnfDiagram-VRR7QNED-714qd8by.cjs → abnfDiagram-VRR7QNED-CfcidEeF.cjs} +1 -1
  3. package/dist/{abnfDiagram-VRR7QNED-ClsV3o7-.js → abnfDiagram-VRR7QNED-CqzHEoGP.js} +3 -3
  4. package/dist/{arc-Bs2N0CEE.cjs → arc-BD-XC8JG.cjs} +1 -1
  5. package/dist/arc-CIHnI5Tn.js +83 -0
  6. package/dist/{architectureDiagram-ZJ3FMSHR-SPtbaJq1.cjs → architectureDiagram-ZJ3FMSHR-CLgC4ySs.cjs} +1 -1
  7. package/dist/{architectureDiagram-ZJ3FMSHR-l2Kn8D2e.js → architectureDiagram-ZJ3FMSHR-CX5DaRgk.js} +2 -2
  8. package/dist/{blockDiagram-677ZJIJ3-C01MGcBZ.cjs → blockDiagram-677ZJIJ3-B45jR5Ef.cjs} +1 -1
  9. package/dist/{blockDiagram-677ZJIJ3-CbCSQo90.js → blockDiagram-677ZJIJ3-BVvPQ2BZ.js} +3 -3
  10. package/dist/{c4Diagram-LMCZKHZV-TuT3uTkj.cjs → c4Diagram-LMCZKHZV-CUgZ93IA.cjs} +1 -1
  11. package/dist/{c4Diagram-LMCZKHZV-CdXSplj6.js → c4Diagram-LMCZKHZV-CmpNmuYQ.js} +2 -2
  12. package/dist/{channel-DZlQOicJ.cjs → channel-CCNoIO-n.cjs} +1 -1
  13. package/dist/{channel-inzdTBsL.js → channel-CJnvKaiK.js} +1 -1
  14. package/dist/{chunk-2Q5K7J3B-D2t88W5_.cjs → chunk-2Q5K7J3B-CGvZIrla.cjs} +1 -1
  15. package/dist/{chunk-2Q5K7J3B-BlcbsuzR.js → chunk-2Q5K7J3B-DI5NSXs3.js} +1 -1
  16. package/dist/{chunk-32BRIVSS-DPtab14v.cjs → chunk-32BRIVSS-Buxmelj1.cjs} +1 -1
  17. package/dist/{chunk-32BRIVSS-8XP7uEWL.js → chunk-32BRIVSS-DBxZTCPU.js} +1 -1
  18. package/dist/{chunk-5VM5RSS4-D03FahtZ.js → chunk-5VM5RSS4-B3vhx_6_.js} +1 -1
  19. package/dist/{chunk-5VM5RSS4-BjciIcJB.cjs → chunk-5VM5RSS4-DJudqxeH.cjs} +1 -1
  20. package/dist/{chunk-EX3LRPZG-Cz4_aUcx.js → chunk-EX3LRPZG-3mU4tF-T.js} +21 -21
  21. package/dist/{chunk-EX3LRPZG-CwaWU3NG.cjs → chunk-EX3LRPZG-BYk-yeom.cjs} +1 -1
  22. package/dist/{chunk-JWPE2WC7-CZnRHc3B.js → chunk-JWPE2WC7-05_7DU1b.js} +1 -1
  23. package/dist/{chunk-JWPE2WC7-BhnZoEDO.cjs → chunk-JWPE2WC7-CF8PY84Z.cjs} +1 -1
  24. package/dist/{chunk-MOJQB5TN-Bln4G16L.cjs → chunk-MOJQB5TN-C1PxO_ZB.cjs} +1 -1
  25. package/dist/{chunk-MOJQB5TN-CAgrBpGK.js → chunk-MOJQB5TN-MX6h9dRz.js} +7 -7
  26. package/dist/{chunk-PUDLZKDR-Chc4If4v.js → chunk-PUDLZKDR-CEaKE3Nm.js} +6 -6
  27. package/dist/{chunk-PUDLZKDR-ZSUOxhwQ.cjs → chunk-PUDLZKDR-nwjWRhQa.cjs} +1 -1
  28. package/dist/{chunk-RYQCIY6F-CmqX9MNK.cjs → chunk-RYQCIY6F-0Xvnmozd.cjs} +1 -1
  29. package/dist/{chunk-RYQCIY6F-BWJMA-CG.js → chunk-RYQCIY6F-DCzkxbV-.js} +5 -5
  30. package/dist/{chunk-V7JOEXUC-DxTIfD2Z.js → chunk-V7JOEXUC-9kUlPSlw.js} +15 -15
  31. package/dist/{chunk-V7JOEXUC-B13vGPTt.cjs → chunk-V7JOEXUC-DJ6NOMBh.cjs} +1 -1
  32. package/dist/{chunk-VR4S4FIN-CbzSMdlG.js → chunk-VR4S4FIN-DTcdZAIy.js} +3 -3
  33. package/dist/{chunk-VR4S4FIN-C67CWetO.cjs → chunk-VR4S4FIN-DjgjZOol.cjs} +1 -1
  34. package/dist/{chunk-XXDRQBXY-D00l-azL.cjs → chunk-XXDRQBXY-BAN-bNyU.cjs} +1 -1
  35. package/dist/{chunk-XXDRQBXY-DF5XNYDF.js → chunk-XXDRQBXY-BSD7H18E.js} +1 -1
  36. package/dist/{classDiagram-v2-EOCWNBFH-BVXrsjAy.js → classDiagram-OUVF2IWQ-CAVtDASr.js} +2 -2
  37. package/dist/{classDiagram-OUVF2IWQ-kTYC0DeX.cjs → classDiagram-OUVF2IWQ-D9dkL55K.cjs} +1 -1
  38. package/dist/{classDiagram-OUVF2IWQ-BVXrsjAy.js → classDiagram-v2-EOCWNBFH-CAVtDASr.js} +2 -2
  39. package/dist/{classDiagram-v2-EOCWNBFH-kTYC0DeX.cjs → classDiagram-v2-EOCWNBFH-D9dkL55K.cjs} +1 -1
  40. package/dist/code-blocks.cjs +1 -0
  41. package/dist/code-blocks.d.ts +12 -0
  42. package/dist/code-blocks.js +36 -0
  43. package/dist/components/MarkdownRenderer.d.ts +6 -1
  44. package/dist/components/MarkdownViewer.d.ts +5 -1
  45. package/dist/components/SpreadsheetBlock.d.ts +24 -0
  46. package/dist/components/SpreadsheetToolbar.d.ts +21 -0
  47. package/dist/components/controlStyles.d.ts +3 -0
  48. package/dist/components/mdastNodes/CodeNode.d.ts +1 -0
  49. package/dist/components/spreadsheetClipboard.d.ts +16 -0
  50. package/dist/components/spreadsheetLabels.d.ts +33 -0
  51. package/dist/components/spreadsheetModel.d.ts +31 -0
  52. package/dist/components/viewerLabels.d.ts +6 -1
  53. package/dist/converter.wasm +0 -0
  54. package/dist/{cose-bilkent-JH36ORCC-CbeyXphF.cjs → cose-bilkent-JH36ORCC-KQT29htQ.cjs} +1 -1
  55. package/dist/{cose-bilkent-JH36ORCC-lZuyWql7.js → cose-bilkent-JH36ORCC-aJGIpkTB.js} +5 -5
  56. package/dist/{cynefinDiagram-TSTJHNR4-DKAvatlk.js → cynefinDiagram-TSTJHNR4-C3F_WdyT.js} +56 -56
  57. package/dist/{cynefinDiagram-TSTJHNR4-Cuqne60m.cjs → cynefinDiagram-TSTJHNR4-C_rGUs0a.cjs} +1 -1
  58. package/dist/{dagre-VKFMJZFB-D9B4A3vP.cjs → dagre-VKFMJZFB-Bn_WdZ6A.cjs} +1 -1
  59. package/dist/{dagre-VKFMJZFB-DOl32ZLj.js → dagre-VKFMJZFB-CrmCHDPv.js} +26 -26
  60. package/dist/{diagram-FQU43EPY-CyKNQRDz.cjs → diagram-FQU43EPY-B8Bka9S6.cjs} +1 -1
  61. package/dist/{diagram-FQU43EPY-DW9s8x-t.js → diagram-FQU43EPY-DuJ6IxJz.js} +31 -31
  62. package/dist/{diagram-G47NLZAW-JWyg9BAf.js → diagram-G47NLZAW-3UXM5joI.js} +49 -49
  63. package/dist/{diagram-G47NLZAW-Bd402kCS.cjs → diagram-G47NLZAW-D--MA_nT.cjs} +1 -1
  64. package/dist/{diagram-NH7WQ7WH-O9D369xQ.cjs → diagram-NH7WQ7WH-Cqc8orqE.cjs} +1 -1
  65. package/dist/{diagram-NH7WQ7WH-CBVjs5Qb.js → diagram-NH7WQ7WH-CtH8Gdkl.js} +15 -15
  66. package/dist/{diagram-OA4YK3LP-DwedHmnV.js → diagram-OA4YK3LP-CWRyqD4L.js} +25 -25
  67. package/dist/{diagram-OA4YK3LP-CGFLIsXt.cjs → diagram-OA4YK3LP-DfKPIPFJ.cjs} +1 -1
  68. package/dist/{diagram-WEI45ONY-CEsljMQV.cjs → diagram-WEI45ONY-BYMVLI0Q.cjs} +1 -1
  69. package/dist/{diagram-WEI45ONY-BgJvkrqe.js → diagram-WEI45ONY-C0OrOx2a.js} +67 -67
  70. package/dist/{ebnfDiagram-CCIWWBDH-C7QZ4wXM.js → ebnfDiagram-CCIWWBDH-CQ7558AK.js} +3 -3
  71. package/dist/{ebnfDiagram-CCIWWBDH-e9oWuIhA.cjs → ebnfDiagram-CCIWWBDH-DZKq52yC.cjs} +1 -1
  72. package/dist/{erDiagram-Q63AITRT-OUarWTK1.js → erDiagram-Q63AITRT-CsCp6RSB.js} +19 -19
  73. package/dist/{erDiagram-Q63AITRT-BdP8JBuN.cjs → erDiagram-Q63AITRT-CzkYgQ0q.cjs} +1 -1
  74. package/dist/{extractHeadings-CUTXOBTa.js → extractHeadings-BUjTmniO.js} +6443 -5933
  75. package/dist/extractHeadings-Dkf-aqDu.cjs +314 -0
  76. package/dist/flowDiagram-23GEKE2U-DwEDOisR.cjs +1 -0
  77. package/dist/flowDiagram-23GEKE2U-aboipivB.js +7 -0
  78. package/dist/{ganttDiagram-NO4QXBWP-DjqYneGy.cjs → ganttDiagram-NO4QXBWP-7oIdk62h.cjs} +1 -1
  79. package/dist/{ganttDiagram-NO4QXBWP-7q1R_3-p.js → ganttDiagram-NO4QXBWP-BVnjew_C.js} +2 -2
  80. package/dist/{gitGraphDiagram-IHSO6WYX-BjogZ4FH.cjs → gitGraphDiagram-IHSO6WYX-BufmbyyT.cjs} +1 -1
  81. package/dist/{gitGraphDiagram-IHSO6WYX-B5gb3Rqu.js → gitGraphDiagram-IHSO6WYX-fP0zuss4.js} +10 -10
  82. package/dist/index.cjs +1 -1
  83. package/dist/index.client.cjs +1 -1
  84. package/dist/index.client.d.ts +3 -1
  85. package/dist/index.client.js +38 -36
  86. package/dist/index.js +38 -36
  87. package/dist/{infoDiagram-FWYZ7A6U-BkG_Sltp.cjs → infoDiagram-FWYZ7A6U-DerCFmks.cjs} +1 -1
  88. package/dist/{infoDiagram-FWYZ7A6U-BaKyN9IA.js → infoDiagram-FWYZ7A6U-DzsSutoh.js} +3 -3
  89. package/dist/{ishikawaDiagram-FXEZZL3T-CiyiRY0n.cjs → ishikawaDiagram-FXEZZL3T-BN-byOYP.cjs} +1 -1
  90. package/dist/{ishikawaDiagram-FXEZZL3T-CSv6cDIC.js → ishikawaDiagram-FXEZZL3T-BZ_ric9v.js} +35 -35
  91. package/dist/{journeyDiagram-5HDEW3XC-CidOpS4e.cjs → journeyDiagram-5HDEW3XC-C7iTlBhN.cjs} +1 -1
  92. package/dist/{journeyDiagram-5HDEW3XC-BSe4iQ8y.js → journeyDiagram-5HDEW3XC-CfZ11aJu.js} +30 -30
  93. package/dist/{kanban-definition-HUTT4EX6-E7S0-2B0.cjs → kanban-definition-HUTT4EX6-BNNQtqj9.cjs} +1 -1
  94. package/dist/{kanban-definition-HUTT4EX6-NcWyJMi_.js → kanban-definition-HUTT4EX6-De7q9Kj3.js} +47 -47
  95. package/dist/{linear-DBHjPQ2a.js → linear-Bh2aX99D.js} +5 -5
  96. package/dist/{linear-DVrRITf5.cjs → linear-D8TLf9nV.cjs} +1 -1
  97. package/dist/{mindmap-definition-LN4V7U3C-ddxMumCY.js → mindmap-definition-LN4V7U3C-3bksVDiB.js} +11 -11
  98. package/dist/{mindmap-definition-LN4V7U3C-CPgaG7JV.cjs → mindmap-definition-LN4V7U3C-CmbdSctZ.cjs} +1 -1
  99. package/dist/{pegDiagram-2B236MQR-CA_DeqqA.cjs → pegDiagram-2B236MQR-BWozQII1.cjs} +1 -1
  100. package/dist/{pegDiagram-2B236MQR-CLzXETR3.js → pegDiagram-2B236MQR-ffi6qFEn.js} +3 -3
  101. package/dist/{pieDiagram-ENE6RG2P-WVn8XJGb.js → pieDiagram-ENE6RG2P-De3q_Av5.js} +49 -49
  102. package/dist/{pieDiagram-ENE6RG2P-Dg04F48S.cjs → pieDiagram-ENE6RG2P-DfTgyWpG.cjs} +1 -1
  103. package/dist/{quadrantDiagram-ABIIQ3AL-BsckSYJt.cjs → quadrantDiagram-ABIIQ3AL-BZF5Z12H.cjs} +1 -1
  104. package/dist/{quadrantDiagram-ABIIQ3AL-DyWlNOhT.js → quadrantDiagram-ABIIQ3AL-CP7NgI8w.js} +45 -45
  105. package/dist/{railroadDiagram-RFXS5EU6-D3VxK11o.js → railroadDiagram-RFXS5EU6-BuWP-rUP.js} +3 -3
  106. package/dist/{railroadDiagram-RFXS5EU6-DCnQVXco.cjs → railroadDiagram-RFXS5EU6-Cui5Nx7p.cjs} +1 -1
  107. package/dist/{requirementDiagram-TGXJPOKE-DXCyNSis.cjs → requirementDiagram-TGXJPOKE-C-WJSUrB.cjs} +1 -1
  108. package/dist/{requirementDiagram-TGXJPOKE-BMaGXiNU.js → requirementDiagram-TGXJPOKE-DOEubcGx.js} +3 -3
  109. package/dist/{sankeyDiagram-HTMAVEWB-BX6vKeUm.js → sankeyDiagram-HTMAVEWB-BrD3GLG6.js} +47 -47
  110. package/dist/{sankeyDiagram-HTMAVEWB-D1m7iBLQ.cjs → sankeyDiagram-HTMAVEWB-CyT8wRcS.cjs} +1 -1
  111. package/dist/{sequenceDiagram-DBY2YBRQ-0mMExPO7.js → sequenceDiagram-DBY2YBRQ-CT6w_sxa.js} +3 -3
  112. package/dist/{sequenceDiagram-DBY2YBRQ-BOZ4f_Hs.cjs → sequenceDiagram-DBY2YBRQ-DmNBUeEN.cjs} +1 -1
  113. package/dist/{sizeCapture-X5ZJPWSS-CFgV5LdI.js → sizeCapture-X5ZJPWSS-Dt-2lcQO.js} +1 -1
  114. package/dist/{sizeCapture-X5ZJPWSS-0Q0rI-PZ.cjs → sizeCapture-X5ZJPWSS-h_Xsq3-D.cjs} +1 -1
  115. package/dist/{stateDiagram-2N3HPSRC-Co2cQg3S.cjs → stateDiagram-2N3HPSRC-C9dyCEcu.cjs} +1 -1
  116. package/dist/{stateDiagram-2N3HPSRC-BbQVKPdF.js → stateDiagram-2N3HPSRC-CjJrf8oq.js} +13 -13
  117. package/dist/{stateDiagram-v2-6OUMAXLB-QePyEJnH.js → stateDiagram-v2-6OUMAXLB-APLiC-KL.js} +2 -2
  118. package/dist/{stateDiagram-v2-6OUMAXLB-Boy-ppxx.cjs → stateDiagram-v2-6OUMAXLB-BhwjG0NA.cjs} +1 -1
  119. package/dist/styles/markdown.css +1 -1
  120. package/dist/styles/markdown.standalone.css +1 -1
  121. package/dist/{swimlanes-5IMT3BWC-Cqs5VVSm.cjs → swimlanes-5IMT3BWC-DRPswRoa.cjs} +1 -1
  122. package/dist/{swimlanes-5IMT3BWC-D4n1siHn.js → swimlanes-5IMT3BWC-Dlu3b_xG.js} +313 -313
  123. package/dist/{swimlanesDiagram-G3AALYLV-Da8ZZAJn.js → swimlanesDiagram-G3AALYLV-CX2jbFCF.js} +2 -2
  124. package/dist/{swimlanesDiagram-G3AALYLV-DVHw2s5w.cjs → swimlanesDiagram-G3AALYLV-VAEv3KP_.cjs} +1 -1
  125. package/dist/{timeline-definition-FHXFAJF6-D25i6kkS.cjs → timeline-definition-FHXFAJF6-C6xF4zqV.cjs} +1 -1
  126. package/dist/{timeline-definition-FHXFAJF6-BGK-KyNC.js → timeline-definition-FHXFAJF6-Ct68OfPR.js} +40 -40
  127. package/dist/{vennDiagram-L72KCM5P-CLkAwtsq.js → vennDiagram-L72KCM5P-BfTAjs8X.js} +124 -124
  128. package/dist/{vennDiagram-L72KCM5P-8XQ-KXbG.cjs → vennDiagram-L72KCM5P-CUaYoUAd.cjs} +1 -1
  129. package/dist/{wardleyDiagram-EHGQE667-C0S3P_7H.js → wardleyDiagram-EHGQE667-2foz0EAt.js} +25 -25
  130. package/dist/{wardleyDiagram-EHGQE667-DPCJNwRB.cjs → wardleyDiagram-EHGQE667-Cp3kY_DT.cjs} +1 -1
  131. package/dist/{xychartDiagram-FW5EYKEG-DAacRCtv.js → xychartDiagram-FW5EYKEG-B3dGYiSE.js} +40 -40
  132. package/dist/{xychartDiagram-FW5EYKEG-BTE5ffMN.cjs → xychartDiagram-FW5EYKEG-CDkSOK02.cjs} +1 -1
  133. package/package.json +16 -7
  134. package/dist/arc-Eb0BfUPO.js +0 -83
  135. package/dist/extractHeadings-agc-00bD.cjs +0 -311
  136. package/dist/flowDiagram-23GEKE2U-BZYdQMwk.js +0 -7
  137. package/dist/flowDiagram-23GEKE2U-DDjpVH-X.cjs +0 -1
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("./extractHeadings-agc-00bD.cjs"),vt=(t,n)=>k.adjustChannel(t,"a",-n),Mt=1e-10;function st(t,n){const s=Gt(t),e=s.filter(l=>Ut(l,t));let i=0,o=0;const r=[];if(e.length>1){const l=wt(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let f=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];o+=(f.x+a.x)*(a.y-f.y);const x={x:(a.x+f.x)/2,y:(a.y+f.y)/2};let h=null;for(let b=0;b<a.parentIndex.length;++b)if(f.parentIndex.includes(a.parentIndex[b])){const p=t[a.parentIndex[b]],M=Math.atan2(a.x-p.x,a.y-p.y),E=Math.atan2(f.x-p.x,f.y-p.y);let w=E-M;w<0&&(w+=2*Math.PI);const S=E-w/2;let g=q(x,{x:p.x+p.radius*Math.sin(S),y:p.y+p.radius*Math.cos(S)});g>p.radius*2&&(g=p.radius*2),(h==null||h.width>g)&&(h={circle:p,width:g,p1:a,p2:f,large:g>p.radius,sweep:!0})}h!=null&&(r.push(h),i+=at(h.circle.radius,h.width),f=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let f=!1;for(let u=0;u<t.length;++u)if(q(t[u],l)>Math.abs(l.radius-t[u].radius)){f=!0;break}f?i=o=0:(i=l.radius*l.radius*Math.PI,r.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-Mt,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return o/=2,n&&(n.area=i+o,n.arcArea=i,n.polygonArea=o,n.arcs=r,n.innerPoints=e,n.intersectionPoints=s),i+o}function Ut(t,n){return n.every(s=>q(t,s)<s.radius+Mt)}function Gt(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=St(t[s],t[e]);for(const o of i)o.parentIndex=[s,e],n.push(o)}return n}function at(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function q(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function gt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return at(t,e)+at(n,i)}function St(t,n){const s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const o=(e*e-i*i+s*s)/(2*s),r=Math.sqrt(e*e-o*o),l=t.x+o*(n.x-t.x)/s,f=t.y+o*(n.y-t.y)/s,u=-(n.y-t.y)*(r/s),a=-(n.x-t.x)*(r/s);return[{x:l+u,y:f-a},{x:l-u,y:f+a}]}function wt(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function Wt(t,n,s,e){e=e||{};const i=e.maxIterations||100,o=e.tolerance||1e-10,r=t(n),l=t(s);let f=s-n;if(r*l>0)throw"Initial bisect points must have opposite signs";if(r===0)return n;if(l===0)return s;for(let u=0;u<i;++u){f/=2;const a=n+f,x=t(a);if(x*r>=0&&(n=a),Math.abs(f)<o||x===0)return a}return n+f}function lt(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function It(t,n){return lt(t).map(()=>lt(n))}function $(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ct(t){return Math.sqrt($(t,t))}function ut(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let o=0;o<t.length;++o)t[o]=n*s[o]+e*i[o]}function Tt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,o=s.zeroDelta||.001,r=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,f=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,x=s.sigma!==void 0?s.sigma:.5;let h;const b=n.length,p=new Array(b+1);p[0]=n,p[0].fx=t(n),p[0].id=0;for(let _=0;_<b;++_){const c=n.slice();c[_]=c[_]?c[_]*i:o,p[_+1]=c,p[_+1].fx=t(c),p[_+1].id=_+1}function M(_){for(let c=0;c<_.length;c++)p[b][c]=_[c];p[b].fx=_.fx}const E=(_,c)=>_.fx-c.fx,w=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let _=0;_<e;++_){if(p.sort(E),s.history){const y=p.map(d=>{const R=d.slice();return R.fx=d.fx,R.id=d.id,R});y.sort((d,R)=>d.id-R.id),s.history.push({x:p[0].slice(),fx:p[0].fx,simplex:y})}h=0;for(let y=0;y<b;++y)h=Math.max(h,Math.abs(p[0][y]-p[1][y]));if(Math.abs(p[0].fx-p[b].fx)<r&&h<l)break;for(let y=0;y<b;++y){w[y]=0;for(let d=0;d<b;++d)w[y]+=p[d][y];w[y]/=b}const c=p[b];if(J(S,1+f,w,-f,c),S.fx=t(S),S.fx<p[0].fx)J(m,1+u,w,-u,c),m.fx=t(m),m.fx<S.fx?M(m):M(S);else if(S.fx>=p[b-1].fx){let y=!1;if(S.fx>c.fx?(J(g,1+a,w,-a,c),g.fx=t(g),g.fx<c.fx?M(g):y=!0):(J(g,1-a*f,w,a*f,c),g.fx=t(g),g.fx<S.fx?M(g):y=!0),y){if(x>=1)break;for(let d=1;d<p.length;++d)J(p[d],1-x,p[0],x,p[d]),p[d].fx=t(p[d])}}else M(S)}return p.sort(E),{fx:p[0].fx,x:p[0]}}function Kt(t,n,s,e,i,o,r){const l=s.fx,f=$(s.fxprime,n);let u=l,a=l,x=f,h=0;i=i||1,o=o||1e-6,r=r||.1;function b(p,M,E){for(let w=0;w<16;++w)if(i=(p+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),x=$(e.fxprime,n),u>l+o*i*f||u>=E)M=i;else{if(Math.abs(x)<=-r*f)return i;x*(M-p)>=0&&(M=p),p=i,E=u}return 0}for(let p=0;p<10;++p){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),x=$(e.fxprime,n),u>l+o*i*f||p&&u>=a)return b(h,i,a);if(Math.abs(x)<=-r*f)return i;if(x>=0)return b(i,h,u);a=u,h=i,i*=2}return i}function Ht(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const o=n.slice();let r,l,f=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),r=e.fxprime.slice(),ut(r,e.fxprime,-1);for(let a=0;a<u;++a){if(f=Kt(t,r,e,i,f),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:f}),!f)ut(r,e.fxprime,-1);else{J(o,1,i.fxprime,-1,e.fxprime);const x=$(e.fxprime,e.fxprime),h=Math.max(0,$(o,i.fxprime)/x);J(r,h,r,-1,i.fxprime),l=e,e=i,i=l}if(ct(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:f}),e}function Et(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||Jt,e=n.lossFunction||tt,i=Yt(t,n),o=s(i,n),r=Object.keys(o),l=[];for(const a of r)l.push(o[a].x),l.push(o[a].y);const u=Tt(a=>{const x={};for(let h=0;h<r.length;++h){const b=r[h];x[b]={x:a[2*h],y:a[2*h+1],radius:o[b].radius}}return e(x,i)},l,n).x;for(let a=0;a<r.length;++a){const x=r[a];o[x].x=u[2*a],o[x].y=u[2*a+1]}return o}const zt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+zt?Math.abs(t-n):Wt(e=>gt(t,n,e)-s,0,t+n)}function Yt(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const f of e)for(let u=0;u<f.sets.length;u++){const a=String(f.sets[u]);l.set(a,f.size+(l.get(a)||0));for(let x=u+1;x<f.sets.length;x++){const h=String(f.sets[x]),b=`${a};${h}`,p=`${h};${a}`;l.set(b,f.size+(l.get(b)||0)),l.set(p,f.size+(l.get(p)||0))}}for(const f of e)f.sets.length<3&&(f.size=l.get(i(f.sets)))}const o=[],r=new Set;for(const l of e)if(l.sets.length===1)o.push(l.sets[0]);else if(l.sets.length===2){const f=l.sets[0],u=l.sets[1];r.add(i(l.sets)),r.add(i([u,f]))}o.sort((l,f)=>l===f?0:l<f?-1:1);for(let l=0;l<o.length;++l){const f=o[l];for(let u=l+1;u<o.length;++u){const a=o[u];r.has(i([f,a]))||e.push({sets:[f,a],size:0})}}return e}function Xt(t,n,s){const e=It(n.length,n.length),i=It(n.length,n.length);return t.filter(o=>o.sets.length===2).forEach(o=>{const r=s[o.sets[0]],l=s[o.sets[1]],f=Math.sqrt(n[r].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(f,u,o.size);e[r][l]=e[l][r]=a;let x=0;o.size+1e-10>=Math.min(n[r].size,n[l].size)?x=1:o.size<=1e-10&&(x=-1),i[r][l]=i[l][r]=x}),{distances:e,constraints:i}}function Zt(t,n,s,e){for(let o=0;o<n.length;++o)n[o]=0;let i=0;for(let o=0;o<s.length;++o){const r=t[2*o],l=t[2*o+1];for(let f=o+1;f<s.length;++f){const u=t[2*f],a=t[2*f+1],x=s[o][f],h=e[o][f],b=(u-r)*(u-r)+(a-l)*(a-l),p=Math.sqrt(b),M=b-x*x;h>0&&p<=x||h<0&&p>=x||(i+=2*M*M,n[2*o]+=4*M*(r-u),n[2*o+1]+=4*M*(l-a),n[2*f]+=4*M*(u-r),n[2*f+1]+=4*M*(a-l))}}return i}function Jt(t,n={}){let s=$t(t,n);const e=n.lossFunction||tt;if(t.length>=8){const i=Qt(t,n),o=e(i,t),r=e(s,t);o+1e-8<r&&(s=i)}return s}function Qt(t,n={}){const s=n.restarts||10,e=[],i={};for(const h of t)h.sets.length===1&&(i[h.sets[0]]=e.length,e.push(h));let{distances:o,constraints:r}=Xt(t,e,i);const l=ct(o.map(ct))/o.length;o=o.map(h=>h.map(b=>b/l));const f=(h,b)=>Zt(h,b,o,r);let u=null;for(let h=0;h<s;++h){const b=lt(o.length*2).map(Math.random),p=Ht(f,b,n);(!u||p.fx<u.fx)&&(u=p)}const a=u.x,x={};for(let h=0;h<e.length;++h){const b=e[h];x[b.sets[0]]={x:a[2*h]*l,y:a[2*h+1]*l,radius:Math.sqrt(b.size/Math.PI)}}if(n.history)for(const h of n.history)ut(h.x,l);return x}function $t(t,n){const s=n&&n.lossFunction?n.lossFunction:tt,e={},i={};for(const x of t)if(x.sets.length===1){const h=x.sets[0];e[h]={x:1e10,y:1e10,rowid:e.length,size:x.size,radius:Math.sqrt(x.size/Math.PI)},i[h]=[]}t=t.filter(x=>x.sets.length===2);for(const x of t){let h=x.weight!=null?x.weight:1;const b=x.sets[0],p=x.sets[1];x.size+zt>=Math.min(e[b].size,e[p].size)&&(h=0),i[b].push({set:p,size:x.size,weight:h}),i[p].push({set:b,size:x.size,weight:h})}const o=[];Object.keys(i).forEach(x=>{let h=0;for(let b=0;b<i[x].length;++b)h+=i[x][b].size*i[x][b].weight;o.push({set:x,size:h})});function r(x,h){return h.size-x.size}o.sort(r);const l={};function f(x){return x.set in l}function u(x,h){e[h].x=x.x,e[h].y=x.y,l[h]=!0}u({x:0,y:0},o[0].set);for(let x=1;x<o.length;++x){const h=o[x].set,b=i[h].filter(f),p=e[h];if(b.sort(r),b.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<b.length;++a){const S=e[b[a].set],g=ft(p.radius,S.radius,b[a].size);M.push({x:S.x+g,y:S.y}),M.push({x:S.x-g,y:S.y}),M.push({y:S.y+g,x:S.x}),M.push({y:S.y-g,x:S.x});for(let m=a+1;m<b.length;++m){const _=e[b[m].set],c=ft(p.radius,_.radius,b[m].size),y=St({x:S.x,y:S.y,radius:g},{x:_.x,y:_.y,radius:c});M.push(...y)}}let E=1e50,w=M[0];for(const S of M){e[h].x=S.x,e[h].y=S.y;const g=s(e,t);g<E&&(E=g,w=S)}u(w,h)}return e}function tt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const r=t[e.sets[0]],l=t[e.sets[1]];i=gt(r.radius,l.radius,q(r,l))}else i=st(e.sets.map(r=>t[r]));const o=e.weight!=null?e.weight:1;s+=o*(i-e.size)*(i-e.size)}return s}function At(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],f=t[e.sets[1]];i=gt(l.radius,f.radius,q(l,f))}else i=st(e.sets.map(l=>t[l]));const o=e.weight!=null?e.weight:1,r=Math.log((i+1)/(e.size+1));s+=o*r*r}return s}function te(t,n,s){if(s==null?t.sort((i,o)=>o.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,o=t[0].y;for(const r of t)r.x-=i,r.y-=o}if(t.length===2&&q(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,o=Math.cos(i),r=Math.sin(i);for(const l of t){const f=l.x,u=l.y;l.x=o*f-r*u,l.y=r*f+o*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const o=t[1].y/(1e-10+t[1].x);for(const r of t){var e=(r.x+o*r.y)/(1+o*o);r.x=2*e-r.x,r.y=2*e*o-r.y}}}}function ee(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,o){const r=n(i),l=n(o);r.parent=l}for(let i=0;i<t.length;++i)for(let o=i+1;o<t.length;++o){const r=t[i].radius+t[o].radius;q(t[i],t[o])+1e-10<r&&s(t[o],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const o=n(t[i]).parent.setid;e.has(o)||e.set(o,[]),e.get(o).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function ht(t){const n=s=>{const e=t.reduce((o,r)=>Math.max(o,r[s]+r.radius),Number.NEGATIVE_INFINITY),i=t.reduce((o,r)=>Math.min(o,r[s]-r.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ot(t).map(u=>Object.assign({},u));const i=ee(e);for(const u of i){te(u,n,s);const a=ht(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let o=e.bounds;const r=(o.xRange.max-o.xRange.min)/50;function l(u,a,x){if(!u)return;const h=u.bounds;let b,p;if(a)b=o.xRange.max-h.xRange.min+r;else{b=o.xRange.max-h.xRange.max;const M=(h.xRange.max-h.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;M<0&&(b+=M)}if(x)p=o.yRange.max-h.yRange.min+r;else{p=o.yRange.max-h.yRange.max;const M=(h.yRange.max-h.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;M<0&&(p+=M)}for(const M of u)M.x+=b,M.y+=p,e.push(M)}let f=1;for(;f<i.length;)l(i[f],!0,!1),l(i[f+1],!1,!0),l(i[f+2],!0,!0),f+=3,o=ht(e);return Ct(e)}function Rt(t,n,s,e,i){const o=Ot(t);n-=2*e,s-=2*e;const{xRange:r,yRange:l}=ht(o);if(r.max===r.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let f,u;if(i){const b=Math.sqrt(i/Math.PI)*2;f=n/b,u=s/b}else f=n/(r.max-r.min),u=s/(l.max-l.min);const a=Math.min(u,f),x=(n-(r.max-r.min)*a)/2,h=(s-(l.max-l.min)*a)/2;return Ct(o.map(b=>({radius:a*b.radius,x:e+x+(b.x-r.min)*a,y:e+h+(b.y-l.min)*a,setid:b.setid})))}function Ct(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ot(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ne(t={}){let n=!1,s=600,e=350,i=15,o=1e3,r=Math.PI/2,l=!0,f=null,u=!0,a=!0,x=null,h=null,b=!1,p=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},w=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(y){if(y in E)return E[y];var d=E[y]=w[S];return S+=1,S>=w.length&&(S=0),d},m=Et,_=tt;function c(y){let d=y.datum();const R=new Set;d.forEach(I=>{I.size==0&&I.sets.length==1&&R.add(I.sets[0])}),d=d.filter(I=>!I.sets.some(j=>R.has(j)));let v={},C={};if(d.length>0){let I=m(d,{lossFunction:_,distinct:b});l&&(I=Dt(I,r,h)),v=Rt(I,s,e,i,f),C=jt(v,d,M)}const U={};d.forEach(I=>{I.label&&(U[I.sets]=I.label)});function V(I){if(I.sets in U)return U[I.sets];if(I.sets.length==1)return""+I.sets[0]}y.selectAll("svg").data([v]).enter().append("svg");const N=y.select("svg");n?N.attr("viewBox",`0 0 ${s} ${e}`):N.attr("width",s).attr("height",e);const D={};let T=!1;N.selectAll(".venn-area path").each(function(I){const j=this.getAttribute("d");I.sets.length==1&&j&&!b&&(T=!0,D[I.sets[0]]=oe(j))});function A(I){return j=>{const H=I.sets.map(et=>{let Y=D[et],Z=v[et];return Y||(Y={x:s/2,y:e/2,radius:1}),Z||(Z={x:s/2,y:e/2,radius:1}),{x:Y.x*(1-j)+Z.x*j,y:Y.y*(1-j)+Z.y*j,radius:Y.radius*(1-j)+Z.radius*j}});return kt(H,p)}}const G=N.selectAll(".venn-area").data(d,I=>I.sets),L=G.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),B=L.append("path"),P=L.append("text").attr("class","label").text(I=>V(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(B.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),P.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function K(I){return typeof I.transition=="function"?I.transition("venn").duration(o):I}let z=y;T&&typeof z.transition=="function"?(z=K(y),z.selectAll("path").attrTween("d",A)):z.selectAll("path").attr("d",I=>kt(I.sets.map(j=>v[j])),p);const O=z.selectAll("text").filter(I=>I.sets in C).text(I=>V(I)).attr("x",I=>Math.floor(C[I.sets].x)).attr("y",I=>Math.floor(C[I.sets].y));u&&(T?"on"in O?O.on("end",ot(v,V)):O.each("end",ot(v,V)):O.each(ot(v,V)));const F=K(G.exit()).remove();typeof G.transition=="function"&&F.selectAll("path").attrTween("d",A);const X=F.selectAll("text").attr("x",s/2).attr("y",e/2);return x!==null&&(P.style("font-size","0px"),O.style("font-size",x),X.style("font-size","0px")),{circles:v,textCentres:C,nodes:G,enter:L,update:z,exit:F}}return c.wrap=function(y){return arguments.length?(u=y,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(y){return arguments.length?(s=y,c):s},c.height=function(y){return arguments.length?(e=y,c):e},c.padding=function(y){return arguments.length?(i=y,c):i},c.distinct=function(y){return arguments.length?(b=y,c):b},c.colours=function(y){return arguments.length?(g=y,c):g},c.colors=function(y){return arguments.length?(g=y,c):g},c.fontSize=function(y){return arguments.length?(x=y,c):x},c.round=function(y){return arguments.length?(p=y,c):p},c.duration=function(y){return arguments.length?(o=y,c):o},c.layoutFunction=function(y){return arguments.length?(m=y,c):m},c.normalize=function(y){return arguments.length?(l=y,c):l},c.scaleToFit=function(y){return arguments.length?(f=y,c):f},c.styled=function(y){return arguments.length?(a=y,c):a},c.orientation=function(y){return arguments.length?(r=y,c):r},c.orientationOrder=function(y){return arguments.length?(h=y,c):h},c.lossFunction=function(y){return arguments.length?(_=y==="default"?tt:y==="logRatio"?At:y,c):_},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,o=n(s)||"",r=o.split(/\s+/).reverse(),f=(o.length+r.length)/3;let u=r.pop(),a=[u],x=0;const h=1.1;e.textContent=null;const b=[];function p(g){const m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=p(u);for(;u=r.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>f&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=p(u),x++)}const E=.35-x*h/2,w=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",w),g.setAttribute("y",S),g.setAttribute("dy",`${E+m*h}em`)})}}function rt(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i<n.length;++i){const o=n[i].radius-q(n[i],t);o<=e&&(e=o)}for(let i=0;i<s.length;++i){const o=q(s[i],t)-s[i].radius;o<=e&&(e=o)}return e}function Nt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],o=rt(e[0],t,n);for(let a=1;a<e.length;++a){const x=rt(e[a],t,n);x>=o&&(i=e[a],o=x)}const r=Tt(a=>-1*rt({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:r[0],y:r[1]};let f=!0;for(const a of t)if(q(l,a)>a.radius){f=!1;break}for(const a of n)if(q(l,a)<a.radius){f=!1;break}if(f)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?Nt(t,[]):wt(u.arcs.map(a=>a.p1))}function se(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],o=t[i];for(let r=e+1;r<s.length;++r){const l=s[r],f=t[l],u=q(o,f);u+f.radius<=o.radius+1e-10?n[l].push(i):u+o.radius<=f.radius+1e-10&&n[i].push(l)}}return n}function jt(t,n,s){const e={},i=se(t);for(let o=0;o<n.length;++o){const r=n[o].sets,l={},f={};for(let h=0;h<r.length;++h){l[r[h]]=!0;const b=i[r[h]];for(let p=0;p<b.length;++p)f[b[p]]=!0}const u=[],a=[];for(let h in t)h in l?u.push(t[h]):h in f||a.push(t[h]);const x=Nt(u,a,s);e[r]=x,x.disjoint&&n[o].size>0&&console.log("WARNING: area "+r+" not represented on screen")}return e}function ie(t,n,s){const e=[];return e.push(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("./extractHeadings-Dkf-aqDu.cjs"),vt=(t,n)=>k.adjustChannel(t,"a",-n),Mt=1e-10;function st(t,n){const s=Gt(t),e=s.filter(l=>Ut(l,t));let i=0,o=0;const r=[];if(e.length>1){const l=wt(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let f=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];o+=(f.x+a.x)*(a.y-f.y);const x={x:(a.x+f.x)/2,y:(a.y+f.y)/2};let h=null;for(let b=0;b<a.parentIndex.length;++b)if(f.parentIndex.includes(a.parentIndex[b])){const p=t[a.parentIndex[b]],M=Math.atan2(a.x-p.x,a.y-p.y),E=Math.atan2(f.x-p.x,f.y-p.y);let w=E-M;w<0&&(w+=2*Math.PI);const S=E-w/2;let g=q(x,{x:p.x+p.radius*Math.sin(S),y:p.y+p.radius*Math.cos(S)});g>p.radius*2&&(g=p.radius*2),(h==null||h.width>g)&&(h={circle:p,width:g,p1:a,p2:f,large:g>p.radius,sweep:!0})}h!=null&&(r.push(h),i+=at(h.circle.radius,h.width),f=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let f=!1;for(let u=0;u<t.length;++u)if(q(t[u],l)>Math.abs(l.radius-t[u].radius)){f=!0;break}f?i=o=0:(i=l.radius*l.radius*Math.PI,r.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-Mt,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return o/=2,n&&(n.area=i+o,n.arcArea=i,n.polygonArea=o,n.arcs=r,n.innerPoints=e,n.intersectionPoints=s),i+o}function Ut(t,n){return n.every(s=>q(t,s)<s.radius+Mt)}function Gt(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=St(t[s],t[e]);for(const o of i)o.parentIndex=[s,e],n.push(o)}return n}function at(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function q(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function gt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return at(t,e)+at(n,i)}function St(t,n){const s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const o=(e*e-i*i+s*s)/(2*s),r=Math.sqrt(e*e-o*o),l=t.x+o*(n.x-t.x)/s,f=t.y+o*(n.y-t.y)/s,u=-(n.y-t.y)*(r/s),a=-(n.x-t.x)*(r/s);return[{x:l+u,y:f-a},{x:l-u,y:f+a}]}function wt(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function Wt(t,n,s,e){e=e||{};const i=e.maxIterations||100,o=e.tolerance||1e-10,r=t(n),l=t(s);let f=s-n;if(r*l>0)throw"Initial bisect points must have opposite signs";if(r===0)return n;if(l===0)return s;for(let u=0;u<i;++u){f/=2;const a=n+f,x=t(a);if(x*r>=0&&(n=a),Math.abs(f)<o||x===0)return a}return n+f}function lt(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function It(t,n){return lt(t).map(()=>lt(n))}function $(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ct(t){return Math.sqrt($(t,t))}function ut(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let o=0;o<t.length;++o)t[o]=n*s[o]+e*i[o]}function Tt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,o=s.zeroDelta||.001,r=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,f=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,x=s.sigma!==void 0?s.sigma:.5;let h;const b=n.length,p=new Array(b+1);p[0]=n,p[0].fx=t(n),p[0].id=0;for(let _=0;_<b;++_){const c=n.slice();c[_]=c[_]?c[_]*i:o,p[_+1]=c,p[_+1].fx=t(c),p[_+1].id=_+1}function M(_){for(let c=0;c<_.length;c++)p[b][c]=_[c];p[b].fx=_.fx}const E=(_,c)=>_.fx-c.fx,w=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let _=0;_<e;++_){if(p.sort(E),s.history){const y=p.map(d=>{const R=d.slice();return R.fx=d.fx,R.id=d.id,R});y.sort((d,R)=>d.id-R.id),s.history.push({x:p[0].slice(),fx:p[0].fx,simplex:y})}h=0;for(let y=0;y<b;++y)h=Math.max(h,Math.abs(p[0][y]-p[1][y]));if(Math.abs(p[0].fx-p[b].fx)<r&&h<l)break;for(let y=0;y<b;++y){w[y]=0;for(let d=0;d<b;++d)w[y]+=p[d][y];w[y]/=b}const c=p[b];if(J(S,1+f,w,-f,c),S.fx=t(S),S.fx<p[0].fx)J(m,1+u,w,-u,c),m.fx=t(m),m.fx<S.fx?M(m):M(S);else if(S.fx>=p[b-1].fx){let y=!1;if(S.fx>c.fx?(J(g,1+a,w,-a,c),g.fx=t(g),g.fx<c.fx?M(g):y=!0):(J(g,1-a*f,w,a*f,c),g.fx=t(g),g.fx<S.fx?M(g):y=!0),y){if(x>=1)break;for(let d=1;d<p.length;++d)J(p[d],1-x,p[0],x,p[d]),p[d].fx=t(p[d])}}else M(S)}return p.sort(E),{fx:p[0].fx,x:p[0]}}function Kt(t,n,s,e,i,o,r){const l=s.fx,f=$(s.fxprime,n);let u=l,a=l,x=f,h=0;i=i||1,o=o||1e-6,r=r||.1;function b(p,M,E){for(let w=0;w<16;++w)if(i=(p+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),x=$(e.fxprime,n),u>l+o*i*f||u>=E)M=i;else{if(Math.abs(x)<=-r*f)return i;x*(M-p)>=0&&(M=p),p=i,E=u}return 0}for(let p=0;p<10;++p){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),x=$(e.fxprime,n),u>l+o*i*f||p&&u>=a)return b(h,i,a);if(Math.abs(x)<=-r*f)return i;if(x>=0)return b(i,h,u);a=u,h=i,i*=2}return i}function Ht(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const o=n.slice();let r,l,f=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),r=e.fxprime.slice(),ut(r,e.fxprime,-1);for(let a=0;a<u;++a){if(f=Kt(t,r,e,i,f),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:f}),!f)ut(r,e.fxprime,-1);else{J(o,1,i.fxprime,-1,e.fxprime);const x=$(e.fxprime,e.fxprime),h=Math.max(0,$(o,i.fxprime)/x);J(r,h,r,-1,i.fxprime),l=e,e=i,i=l}if(ct(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:f}),e}function Et(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||Jt,e=n.lossFunction||tt,i=Yt(t,n),o=s(i,n),r=Object.keys(o),l=[];for(const a of r)l.push(o[a].x),l.push(o[a].y);const u=Tt(a=>{const x={};for(let h=0;h<r.length;++h){const b=r[h];x[b]={x:a[2*h],y:a[2*h+1],radius:o[b].radius}}return e(x,i)},l,n).x;for(let a=0;a<r.length;++a){const x=r[a];o[x].x=u[2*a],o[x].y=u[2*a+1]}return o}const zt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+zt?Math.abs(t-n):Wt(e=>gt(t,n,e)-s,0,t+n)}function Yt(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const f of e)for(let u=0;u<f.sets.length;u++){const a=String(f.sets[u]);l.set(a,f.size+(l.get(a)||0));for(let x=u+1;x<f.sets.length;x++){const h=String(f.sets[x]),b=`${a};${h}`,p=`${h};${a}`;l.set(b,f.size+(l.get(b)||0)),l.set(p,f.size+(l.get(p)||0))}}for(const f of e)f.sets.length<3&&(f.size=l.get(i(f.sets)))}const o=[],r=new Set;for(const l of e)if(l.sets.length===1)o.push(l.sets[0]);else if(l.sets.length===2){const f=l.sets[0],u=l.sets[1];r.add(i(l.sets)),r.add(i([u,f]))}o.sort((l,f)=>l===f?0:l<f?-1:1);for(let l=0;l<o.length;++l){const f=o[l];for(let u=l+1;u<o.length;++u){const a=o[u];r.has(i([f,a]))||e.push({sets:[f,a],size:0})}}return e}function Xt(t,n,s){const e=It(n.length,n.length),i=It(n.length,n.length);return t.filter(o=>o.sets.length===2).forEach(o=>{const r=s[o.sets[0]],l=s[o.sets[1]],f=Math.sqrt(n[r].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(f,u,o.size);e[r][l]=e[l][r]=a;let x=0;o.size+1e-10>=Math.min(n[r].size,n[l].size)?x=1:o.size<=1e-10&&(x=-1),i[r][l]=i[l][r]=x}),{distances:e,constraints:i}}function Zt(t,n,s,e){for(let o=0;o<n.length;++o)n[o]=0;let i=0;for(let o=0;o<s.length;++o){const r=t[2*o],l=t[2*o+1];for(let f=o+1;f<s.length;++f){const u=t[2*f],a=t[2*f+1],x=s[o][f],h=e[o][f],b=(u-r)*(u-r)+(a-l)*(a-l),p=Math.sqrt(b),M=b-x*x;h>0&&p<=x||h<0&&p>=x||(i+=2*M*M,n[2*o]+=4*M*(r-u),n[2*o+1]+=4*M*(l-a),n[2*f]+=4*M*(u-r),n[2*f+1]+=4*M*(a-l))}}return i}function Jt(t,n={}){let s=$t(t,n);const e=n.lossFunction||tt;if(t.length>=8){const i=Qt(t,n),o=e(i,t),r=e(s,t);o+1e-8<r&&(s=i)}return s}function Qt(t,n={}){const s=n.restarts||10,e=[],i={};for(const h of t)h.sets.length===1&&(i[h.sets[0]]=e.length,e.push(h));let{distances:o,constraints:r}=Xt(t,e,i);const l=ct(o.map(ct))/o.length;o=o.map(h=>h.map(b=>b/l));const f=(h,b)=>Zt(h,b,o,r);let u=null;for(let h=0;h<s;++h){const b=lt(o.length*2).map(Math.random),p=Ht(f,b,n);(!u||p.fx<u.fx)&&(u=p)}const a=u.x,x={};for(let h=0;h<e.length;++h){const b=e[h];x[b.sets[0]]={x:a[2*h]*l,y:a[2*h+1]*l,radius:Math.sqrt(b.size/Math.PI)}}if(n.history)for(const h of n.history)ut(h.x,l);return x}function $t(t,n){const s=n&&n.lossFunction?n.lossFunction:tt,e={},i={};for(const x of t)if(x.sets.length===1){const h=x.sets[0];e[h]={x:1e10,y:1e10,rowid:e.length,size:x.size,radius:Math.sqrt(x.size/Math.PI)},i[h]=[]}t=t.filter(x=>x.sets.length===2);for(const x of t){let h=x.weight!=null?x.weight:1;const b=x.sets[0],p=x.sets[1];x.size+zt>=Math.min(e[b].size,e[p].size)&&(h=0),i[b].push({set:p,size:x.size,weight:h}),i[p].push({set:b,size:x.size,weight:h})}const o=[];Object.keys(i).forEach(x=>{let h=0;for(let b=0;b<i[x].length;++b)h+=i[x][b].size*i[x][b].weight;o.push({set:x,size:h})});function r(x,h){return h.size-x.size}o.sort(r);const l={};function f(x){return x.set in l}function u(x,h){e[h].x=x.x,e[h].y=x.y,l[h]=!0}u({x:0,y:0},o[0].set);for(let x=1;x<o.length;++x){const h=o[x].set,b=i[h].filter(f),p=e[h];if(b.sort(r),b.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<b.length;++a){const S=e[b[a].set],g=ft(p.radius,S.radius,b[a].size);M.push({x:S.x+g,y:S.y}),M.push({x:S.x-g,y:S.y}),M.push({y:S.y+g,x:S.x}),M.push({y:S.y-g,x:S.x});for(let m=a+1;m<b.length;++m){const _=e[b[m].set],c=ft(p.radius,_.radius,b[m].size),y=St({x:S.x,y:S.y,radius:g},{x:_.x,y:_.y,radius:c});M.push(...y)}}let E=1e50,w=M[0];for(const S of M){e[h].x=S.x,e[h].y=S.y;const g=s(e,t);g<E&&(E=g,w=S)}u(w,h)}return e}function tt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const r=t[e.sets[0]],l=t[e.sets[1]];i=gt(r.radius,l.radius,q(r,l))}else i=st(e.sets.map(r=>t[r]));const o=e.weight!=null?e.weight:1;s+=o*(i-e.size)*(i-e.size)}return s}function At(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],f=t[e.sets[1]];i=gt(l.radius,f.radius,q(l,f))}else i=st(e.sets.map(l=>t[l]));const o=e.weight!=null?e.weight:1,r=Math.log((i+1)/(e.size+1));s+=o*r*r}return s}function te(t,n,s){if(s==null?t.sort((i,o)=>o.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,o=t[0].y;for(const r of t)r.x-=i,r.y-=o}if(t.length===2&&q(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,o=Math.cos(i),r=Math.sin(i);for(const l of t){const f=l.x,u=l.y;l.x=o*f-r*u,l.y=r*f+o*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const o=t[1].y/(1e-10+t[1].x);for(const r of t){var e=(r.x+o*r.y)/(1+o*o);r.x=2*e-r.x,r.y=2*e*o-r.y}}}}function ee(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,o){const r=n(i),l=n(o);r.parent=l}for(let i=0;i<t.length;++i)for(let o=i+1;o<t.length;++o){const r=t[i].radius+t[o].radius;q(t[i],t[o])+1e-10<r&&s(t[o],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const o=n(t[i]).parent.setid;e.has(o)||e.set(o,[]),e.get(o).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function ht(t){const n=s=>{const e=t.reduce((o,r)=>Math.max(o,r[s]+r.radius),Number.NEGATIVE_INFINITY),i=t.reduce((o,r)=>Math.min(o,r[s]-r.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ot(t).map(u=>Object.assign({},u));const i=ee(e);for(const u of i){te(u,n,s);const a=ht(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let o=e.bounds;const r=(o.xRange.max-o.xRange.min)/50;function l(u,a,x){if(!u)return;const h=u.bounds;let b,p;if(a)b=o.xRange.max-h.xRange.min+r;else{b=o.xRange.max-h.xRange.max;const M=(h.xRange.max-h.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;M<0&&(b+=M)}if(x)p=o.yRange.max-h.yRange.min+r;else{p=o.yRange.max-h.yRange.max;const M=(h.yRange.max-h.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;M<0&&(p+=M)}for(const M of u)M.x+=b,M.y+=p,e.push(M)}let f=1;for(;f<i.length;)l(i[f],!0,!1),l(i[f+1],!1,!0),l(i[f+2],!0,!0),f+=3,o=ht(e);return Ct(e)}function Rt(t,n,s,e,i){const o=Ot(t);n-=2*e,s-=2*e;const{xRange:r,yRange:l}=ht(o);if(r.max===r.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let f,u;if(i){const b=Math.sqrt(i/Math.PI)*2;f=n/b,u=s/b}else f=n/(r.max-r.min),u=s/(l.max-l.min);const a=Math.min(u,f),x=(n-(r.max-r.min)*a)/2,h=(s-(l.max-l.min)*a)/2;return Ct(o.map(b=>({radius:a*b.radius,x:e+x+(b.x-r.min)*a,y:e+h+(b.y-l.min)*a,setid:b.setid})))}function Ct(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ot(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ne(t={}){let n=!1,s=600,e=350,i=15,o=1e3,r=Math.PI/2,l=!0,f=null,u=!0,a=!0,x=null,h=null,b=!1,p=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},w=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(y){if(y in E)return E[y];var d=E[y]=w[S];return S+=1,S>=w.length&&(S=0),d},m=Et,_=tt;function c(y){let d=y.datum();const R=new Set;d.forEach(I=>{I.size==0&&I.sets.length==1&&R.add(I.sets[0])}),d=d.filter(I=>!I.sets.some(j=>R.has(j)));let v={},C={};if(d.length>0){let I=m(d,{lossFunction:_,distinct:b});l&&(I=Dt(I,r,h)),v=Rt(I,s,e,i,f),C=jt(v,d,M)}const U={};d.forEach(I=>{I.label&&(U[I.sets]=I.label)});function V(I){if(I.sets in U)return U[I.sets];if(I.sets.length==1)return""+I.sets[0]}y.selectAll("svg").data([v]).enter().append("svg");const N=y.select("svg");n?N.attr("viewBox",`0 0 ${s} ${e}`):N.attr("width",s).attr("height",e);const D={};let T=!1;N.selectAll(".venn-area path").each(function(I){const j=this.getAttribute("d");I.sets.length==1&&j&&!b&&(T=!0,D[I.sets[0]]=oe(j))});function A(I){return j=>{const H=I.sets.map(et=>{let Y=D[et],Z=v[et];return Y||(Y={x:s/2,y:e/2,radius:1}),Z||(Z={x:s/2,y:e/2,radius:1}),{x:Y.x*(1-j)+Z.x*j,y:Y.y*(1-j)+Z.y*j,radius:Y.radius*(1-j)+Z.radius*j}});return kt(H,p)}}const G=N.selectAll(".venn-area").data(d,I=>I.sets),L=G.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),B=L.append("path"),P=L.append("text").attr("class","label").text(I=>V(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(B.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),P.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function K(I){return typeof I.transition=="function"?I.transition("venn").duration(o):I}let z=y;T&&typeof z.transition=="function"?(z=K(y),z.selectAll("path").attrTween("d",A)):z.selectAll("path").attr("d",I=>kt(I.sets.map(j=>v[j])),p);const O=z.selectAll("text").filter(I=>I.sets in C).text(I=>V(I)).attr("x",I=>Math.floor(C[I.sets].x)).attr("y",I=>Math.floor(C[I.sets].y));u&&(T?"on"in O?O.on("end",ot(v,V)):O.each("end",ot(v,V)):O.each(ot(v,V)));const F=K(G.exit()).remove();typeof G.transition=="function"&&F.selectAll("path").attrTween("d",A);const X=F.selectAll("text").attr("x",s/2).attr("y",e/2);return x!==null&&(P.style("font-size","0px"),O.style("font-size",x),X.style("font-size","0px")),{circles:v,textCentres:C,nodes:G,enter:L,update:z,exit:F}}return c.wrap=function(y){return arguments.length?(u=y,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(y){return arguments.length?(s=y,c):s},c.height=function(y){return arguments.length?(e=y,c):e},c.padding=function(y){return arguments.length?(i=y,c):i},c.distinct=function(y){return arguments.length?(b=y,c):b},c.colours=function(y){return arguments.length?(g=y,c):g},c.colors=function(y){return arguments.length?(g=y,c):g},c.fontSize=function(y){return arguments.length?(x=y,c):x},c.round=function(y){return arguments.length?(p=y,c):p},c.duration=function(y){return arguments.length?(o=y,c):o},c.layoutFunction=function(y){return arguments.length?(m=y,c):m},c.normalize=function(y){return arguments.length?(l=y,c):l},c.scaleToFit=function(y){return arguments.length?(f=y,c):f},c.styled=function(y){return arguments.length?(a=y,c):a},c.orientation=function(y){return arguments.length?(r=y,c):r},c.orientationOrder=function(y){return arguments.length?(h=y,c):h},c.lossFunction=function(y){return arguments.length?(_=y==="default"?tt:y==="logRatio"?At:y,c):_},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,o=n(s)||"",r=o.split(/\s+/).reverse(),f=(o.length+r.length)/3;let u=r.pop(),a=[u],x=0;const h=1.1;e.textContent=null;const b=[];function p(g){const m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=p(u);for(;u=r.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>f&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=p(u),x++)}const E=.35-x*h/2,w=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",w),g.setAttribute("y",S),g.setAttribute("dy",`${E+m*h}em`)})}}function rt(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i<n.length;++i){const o=n[i].radius-q(n[i],t);o<=e&&(e=o)}for(let i=0;i<s.length;++i){const o=q(s[i],t)-s[i].radius;o<=e&&(e=o)}return e}function Nt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],o=rt(e[0],t,n);for(let a=1;a<e.length;++a){const x=rt(e[a],t,n);x>=o&&(i=e[a],o=x)}const r=Tt(a=>-1*rt({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:r[0],y:r[1]};let f=!0;for(const a of t)if(q(l,a)>a.radius){f=!1;break}for(const a of n)if(q(l,a)<a.radius){f=!1;break}if(f)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?Nt(t,[]):wt(u.arcs.map(a=>a.p1))}function se(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],o=t[i];for(let r=e+1;r<s.length;++r){const l=s[r],f=t[l],u=q(o,f);u+f.radius<=o.radius+1e-10?n[l].push(i):u+o.radius<=f.radius+1e-10&&n[i].push(l)}}return n}function jt(t,n,s){const e={},i=se(t);for(let o=0;o<n.length;++o){const r=n[o].sets,l={},f={};for(let h=0;h<r.length;++h){l[r[h]]=!0;const b=i[r[h]];for(let p=0;p<b.length;++p)f[b[p]]=!0}const u=[],a=[];for(let h in t)h in l?u.push(t[h]):h in f||a.push(t[h]);const x=Nt(u,a,s);e[r]=x,x.disjoint&&n[o].size>0&&console.log("WARNING: area "+r+" not represented on screen")}return e}function ie(t,n,s){const e=[];return e.push(`
2
2
  M`,t,n),e.push(`
3
3
  m`,-s,0),e.push(`
4
4
  a`,s,s,0,1,0,s*2,0),e.push(`
@@ -1,6 +1,6 @@
1
- import { p as Mt } from "./chunk-JWPE2WC7-CZnRHc3B.js";
2
- import { z as Nt, A as zt, a7 as Lt, a6 as Tt, G as At, J as Xt, _ as u, am as Et, ag as Yt, ai as K, Q as U, al as It, R as Bt, ac as Ft, K as V } from "./extractHeadings-CUTXOBTa.js";
3
- import { p as Rt } from "./cynefin-VYW2F7L2-Bkk-F_Js.js";
1
+ import { p as Mt } from "./chunk-JWPE2WC7-05_7DU1b.js";
2
+ import { G as Nt, J as zt, a9 as Lt, a8 as Tt, K as At, O as Xt, _ as u, ao as Et, ai as Yt, ak as J, U as Q, an as It, V as Bt, ae as Ft, Q as V } from "./extractHeadings-BUjTmniO.js";
3
+ import { p as Ot } from "./cynefin-VYW2F7L2-Bkk-F_Js.js";
4
4
  var G = /* @__PURE__ */ u((o, r) => {
5
5
  const e = o <= 1 ? o * 100 : o;
6
6
  if (e < 0 || e > 100)
@@ -11,7 +11,7 @@ var G = /* @__PURE__ */ u((o, r) => {
11
11
  }, "toPercent"), A = /* @__PURE__ */ u((o, r, e) => ({
12
12
  x: G(r, `${e} evolution`),
13
13
  y: G(o, `${e} visibility`)
14
- }), "toCoordinates"), Q = /* @__PURE__ */ u((o) => {
14
+ }), "toCoordinates"), K = /* @__PURE__ */ u((o) => {
15
15
  if (o) {
16
16
  if (o === "+<>")
17
17
  return "bidirectional";
@@ -20,7 +20,7 @@ var G = /* @__PURE__ */ u((o, r) => {
20
20
  if (o === "+>")
21
21
  return "forward";
22
22
  }
23
- }, "getFlowFromPort"), Ot = /* @__PURE__ */ u((o) => {
23
+ }, "getFlowFromPort"), Rt = /* @__PURE__ */ u((o) => {
24
24
  if (!o?.startsWith("+"))
25
25
  return {};
26
26
  const e = /^\+'([^']*)'/.exec(o)?.[1];
@@ -61,11 +61,11 @@ var G = /* @__PURE__ */ u((o, r) => {
61
61
  );
62
62
  const a = h.y;
63
63
  r.startPipeline(e.parent), e.components.forEach((d) => {
64
- const w = `${e.parent}_${d.name}`, C = d.label ? (d.label.negX ? -1 : 1) * d.label.offsetX : void 0, g = d.label ? (d.label.negY ? -1 : 1) * d.label.offsetY : void 0, R = G(d.evolution, `Pipeline component "${d.name}" evolution`);
64
+ const w = `${e.parent}_${d.name}`, C = d.label ? (d.label.negX ? -1 : 1) * d.label.offsetX : void 0, g = d.label ? (d.label.negY ? -1 : 1) * d.label.offsetY : void 0, O = G(d.evolution, `Pipeline component "${d.name}" evolution`);
65
65
  r.addNode(
66
66
  w,
67
67
  d.name,
68
- R,
68
+ O,
69
69
  a,
70
70
  "pipeline-component",
71
71
  C,
@@ -74,8 +74,8 @@ var G = /* @__PURE__ */ u((o, r) => {
74
74
  });
75
75
  }), o.links.forEach((e) => {
76
76
  const h = !!e.arrow && (e.arrow.includes("-.->") || e.arrow.includes(".-."));
77
- let a = Q(e.fromPort) ?? Q(e.toPort);
78
- const { flow: d, label: w } = Ot(e.arrow);
77
+ let a = K(e.fromPort) ?? K(e.toPort);
78
+ const { flow: d, label: w } = Rt(e.arrow);
79
79
  !a && d && (a = d);
80
80
  const C = e.linkLabel, g = w ?? C;
81
81
  r.addLink(r.resolveNodeId(e.from), r.resolveNodeId(e.to), h, g, a);
@@ -109,8 +109,8 @@ var G = /* @__PURE__ */ u((o, r) => {
109
109
  yy: void 0
110
110
  },
111
111
  parse: /* @__PURE__ */ u(async (o) => {
112
- const r = await Rt("wardley", o);
113
- U.debug(r);
112
+ const r = await Ot("wardley", o);
113
+ Q.debug(r);
114
114
  const e = tt.parser?.yy;
115
115
  if (!e || typeof e.addNode != "function")
116
116
  throw new Error(
@@ -368,18 +368,18 @@ var Gt = {
368
368
  useMaxWidth: o?.useMaxWidth ?? !0
369
369
  };
370
370
  }, "getConfigValues"), Vt = /* @__PURE__ */ u((o, r, e, h) => {
371
- U.debug(`Rendering Wardley map
371
+ Q.debug(`Rendering Wardley map
372
372
  ` + o);
373
- const a = jt(), d = Ht(), w = a.nodeRadius * 1.6, C = h.db, g = C.getWardleyData(), R = C.getDiagramTitle(), S = g.size?.width ?? a.width, b = g.size?.height ?? a.height, Y = It(r);
373
+ const a = jt(), d = Ht(), w = a.nodeRadius * 1.6, C = h.db, g = C.getWardleyData(), O = C.getDiagramTitle(), S = g.size?.width ?? a.width, b = g.size?.height ?? a.height, Y = It(r);
374
374
  Y.selectAll("*").remove(), Bt(Y, b, S, a.useMaxWidth), Y.attr("viewBox", `0 0 ${S} ${b}`);
375
375
  const v = Y.append("g").attr("class", "wardley-map"), q = Y.append("defs");
376
376
  q.append("marker").attr("id", `arrow-${r}`).attr("viewBox", "0 0 10 10").attr("refX", 9).attr("refY", 5).attr("markerWidth", 6).attr("markerHeight", 6).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("fill", d.evolutionStroke).attr("stroke", "none"), q.append("marker").attr("id", `link-arrow-end-${r}`).attr("viewBox", "0 0 10 10").attr("refX", 9).attr("refY", 5).attr("markerWidth", 5).attr("markerHeight", 5).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("fill", d.linkStroke).attr("stroke", "none"), q.append("marker").attr("id", `link-arrow-start-${r}`).attr("viewBox", "0 0 10 10").attr("refX", 1).attr("refY", 5).attr("markerWidth", 5).attr("markerHeight", 5).attr("orient", "auto").append("path").attr("d", "M 10 0 L 0 5 L 10 10 z").attr("fill", d.linkStroke).attr("stroke", "none"), v.append("rect").attr("class", "wardley-background").attr("width", S).attr("height", b).attr("fill", d.backgroundColor);
377
377
  const I = S - a.padding * 2, B = b - a.padding * 2;
378
- R && v.append("text").attr("class", "wardley-title").attr("x", S / 2).attr("y", a.padding / 2).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize * 1.05).attr("font-weight", "bold").attr("text-anchor", "middle").attr("dominant-baseline", "middle").text(R);
379
- const z = /* @__PURE__ */ u((t) => a.padding + t / 100 * I, "projectX"), L = /* @__PURE__ */ u((t) => b - a.padding - t / 100 * B, "projectY"), O = v.append("g").attr("class", "wardley-axes");
380
- O.append("line").attr("x1", a.padding).attr("x2", S - a.padding).attr("y1", b - a.padding).attr("y2", b - a.padding).attr("stroke", d.axisColor).attr("stroke-width", 1), O.append("line").attr("x1", a.padding).attr("x2", a.padding).attr("y1", a.padding).attr("y2", b - a.padding).attr("stroke", d.axisColor).attr("stroke-width", 1);
378
+ O && v.append("text").attr("class", "wardley-title").attr("x", S / 2).attr("y", a.padding / 2).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize * 1.05).attr("font-weight", "bold").attr("text-anchor", "middle").attr("dominant-baseline", "middle").text(O);
379
+ const z = /* @__PURE__ */ u((t) => a.padding + t / 100 * I, "projectX"), L = /* @__PURE__ */ u((t) => b - a.padding - t / 100 * B, "projectY"), R = v.append("g").attr("class", "wardley-axes");
380
+ R.append("line").attr("x1", a.padding).attr("x2", S - a.padding).attr("y1", b - a.padding).attr("y2", b - a.padding).attr("stroke", d.axisColor).attr("stroke-width", 1), R.append("line").attr("x1", a.padding).attr("x2", a.padding).attr("y1", a.padding).attr("y2", b - a.padding).attr("stroke", d.axisColor).attr("stroke-width", 1);
381
381
  const wt = g.axes.xLabel ?? "Evolution", mt = g.axes.yLabel ?? "Visibility";
382
- O.append("text").attr("class", "wardley-axis-label wardley-axis-label-x").attr("x", a.padding + I / 2).attr("y", b - a.padding / 4).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize).attr("font-weight", "bold").attr("text-anchor", "middle").text(wt), O.append("text").attr("class", "wardley-axis-label wardley-axis-label-y").attr("x", a.padding / 3).attr("y", a.padding + B / 2).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize).attr("font-weight", "bold").attr("text-anchor", "middle").attr(
382
+ R.append("text").attr("class", "wardley-axis-label wardley-axis-label-x").attr("x", a.padding + I / 2).attr("y", b - a.padding / 4).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize).attr("font-weight", "bold").attr("text-anchor", "middle").text(wt), R.append("text").attr("class", "wardley-axis-label wardley-axis-label-y").attr("x", a.padding / 3).attr("y", a.padding + B / 2).attr("fill", d.axisTextColor).attr("font-size", a.axisFontSize).attr("font-weight", "bold").attr("text-anchor", "middle").attr(
383
383
  "transform",
384
384
  `rotate(-90 ${a.padding / 3} ${a.padding + B / 2})`
385
385
  ).text(mt);
@@ -443,12 +443,12 @@ var Gt = {
443
443
  }
444
444
  });
445
445
  }
446
- const _ = v.append("g").attr("class", "wardley-links"), Z = /* @__PURE__ */ new Map();
446
+ const _ = v.append("g").attr("class", "wardley-links"), U = /* @__PURE__ */ new Map();
447
447
  g.pipelines.forEach((t) => {
448
- Z.set(t.nodeId, new Set(t.componentIds));
448
+ U.set(t.nodeId, new Set(t.componentIds));
449
449
  });
450
- const J = g.links.filter((t) => !(!c.has(t.source) || !c.has(t.target) || Z.get(t.target)?.has(t.source)));
451
- _.selectAll("line").data(J).enter().append("line").attr("class", (t) => `wardley-link${t.dashed ? " wardley-link--dashed" : ""}`).attr("x1", (t) => {
450
+ const Z = g.links.filter((t) => !(!c.has(t.source) || !c.has(t.target) || U.get(t.target)?.has(t.source)));
451
+ _.selectAll("line").data(Z).enter().append("line").attr("class", (t) => `wardley-link${t.dashed ? " wardley-link--dashed" : ""}`).attr("x1", (t) => {
452
452
  const s = c.get(t.source), n = c.get(t.target), p = g.nodes.find((y) => y.id === t.source).isPipelineParent ? w / Math.sqrt(2) : a.nodeRadius, l = n.x - s.x, f = n.y - s.y, x = Math.sqrt(l * l + f * f);
453
453
  return s.x + l / x * p;
454
454
  }).attr("y1", (t) => {
@@ -460,7 +460,7 @@ var Gt = {
460
460
  }).attr("y2", (t) => {
461
461
  const s = c.get(t.source), n = c.get(t.target), p = g.nodes.find((y) => y.id === t.target).isPipelineParent ? w / Math.sqrt(2) : a.nodeRadius, l = s.x - n.x, f = s.y - n.y, x = Math.sqrt(l * l + f * f);
462
462
  return n.y + f / x * p;
463
- }).attr("stroke", d.linkStroke).attr("stroke-width", 1).attr("stroke-dasharray", (t) => t.dashed ? "6 6" : null).attr("marker-end", (t) => t.flow === "forward" || t.flow === "bidirectional" ? `url(#link-arrow-end-${r})` : null).attr("marker-start", (t) => t.flow === "backward" || t.flow === "bidirectional" ? `url(#link-arrow-start-${r})` : null), _.selectAll("text").data(J.filter((t) => t.label)).enter().append("text").attr("class", "wardley-link-label").attr("x", (t) => {
463
+ }).attr("stroke", d.linkStroke).attr("stroke-width", 1).attr("stroke-dasharray", (t) => t.dashed ? "6 6" : null).attr("marker-end", (t) => t.flow === "forward" || t.flow === "bidirectional" ? `url(#link-arrow-end-${r})` : null).attr("marker-start", (t) => t.flow === "backward" || t.flow === "bidirectional" ? `url(#link-arrow-start-${r})` : null), _.selectAll("text").data(Z.filter((t) => t.label)).enter().append("text").attr("class", "wardley-link-label").attr("x", (t) => {
464
464
  const s = c.get(t.source), n = c.get(t.target), i = (s.x + n.x) / 2, p = n.y - s.y, l = n.x - s.x, f = Math.sqrt(l * l + p * p), x = 8, y = p / f;
465
465
  return i + y * x;
466
466
  }).attr("y", (t) => {
@@ -601,10 +601,10 @@ var Gt = {
601
601
  }
602
602
  }, "draw"), _t = {
603
603
  draw: Vt
604
- }, Zt = /* @__PURE__ */ u(({
604
+ }, Ut = /* @__PURE__ */ u(({
605
605
  wardley: o
606
606
  } = {}) => {
607
- const r = Et(), e = Yt(), h = K(r, e.themeVariables), a = K(h.wardley, o);
607
+ const r = Et(), e = Yt(), h = J(r, e.themeVariables), a = J(h.wardley, o);
608
608
  return `
609
609
  .wardley-background {
610
610
  fill: ${a.backgroundColor};
@@ -668,7 +668,7 @@ var Gt = {
668
668
  parser: tt,
669
669
  db: Gt,
670
670
  renderer: _t,
671
- styles: Zt
671
+ styles: Ut
672
672
  };
673
673
  export {
674
674
  te as diagram
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pt=require("./chunk-JWPE2WC7-BhnZoEDO.cjs"),f=require("./extractHeadings-agc-00bD.cjs"),Ct=require("./cynefin-VYW2F7L2-MpAliYy9.cjs");var D=f.__name((o,r)=>{const e=o<=1?o*100:o;if(e<0||e>100)throw new Error(`${r} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${o}`);return e},"toPercent"),L=f.__name((o,r,e)=>({x:D(r,`${e} evolution`),y:D(o,`${e} visibility`)}),"toCoordinates"),J=f.__name(o=>{if(o){if(o==="+<>")return"bidirectional";if(o==="+<")return"backward";if(o==="+>")return"forward"}},"getFlowFromPort"),St=f.__name(o=>{if(!o?.startsWith("+"))return{};const e=/^\+'([^']*)'/.exec(o)?.[1];return o.includes("<>")?{flow:"bidirectional",label:e}:o.includes("<")?{flow:"backward",label:e}:o.includes(">")?{flow:"forward",label:e}:{label:e}},"extractFlowFromArrow"),Mt=f.__name((o,r)=>{if(Pt.populateCommonDb(o,r),o.size&&r.setSize(o.size.width,o.size.height),o.evolution){const e=o.evolution.stages.map(a=>a.secondName?`${a.name.trim()} / ${a.secondName.trim()}`:a.name.trim()),g=o.evolution.stages.filter(a=>a.boundary!==void 0).map(a=>a.boundary);r.updateAxes({stages:e,stageBoundaries:g})}if(o.anchors.forEach(e=>{const g=L(e.visibility,e.evolution,`Anchor "${e.name}"`);r.addNode(e.name,e.name,g.x,g.y,"anchor")}),o.components.forEach(e=>{const g=L(e.visibility,e.evolution,`Component "${e.name}"`),a=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,d=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,m=e.decorator?.strategy;r.addNode(e.name,e.name,g.x,g.y,"component",a,d,e.inertia,m)}),o.notes.forEach(e=>{const g=L(e.visibility,e.evolution,`Note "${e.text}"`);r.addNote(e.text,g.x,g.y)}),o.pipelines.forEach(e=>{const g=r.getNode(e.parent);if(!g||typeof g.y!="number")throw new Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);const a=g.y;r.startPipeline(e.parent),e.components.forEach(d=>{const m=`${e.parent}_${d.name}`,C=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,y=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,B=D(d.evolution,`Pipeline component "${d.name}" evolution`);r.addNode(m,d.name,B,a,"pipeline-component",C,y),r.addPipelineComponent(e.parent,m)})}),o.links.forEach(e=>{const g=!!e.arrow&&(e.arrow.includes("-.->")||e.arrow.includes(".-."));let a=J(e.fromPort)??J(e.toPort);const{flow:d,label:m}=St(e.arrow);!a&&d&&(a=d);const C=e.linkLabel,y=m??C;r.addLink(r.resolveNodeId(e.from),r.resolveNodeId(e.to),g,y,a)}),o.evolves.forEach(e=>{const g=r.getNode(e.component);if(g?.y!==void 0){const a=D(e.target,`Evolve target for "${e.component}"`);r.addTrend(e.component,a,g.y)}}),o.annotations.length>0){const e=o.annotations[0],g=L(e.x,e.y,"Annotations box");r.setAnnotationsBox(g.x,g.y)}o.annotation.forEach(e=>{const g=L(e.x,e.y,`Annotation ${e.number}`);r.addAnnotation(e.number,[{x:g.x,y:g.y}],e.text)}),o.accelerators.forEach(e=>{const g=L(e.x,e.y,`Accelerator "${e.name}"`);r.addAccelerator(e.name,g.x,g.y)}),o.deaccelerators.forEach(e=>{const g=L(e.x,e.y,`Deaccelerator "${e.name}"`);r.addDeaccelerator(e.name,g.x,g.y)})},"populateDb"),U={parser:{yy:void 0},parse:f.__name(async o=>{const r=await Ct.parse("wardley",o);f.log.debug(r);const e=U.parser?.yy;if(!e||typeof e.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Mt(r,e)},"parse")},X,_t=(X=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}addNode(r){const e=this.nodes.get(r.id)??{id:r.id,label:r.label},g={...e,...r,className:r.className??e.className,labelOffsetX:r.labelOffsetX??e.labelOffsetX,labelOffsetY:r.labelOffsetY??e.labelOffsetY};this.nodes.set(r.id,g)}addLink(r){this.links.push(r)}addTrend(r){this.trends.set(r.nodeId,r)}startPipeline(r){this.pipelines.set(r,{nodeId:r,componentIds:[]});const e=this.nodes.get(r);e&&(e.isPipelineParent=!0)}addPipelineComponent(r,e){const g=this.pipelines.get(r);g&&g.componentIds.push(e);const a=this.nodes.get(e);a&&(a.inPipeline=!0)}addAnnotation(r){this.annotations.push(r)}addNote(r){this.notes.push(r)}addAccelerator(r){this.accelerators.push(r)}addDeaccelerator(r){this.deaccelerators.push(r)}setAnnotationsBox(r,e){this.annotationsBox={x:r,y:e}}setAxes(r){this.axes={...this.axes,...r}}setSize(r,e){this.size={width:r,height:e}}getNode(r){return this.nodes.get(r)}resolveNodeId(r){if(this.nodes.has(r))return r;for(const[e,g]of this.nodes)if(g.label===r)return e;return r}build(){const r=[];for(const e of this.nodes.values()){if(typeof e.x!="number"||typeof e.y!="number")throw new Error(`Node "${e.label}" is missing coordinates`);r.push(e)}return{nodes:r,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},f.__name(X,"WardleyBuilder"),X),k=new _t;function K(){return f.getConfig2()["wardley-beta"]}f.__name(K,"getConfig");function Q(o,r,e,g,a,d,m,C,y){k.addNode({id:o,label:r,x:e,y:g,className:a,labelOffsetX:d,labelOffsetY:m,inertia:C,sourceStrategy:y})}f.__name(Q,"addNode");function tt(o,r,e=!1,g,a){k.addLink({source:o,target:r,dashed:e,label:g,flow:a})}f.__name(tt,"addLink");function et(o,r,e){k.addTrend({nodeId:o,targetX:r,targetY:e})}f.__name(et,"addTrend");function at(o,r,e){k.addAnnotation({number:o,coordinates:r,text:e})}f.__name(at,"addAnnotation");function rt(o,r,e){k.addNote({text:o,x:r,y:e})}f.__name(rt,"addNote");function ot(o,r,e){k.addAccelerator({name:o,x:r,y:e})}f.__name(ot,"addAccelerator");function nt(o,r,e){k.addDeaccelerator({name:o,x:r,y:e})}f.__name(nt,"addDeaccelerator");function st(o,r){k.setAnnotationsBox(o,r)}f.__name(st,"setAnnotationsBox");function it(o,r){k.setSize(o,r)}f.__name(it,"setSize");function dt(o){k.startPipeline(o)}f.__name(dt,"startPipeline");function lt(o,r){k.addPipelineComponent(o,r)}f.__name(lt,"addPipelineComponent");function ct(o){k.setAxes(o)}f.__name(ct,"updateAxes");function pt(o){return k.getNode(o)}f.__name(pt,"getNode");function ft(o){return k.resolveNodeId(o)}f.__name(ft,"resolveNodeId");function ht(){return k.build()}f.__name(ht,"getWardleyData");function gt(){k.clear(),f.clear()}f.__name(gt,"clear");var Nt={getConfig:K,addNode:Q,addLink:tt,addTrend:et,addAnnotation:at,addNote:rt,addAccelerator:ot,addDeaccelerator:nt,setAnnotationsBox:st,setSize:it,startPipeline:dt,addPipelineComponent:lt,updateAxes:ct,getNode:pt,resolveNodeId:ft,getWardleyData:ht,clear:gt,setAccTitle:f.setAccTitle,getAccTitle:f.getAccTitle,setDiagramTitle:f.setDiagramTitle,getDiagramTitle:f.getDiagramTitle,getAccDescription:f.getAccDescription,setAccDescription:f.setAccDescription},Tt=["Genesis","Custom Built","Product","Commodity"],At=f.__name(()=>{const{themeVariables:o}=f.getConfig2();return{backgroundColor:o.wardley?.backgroundColor??o.background??"#fff",axisColor:o.wardley?.axisColor??"#000",axisTextColor:o.wardley?.axisTextColor??o.primaryTextColor??"#222",gridColor:o.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:o.wardley?.componentFill??"#fff",componentStroke:o.wardley?.componentStroke??"#000",componentLabelColor:o.wardley?.componentLabelColor??o.primaryTextColor??"#222",linkStroke:o.wardley?.linkStroke??"#000",evolutionStroke:o.wardley?.evolutionStroke??"#dc3545",annotationStroke:o.wardley?.annotationStroke??"#000",annotationTextColor:o.wardley?.annotationTextColor??o.primaryTextColor??"#222",annotationFill:o.wardley?.annotationFill??o.background??"#fff"}},"getTheme"),Lt=f.__name(()=>{const o=f.getConfig2()["wardley-beta"];return{width:o?.width??900,height:o?.height??600,padding:o?.padding??48,nodeRadius:o?.nodeRadius??6,nodeLabelOffset:o?.nodeLabelOffset??8,axisFontSize:o?.axisFontSize??12,labelFontSize:o?.labelFontSize??10,showGrid:o?.showGrid??!1,useMaxWidth:o?.useMaxWidth??!0}},"getConfigValues"),zt=f.__name((o,r,e,g)=>{f.log.debug(`Rendering Wardley map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pt=require("./chunk-JWPE2WC7-CF8PY84Z.cjs"),f=require("./extractHeadings-Dkf-aqDu.cjs"),Ct=require("./cynefin-VYW2F7L2-MpAliYy9.cjs");var D=f.__name((o,r)=>{const e=o<=1?o*100:o;if(e<0||e>100)throw new Error(`${r} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${o}`);return e},"toPercent"),L=f.__name((o,r,e)=>({x:D(r,`${e} evolution`),y:D(o,`${e} visibility`)}),"toCoordinates"),J=f.__name(o=>{if(o){if(o==="+<>")return"bidirectional";if(o==="+<")return"backward";if(o==="+>")return"forward"}},"getFlowFromPort"),St=f.__name(o=>{if(!o?.startsWith("+"))return{};const e=/^\+'([^']*)'/.exec(o)?.[1];return o.includes("<>")?{flow:"bidirectional",label:e}:o.includes("<")?{flow:"backward",label:e}:o.includes(">")?{flow:"forward",label:e}:{label:e}},"extractFlowFromArrow"),Mt=f.__name((o,r)=>{if(Pt.populateCommonDb(o,r),o.size&&r.setSize(o.size.width,o.size.height),o.evolution){const e=o.evolution.stages.map(a=>a.secondName?`${a.name.trim()} / ${a.secondName.trim()}`:a.name.trim()),g=o.evolution.stages.filter(a=>a.boundary!==void 0).map(a=>a.boundary);r.updateAxes({stages:e,stageBoundaries:g})}if(o.anchors.forEach(e=>{const g=L(e.visibility,e.evolution,`Anchor "${e.name}"`);r.addNode(e.name,e.name,g.x,g.y,"anchor")}),o.components.forEach(e=>{const g=L(e.visibility,e.evolution,`Component "${e.name}"`),a=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,d=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,m=e.decorator?.strategy;r.addNode(e.name,e.name,g.x,g.y,"component",a,d,e.inertia,m)}),o.notes.forEach(e=>{const g=L(e.visibility,e.evolution,`Note "${e.text}"`);r.addNote(e.text,g.x,g.y)}),o.pipelines.forEach(e=>{const g=r.getNode(e.parent);if(!g||typeof g.y!="number")throw new Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);const a=g.y;r.startPipeline(e.parent),e.components.forEach(d=>{const m=`${e.parent}_${d.name}`,C=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,y=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,B=D(d.evolution,`Pipeline component "${d.name}" evolution`);r.addNode(m,d.name,B,a,"pipeline-component",C,y),r.addPipelineComponent(e.parent,m)})}),o.links.forEach(e=>{const g=!!e.arrow&&(e.arrow.includes("-.->")||e.arrow.includes(".-."));let a=J(e.fromPort)??J(e.toPort);const{flow:d,label:m}=St(e.arrow);!a&&d&&(a=d);const C=e.linkLabel,y=m??C;r.addLink(r.resolveNodeId(e.from),r.resolveNodeId(e.to),g,y,a)}),o.evolves.forEach(e=>{const g=r.getNode(e.component);if(g?.y!==void 0){const a=D(e.target,`Evolve target for "${e.component}"`);r.addTrend(e.component,a,g.y)}}),o.annotations.length>0){const e=o.annotations[0],g=L(e.x,e.y,"Annotations box");r.setAnnotationsBox(g.x,g.y)}o.annotation.forEach(e=>{const g=L(e.x,e.y,`Annotation ${e.number}`);r.addAnnotation(e.number,[{x:g.x,y:g.y}],e.text)}),o.accelerators.forEach(e=>{const g=L(e.x,e.y,`Accelerator "${e.name}"`);r.addAccelerator(e.name,g.x,g.y)}),o.deaccelerators.forEach(e=>{const g=L(e.x,e.y,`Deaccelerator "${e.name}"`);r.addDeaccelerator(e.name,g.x,g.y)})},"populateDb"),U={parser:{yy:void 0},parse:f.__name(async o=>{const r=await Ct.parse("wardley",o);f.log.debug(r);const e=U.parser?.yy;if(!e||typeof e.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Mt(r,e)},"parse")},X,_t=(X=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}addNode(r){const e=this.nodes.get(r.id)??{id:r.id,label:r.label},g={...e,...r,className:r.className??e.className,labelOffsetX:r.labelOffsetX??e.labelOffsetX,labelOffsetY:r.labelOffsetY??e.labelOffsetY};this.nodes.set(r.id,g)}addLink(r){this.links.push(r)}addTrend(r){this.trends.set(r.nodeId,r)}startPipeline(r){this.pipelines.set(r,{nodeId:r,componentIds:[]});const e=this.nodes.get(r);e&&(e.isPipelineParent=!0)}addPipelineComponent(r,e){const g=this.pipelines.get(r);g&&g.componentIds.push(e);const a=this.nodes.get(e);a&&(a.inPipeline=!0)}addAnnotation(r){this.annotations.push(r)}addNote(r){this.notes.push(r)}addAccelerator(r){this.accelerators.push(r)}addDeaccelerator(r){this.deaccelerators.push(r)}setAnnotationsBox(r,e){this.annotationsBox={x:r,y:e}}setAxes(r){this.axes={...this.axes,...r}}setSize(r,e){this.size={width:r,height:e}}getNode(r){return this.nodes.get(r)}resolveNodeId(r){if(this.nodes.has(r))return r;for(const[e,g]of this.nodes)if(g.label===r)return e;return r}build(){const r=[];for(const e of this.nodes.values()){if(typeof e.x!="number"||typeof e.y!="number")throw new Error(`Node "${e.label}" is missing coordinates`);r.push(e)}return{nodes:r,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},f.__name(X,"WardleyBuilder"),X),k=new _t;function K(){return f.getConfig2()["wardley-beta"]}f.__name(K,"getConfig");function Q(o,r,e,g,a,d,m,C,y){k.addNode({id:o,label:r,x:e,y:g,className:a,labelOffsetX:d,labelOffsetY:m,inertia:C,sourceStrategy:y})}f.__name(Q,"addNode");function tt(o,r,e=!1,g,a){k.addLink({source:o,target:r,dashed:e,label:g,flow:a})}f.__name(tt,"addLink");function et(o,r,e){k.addTrend({nodeId:o,targetX:r,targetY:e})}f.__name(et,"addTrend");function at(o,r,e){k.addAnnotation({number:o,coordinates:r,text:e})}f.__name(at,"addAnnotation");function rt(o,r,e){k.addNote({text:o,x:r,y:e})}f.__name(rt,"addNote");function ot(o,r,e){k.addAccelerator({name:o,x:r,y:e})}f.__name(ot,"addAccelerator");function nt(o,r,e){k.addDeaccelerator({name:o,x:r,y:e})}f.__name(nt,"addDeaccelerator");function st(o,r){k.setAnnotationsBox(o,r)}f.__name(st,"setAnnotationsBox");function it(o,r){k.setSize(o,r)}f.__name(it,"setSize");function dt(o){k.startPipeline(o)}f.__name(dt,"startPipeline");function lt(o,r){k.addPipelineComponent(o,r)}f.__name(lt,"addPipelineComponent");function ct(o){k.setAxes(o)}f.__name(ct,"updateAxes");function pt(o){return k.getNode(o)}f.__name(pt,"getNode");function ft(o){return k.resolveNodeId(o)}f.__name(ft,"resolveNodeId");function ht(){return k.build()}f.__name(ht,"getWardleyData");function gt(){k.clear(),f.clear()}f.__name(gt,"clear");var Nt={getConfig:K,addNode:Q,addLink:tt,addTrend:et,addAnnotation:at,addNote:rt,addAccelerator:ot,addDeaccelerator:nt,setAnnotationsBox:st,setSize:it,startPipeline:dt,addPipelineComponent:lt,updateAxes:ct,getNode:pt,resolveNodeId:ft,getWardleyData:ht,clear:gt,setAccTitle:f.setAccTitle,getAccTitle:f.getAccTitle,setDiagramTitle:f.setDiagramTitle,getDiagramTitle:f.getDiagramTitle,getAccDescription:f.getAccDescription,setAccDescription:f.setAccDescription},Tt=["Genesis","Custom Built","Product","Commodity"],At=f.__name(()=>{const{themeVariables:o}=f.getConfig2();return{backgroundColor:o.wardley?.backgroundColor??o.background??"#fff",axisColor:o.wardley?.axisColor??"#000",axisTextColor:o.wardley?.axisTextColor??o.primaryTextColor??"#222",gridColor:o.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:o.wardley?.componentFill??"#fff",componentStroke:o.wardley?.componentStroke??"#000",componentLabelColor:o.wardley?.componentLabelColor??o.primaryTextColor??"#222",linkStroke:o.wardley?.linkStroke??"#000",evolutionStroke:o.wardley?.evolutionStroke??"#dc3545",annotationStroke:o.wardley?.annotationStroke??"#000",annotationTextColor:o.wardley?.annotationTextColor??o.primaryTextColor??"#222",annotationFill:o.wardley?.annotationFill??o.background??"#fff"}},"getTheme"),Lt=f.__name(()=>{const o=f.getConfig2()["wardley-beta"];return{width:o?.width??900,height:o?.height??600,padding:o?.padding??48,nodeRadius:o?.nodeRadius??6,nodeLabelOffset:o?.nodeLabelOffset??8,axisFontSize:o?.axisFontSize??12,labelFontSize:o?.labelFontSize??10,showGrid:o?.showGrid??!1,useMaxWidth:o?.useMaxWidth??!0}},"getConfigValues"),zt=f.__name((o,r,e,g)=>{f.log.debug(`Rendering Wardley map
2
2
  `+o);const a=Lt(),d=At(),m=a.nodeRadius*1.6,C=g.db,y=C.getWardleyData(),B=C.getDiagramTitle(),S=y.size?.width??a.width,b=y.size?.height??a.height,E=f.selectSvgElement(r);E.selectAll("*").remove(),f.configureSvgSize(E,b,S,a.useMaxWidth),E.attr("viewBox",`0 0 ${S} ${b}`);const v=E.append("g").attr("class","wardley-map"),G=E.append("defs");G.append("marker").attr("id",`arrow-${r}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),G.append("marker").attr("id",`link-arrow-end-${r}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),G.append("marker").attr("id",`link-arrow-start-${r}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),v.append("rect").attr("class","wardley-background").attr("width",S).attr("height",b).attr("fill",d.backgroundColor);const Y=S-a.padding*2,I=b-a.padding*2;B&&v.append("text").attr("class","wardley-title").attr("x",S/2).attr("y",a.padding/2).attr("fill",d.axisTextColor).attr("font-size",a.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(B);const N=f.__name(t=>a.padding+t/100*Y,"projectX"),T=f.__name(t=>b-a.padding-t/100*I,"projectY"),O=v.append("g").attr("class","wardley-axes");O.append("line").attr("x1",a.padding).attr("x2",S-a.padding).attr("y1",b-a.padding).attr("y2",b-a.padding).attr("stroke",d.axisColor).attr("stroke-width",1),O.append("line").attr("x1",a.padding).attr("x2",a.padding).attr("y1",a.padding).attr("y2",b-a.padding).attr("stroke",d.axisColor).attr("stroke-width",1);const xt=y.axes.xLabel??"Evolution",yt=y.axes.yLabel??"Visibility";O.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",a.padding+Y/2).attr("y",b-a.padding/4).attr("fill",d.axisTextColor).attr("font-size",a.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(xt),O.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",a.padding/3).attr("y",a.padding+I/2).attr("fill",d.axisTextColor).attr("font-size",a.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${a.padding/3} ${a.padding+I/2})`).text(yt);const F=y.axes.stages&&y.axes.stages.length>0?y.axes.stages:Tt;if(F.length>0){const t=v.append("g").attr("class","wardley-stages"),s=y.axes.stageBoundaries,n=[];if(s&&s.length===F.length){let i=0;s.forEach(p=>{n.push({start:i,end:p}),i=p})}else{const i=1/F.length;F.forEach((p,l)=>{n.push({start:l*i,end:(l+1)*i})})}F.forEach((i,p)=>{const l=n[p],h=a.padding+l.start*Y,x=a.padding+l.end*Y,u=(h+x)/2;p>0&&t.append("line").attr("x1",h).attr("x2",h).attr("y1",a.padding).attr("y2",b-a.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",u).attr("y",b-a.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",a.axisFontSize-2).attr("text-anchor","middle").text(i)})}if(a.showGrid){const t=v.append("g").attr("class","wardley-grid");for(let s=1;s<4;s++){const n=s/4,i=a.padding+Y*n;t.append("line").attr("x1",i).attr("x2",i).attr("y1",a.padding).attr("y2",b-a.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",a.padding).attr("x2",S-a.padding).attr("y1",b-a.padding-I*n).attr("y2",b-a.padding-I*n).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}const c=new Map;if(y.nodes.forEach(t=>{c.set(t.id,{x:N(t.x),y:T(t.y),node:t})}),y.pipelines.length>0){const t=v.append("g").attr("class","wardley-pipelines"),s=v.append("g").attr("class","wardley-pipeline-links");y.pipelines.forEach(n=>{if(n.componentIds.length===0)return;const i=n.componentIds.map(x=>({id:x,pos:c.get(x),node:y.nodes.find(u=>u.id===x)})).filter(x=>x.pos&&x.node).sort((x,u)=>x.node.x-u.node.x);for(let x=0;x<i.length-1;x++){const u=i[x],w=i[x+1];s.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",u.pos.x).attr("y1",u.pos.y).attr("x2",w.pos.x).attr("y2",w.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let p=1/0,l=-1/0,h=0;if(n.componentIds.forEach(x=>{const u=c.get(x);u&&(p=Math.min(p,u.x),l=Math.max(l,u.x),h=u.y)}),p!==1/0&&l!==-1/0){const u=a.nodeRadius*4,w=h-u/2,P=c.get(n.nodeId);if(P){const _=(p+l)/2;P.x=_,P.y=w-m/6}t.append("rect").attr("class","wardley-pipeline-box").attr("x",p-15).attr("y",w).attr("width",l-p+30).attr("height",u).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}const j=v.append("g").attr("class","wardley-links"),V=new Map;y.pipelines.forEach(t=>{V.set(t.nodeId,new Set(t.componentIds))});const Z=y.links.filter(t=>!(!c.has(t.source)||!c.has(t.target)||V.get(t.target)?.has(t.source)));j.selectAll("line").data(Z).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{const s=c.get(t.source),n=c.get(t.target),p=y.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):a.nodeRadius,l=n.x-s.x,h=n.y-s.y,x=Math.sqrt(l*l+h*h);return s.x+l/x*p}).attr("y1",t=>{const s=c.get(t.source),n=c.get(t.target),p=y.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):a.nodeRadius,l=n.x-s.x,h=n.y-s.y,x=Math.sqrt(l*l+h*h);return s.y+h/x*p}).attr("x2",t=>{const s=c.get(t.source),n=c.get(t.target),p=y.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):a.nodeRadius,l=s.x-n.x,h=s.y-n.y,x=Math.sqrt(l*l+h*h);return n.x+l/x*p}).attr("y2",t=>{const s=c.get(t.source),n=c.get(t.target),p=y.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):a.nodeRadius,l=s.x-n.x,h=s.y-n.y,x=Math.sqrt(l*l+h*h);return n.y+h/x*p}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>t.flow==="forward"||t.flow==="bidirectional"?`url(#link-arrow-end-${r})`:null).attr("marker-start",t=>t.flow==="backward"||t.flow==="bidirectional"?`url(#link-arrow-start-${r})`:null),j.selectAll("text").data(Z.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{const s=c.get(t.source),n=c.get(t.target),i=(s.x+n.x)/2,p=n.y-s.y,l=n.x-s.x,h=Math.sqrt(l*l+p*p),x=8,u=p/h;return i+u*x}).attr("y",t=>{const s=c.get(t.source),n=c.get(t.target),i=(s.y+n.y)/2,p=n.x-s.x,l=n.y-s.y,h=Math.sqrt(p*p+l*l),x=8,u=-p/h;return i+u*x}).attr("fill",d.axisTextColor).attr("font-size",a.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{const s=c.get(t.source),n=c.get(t.target),i=(s.x+n.x)/2,p=(s.y+n.y)/2,l=n.x-s.x,h=n.y-s.y,x=Math.sqrt(l*l+h*h),u=8,w=h/x,P=-l/x,_=i+w*u,R=p+P*u;let z=Math.atan2(h,l)*180/Math.PI;return(z>90||z<-90)&&(z+=180),`rotate(${z} ${_} ${R})`}).text(t=>t.label);const ut=v.append("g").attr("class","wardley-trends"),mt=y.trends.map(t=>{const s=c.get(t.nodeId);if(!s)return null;const n=N(t.targetX),i=T(t.targetY),p=n-s.x,l=i-s.y,h=Math.sqrt(p*p+l*l),x=a.nodeRadius+2,u=h>x?n-p/h*x:n,w=h>x?i-l/h*x:i;return{origin:s,targetX:n,targetY:i,adjustedX2:u,adjustedY2:w}}).filter(t=>t!==null);ut.selectAll("line").data(mt).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${r})`);const M=v.append("g").attr("class","wardley-nodes").selectAll("g").data(y.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));M.filter(t=>t.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",a.nodeRadius*2).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),M.filter(t=>t.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",a.nodeRadius*2).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),M.filter(t=>t.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",a.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);const A=M.filter(t=>t.sourceStrategy==="market");A.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",a.nodeRadius*2).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),M.filter(t=>!t.isPipelineParent&&t.sourceStrategy!=="market"&&t.className!=="anchor").append("circle").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",a.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);const q=a.nodeRadius*.7,$=a.nodeRadius*1.2;if(A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x).attr("y1",t=>c.get(t.id).y-$).attr("x2",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x).attr("y2",t=>c.get(t.id).y-$).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y-$).attr("r",q).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("r",q).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("r",q).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),M.filter(t=>t.isPipelineParent===!0).append("rect").attr("x",t=>c.get(t.id).x-m/2).attr("y",t=>c.get(t.id).y-m/2).attr("width",m).attr("height",m).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),M.filter(t=>t.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",t=>{const s=c.get(t.id);let n=t.isPipelineParent?m/2+15:a.nodeRadius+15;return t.sourceStrategy&&(n+=a.nodeRadius+10),s.x+n}).attr("y1",t=>{const s=c.get(t.id),n=t.isPipelineParent?m:a.nodeRadius*2;return s.y-n/2}).attr("x2",t=>{const s=c.get(t.id);let n=t.isPipelineParent?m/2+15:a.nodeRadius+15;return t.sourceStrategy&&(n+=a.nodeRadius+10),s.x+n}).attr("y2",t=>{const s=c.get(t.id),n=t.isPipelineParent?m:a.nodeRadius*2;return s.y+n/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),M.append("text").attr("x",t=>{const s=c.get(t.id);if(t.className==="anchor")return t.labelOffsetX!==void 0?s.x+t.labelOffsetX:s.x;let n=a.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetX===void 0&&(n+=10);const i=t.labelOffsetX??n;return s.x+i}).attr("y",t=>{const s=c.get(t.id);if(t.className==="anchor")return t.labelOffsetY!==void 0?s.y+t.labelOffsetY:s.y-3;let n=-a.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetY===void 0&&(n-=10);const i=t.labelOffsetY??n;return s.y+i}).attr("class","wardley-node-label").attr("fill",t=>t.className==="evolved"?d.evolutionStroke:t.className==="anchor"?"#000":d.componentLabelColor).attr("font-size",a.labelFontSize).attr("font-weight",t=>t.className==="anchor"?"bold":"normal").attr("text-anchor",t=>t.className==="anchor"?"middle":"start").attr("dominant-baseline",t=>t.className==="anchor"?"middle":"auto").text(t=>t.label),y.annotations.length>0){const t=v.append("g").attr("class","wardley-annotations");if(y.annotations.forEach(s=>{const n=s.coordinates.map(i=>({x:N(i.x),y:T(i.y)}));if(n.length>1)for(let i=0;i<n.length-1;i++)t.append("line").attr("class","wardley-annotation-line").attr("x1",n[i].x).attr("y1",n[i].y).attr("x2",n[i+1].x).attr("y2",n[i+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");n.forEach(i=>{const p=t.append("g").attr("class","wardley-annotation");p.append("circle").attr("cx",i.x).attr("cy",i.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),p.append("text").attr("x",i.x).attr("y",i.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.number)})}),y.annotationsBox){let s=N(y.annotationsBox.x),n=T(y.annotationsBox.y);const i=10,p=16,l=11,h=t.append("g").attr("class","wardley-annotations-box"),x=[...y.annotations].filter(w=>w.text).sort((w,P)=>w.number-P.number),u=[];if(x.forEach((w,P)=>{const _=h.append("text").attr("x",s+i).attr("y",n+i+(P+1)*p).attr("font-size",l).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${w.number}. ${w.text}`);u.push(_)}),u.length>0){let w=0,P=0;u.forEach(H=>{const W=H.node(),$t=W.getComputedTextLength();w=Math.max(w,$t);const vt=W.getBBox();P=Math.max(P,vt.height)});const _=w+i*2+105,R=x.length*p+i*2+P/2,z=a.padding,wt=S-a.padding-_,kt=a.padding,bt=b-a.padding-R;s=Math.max(z,Math.min(s,wt)),n=Math.max(kt,Math.min(n,bt)),u.forEach((H,W)=>{H.attr("x",s+i).attr("y",n+i+(W+1)*p)}),h.insert("rect","text").attr("x",s).attr("y",n).attr("width",_).attr("height",R).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(y.notes.length>0){const t=v.append("g").attr("class","wardley-notes");y.notes.forEach(s=>{const n=N(s.x),i=T(s.y);t.append("text").attr("x",n).attr("y",i).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.text)})}if(y.accelerators.length>0){const t=v.append("g").attr("class","wardley-accelerators");y.accelerators.forEach(s=>{const n=N(s.x),i=T(s.y),p=60,l=30,h=20,x=`
3
3
  M ${n} ${i-l/2}
4
4
  L ${n+p-h} ${i-l/2}
@@ -1,7 +1,7 @@
1
- import { z as xi, A as di, a7 as Yt, a6 as fi, G as pi, J as mi, _ as n, Q as Nt, al as yi, R as bi, ac as Ai, ag as kt, W as wi, ai as Ht, aj as Ci, am as Si, bc as Ri, au as Ot } from "./extractHeadings-CUTXOBTa.js";
1
+ import { G as xi, J as di, a9 as Yt, a8 as fi, K as pi, O as mi, _ as n, U as Nt, an as yi, V as bi, ae as Ai, ai as kt, Y as wi, ak as Ht, al as Ci, ao as Si, be as Ri, aw as Ot } from "./extractHeadings-BUjTmniO.js";
2
2
  import { i as _i } from "./init-DjUOC4st.js";
3
3
  import { o as ki } from "./ordinal-B6-f3MAq.js";
4
- import { l as Wt } from "./linear-DBHjPQ2a.js";
4
+ import { l as Wt } from "./linear-Bh2aX99D.js";
5
5
  function Ti(e, t, i) {
6
6
  e = +e, t = +t, i = (a = arguments.length) < 2 ? (t = e, e = 0, 1) : a < 3 ? 1 : +i;
7
7
  for (var s = -1, a = Math.max(0, Math.ceil((t - e) / i)) | 0, o = new Array(a); ++s < a; )
@@ -47,7 +47,7 @@ var Ct = (function() {
47
47
  var e = /* @__PURE__ */ n(function(F, h, u, g) {
48
48
  for (u = u || {}, g = F.length; g--; u[F[g]] = h) ;
49
49
  return u;
50
- }, "o"), t = [1, 10, 12, 14, 16, 18, 19, 21, 23], i = [2, 6], s = [1, 3], a = [1, 5], o = [1, 6], l = [1, 7], f = [1, 5, 10, 12, 14, 16, 18, 19, 21, 23, 36, 37, 38], d = [1, 25], k = [1, 26], T = [1, 28], _ = [1, 29], b = [1, 30], E = [1, 31], L = [1, 32], P = [1, 33], I = [1, 34], m = [1, 35], D = [1, 36], c = [1, 37], V = [1, 43], W = [1, 42], X = [1, 47], Y = [1, 50], S = [1, 10, 12, 14, 16, 18, 19, 21, 23, 36, 37, 38], H = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 28, 29, 36, 37, 38], A = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 28, 29, 36, 37, 38, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], w = [1, 65], B = [26, 28], R = {
50
+ }, "o"), t = [1, 10, 12, 14, 16, 18, 19, 21, 23], i = [2, 6], s = [1, 3], a = [1, 5], o = [1, 6], l = [1, 7], f = [1, 5, 10, 12, 14, 16, 18, 19, 21, 23, 36, 37, 38], d = [1, 25], k = [1, 26], T = [1, 28], _ = [1, 29], b = [1, 30], E = [1, 31], L = [1, 32], P = [1, 33], I = [1, 34], m = [1, 35], D = [1, 36], c = [1, 37], z = [1, 43], W = [1, 42], X = [1, 47], Y = [1, 50], S = [1, 10, 12, 14, 16, 18, 19, 21, 23, 36, 37, 38], H = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 28, 29, 36, 37, 38], A = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 28, 29, 36, 37, 38, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], w = [1, 65], B = [26, 28], R = {
51
51
  trace: /* @__PURE__ */ n(function() {
52
52
  }, "trace"),
53
53
  yy: {},
@@ -146,7 +146,7 @@ var Ct = (function() {
146
146
  break;
147
147
  }
148
148
  }, "anonymous"),
149
- table: [e(t, i, { 3: 1, 4: 2, 7: 4, 5: s, 36: a, 37: o, 38: l }), { 1: [3] }, e(t, i, { 4: 2, 7: 4, 3: 8, 5: s, 36: a, 37: o, 38: l }), e(t, i, { 4: 2, 7: 4, 6: 9, 3: 10, 5: s, 8: [1, 11], 36: a, 37: o, 38: l }), { 1: [2, 4], 9: 12, 10: [1, 13], 12: [1, 14], 14: [1, 15], 16: [1, 16], 18: [1, 17], 19: [1, 18], 21: [1, 19], 23: [1, 20] }, e(f, [2, 36]), e(f, [2, 37]), e(f, [2, 38]), { 1: [2, 1] }, e(t, i, { 4: 2, 7: 4, 3: 21, 5: s, 36: a, 37: o, 38: l }), { 1: [2, 3] }, e(f, [2, 5]), e(t, [2, 7], { 4: 22, 36: a, 37: o, 38: l }), { 11: 23, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 39, 13: 38, 24: V, 29: W, 30: d, 31: 40, 32: 41, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 45, 15: 44, 29: X, 30: d, 35: 46, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 49, 17: 48, 24: Y, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 52, 17: 51, 24: Y, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 20: [1, 53] }, { 22: [1, 54] }, e(S, [2, 18]), { 1: [2, 2] }, e(S, [2, 8]), e(S, [2, 9]), e(H, [2, 39], { 41: 55, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }), e(H, [2, 40]), e(H, [2, 41]), e(A, [2, 42]), e(A, [2, 44]), e(A, [2, 45]), e(A, [2, 46]), e(A, [2, 47]), e(A, [2, 48]), e(A, [2, 49]), e(A, [2, 50]), e(A, [2, 51]), e(A, [2, 52]), e(A, [2, 53]), e(S, [2, 10]), e(S, [2, 24], { 32: 41, 31: 56, 24: V, 29: W }), e(S, [2, 26]), e(S, [2, 27]), { 33: [1, 57] }, { 11: 59, 30: d, 34: 58, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, e(S, [2, 11]), e(S, [2, 32], { 35: 60, 29: X }), e(S, [2, 34]), { 33: [1, 61] }, e(S, [2, 12]), { 17: 62, 24: Y }, { 25: 63, 27: 64, 29: w }, e(S, [2, 14]), { 17: 66, 24: Y }, e(S, [2, 16]), e(S, [2, 17]), e(A, [2, 43]), e(S, [2, 25]), { 29: [1, 67] }, { 26: [1, 68] }, { 26: [2, 31], 28: [1, 69] }, e(S, [2, 33]), { 29: [1, 70] }, e(S, [2, 13]), { 26: [1, 71] }, { 26: [2, 21], 28: [1, 72] }, e(B, [2, 23], { 30: [1, 73] }), e(S, [2, 15]), e(S, [2, 28]), e(S, [2, 29]), { 11: 59, 30: d, 34: 74, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, e(S, [2, 35]), e(S, [2, 19]), { 25: 75, 27: 64, 29: w }, e(B, [2, 22]), { 26: [2, 30] }, { 26: [2, 20] }],
149
+ table: [e(t, i, { 3: 1, 4: 2, 7: 4, 5: s, 36: a, 37: o, 38: l }), { 1: [3] }, e(t, i, { 4: 2, 7: 4, 3: 8, 5: s, 36: a, 37: o, 38: l }), e(t, i, { 4: 2, 7: 4, 6: 9, 3: 10, 5: s, 8: [1, 11], 36: a, 37: o, 38: l }), { 1: [2, 4], 9: 12, 10: [1, 13], 12: [1, 14], 14: [1, 15], 16: [1, 16], 18: [1, 17], 19: [1, 18], 21: [1, 19], 23: [1, 20] }, e(f, [2, 36]), e(f, [2, 37]), e(f, [2, 38]), { 1: [2, 1] }, e(t, i, { 4: 2, 7: 4, 3: 21, 5: s, 36: a, 37: o, 38: l }), { 1: [2, 3] }, e(f, [2, 5]), e(t, [2, 7], { 4: 22, 36: a, 37: o, 38: l }), { 11: 23, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 39, 13: 38, 24: z, 29: W, 30: d, 31: 40, 32: 41, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 45, 15: 44, 29: X, 30: d, 35: 46, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 49, 17: 48, 24: Y, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 11: 52, 17: 51, 24: Y, 30: d, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, { 20: [1, 53] }, { 22: [1, 54] }, e(S, [2, 18]), { 1: [2, 2] }, e(S, [2, 8]), e(S, [2, 9]), e(H, [2, 39], { 41: 55, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }), e(H, [2, 40]), e(H, [2, 41]), e(A, [2, 42]), e(A, [2, 44]), e(A, [2, 45]), e(A, [2, 46]), e(A, [2, 47]), e(A, [2, 48]), e(A, [2, 49]), e(A, [2, 50]), e(A, [2, 51]), e(A, [2, 52]), e(A, [2, 53]), e(S, [2, 10]), e(S, [2, 24], { 32: 41, 31: 56, 24: z, 29: W }), e(S, [2, 26]), e(S, [2, 27]), { 33: [1, 57] }, { 11: 59, 30: d, 34: 58, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, e(S, [2, 11]), e(S, [2, 32], { 35: 60, 29: X }), e(S, [2, 34]), { 33: [1, 61] }, e(S, [2, 12]), { 17: 62, 24: Y }, { 25: 63, 27: 64, 29: w }, e(S, [2, 14]), { 17: 66, 24: Y }, e(S, [2, 16]), e(S, [2, 17]), e(A, [2, 43]), e(S, [2, 25]), { 29: [1, 67] }, { 26: [1, 68] }, { 26: [2, 31], 28: [1, 69] }, e(S, [2, 33]), { 29: [1, 70] }, e(S, [2, 13]), { 26: [1, 71] }, { 26: [2, 21], 28: [1, 72] }, e(B, [2, 23], { 30: [1, 73] }), e(S, [2, 15]), e(S, [2, 28]), e(S, [2, 29]), { 11: 59, 30: d, 34: 74, 39: 24, 40: k, 41: 27, 42: T, 43: _, 44: b, 45: E, 46: L, 47: P, 48: I, 49: m, 50: D, 51: c }, e(S, [2, 35]), e(S, [2, 19]), { 25: 75, 27: 64, 29: w }, e(B, [2, 22]), { 26: [2, 30] }, { 26: [2, 20] }],
150
150
  defaultActions: { 8: [2, 1], 10: [2, 3], 21: [2, 2], 74: [2, 30], 75: [2, 20] },
151
151
  parseError: /* @__PURE__ */ n(function(h, u) {
152
152
  if (u.recoverable)
@@ -157,7 +157,7 @@ var Ct = (function() {
157
157
  }
158
158
  }, "parseError"),
159
159
  parse: /* @__PURE__ */ n(function(h) {
160
- var u = this, g = [0], x = [], C = [null], r = [], rt = this.table, p = "", gt = 0, Mt = 0, li = 2, zt = 1, ci = r.slice.call(arguments, 1), v = Object.create(this.lexer), U = { yy: {} };
160
+ var u = this, g = [0], x = [], C = [null], r = [], rt = this.table, p = "", gt = 0, Mt = 0, li = 2, Vt = 1, ci = r.slice.call(arguments, 1), v = Object.create(this.lexer), U = { yy: {} };
161
161
  for (var mt in this.yy)
162
162
  Object.prototype.hasOwnProperty.call(this.yy, mt) && (U.yy[mt] = this.yy[mt]);
163
163
  v.setInput(h, U.yy), U.yy.lexer = v, U.yy.parser = this, typeof v.yylloc > "u" && (v.yylloc = {});
@@ -165,24 +165,24 @@ var Ct = (function() {
165
165
  r.push(yt);
166
166
  var ui = v.options && v.options.ranges;
167
167
  typeof U.yy.parseError == "function" ? this.parseError = U.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
168
- function gi(z) {
169
- g.length = g.length - 2 * z, C.length = C.length - z, r.length = r.length - z;
168
+ function gi(V) {
169
+ g.length = g.length - 2 * V, C.length = C.length - V, r.length = r.length - V;
170
170
  }
171
171
  n(gi, "popStack");
172
- function Vt() {
173
- var z;
174
- return z = x.pop() || v.lex() || zt, typeof z != "number" && (z instanceof Array && (x = z, z = x.pop()), z = u.symbols_[z] || z), z;
172
+ function zt() {
173
+ var V;
174
+ return V = x.pop() || v.lex() || Vt, typeof V != "number" && (V instanceof Array && (x = V, V = x.pop()), V = u.symbols_[V] || V), V;
175
175
  }
176
- n(Vt, "lex");
177
- for (var M, $, O, bt, j = {}, xt, N, Bt, dt; ; ) {
178
- if ($ = g[g.length - 1], this.defaultActions[$] ? O = this.defaultActions[$] : ((M === null || typeof M > "u") && (M = Vt()), O = rt[$] && rt[$][M]), typeof O > "u" || !O.length || !O[0]) {
176
+ n(zt, "lex");
177
+ for (var M, $, O, bt, q = {}, xt, N, Bt, dt; ; ) {
178
+ if ($ = g[g.length - 1], this.defaultActions[$] ? O = this.defaultActions[$] : ((M === null || typeof M > "u") && (M = zt()), O = rt[$] && rt[$][M]), typeof O > "u" || !O.length || !O[0]) {
179
179
  var At = "";
180
180
  dt = [];
181
181
  for (xt in rt[$])
182
182
  this.terminals_[xt] && xt > li && dt.push("'" + this.terminals_[xt] + "'");
183
183
  v.showPosition ? At = "Parse error on line " + (gt + 1) + `:
184
184
  ` + v.showPosition() + `
185
- Expecting ` + dt.join(", ") + ", got '" + (this.terminals_[M] || M) + "'" : At = "Parse error on line " + (gt + 1) + ": Unexpected " + (M == zt ? "end of input" : "'" + (this.terminals_[M] || M) + "'"), this.parseError(At, {
185
+ Expecting ` + dt.join(", ") + ", got '" + (this.terminals_[M] || M) + "'" : At = "Parse error on line " + (gt + 1) + ": Unexpected " + (M == Vt ? "end of input" : "'" + (this.terminals_[M] || M) + "'"), this.parseError(At, {
186
186
  text: v.match,
187
187
  token: this.terminals_[M] || M,
188
188
  line: v.yylineno,
@@ -197,15 +197,15 @@ Expecting ` + dt.join(", ") + ", got '" + (this.terminals_[M] || M) + "'" : At =
197
197
  g.push(M), C.push(v.yytext), r.push(v.yylloc), g.push(O[1]), M = null, Mt = v.yyleng, p = v.yytext, gt = v.yylineno, yt = v.yylloc;
198
198
  break;
199
199
  case 2:
200
- if (N = this.productions_[O[1]][1], j.$ = C[C.length - N], j._$ = {
200
+ if (N = this.productions_[O[1]][1], q.$ = C[C.length - N], q._$ = {
201
201
  first_line: r[r.length - (N || 1)].first_line,
202
202
  last_line: r[r.length - 1].last_line,
203
203
  first_column: r[r.length - (N || 1)].first_column,
204
204
  last_column: r[r.length - 1].last_column
205
- }, ui && (j._$.range = [
205
+ }, ui && (q._$.range = [
206
206
  r[r.length - (N || 1)].range[0],
207
207
  r[r.length - 1].range[1]
208
- ]), bt = this.performAction.apply(j, [
208
+ ]), bt = this.performAction.apply(q, [
209
209
  p,
210
210
  Mt,
211
211
  gt,
@@ -215,7 +215,7 @@ Expecting ` + dt.join(", ") + ", got '" + (this.terminals_[M] || M) + "'" : At =
215
215
  r
216
216
  ].concat(ci)), typeof bt < "u")
217
217
  return bt;
218
- N && (g = g.slice(0, -1 * N * 2), C = C.slice(0, -1 * N), r = r.slice(0, -1 * N)), g.push(this.productions_[O[1]][0]), C.push(j.$), r.push(j._$), Bt = rt[g[g.length - 2]][g[g.length - 1]], g.push(Bt);
218
+ N && (g = g.slice(0, -1 * N * 2), C = C.slice(0, -1 * N), r = r.slice(0, -1 * N)), g.push(this.productions_[O[1]][0]), C.push(q.$), r.push(q._$), Bt = rt[g[g.length - 2]][g[g.length - 1]], g.push(Bt);
219
219
  break;
220
220
  case 3:
221
221
  return !0;
@@ -517,10 +517,10 @@ function ft(e) {
517
517
  return e.type === "band";
518
518
  }
519
519
  n(ft, "isBandAxisData");
520
- function q(e) {
520
+ function j(e) {
521
521
  return e.type === "linear";
522
522
  }
523
- n(q, "isLinearAxisData");
523
+ n(j, "isLinearAxisData");
524
524
  var Q, Ut = (Q = class {
525
525
  constructor(t) {
526
526
  this.parentGroup = t;
@@ -1048,15 +1048,15 @@ var it, Ei = (it = class {
1048
1048
  return t;
1049
1049
  }
1050
1050
  }, n(st, "BasePlot"), st);
1051
- function jt(e, t, i) {
1051
+ function qt(e, t, i) {
1052
1052
  return new Mi(e, t, i);
1053
1053
  }
1054
- n(jt, "getPlotComponent");
1055
- var at, zi = (at = class {
1054
+ n(qt, "getPlotComponent");
1055
+ var at, Vi = (at = class {
1056
1056
  constructor(t, i, s, a) {
1057
1057
  this.chartConfig = t, this.chartData = i, this.componentStore = {
1058
1058
  title: Gt(t, i, s, a),
1059
- plot: jt(t, i, s),
1059
+ plot: qt(t, i, s),
1060
1060
  xAxis: Rt(
1061
1061
  i.xAxis,
1062
1062
  t.xAxis,
@@ -1134,11 +1134,11 @@ var at, zi = (at = class {
1134
1134
  t.push(...i.getDrawableElements());
1135
1135
  return t;
1136
1136
  }
1137
- }, n(at, "Orchestrator"), at), nt, Vi = (nt = class {
1137
+ }, n(at, "Orchestrator"), at), nt, zi = (nt = class {
1138
1138
  static build(t, i, s, a) {
1139
- return new zi(t, i, s, a).getDrawableElement();
1139
+ return new Vi(t, i, s, a).getDrawableElement();
1140
1140
  }
1141
- }, n(nt, "XYChartBuilder"), nt), ht = 0, qt, lt = vt(), ct = Dt(), y = Lt(), _t = ct.plotColorPalette.split(",").map((e) => e.trim()), pt = !1, Tt = !1;
1141
+ }, n(nt, "XYChartBuilder"), nt), ht = 0, jt, lt = vt(), ct = Dt(), y = Lt(), _t = ct.plotColorPalette.split(",").map((e) => e.trim()), pt = !1, Tt = !1;
1142
1142
  function Dt() {
1143
1143
  const e = Si(), t = kt();
1144
1144
  return Ht(e.xyChart, t.themeVariables.xyChart);
@@ -1176,7 +1176,7 @@ function ut(e) {
1176
1176
  }
1177
1177
  n(ut, "textSanitizer");
1178
1178
  function Qt(e) {
1179
- qt = e;
1179
+ jt = e;
1180
1180
  }
1181
1181
  n(Qt, "setTmpSVGG");
1182
1182
  function Kt(e) {
@@ -1208,7 +1208,7 @@ function ii(e, t) {
1208
1208
  }
1209
1209
  n(ii, "setYAxisRangeData");
1210
1210
  function ei(e) {
1211
- const t = Math.min(...e), i = Math.max(...e), s = q(y.yAxis) ? y.yAxis.min : 1 / 0, a = q(y.yAxis) ? y.yAxis.max : -1 / 0;
1211
+ const t = Math.min(...e), i = Math.max(...e), s = j(y.yAxis) ? y.yAxis.min : 1 / 0, a = j(y.yAxis) ? y.yAxis.max : -1 / 0;
1212
1212
  y.yAxis = {
1213
1213
  type: "linear",
1214
1214
  title: y.yAxis.title,
@@ -1222,10 +1222,10 @@ function Et(e) {
1222
1222
  if (e.length === 0)
1223
1223
  return t;
1224
1224
  if (!pt) {
1225
- const i = q(y.xAxis) ? y.xAxis.min : 1 / 0, s = q(y.xAxis) ? y.xAxis.max : -1 / 0;
1225
+ const i = j(y.xAxis) ? y.xAxis.min : 1 / 0, s = j(y.xAxis) ? y.xAxis.max : -1 / 0;
1226
1226
  Pt(Math.min(i, 1), Math.max(s, e.length));
1227
1227
  }
1228
- if (ft(y.xAxis) && e.length > y.xAxis.categories.length && (e = e.slice(0, y.xAxis.categories.length)), Tt || ei(e), ft(y.xAxis) && (t = y.xAxis.categories.map((i, s) => [i, e[s]])), q(y.xAxis)) {
1228
+ if (ft(y.xAxis) && e.length > y.xAxis.categories.length && (e = e.slice(0, y.xAxis.categories.length)), Tt || ei(e), ft(y.xAxis) && (t = y.xAxis.categories.map((i, s) => [i, e[s]])), j(y.xAxis)) {
1229
1229
  const i = y.xAxis.min, s = y.xAxis.max, a = (s - i) / (e.length - 1), o = [];
1230
1230
  for (let l = i; l <= s; l += a)
1231
1231
  o.push(`${l}`);
@@ -1261,7 +1261,7 @@ n(ai, "setBarData");
1261
1261
  function ni() {
1262
1262
  if (y.plots.length === 0)
1263
1263
  throw Error("No Plot to render, please provide a plot with some data");
1264
- return y.title = Yt(), Vi.build(lt, y, ct, qt);
1264
+ return y.title = Yt(), zi.build(lt, y, ct, jt);
1265
1265
  }
1266
1266
  n(ni, "getDrawableElem");
1267
1267
  function oi() {
@@ -1319,9 +1319,9 @@ var Bi = /* @__PURE__ */ n(function() {
1319
1319
  const L = a.getDrawableElem(), P = {};
1320
1320
  function I(m) {
1321
1321
  let D = b, c = "";
1322
- for (const [V] of m.entries()) {
1322
+ for (const [z] of m.entries()) {
1323
1323
  let W = b;
1324
- V > 0 && P[c] && (W = P[c]), c += m[V], D = P[c], D || (D = P[c] = W.append("g").attr("class", m[V]));
1324
+ z > 0 && P[c] && (W = P[c]), c += m[z], D = P[c], D || (D = P[c] = W.append("g").attr("class", m[z]));
1325
1325
  }
1326
1326
  return D;
1327
1327
  }
@@ -1335,29 +1335,29 @@ var Bi = /* @__PURE__ */ n(function() {
1335
1335
  if (D.selectAll("rect").data(m.data).enter().append("rect").attr("x", (c) => c.x).attr("y", (c) => c.y).attr("width", (c) => c.width).attr("height", (c) => c.height).attr("fill", (c) => c.fill).attr("stroke", (c) => c.strokeFill).attr("stroke-width", (c) => c.strokeWidth), l.showDataLabel) {
1336
1336
  const c = l.showDataLabelOutsideBar;
1337
1337
  if (l.chartOrientation === "horizontal") {
1338
- let V = function(w, B) {
1338
+ let z = function(w, B) {
1339
1339
  const { data: R, label: ot } = w;
1340
1340
  return B * ot.length * W <= R.width - X;
1341
1341
  };
1342
- n(V, "fitsHorizontally");
1342
+ n(z, "fitsHorizontally");
1343
1343
  const W = 0.7, X = 10, Y = m.data.map((w, B) => ({ data: w, label: f[B].toString() })).filter((w) => w.data.width > 0 && w.data.height > 0), S = Y.map((w) => {
1344
1344
  const { data: B } = w;
1345
1345
  let R = B.height * 0.7;
1346
- for (; !V(w, R) && R > 0; )
1346
+ for (; !z(w, R) && R > 0; )
1347
1347
  R -= 1;
1348
1348
  return R;
1349
1349
  }), H = Math.floor(Math.min(...S)), A = /* @__PURE__ */ n((w) => c ? w.data.x + w.data.width + X : w.data.x + w.data.width - X, "determineLabelXPosition");
1350
1350
  D.selectAll("text").data(Y).enter().append("text").attr("x", A).attr("y", (w) => w.data.y + w.data.height / 2).attr("text-anchor", c ? "start" : "end").attr("dominant-baseline", "middle").attr("fill", o.dataLabelColor).attr("font-size", `${H}px`).text((w) => w.label);
1351
1351
  } else {
1352
- let V = function(A, w, B) {
1352
+ let z = function(A, w, B) {
1353
1353
  const { data: R, label: ot } = A, F = w * ot.length * 0.7, h = R.x + R.width / 2, u = h - F / 2, g = h + F / 2, x = u >= R.x && g <= R.x + R.width, C = R.y + B + w <= R.y + R.height;
1354
1354
  return x && C;
1355
1355
  };
1356
- n(V, "fitsInBar");
1356
+ n(z, "fitsInBar");
1357
1357
  const W = 10, X = m.data.map((A, w) => ({ data: A, label: f[w].toString() })).filter((A) => A.data.width > 0 && A.data.height > 0), Y = X.map((A) => {
1358
1358
  const { data: w, label: B } = A;
1359
1359
  let R = w.width / (B.length * 0.7);
1360
- for (; !V(A, R, W) && R > 0; )
1360
+ for (; !z(A, R, W) && R > 0; )
1361
1361
  R -= 1;
1362
1362
  return R;
1363
1363
  }), S = Math.floor(Math.min(...Y)), H = /* @__PURE__ */ n((A) => c ? A.data.y - W : A.data.y + W, "determineLabelYPosition");