agentic-mermaid 0.5.3 → 0.5.4

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 (135) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/agent-core.d.ts +7 -7
  3. package/dist/agent-core.js +1 -1
  4. package/dist/agent.d.ts +7 -7
  5. package/dist/agent.js +1 -1
  6. package/dist/agentic-mermaid-mcp.js +1 -1
  7. package/dist/am.js +1 -1
  8. package/dist/browser-lazy/chunks/{agentic-producer-core-CC6OOLDW.js → agentic-producer-core-ECZ3CMZM.js} +1 -1
  9. package/dist/browser-lazy/chunks/{architecture-QUFVKYJR.js → architecture-H5LTMKQW.js} +6 -6
  10. package/dist/browser-lazy/chunks/{block-6J3Q63BO.js → block-566X6FNV.js} +5 -5
  11. package/dist/browser-lazy/chunks/{builtin-backends-7SOZZHPF.js → builtin-backends-VAFEZXKY.js} +6 -6
  12. package/dist/browser-lazy/chunks/{c4-SQVBZAKJ.js → c4-ZXFDLBFK.js} +5 -5
  13. package/dist/browser-lazy/chunks/{chunk-5X6MJX3H.js → chunk-2JQXRKBC.js} +1 -1
  14. package/dist/browser-lazy/chunks/{chunk-E2WMJZNM.js → chunk-37FZNMPR.js} +1 -1
  15. package/dist/browser-lazy/chunks/{chunk-TYZOZXUJ.js → chunk-3JTYTXA6.js} +6 -6
  16. package/dist/browser-lazy/chunks/{chunk-PQGPS2YV.js → chunk-4NILRBC7.js} +1 -1
  17. package/dist/browser-lazy/chunks/{chunk-AMJLVPUB.js → chunk-5LKPDHPC.js} +2 -2
  18. package/dist/browser-lazy/chunks/{chunk-BY2CPG6B.js → chunk-62MR3LWJ.js} +1 -1
  19. package/dist/browser-lazy/chunks/{chunk-J7FFAFQF.js → chunk-64JFHCJC.js} +1 -1
  20. package/dist/browser-lazy/chunks/chunk-6GPDLZFQ.js +1 -0
  21. package/dist/browser-lazy/chunks/{chunk-VWVZGQE2.js → chunk-6UOOATQR.js} +1 -1
  22. package/dist/browser-lazy/chunks/chunk-7TTFBJYA.js +1 -0
  23. package/dist/browser-lazy/chunks/chunk-7UFOFWBA.js +20 -0
  24. package/dist/browser-lazy/chunks/{chunk-5B2Z7575.js → chunk-A7V5VDKN.js} +1 -1
  25. package/dist/browser-lazy/chunks/chunk-CPO5P4L2.js +1 -0
  26. package/dist/browser-lazy/chunks/chunk-EIYLJ4FI.js +20 -0
  27. package/dist/browser-lazy/chunks/{chunk-X2UYKWKM.js → chunk-G4JBA7HU.js} +3 -3
  28. package/dist/browser-lazy/chunks/{chunk-2UIA2IME.js → chunk-IUI4DYC3.js} +1 -1
  29. package/dist/browser-lazy/chunks/{chunk-QA6GJQ4X.js → chunk-J57YRC2M.js} +1 -1
  30. package/dist/browser-lazy/chunks/{chunk-BU5LHXNJ.js → chunk-LBXXKLIR.js} +3 -3
  31. package/dist/browser-lazy/chunks/chunk-NKW2ZNCD.js +1 -0
  32. package/dist/browser-lazy/chunks/{chunk-ICC7HBJX.js → chunk-O34YYEQV.js} +1 -1
  33. package/dist/browser-lazy/chunks/{chunk-UL6NDWLL.js → chunk-OBI5U5XU.js} +1 -1
  34. package/dist/browser-lazy/chunks/{chunk-YCEICNM6.js → chunk-OFOS57WQ.js} +1 -1
  35. package/dist/browser-lazy/chunks/{chunk-OZ443IVJ.js → chunk-PSZEE64O.js} +7 -7
  36. package/dist/browser-lazy/chunks/{chunk-SZELX2EJ.js → chunk-PXTLV57R.js} +1 -1
  37. package/dist/browser-lazy/chunks/{chunk-HLWUNUCM.js → chunk-QVSZOF5M.js} +1 -1
  38. package/dist/browser-lazy/chunks/{chunk-2GPK4VFF.js → chunk-TT5GR5EJ.js} +1 -1
  39. package/dist/browser-lazy/chunks/{chunk-DF6765YX.js → chunk-V6I2VGNQ.js} +5 -5
  40. package/dist/browser-lazy/chunks/{chunk-CN7WTBWB.js → chunk-VRZKI33U.js} +1 -1
  41. package/dist/browser-lazy/chunks/{chunk-2SH76OTH.js → chunk-XHU3A432.js} +1 -1
  42. package/dist/browser-lazy/chunks/{chunk-NO7ZIVRU.js → chunk-YVNJDVQO.js} +1 -1
  43. package/dist/browser-lazy/chunks/chunk-Z7UHFVKN.js +6 -0
  44. package/dist/browser-lazy/chunks/{class-5QA4SCTS.js → class-XIFNVBFE.js} +8 -8
  45. package/dist/{zenuml/chunks/decode-BWERFDGK.js → browser-lazy/chunks/decode-5MFOG3AZ.js} +1 -1
  46. package/dist/browser-lazy/chunks/{elk.bundled-L4CADV5W.js → elk.bundled-RYWHIS5N.js} +8 -8
  47. package/dist/browser-lazy/chunks/er-VEUYJBGG.js +11 -0
  48. package/dist/browser-lazy/chunks/{eventmodeling-2BPLHWRN.js → eventmodeling-G7DITZX7.js} +10 -10
  49. package/dist/browser-lazy/chunks/{flowchart-NEIMZTB5.js → flowchart-SSFIU4EU.js} +1 -1
  50. package/dist/browser-lazy/chunks/{forest-implementation-AEP24AIP.js → forest-implementation-RWFF7XDV.js} +1 -1
  51. package/dist/browser-lazy/chunks/{gantt-RDPIFYAF.js → gantt-HQNVDX2B.js} +6 -6
  52. package/dist/browser-lazy/chunks/{gitgraph-N4Y5RYB7.js → gitgraph-Z5MN6M6L.js} +4 -4
  53. package/dist/browser-lazy/chunks/{ishikawa-LD3YBDJN.js → ishikawa-UEERNFQV.js} +2 -2
  54. package/dist/browser-lazy/chunks/{journey-6YQR5DJX.js → journey-3BEWWGB5.js} +6 -6
  55. package/dist/browser-lazy/chunks/{kanban-PLMJ7NBW.js → kanban-2WFNCWLB.js} +10 -10
  56. package/dist/browser-lazy/chunks/{mermaid-yaml-runtime-QVYX4EWK.js → mermaid-yaml-runtime-IK4ET4BT.js} +8 -8
  57. package/dist/browser-lazy/chunks/{mindmap-K2UBFO3Y.js → mindmap-R2C6SNYR.js} +4 -4
  58. package/dist/browser-lazy/chunks/{packet-CUW4QY6Y.js → packet-GMVCI5YZ.js} +3 -3
  59. package/dist/browser-lazy/chunks/{pie-7F7UUCG3.js → pie-WER45DKC.js} +7 -7
  60. package/dist/browser-lazy/chunks/{quadrant-TOONO2WC.js → quadrant-NCUPSFKN.js} +4 -4
  61. package/dist/browser-lazy/chunks/{radar-J6JVWVAX.js → radar-WLYS4YC5.js} +8 -8
  62. package/dist/browser-lazy/chunks/render-core-42UVWIPF.js +3 -0
  63. package/dist/browser-lazy/chunks/{requirement-CMAKDJPO.js → requirement-AK3NWMJ6.js} +7 -7
  64. package/dist/browser-lazy/chunks/{sankey-AWXQEP3F.js → sankey-C2DY6WVU.js} +4 -4
  65. package/dist/browser-lazy/chunks/{sequence-Q2RJRB4L.js → sequence-D4WJB44W.js} +1 -1
  66. package/dist/browser-lazy/chunks/{state-WRBFQEDX.js → state-YUQVESE7.js} +2 -2
  67. package/dist/browser-lazy/chunks/{timeline-D2KILFXM.js → timeline-BMBJJXWR.js} +4 -4
  68. package/dist/browser-lazy/chunks/{treemap-N3VYX5D4.js → treemap-B66XBZZ6.js} +3 -3
  69. package/dist/browser-lazy/chunks/{xychart-G73OGK66.js → xychart-HAVFROGT.js} +6 -6
  70. package/dist/browser-lazy/chunks/{zenuml-H4BXNYXR.js → zenuml-62RLYFWP.js} +7 -7
  71. package/dist/browser-lazy/index.js +1 -1
  72. package/dist/browser.global.js +507 -507
  73. package/dist/{chunk-DQDKA5ND.js → chunk-2DNGDTJD.js} +2 -2
  74. package/dist/{chunk-GVCHLSHH.js → chunk-4F2UGYTM.js} +2 -2
  75. package/dist/{chunk-H3NCS2XZ.js → chunk-7XYB2LNC.js} +2 -2
  76. package/dist/chunk-DOFB572I.js +58 -0
  77. package/dist/chunk-EHJI3QYE.js +52 -0
  78. package/dist/{chunk-UA234O4M.js → chunk-HINRNKPO.js} +2 -2
  79. package/dist/{chunk-JZOJ4YGS.js → chunk-KXMANAST.js} +33 -33
  80. package/dist/{chunk-7CRDX2QR.js → chunk-U4MT3RRE.js} +2 -2
  81. package/dist/{chunk-NKNFOREZ.js → chunk-WYIB6BUR.js} +2 -2
  82. package/dist/{cli-YGGTJZH7.js → cli-ZYIDBYNS.js} +2 -2
  83. package/dist/{index-EeXqJXr5.d.ts → index-Bvhprdxz.d.ts} +3 -3
  84. package/dist/index.d.ts +4 -4
  85. package/dist/index.js +1 -1
  86. package/dist/{mcp-cli-63DYXTVD.js → mcp-cli-YVDCORWA.js} +2 -2
  87. package/dist/{paint-certification-6rwQjIv_.d.ts → paint-certification-BoLyr006.d.ts} +2 -2
  88. package/dist/{server-5NEOHOFS.js → server-4JGAVXR3.js} +2 -2
  89. package/dist/{svg-styles-BdnoM7AT.d.ts → svg-styles-BnCoXyYe.d.ts} +1 -1
  90. package/dist/svg-styles.d.ts +1 -1
  91. package/dist/svg-styles.js +1 -1
  92. package/dist/svg.d.ts +4 -4
  93. package/dist/svg.js +1 -1
  94. package/dist/{types-BcS52Mjt.d.ts → types-CLVJCaH2.d.ts} +1 -1
  95. package/dist/zenuml/chunks/{appearance-UOQ5KA6O.js → appearance-5RM5MVM2.js} +1 -1
  96. package/dist/zenuml/chunks/{builtin-backends-KDKE7YHO.js → builtin-backends-UTNWL4N3.js} +11 -11
  97. package/dist/zenuml/chunks/{chunk-QWX77U7G.js → chunk-3A6S6GNB.js} +2 -2
  98. package/dist/zenuml/chunks/{chunk-OXQWRSBM.js → chunk-55WS466K.js} +11 -11
  99. package/dist/zenuml/chunks/chunk-6J4BGPB2.js +29 -0
  100. package/dist/zenuml/chunks/chunk-CNLL4BGF.js +1 -0
  101. package/dist/zenuml/chunks/{chunk-RZ6XK5CD.js → chunk-IARQ24W3.js} +13 -13
  102. package/dist/zenuml/chunks/{chunk-42DXZ5C6.js → chunk-ZNZRIISS.js} +2 -2
  103. package/dist/{browser-lazy/chunks/decode-63UIZGD2.js → zenuml/chunks/decode-LDNNXEAO.js} +1 -1
  104. package/dist/zenuml/chunks/{mermaid-yaml-runtime-KZVU74WU.js → mermaid-yaml-runtime-A5CNJ3IE.js} +8 -8
  105. package/dist/zenuml/chunks/render-core-ECIWU5ZS.js +3 -0
  106. package/dist/zenuml/chunks/{zenuml-EA2ZFRUX.js → zenuml-N3LZMB2G.js} +8 -8
  107. package/dist/zenuml.d.ts +2 -2
  108. package/dist/zenuml.js +1 -1
  109. package/docs/MCP-DIRECTORY-LISTINGS.md +81 -12
  110. package/docs/api.md +1 -1
  111. package/package.json +1 -1
  112. package/server.json +2 -2
  113. package/dist/browser-lazy/chunks/chunk-4LHYF3BS.js +0 -1
  114. package/dist/browser-lazy/chunks/chunk-FAIMVOX5.js +0 -6
  115. package/dist/browser-lazy/chunks/chunk-GVOEAY52.js +0 -1
  116. package/dist/browser-lazy/chunks/chunk-J35HAQQF.js +0 -20
  117. package/dist/browser-lazy/chunks/chunk-RIVTHZAQ.js +0 -1
  118. package/dist/browser-lazy/chunks/chunk-Z3FDIVLN.js +0 -20
  119. package/dist/browser-lazy/chunks/er-7ZSKGN7Y.js +0 -11
  120. package/dist/browser-lazy/chunks/render-core-BZOM3K7D.js +0 -3
  121. package/dist/chunk-EHCMJUMD.js +0 -52
  122. package/dist/chunk-OMY6NRQD.js +0 -58
  123. package/dist/zenuml/chunks/chunk-7TVYPTDW.js +0 -1
  124. package/dist/zenuml/chunks/chunk-RLJEI7YN.js +0 -29
  125. package/dist/zenuml/chunks/render-core-V5RQ737O.js +0 -3
  126. /package/dist/browser-lazy/chunks/{chunk-5FQ534HP.js → chunk-BMZ24VPS.js} +0 -0
  127. /package/dist/browser-lazy/chunks/{chunk-2I4UPL7Q.js → chunk-D6MQ7QSU.js} +0 -0
  128. /package/dist/browser-lazy/chunks/{chunk-CQE4HQEW.js → chunk-HJVO5VC3.js} +0 -0
  129. /package/dist/browser-lazy/chunks/{chunk-LH7HUDKW.js → chunk-L4UC3KGS.js} +0 -0
  130. /package/dist/browser-lazy/chunks/{chunk-NMQQMRIR.js → chunk-MFTQWHUB.js} +0 -0
  131. /package/dist/browser-lazy/chunks/{chunk-N5ELX7LR.js → chunk-PJJSDGLB.js} +0 -0
  132. /package/dist/browser-lazy/chunks/{chunk-CSFUKSU6.js → chunk-QCU5G5PZ.js} +0 -0
  133. /package/dist/browser-lazy/chunks/{chunk-VQYYGAXP.js → chunk-TLFX3U6S.js} +0 -0
  134. /package/dist/browser-lazy/chunks/{chunk-5UVGUSD6.js → chunk-YHMTSXIR.js} +0 -0
  135. /package/dist/zenuml/chunks/{chunk-EVPSMEKN.js → chunk-GC7IPQ5P.js} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as R}from"./chunk-GVCHLSHH.js";import{O as P,T as I,c as v,e as M}from"./chunk-7CRDX2QR.js";import{Va as x,ra as h,ta as b}from"./chunk-JZOJ4YGS.js";import{ph as w}from"./chunk-EHCMJUMD.js";import{Wa as y,Za as u}from"./chunk-OMY6NRQD.js";import{z as s}from"./chunk-O7H2UX5K.js";function C(e){const n={};for(const t of w){if(e[t]!==void 0)n[t]=e[t]}return n}function l(e){if(e.kind==="node")return`node:${e.id}`;if(e.kind==="edge")return`edge:${e.id}`;if(e.kind==="label")return`label:${e.id}`;return`group:${e.id}`}function E(e){return e==="subgraph"?"cluster":e}function N(e,n){const t=e.parentId!==void 0&&e.parentKind!==void 0?l({id:e.parentId,kind:e.parentKind}):void 0;return{id:l(e),kind:E(e.kind),elementId:e.id,...t!==void 0&&n.has(t)?{parentId:t}:{},bounds:{x:s(e.canvasColStart),y:s(e.canvasRow),w:s(Math.max(1,e.canvasColEnd-e.canvasColStart)),h:s(Math.max(1,e.rowSpan??1))},...e.ownedCellSpans?{cellSpans:e.ownedCellSpans}:{},...e.occludedCellSpans?{occludedCellSpans:e.occludedCellSpans}:{},...e.sourceLine!==void 0?{sourceLine:e.sourceLine}:{}}}function g(e,n,t,o,f=new Set){const a=new Map(o.map(r=>[r.id,r]));const c=t.map(r=>{const p=r.regionId?a.get(r.regionId):void 0;return{...r,surface:e,disposition:e==="svg"&&p&&r.href!==void 0&&f.has(`${r.target}\0${r.href}`)?"embedded-inert":"sidecar-only",...p?{region:p}:{}}});const i=new Set(c.flatMap(r=>r.region?[r.region.id]:[]));return{version:1,format:e,coordinateSpace:n,regions:o.filter(r=>i.has(r.id)),actions:c}}function $(e){const n=new Set;for(const t of y(e)){const o=u(t,"data-href");const f=[u(t,"data-task"),u(t,"data-id")];if(o!==void 0){for(const i of f)if(i!==void 0)n.add(`${i}\0${o}`)}const a=u(t,"data-links");const c=f.find(i=>i!==void 0);if(a===void 0||c===void 0)continue;try{const i=JSON.parse(a);if(!i||typeof i!=="object"||Array.isArray(i))continue;for(const r of Object.values(i)){if(typeof r==="string")n.add(`${c}\0${r}`)}}catch{}}return n}function F(e,n,t){return e.map(o=>({...o,bounds:{x:s(o.bounds.x*n),y:s(o.bounds.y*t),w:s(o.bounds.w*n),h:s(o.bounds.h*t)}}))}function B(e,n){const t=b(e).source;if(n.format==="ascii"||n.format==="unicode"){const d=M(e,{...n.options??{},useAscii:n.format==="ascii"});const S=d.warnings.find(m=>m.code==="ASCII_RENDER_FAILED");if(S)throw new Error(S.message);const O=new Set(d.regions.map(l));const D=d.regions.map(m=>N(m,O));return{format:n.format,output:d.ascii,actionSurface:g(n.format,"cell",d.actions,D),warnings:d.warnings}}const o=n.options??{};const f=C(o);const a=h(t);if(!a.ok)throw new Error(a.error.map(d=>d.message).join("; "));const c=typeof e==="string"?a.value:e;const i=I(c,{...f,regions:true});const r=v(a.value);if(n.format==="svg"){const d=P(e,o);return{format:"svg",output:d,actionSurface:g("svg","pixel",r,i.regions??[],$(d))}}const p=R(e,o);const A=x(p);const k=F(i.regions??[],i.bounds.w>0?A.width/i.bounds.w:1,i.bounds.h>0?A.height/i.bounds.h:1);return{format:"png",output:p,actionSurface:g("png","pixel",r,k)}}export{B as a};
2
- //# sourceMappingURL=chunk-NKNFOREZ.js.map
1
+ import{a as R}from"./chunk-4F2UGYTM.js";import{O as P,T as I,c as v,e as M}from"./chunk-U4MT3RRE.js";import{Va as x,ra as h,ta as b}from"./chunk-KXMANAST.js";import{qh as w}from"./chunk-EHJI3QYE.js";import{Xa as y,_a as u}from"./chunk-DOFB572I.js";import{z as s}from"./chunk-O7H2UX5K.js";function C(e){const n={};for(const t of w){if(e[t]!==void 0)n[t]=e[t]}return n}function l(e){if(e.kind==="node")return`node:${e.id}`;if(e.kind==="edge")return`edge:${e.id}`;if(e.kind==="label")return`label:${e.id}`;return`group:${e.id}`}function E(e){return e==="subgraph"?"cluster":e}function N(e,n){const t=e.parentId!==void 0&&e.parentKind!==void 0?l({id:e.parentId,kind:e.parentKind}):void 0;return{id:l(e),kind:E(e.kind),elementId:e.id,...t!==void 0&&n.has(t)?{parentId:t}:{},bounds:{x:s(e.canvasColStart),y:s(e.canvasRow),w:s(Math.max(1,e.canvasColEnd-e.canvasColStart)),h:s(Math.max(1,e.rowSpan??1))},...e.ownedCellSpans?{cellSpans:e.ownedCellSpans}:{},...e.occludedCellSpans?{occludedCellSpans:e.occludedCellSpans}:{},...e.sourceLine!==void 0?{sourceLine:e.sourceLine}:{}}}function g(e,n,t,o,f=new Set){const a=new Map(o.map(r=>[r.id,r]));const c=t.map(r=>{const p=r.regionId?a.get(r.regionId):void 0;return{...r,surface:e,disposition:e==="svg"&&p&&r.href!==void 0&&f.has(`${r.target}\0${r.href}`)?"embedded-inert":"sidecar-only",...p?{region:p}:{}}});const i=new Set(c.flatMap(r=>r.region?[r.region.id]:[]));return{version:1,format:e,coordinateSpace:n,regions:o.filter(r=>i.has(r.id)),actions:c}}function $(e){const n=new Set;for(const t of y(e)){const o=u(t,"data-href");const f=[u(t,"data-task"),u(t,"data-id")];if(o!==void 0){for(const i of f)if(i!==void 0)n.add(`${i}\0${o}`)}const a=u(t,"data-links");const c=f.find(i=>i!==void 0);if(a===void 0||c===void 0)continue;try{const i=JSON.parse(a);if(!i||typeof i!=="object"||Array.isArray(i))continue;for(const r of Object.values(i)){if(typeof r==="string")n.add(`${c}\0${r}`)}}catch{}}return n}function F(e,n,t){return e.map(o=>({...o,bounds:{x:s(o.bounds.x*n),y:s(o.bounds.y*t),w:s(o.bounds.w*n),h:s(o.bounds.h*t)}}))}function B(e,n){const t=b(e).source;if(n.format==="ascii"||n.format==="unicode"){const d=M(e,{...n.options??{},useAscii:n.format==="ascii"});const S=d.warnings.find(m=>m.code==="ASCII_RENDER_FAILED");if(S)throw new Error(S.message);const O=new Set(d.regions.map(l));const D=d.regions.map(m=>N(m,O));return{format:n.format,output:d.ascii,actionSurface:g(n.format,"cell",d.actions,D),warnings:d.warnings}}const o=n.options??{};const f=C(o);const a=h(t);if(!a.ok)throw new Error(a.error.map(d=>d.message).join("; "));const c=typeof e==="string"?a.value:e;const i=I(c,{...f,regions:true});const r=v(a.value);if(n.format==="svg"){const d=P(e,o);return{format:"svg",output:d,actionSurface:g("svg","pixel",r,i.regions??[],$(d))}}const p=R(e,o);const A=x(p);const k=F(i.regions??[],i.bounds.w>0?A.width/i.bounds.w:1,i.bounds.h>0?A.height/i.bounds.h:1);return{format:"png",output:p,actionSurface:g("png","pixel",r,k)}}export{B as a};
2
+ //# sourceMappingURL=chunk-WYIB6BUR.js.map
@@ -1,4 +1,4 @@
1
- import{b as ce}from"./chunk-DQDKA5ND.js";import"./chunk-NKNFOREZ.js";import{b as qe}from"./chunk-GVCHLSHH.js";import{A as We,E as Be,F as Je,H as Ge,I as Ve,O as se,P as je,Q as ze,R as Ue,S as Ye,g as Me,h as Le,k as De,n as Fe,t as X,u as K,x as Pe,y as $e}from"./chunk-7CRDX2QR.js";import{i as Y,k as Se,l as Oe,o as te,oa as P,p as Ne,qa as ie,r as Ae,ra as O}from"./chunk-JZOJ4YGS.js";import{Fc as Re,Gc as _e,gc as q,uh as H}from"./chunk-EHCMJUMD.js";import"./chunk-UA234O4M.js";import{Xc as Ie,dd as re,ed as Ce,fd as ne,xb as xe}from"./chunk-OMY6NRQD.js";import{a as hr,b as gr,c as N,d as p,e as fr,f as He,g as yr,h as wr,i as br,j as de,k as At,l as m,m as l,n as Ke,o as W,p as Qe}from"./chunk-MKE7GNYU.js";import{a as Xe,b as Q,c as $}from"./chunk-XU5LPD2D.js";import{A as T,B as Ee,H as Te,K as F,L as oe,M as ae,N as M}from"./chunk-O7H2UX5K.js";import"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";import{spawnSync as Mt}from"child_process";import{existsSync as B,mkdtempSync as Lt,readFileSync as R,statSync as Dt,watch as Ft,writeFileSync as Z}from"fs";import{tmpdir as Pt}from"os";import{basename as lt,dirname as $t,join as ut,resolve as J}from"path";var Ze={EMPTY_DIAGRAM:{summary:"Diagram contains no renderable elements",what:"the source parses to a diagram with no drawable content.",triggers:"A bare header like <code>flowchart TD</code> with no statements after it, a body containing only comments, or a mutation sequence that removed the last node, message, or task.",fix:"Add at least one element \u2014 <code>add_node</code>/<code>add_edge</code> for flowcharts, <code>add_participant</code>/<code>add_message</code> for sequence, <code>add_task</code> for gantt/journey \u2014 or check that the intended body was not lost before serializing.",example:"flowchart TD",origins:["source"]},EDGE_MISANCHORED:{summary:"Edge endpoint does not attach to a real node / participant",what:"an edge, message, or dependency references an endpoint that is not in the diagram.",triggers:"A gantt <code>after</code>/<code>until</code> dependency naming a missing task, a class <code>note for</code> a class that does not exist, or a diagram body assembled outside the parser whose edges, messages, or commit parents name missing endpoints. The typed <code>remove_node</code> and <code>remove_participant</code> mutations drop the attached edges and messages themselves.",fix:"Add the missing endpoint (<code>add_node</code>, <code>add_participant</code>, <code>add_task</code>) or retarget/remove the dangling edge (<code>remove_edge</code>, <code>remove_message</code>).",example:"gantt\n dateFormat YYYY-MM-DD\n section Build\n Design :design, 2026-01-01, 2d\n Ship :ship, after review, 3d",origins:["source"]},OFF_CANVAS:{summary:"Node or edge segment lies outside the canvas",what:"a positioned node or edge route extends past the computed canvas on the reported axis.",triggers:"Never in normal operation \u2014 the engine sizes the canvas around content, so this is a tripwire that fires only when a layout pass moves geometry after the canvas was sized. Layout is deterministic, so a firing input reproduces byte-identically.",fix:"Not fixable by editing the diagram content itself: simplify or remove the construct that provokes it, and report the source as a renderer bug so the layout defect gets fixed.",origins:["engine"]},GROUP_BREACH:{summary:"Member node lies outside its group's bounds",what:"a node that belongs to a subgraph or group is positioned outside its group rectangle.",triggers:"An engine-bug tripwire like <code>OFF_CANVAS</code>: deeply nested subgraphs combined with cross-group edges are historically where containment slipped. The warning names both the group and the escaping member.",fix:"Flatten the nesting or move the member out of the group (source edit, or <code>remove_node</code> then re-add outside the subgraph). A reproducible breach is a renderer bug worth reporting with the source.",origins:["engine"]},UNKNOWN_SHAPE:{summary:"Shape name unrecognized; default used",what:"a node carries a shape outside the renderer\u2019s known vocabulary and falls back to a plain rectangle, or an architecture service names an icon the renderer cannot resolve and gets a text glyph instead.",triggers:"Shape syntax the parser modeled but the renderer does not draw \u2014 typically newer Mermaid shape names reaching a structured flowchart or state graph \u2014 or an architecture icon that is neither built in nor in the bundled icon set.",fix:"Switch the node to a supported shape (rectangle, rounded, diamond, stadium, circle, hexagon, cylinder, \u2026) or the service to a supported icon with a source edit; the diagram still renders meanwhile, so this is a warning rather than an error.",origins:["source"]},LABEL_OVERFLOW:{summary:"A label's longest rendered line exceeds the character cap (default 40, `labelCharCap`): `<br>` and `\\n` split lines, XML entities count as one character, and formatting tags are stripped. Families that draw text literally (Pie, Timeline, Gantt, XYChart, GitGraph, Radar) count `<br>` and tags as characters, as drawn. Payload includes `charCount` and `limit`. Character-based, no font-table dependency.",guideNote:"a label's longest displayed line is over the char cap \u2014 `<br>`/`\\n` split lines, XML entities decode to one char, formatting tags strip (families that draw text literally count them); default cap 40, raise via `labelCharCap` / `am verify --label-cap N` when long labels are intentional instead of truncating the user's text",what:"a label\u2019s longest rendered line exceeds the character cap (default 40), which hurts layout and readability. The count measures what the renderer draws: <code>&lt;br&gt;</code> starts a new line, XML entities like <code>&amp;#160;</code> count as one character, and formatting tags are stripped, except in the families that draw text literally (Pie, Timeline, Gantt, XYChart, GitGraph, Radar), where <code>&lt;br&gt;</code> and tags count as characters.",triggers:"Prose sentences pasted into node labels, edge labels, message text, or section/period titles \u2014 common when an agent copies requirement text verbatim into the diagram. Multi-line labels fire only when a single rendered line exceeds the cap.",fix:"Shorten the text with <code>set_label</code>, <code>set_message_text</code>, or the matching family mutation; raise <code>labelCharCap</code> in <code>VerifyOptions</code> only when long labels are genuinely intended.",example:"flowchart LR\n A[This label is far longer than the forty character cap] --> B[Done]",origins:["source"]},UNRESOLVABLE_SCHEDULE:{summary:"The diagram parses and round-trips but its semantics cannot resolve, so rendering will fail loudly. Emitted for structured gantt bodies whose scheduler raises a named `GANTT_*` error (unknown task reference, bad calendar date, dependency cycle, everything-excluded calendar); the payload's `reason` carries that error.",guideNote:"a gantt parses but its schedule cannot resolve, so render would fail; `reason` names the `GANTT_*` error",what:"a gantt schedule cannot be resolved to concrete dates, so bars cannot be positioned.",triggers:"A task whose <code>after</code>/<code>until</code> expression references a task id that does not exist, a start/end that cannot be parsed against the declared <code>dateFormat</code>, a dependency cycle, or <code>excludes</code> that leave no working day. The warning carries the engine reason string.",fix:"Point the reference at a real task id or give the task explicit dates with the <code>set_task_dates</code> mutation (or edit the offending source line named in the reason).",example:"gantt\n title Release\n dateFormat YYYY-MM-DD\n section Build\n Ship :ship, after review, 3d",origins:["source"]},RENDER_FAILED:{summary:"Any family: the parser, the strict render parser, layout, or theme colors reject the source or its configuration, so rendering would fail; `origin` says which (`source` or `config`). Generalizes `UNRESOLVABLE_SCHEDULE`'s seam-closing \u2014 a clean verify proves the diagram actually renders; the payload's `reason` carries the renderer error. A defect in Agentic Mermaid itself is `INTERNAL_ERROR` instead.",guideNote:"the parser, the strict render parser, layout, or theme colors reject the source or its configuration (any family; `origin` says which), so rendering would fail; `reason` carries the renderer error \u2014 a clean verify proves the diagram actually renders",what:"the source or its configuration makes parsing or rendering throw, so <code>am render</code> would fail instead of producing an artifact.",triggers:'With <code>origin: "source"</code>, source the parser or the render path rejects: malformed frontmatter or statements, an unrecognized diagram header, a construct the strict render parser cannot handle, an invalid authored style color, or a diagram over a host work limit. With <code>origin: "config"</code>, configuration the render path rejects: an invalid theme or family config color, malformed config, or an invalid render option. The warning\u2019s <code>reason</code> carries the renderer\u2019s message. A failure caused by a defect in Agentic Mermaid is reported as <code>INTERNAL_ERROR</code>, not as this code.',fix:"Return the structured error and the source rather than a fabricated artifact; fix what <code>reason</code> names, in the source or the configuration as <code>origin</code> says (for example the invalid color), or simplify, split, or drop the construct it points at. A reproducible failure on well-formed source is still a renderer bug worth reporting.",origins:["source","config"]},INTERNAL_ERROR:{summary:"Agentic Mermaid hit an internal defect while drawing this source; it is not caused by the source. `defaultRender` says whether an ordinary render still produces output: `succeeds-unchecked` \u2014 it does, but the extra consistency checks verify runs failed, so its layout evidence cannot be trusted; `fails` \u2014 rendering throws. The payload's `reason` carries the internal error. Do not rewrite the diagram to work around it; report it with the source.",guideNote:"Agentic Mermaid hit an internal defect, not caused by the source; `defaultRender` is `succeeds-unchecked` when an ordinary render still produces output that the failed consistency checks cannot vouch for, or `fails` when rendering throws \u2014 do not rewrite the diagram to work around it; report it with the source",what:"Agentic Mermaid hit an internal defect while drawing this source; the failure is not caused by the source.",triggers:"A failed internal consistency check \u2014 a lowered Scene that disagrees with its own derivation, a broken layout-pass contract, a layout that could not be certified \u2014 or a runtime error such as a <code>TypeError</code> inside the engine. <code>defaultRender</code> says whether an ordinary render still produces output: <code>succeeds-unchecked</code> when it does, but the extra consistency checks verify runs failed, so its layout evidence cannot be trusted; <code>fails</code> when rendering throws.",fix:"Do not rewrite the diagram to work around it. Report it with the source and the warning\u2019s <code>reason</code>; layout is deterministic, so the source reproduces it exactly. A typed edit to a diagram that already had this defect is still accepted.",origins:["engine"]},NODE_OVERLAP:{summary:"Two laid-out node bounding boxes intersect",what:"two nodes\u2019 boxes intersect in the final layout; the warning reports the pair and the overlap area in pixels.",triggers:"The deterministic layout separates nodes by construction, so no small flowchart source fires this \u2014 it appears only when a family adapter or post-pass produces colliding boxes on dense inputs. It is a tripwire, not an everyday lint.",fix:"Shorten the labels of the named pair or reduce local density; if the overlap persists on a stable input, treat it as a layout defect and report the source.",origins:["source","engine"]},CONTENT_OCCLUDED:{summary:"Final layout hides authored text or an interaction marker",what:"a measured label plate, card or header covers authored text or an interaction marker in the final drawing.",triggers:"Dense relationships competing for a label corridor, containment relationships with insufficient clearance, or authored label offsets that move text over protected content. The warning names the affected interaction.",fix:"Remove the conflicting label offset, increase available space or split the view. Persistent occlusion without authored offsets is a renderer defect. Verification fails because retained metadata alone does not make hidden content readable.",origins:["source","engine"]},LAYOUT_LIMIT_EXCEEDED:{summary:"Preserved content exceeds an explicitly requested layout budget",what:"the minimum measured geometry or explicit placement constraints exceed a requested layout budget.",triggers:"A compact C4 width budget smaller than a card, nested boundary, protected label corridor or authored placement constraint can accommodate. Content is retained at its legible size.",fix:"Increase the requested width, allow wrapping, remove explicit placement constraints or split the diagram. The warning reports a limitation rather than silently shrinking or dropping content.",origins:["source","config"]},ROUTE_SELF_CROSS:{summary:"An edge route crosses itself",what:"a single edge\u2019s routed polyline crosses over itself.",triggers:"A routing tripwire on the final geometry: the router avoids self-intersection, so a firing means dense cyclic routing degraded. The warning names the edge and the crossing count.",fix:"Remove or redirect the redundant edge (<code>remove_edge</code>, then <code>add_edge</code> along a simpler path); a persistent self-cross on unchanged source is an engine bug to report.",origins:["engine"]},ROUTE_HITCH:{summary:"An edge bends although a direct lane for it is provably clear (route-contract tripwire)",what:"an edge bends although a clear straight lane exists for it; the warning reports how far the route strays from that lane, in pixels.",triggers:"The layout certifies clear lanes when routes are frozen; a hitch means a later pass mutated geometry after certification. Agents cannot cause this from source alone.",fix:"Simplify the crossing edges near the named edge if a quick fix is needed, and report the reproducing source \u2014 the certificate/geometry mismatch is an engine defect.",origins:["engine"]},ROUTE_UNEXPLAINED_BEND:{summary:"An edge contains a diagonal segment under orthogonal routing (route-contract tripwire)",what:"an orthogonally-routed edge contains a diagonal segment, a bend its route certificate cannot explain.",triggers:"Flowchart and state routes are orthogonal and certified; a diagonal segment on a forward or feedback edge means post-certification geometry drift. Not reachable from well-formed source in normal operation.",fix:"No source-level fix is expected to be needed; if verify reports it, capture the source and report it as a renderer bug \u2014 determinism makes the reproduction exact.",origins:["engine"]},ROUTE_LABEL_ON_SHARED_TRUNK:{summary:"A label pill sits on a line segment another edge shares (route-contract tripwire)",what:"an edge label sits on a line segment shared with another edge, so it is ambiguous which edge it names.",triggers:"Fan-in/fan-out patterns where several labeled edges merge onto a shared trunk and a label pill lands on the shared piece rather than the edge\u2019s own segment.",fix:"Shorten the label with <code>set_label</code> so it fits the edge\u2019s exclusive segment, or restructure the fan so the labeled edge has its own approach.",origins:["source","engine"]},ROUTE_SELF_LOOP_OCCUPANCY:{summary:"A self-loop certificate has invalid side/boundary geometry or collides with another loop/label (route-contract tripwire)",what:"a self-loop cannot reserve a clear side, boundary span, route corridor, or label area without colliding with another loop or route.",triggers:"Several self-loops competing for the same node side, or a later route/label pass entering space already certified for a loop. The warning names the conflict kind and, when applicable, the other edge.",fix:"Move one relationship to a different endpoint or remove a redundant loop. If it persists on unchanged source, report it as a route-allocation defect.",origins:["source","engine"]},ROUTE_CONTAINER_MISANCHOR:{summary:"A container edge does not terminate on the container border (route-contract tripwire)",what:"an edge attached to a subgraph or group does not terminate on the container\u2019s border.",triggers:"Container-anchored edges must end exactly on the group rectangle; a miss means the border moved after routing. This is a tripwire over final geometry rather than a source mistake.",fix:"Re-anchor the edge to a member node instead of the container as a workaround, and report the source \u2014 the container anchor contract is the engine\u2019s to uphold.",origins:["engine"]},ROUTE_SHAPE_MISANCHOR:{summary:"An endpoint is off the rendered shape boundary (route-contract tripwire)",what:"an edge endpoint does not sit on the outline of the node shape it connects to (e.g. off a diamond\u2019s facet).",triggers:"Endpoint-on-shape is checked against the final node geometry; a miss usually accompanies a node that changed size or shape after routes were frozen.",fix:"Switching the node to a simpler shape (rectangle) is the mechanical workaround; the underlying anchor drift is an engine defect worth reporting with the source.",origins:["engine"]},ROUTE_STALE_AFTER_NODE_MOVE:{summary:"An endpoint detached from its node entirely, or another node sits on the edge's route (route-contract tripwire)",what:"an edge still follows a corridor computed before a node moved: an endpoint anchors where its node used to be, or another node now sits on the route.",triggers:"A compaction or alignment pass moved a node after edge routing without re-anchoring the affected edges. Not producible from source alone in normal operation.",fix:"No diagram edit reliably clears it; report the reproducing source. If it blocks a task, removing and re-adding the named edge forces a fresh route.",origins:["engine"]},DUPLICATE_EDGE:{summary:"Flowchart/state contains an exact repeated edge with the same endpoints, label, style, and markers. Usually accidental regeneration or duplicate mutation.",what:"two edges with identical endpoints, label, style, and arrowheads \u2014 the second adds ink but no information.",triggers:"An agent re-adding an edge that already exists, typically an <code>add_edge</code> issued without checking the current edge list, or copy-pasted source lines.",fix:"Remove one copy with <code>remove_edge</code> (or delete the duplicate source line); if two parallel edges are intentional, give them distinct labels so they stop being duplicates.",example:"flowchart LR\n A[Start] --> B[Finish]\n A --> B",origins:["source"]},UNREACHABLE_NODE:{summary:"Flowchart/state contains a node not reachable from any entry root when the graph has roots. Usually a stranded branch after an edit.",what:"a node cannot be reached from any root (a node with no incoming edges) by following edges.",triggers:"Disconnected clusters left behind after <code>remove_edge</code>/<code>remove_node</code> mutations, or a cycle with no entry edge from the main flow.",fix:"Connect the node into the flow with <code>add_edge</code> from a reachable node, or delete it with <code>remove_node</code> if it is leftover.",example:"flowchart LR\n A[Start] --> B[Done]\n C[Orphan] --> D[Cycle]\n D --> C",origins:["source"]},DECISION_BRANCH_UNLABELED:{summary:"A decision diamond has two or more exits and this branch carries no condition label. ISO 5807 (10.3.1.2) and ANSI X3.5 (4.10.2) require every exit of a multi-exit decision to be labeled with its condition value.",guideNote:"a multi-exit decision diamond has an unlabeled branch",what:"a decision diamond with two or more exits has at least one unlabeled exit, so the branch condition is ambiguous.",triggers:"Adding a second exit to a diamond without a condition label. ISO 5807 / ANSI X3.5 require each exit of a multi-exit decision to be labeled with its condition value.",fix:"Label every exit \u2014 <code>set_label</code> on the unlabeled edge (e.g. <code>yes</code>/<code>no</code>) or add <code>|condition|</code> to the source line.",example:"flowchart TD\n A{Ready?} -->|yes| B[Ship]\n A --> C[Wait]",origins:["source"]},FLOW_IMBALANCE:{summary:"A sankey intermediate node (one with both inflow and outflow) receives a different total than it emits. Conservation across stages is the domain's defining property \u2014 the ribbon widths are an account \u2014 and the layout silently renders `max(in, out)`, hiding the unaccounted quantity. Payload carries `node`, `inflow`, `outflow`, and a `message` naming the unaccounted amount. Balance the flows or add an explicit remainder link (e.g. a `Losses` sink).",guideNote:"a sankey intermediate node receives a different total than it emits \u2014 conservation across stages is the domain's defining property, so the warning names the node, its inflow, its outflow, and the unaccounted amount (which otherwise renders silently as node height); balance the flows or add an explicit remainder link",what:"a Sankey intermediate node receives a different total flow than it emits, leaving part of its height without a matching ribbon.",triggers:"A node appears as both a link target and source, but the sum of incoming values differs from the sum of outgoing values beyond floating-point tolerance.",fix:"Balance the incoming and outgoing values, or add an explicit remainder link so every unit of flow has a named destination.",example:"sankey-beta\n Supply,Hub,10\n Hub,Used,7",origins:["source"]},COMMENT_DROPPED:{summary:"A parsed payload carries a known comment-loss receipt, including payloads produced by older serializers. Current built-in serializers retain detected comments; Flowchart and State anchor them to statements, and other structured families append unassociated comments. The warning carries occurrence count and original line numbers.",guideNote:"a payload carries known comment loss; current serializers retain detected comments, but cannot recover text already omitted from an older payload",what:"a record of comments already lost from a parsed artifact.",triggers:"Parsed metadata records a missing comment occurrence. No current built-in source-only reproducer is known; legacy or externally assembled payloads can still carry this receipt.",fix:"Recover the named comment text from the original source before committing the edit. Do not treat an ok flag as a losslessness certificate.",origins:["source"]},UNSUPPORTED_SYNTAX:{summary:'The source uses Mermaid syntax that is preserved losslessly but not fully modeled by local structured mutation/render semantics (for example flowchart edge IDs, edge metadata, click/href directives, or markdown strings), or, with `syntax: "empty_layout"`, the source carries content but the local layout renders a 0x0 canvas with no nodes, edges, or groups. Payload includes `syntax`, optional `line`, and `message`.',guideNote:'either a Mermaid construct (for example flowchart edge IDs, edge metadata, click/href, or markdown strings) is preserved losslessly as source but is not fully modeled by local structured mutation/render semantics, or `syntax: "empty_layout"` means the source carries content but the local layout produced a 0x0 canvas with no nodes, edges, or groups. Inspect the warning message and `verify.layout` before accepting the artifact',what:"the source uses syntax or content the local structured model cannot faithfully express.",triggers:'Flowchart <code>click</code>/<code>href</code> directives, edge IDs and edge metadata, v11 <code>@{ shape: \u2026 }</code> node metadata, markdown strings, unclosed delimiters that would silently drop content, or <code>syntax: "empty_layout"</code> when content-bearing source lays out to a 0\xD70 canvas with no nodes, edges, or groups.',fix:"For preserved Mermaid syntax, remove the directive if local rendering fidelity matters, or keep it knowing the local renderer ignores it; edits touching those lines need source-level editing rather than typed mutations. For <code>empty_layout</code>, inspect the warning message and <code>verify.layout</code>, then repair the malformed or unsupported source before accepting the artifact.",example:"flowchart LR\n A[Start] --> B[Docs]\n click B callCallback",origins:["source"]},CONTENT_DROPPED_ON_ROUNDTRIP:{summary:'The structured `{nodes, edges, groups}` tally changed across a parse \u2192 serialize \u2192 re-parse cycle, so canonical serialization is silently dropping or duplicating content even though the bytes may re-parse (payload carries `before`/`after` counts). The faithfulness analogue of `COMMENT_DROPPED` \u2014 "100% parse success is not faithfulness". Runs on every verify, for every family; opaque bodies (byte-verbatim) are exempt.',guideNote:"the structured node/edge/group tally changed across a parse \u2192 serialize \u2192 re-parse cycle \u2014 canonical serialization is silently dropping or duplicating content even though the bytes may re-parse; treat it as a faithfulness bug to report",what:"a parse \u2192 serialize \u2192 re-parse cycle lost nodes, edges, or groups by count.",triggers:"A serializer defect on unusual syntax: the faithfulness tally before and after the round trip disagrees. This is a tripwire that guards every verify; it should not fire on supported syntax.",fix:"Do not serialize the typed tree for this diagram \u2014 fall back to source-level edits so nothing is lost, and report the source; the before/after counts on the warning pinpoint what vanished.",origins:["engine"]},EVENT_SOURCE_TYPE:{summary:"An explicit Event Modeling input connects frame types outside the domain source rules. The source and connection remain renderable; inspect node, source and message.",guideNote:"inspect the named Event Modeling source and target frame types; rendering preserves the authored connection",what:"an explicit source frame has the wrong domain type for its target.",triggers:"A command sourced from something other than UI/processor, an event from something other than a command, a read model from something other than an event, or UI/processor from something other than a read model.",fix:"Correct the source reference or the authored frame type. Keep the connection when it deliberately documents a domain violation; the diagnostic remains advisory.",example:"eventmodeling\ntf 01 rmo CartItems\ntf 02 evt CartChanged ->> 01",origins:["source"]},INEFFECTIVE_CONFIG:{summary:"A Mermaid config field has no effect on this family's geometry or paint: it is accepted for config-shape compatibility but not wired (e.g. Journey's sequence-era fields `boxMargin`, `rightAngles`, \u2026), unknown to the family's config section, or given an invalid value. Payload names the `field`. Accepting-and-ignoring silently misleads migrating users; this lint says so.",guideNote:"a Mermaid config field has no effect on this family's output \u2014 it was accepted for compatibility but is not wired, is unknown to the family, or has an invalid value (the warning names the field)",what:"a Mermaid config field has no effect on this family\u2019s geometry or paint: it was accepted for compatibility but is not wired, is unknown to the family, or has an invalid value.",triggers:"Copying configuration between diagram families, using a documented upstream option that this deterministic renderer has not wired, supplying an unknown field under a known family section, or giving a field a value of the wrong type or range. The warning names the exact field.",fix:"Remove the inert field, correct an invalid value, move the setting under the family that supports it, or use a wired render option. Do not rely on the accepted value until verify stops reporting it.",example:"---\nconfig:\n flowchart:\n madeUpKey: 1\n---\nflowchart LR\n A --> B",origins:["config"]},LOW_CONTRAST:{summary:"A concrete authored paint remains authoritative but misses a measurable contrast threshold against the final resolved opaque background. Payload names the `field`, `foreground`, `background`, measured `ratio`, and required `minimum`; verification diagnoses without repainting authored intent. Transparent output is not measured because its host backdrop is unknown.",guideNote:"a concrete authored paint remains authoritative but misses a measurable contrast threshold against the final resolved opaque background; the warning reports both colors, the measured ratio, and the minimum without repainting. Transparent output is not measured because its host backdrop is unknown",what:"a concrete authored paint remains in the output but misses a measurable contrast threshold against the final resolved page background.",triggers:"An authored color such as <code>themeVariables.radar.axisColor</code> resolves to less than 4.5:1 against an opaque page. Transparent output is not measured because its host backdrop is unknown.",fix:"Choose a foreground or page color that meets the warning\u2019s <code>minimum</code> ratio. The renderer preserves explicit authored paint, so re-run verify after changing the source rather than expecting an automatic repaint.",example:'---\nconfig:\n themeVariables:\n radar:\n axisColor: "#dddddd"\n---\nradar-beta\n axis speed, cost, safety\n curve current{4,3,5}\n max 5',origins:["config"]},LABELS_HIDDEN:{summary:'A chart\'s layout left out text the source asked for because it did not fit. XY chart: `target: "x-axis"` lists the authored category names the axis does not draw (tick labels thinned to avoid overlap, or the whole category axis dropped when its widest name does not fit); `target: "data-labels"` lists the bars (`category = value`) whose value label fits neither inside the bar nor in the plot beyond its end \u2014 shorten the names, flip with `set_orientation {horizontal: true}`, or widen the value range. Quadrant chart: `target: "point-labels"` lists the points whose label collides with labels placed first \u2014 spread the points, shorten the names, or enlarge the chart. The chart still renders; `describe` still lists every category and point, so this lint is the only signal that a reader cannot see them.',guideNote:'a chart left out text the source asked for because it did not fit: for an XY chart, `target: "x-axis"` lists the category names the axis does not draw (thinned or dropped) and `target: "data-labels"` lists the bars whose value label has no room (shorten the names, flip the chart with `set_orientation {horizontal: true}`, or widen the value range); for a quadrant chart, `target: "point-labels"` lists the points whose label collides with labels placed first (spread the points, shorten the names, or enlarge the chart)',what:"an XY or quadrant chart left out text the source asked for because it did not fit: category names on the x-axis, bar value labels, or quadrant point labels.",triggers:"Many or long category names under a vertical chart, where the axis thins its tick labels to avoid overlap or drops a category axis whose widest name does not fit; a bar whose value label fits neither inside the bar nor in the plot beyond its end; or a quadrant point whose label collides with labels placed before it. <code>target</code> says which, and <code>labels</code> lists exactly what is missing.",fix:"Shorten the category names, flip the chart with <code>set_orientation {horizontal: true}</code> so categories run down the side, or widen the value range so labels have room beyond the bars. For a quadrant chart, spread the points, shorten the names, or enlarge the chart.",example:'xychart-beta\n x-axis ["North region", "South region", "East region", "West region", "Central region", "Coastal region", "Mountain region", "Desert region", "Island region", "Border region"]\n bar [12, 18, 9, 22, 15, 11, 7, 5, 3, 8]',origins:["source","config"]},SCALE_RANGE_EXCLUDES_ZERO:{summary:"The radial scale excludes zero.",what:"Radar radii are measured from an authored non-zero minimum.",triggers:"A radar chart sets min above zero.",fix:"Use min 0 for proportional radii, or retain the deliberate truncation and disclose the scale.",example:"radar-beta\n axis a, b, c\n curve x{95, 96, 99}\n min 90\n max 100",origins:["source"]},BAR_RANGE_EXCLUDES_ZERO:{summary:"An XY chart with bar series has an authored y-axis range that excludes zero. Bars grow from zero clamped into the range, so they start at the reported `baseline` and their lengths stop being proportional to their values (a truncated axis). The authored range is kept. Include zero with `set_y_axis`, or draw the series as a line.",guideNote:"an XY chart with bar series has an authored y-axis range that excludes zero, so bars start at the reported `baseline` and their lengths are not proportional to their values; include zero with `set_y_axis`, or draw the series as a line",what:"an XY chart with bar series has an authored y-axis range that excludes zero, so bar lengths are not proportional to their values.",triggers:"A <code>y-axis min --> max</code> range entirely above or below zero. Bars grow from zero clamped into the range, so every bar starts at the reported <code>baseline</code> and small differences look large.",fix:"Include zero in the range with <code>set_y_axis</code>, or draw the series as a <code>line</code>, whose position (not length) carries the value.",example:"xychart-beta\n x-axis [Q1, Q2, Q3]\n y-axis 90 --> 100\n bar [92, 95, 97]",origins:["source"]},VALUES_OUTSIDE_RANGE:{summary:"An XY chart series has values outside the authored y-axis range. A bar stops at the edge of the range, so its length understates the value, and a line point is drawn past the plot. The warning names the `series`, the `values` outside the range, and the `range`; the range is kept. Widen it with `set_y_axis`, or remove it so the axis fits the data.",guideNote:"an XY chart series has values outside the authored y-axis range: a bar stops at the edge of the range, so its length understates the value, and a line point is drawn past the plot; the warning names the `series` and its `values` outside the `range`. Widen the range with `set_y_axis`, or remove it",what:"an XY chart has values outside its authored y-axis range, so the chart misstates them: a bar stops at the edge of the range and a line point is drawn past the plot.",triggers:"A <code>y-axis min --> max</code> range that does not reach every value of a series. The warning names the <code>series</code>, the <code>values</code> outside the range, and the <code>range</code> itself; a bar chart drawn with <code>bar [5, 20]</code> on <code>0 --> 10</code> shows the two bars at a 1:2 length ratio instead of 1:4.",fix:"Widen the range with <code>set_y_axis</code> so it reaches every value, or remove the range so the axis fits the data.",example:"xychart-beta\n x-axis [a, b]\n y-axis 0 --> 10\n bar [5, 20]",origins:["source"]},BRAND_CONSTRAINT_WARNING:{summary:"A caller-selected inspect-only `contrast`, `accent-area`, or `mono-role` Brand constraint failed or could not be measured. Payload reports the constraint, `measurement`, applicable role/mark, and concrete evidence without repainting or relayout.",what:"an explicitly requested inspect-only Brand constraint failed or could not be measured.",triggers:'A StyleSpec <code>contrast</code>, <code>accent-area</code>, or <code>mono-role</code> constraint with <code>action: "warn"</code> inspects final Scene paint. Transparent or unresolved compositing contexts report unmeasurable evidence without inventing a ratio.',fix:"Inspect the structured measurement payload and adjust the role/slot paint or the constraint threshold. The renderer deliberately preserves the authored artifact and never repaints or relayouts it.",origins:["source","config"]},BRAND_CONSTRAINT_ERROR:{summary:'The same inspect-only Brand constraint contract with `action: "error"`; it preserves authored output but flips `verify.ok` so a caller can enforce its declared brand policy.',what:"a caller-selected Brand constraint failed with error action and therefore blocks verification.",triggers:'The same final-Scene rules as <code>BRAND_CONSTRAINT_WARNING</code>, selected with <code>action: "error"</code> when a project wants its declared brand policy to flip <code>verify.ok</code>.',fix:'Correct the StyleSpec or diagram paint named by the payload, or deliberately change that constraint to <code>action: "warn"</code>. Suppression does not repair the visual issue.',origins:["source","config"]}};function et(e,t,n="HANDLER_ERROR"){const r=[];for(let o=0;o<e.length;o++){try{r.push({ok:true,value:t(e[o],o)})}catch(a){const s=a instanceof Error?a.message:String(a);r.push({ok:false,error:{code:n,message:s}})}}return r}import{existsSync as me,mkdirSync as Et,readFileSync as Rt,writeFileSync as ue}from"fs";import{dirname as _t,join as le}from"path";var nt="https://agentic-mermaid.dev";var ot=`${nt}/llms.txt`;var at=`${nt}/agent-instructions.md`;var it="<!-- agentic-mermaid:start -->";var It="<!-- agentic-mermaid:end -->";var st=Y.map(e=>`\`${e.narrower}\``).join(" / ");var tt=`${it}
1
+ import{b as ce}from"./chunk-2DNGDTJD.js";import"./chunk-WYIB6BUR.js";import{b as qe}from"./chunk-4F2UGYTM.js";import{A as We,E as Be,F as Je,H as Ge,I as Ve,O as se,P as je,Q as ze,R as Ue,S as Ye,g as Me,h as Le,k as De,n as Fe,t as X,u as K,x as Pe,y as $e}from"./chunk-U4MT3RRE.js";import{i as Y,k as Se,l as Oe,o as te,oa as P,p as Ne,qa as ie,r as Ae,ra as O}from"./chunk-KXMANAST.js";import{Fc as Re,Gc as _e,gc as q,vh as H}from"./chunk-EHJI3QYE.js";import"./chunk-HINRNKPO.js";import{_c as Ie,gd as re,hd as Ce,id as ne,yb as xe}from"./chunk-DOFB572I.js";import{a as hr,b as gr,c as N,d as p,e as fr,f as He,g as yr,h as wr,i as br,j as de,k as At,l as m,m as l,n as Ke,o as W,p as Qe}from"./chunk-MKE7GNYU.js";import{a as Xe,b as Q,c as $}from"./chunk-XU5LPD2D.js";import{A as T,B as Ee,H as Te,K as F,L as oe,M as ae,N as M}from"./chunk-O7H2UX5K.js";import"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";import{spawnSync as Mt}from"child_process";import{existsSync as B,mkdtempSync as Lt,readFileSync as R,statSync as Dt,watch as Ft,writeFileSync as Z}from"fs";import{tmpdir as Pt}from"os";import{basename as lt,dirname as $t,join as ut,resolve as J}from"path";var Ze={EMPTY_DIAGRAM:{summary:"Diagram contains no renderable elements",what:"the source parses to a diagram with no drawable content.",triggers:"A bare header like <code>flowchart TD</code> with no statements after it, a body containing only comments, or a mutation sequence that removed the last node, message, or task.",fix:"Add at least one element \u2014 <code>add_node</code>/<code>add_edge</code> for flowcharts, <code>add_participant</code>/<code>add_message</code> for sequence, <code>add_task</code> for gantt/journey \u2014 or check that the intended body was not lost before serializing.",example:"flowchart TD",origins:["source"]},EDGE_MISANCHORED:{summary:"Edge endpoint does not attach to a real node / participant",what:"an edge, message, or dependency references an endpoint that is not in the diagram.",triggers:"A gantt <code>after</code>/<code>until</code> dependency naming a missing task, a class <code>note for</code> a class that does not exist, or a diagram body assembled outside the parser whose edges, messages, or commit parents name missing endpoints. The typed <code>remove_node</code> and <code>remove_participant</code> mutations drop the attached edges and messages themselves.",fix:"Add the missing endpoint (<code>add_node</code>, <code>add_participant</code>, <code>add_task</code>) or retarget/remove the dangling edge (<code>remove_edge</code>, <code>remove_message</code>).",example:"gantt\n dateFormat YYYY-MM-DD\n section Build\n Design :design, 2026-01-01, 2d\n Ship :ship, after review, 3d",origins:["source"]},OFF_CANVAS:{summary:"Node or edge segment lies outside the canvas",what:"a positioned node or edge route extends past the computed canvas on the reported axis.",triggers:"Never in normal operation \u2014 the engine sizes the canvas around content, so this is a tripwire that fires only when a layout pass moves geometry after the canvas was sized. Layout is deterministic, so a firing input reproduces byte-identically.",fix:"Not fixable by editing the diagram content itself: simplify or remove the construct that provokes it, and report the source as a renderer bug so the layout defect gets fixed.",origins:["engine"]},GROUP_BREACH:{summary:"Member node lies outside its group's bounds",what:"a node that belongs to a subgraph or group is positioned outside its group rectangle.",triggers:"An engine-bug tripwire like <code>OFF_CANVAS</code>: deeply nested subgraphs combined with cross-group edges are historically where containment slipped. The warning names both the group and the escaping member.",fix:"Flatten the nesting or move the member out of the group (source edit, or <code>remove_node</code> then re-add outside the subgraph). A reproducible breach is a renderer bug worth reporting with the source.",origins:["engine"]},UNKNOWN_SHAPE:{summary:"Shape name unrecognized; default used",what:"a node carries a shape outside the renderer\u2019s known vocabulary and falls back to a plain rectangle, or an architecture service names an icon the renderer cannot resolve and gets a text glyph instead.",triggers:"Shape syntax the parser modeled but the renderer does not draw \u2014 typically newer Mermaid shape names reaching a structured flowchart or state graph \u2014 or an architecture icon that is neither built in nor in the bundled icon set.",fix:"Switch the node to a supported shape (rectangle, rounded, diamond, stadium, circle, hexagon, cylinder, \u2026) or the service to a supported icon with a source edit; the diagram still renders meanwhile, so this is a warning rather than an error.",origins:["source"]},LABEL_OVERFLOW:{summary:"A label's longest rendered line exceeds the character cap (default 40, `labelCharCap`): `<br>` and `\\n` split lines, XML entities count as one character, and formatting tags are stripped. Families that draw text literally (Pie, Timeline, Gantt, XYChart, GitGraph, Radar) count `<br>` and tags as characters, as drawn. Payload includes `charCount` and `limit`. Character-based, no font-table dependency.",guideNote:"a label's longest displayed line is over the char cap \u2014 `<br>`/`\\n` split lines, XML entities decode to one char, formatting tags strip (families that draw text literally count them); default cap 40, raise via `labelCharCap` / `am verify --label-cap N` when long labels are intentional instead of truncating the user's text",what:"a label\u2019s longest rendered line exceeds the character cap (default 40), which hurts layout and readability. The count measures what the renderer draws: <code>&lt;br&gt;</code> starts a new line, XML entities like <code>&amp;#160;</code> count as one character, and formatting tags are stripped, except in the families that draw text literally (Pie, Timeline, Gantt, XYChart, GitGraph, Radar), where <code>&lt;br&gt;</code> and tags count as characters.",triggers:"Prose sentences pasted into node labels, edge labels, message text, or section/period titles \u2014 common when an agent copies requirement text verbatim into the diagram. Multi-line labels fire only when a single rendered line exceeds the cap.",fix:"Shorten the text with <code>set_label</code>, <code>set_message_text</code>, or the matching family mutation; raise <code>labelCharCap</code> in <code>VerifyOptions</code> only when long labels are genuinely intended.",example:"flowchart LR\n A[This label is far longer than the forty character cap] --> B[Done]",origins:["source"]},UNRESOLVABLE_SCHEDULE:{summary:"The diagram parses and round-trips but its semantics cannot resolve, so rendering will fail loudly. Emitted for structured gantt bodies whose scheduler raises a named `GANTT_*` error (unknown task reference, bad calendar date, dependency cycle, everything-excluded calendar); the payload's `reason` carries that error.",guideNote:"a gantt parses but its schedule cannot resolve, so render would fail; `reason` names the `GANTT_*` error",what:"a gantt schedule cannot be resolved to concrete dates, so bars cannot be positioned.",triggers:"A task whose <code>after</code>/<code>until</code> expression references a task id that does not exist, a start/end that cannot be parsed against the declared <code>dateFormat</code>, a dependency cycle, or <code>excludes</code> that leave no working day. The warning carries the engine reason string.",fix:"Point the reference at a real task id or give the task explicit dates with the <code>set_task_dates</code> mutation (or edit the offending source line named in the reason).",example:"gantt\n title Release\n dateFormat YYYY-MM-DD\n section Build\n Ship :ship, after review, 3d",origins:["source"]},RENDER_FAILED:{summary:"Any family: the parser, the strict render parser, layout, or theme colors reject the source or its configuration, so rendering would fail; `origin` says which (`source` or `config`). Generalizes `UNRESOLVABLE_SCHEDULE`'s seam-closing \u2014 a clean verify proves the diagram actually renders; the payload's `reason` carries the renderer error. A defect in Agentic Mermaid itself is `INTERNAL_ERROR` instead.",guideNote:"the parser, the strict render parser, layout, or theme colors reject the source or its configuration (any family; `origin` says which), so rendering would fail; `reason` carries the renderer error \u2014 a clean verify proves the diagram actually renders",what:"the source or its configuration makes parsing or rendering throw, so <code>am render</code> would fail instead of producing an artifact.",triggers:'With <code>origin: "source"</code>, source the parser or the render path rejects: malformed frontmatter or statements, an unrecognized diagram header, a construct the strict render parser cannot handle, an invalid authored style color, or a diagram over a host work limit. With <code>origin: "config"</code>, configuration the render path rejects: an invalid theme or family config color, malformed config, or an invalid render option. The warning\u2019s <code>reason</code> carries the renderer\u2019s message. A failure caused by a defect in Agentic Mermaid is reported as <code>INTERNAL_ERROR</code>, not as this code.',fix:"Return the structured error and the source rather than a fabricated artifact; fix what <code>reason</code> names, in the source or the configuration as <code>origin</code> says (for example the invalid color), or simplify, split, or drop the construct it points at. A reproducible failure on well-formed source is still a renderer bug worth reporting.",origins:["source","config"]},INTERNAL_ERROR:{summary:"Agentic Mermaid hit an internal defect while drawing this source; it is not caused by the source. `defaultRender` says whether an ordinary render still produces output: `succeeds-unchecked` \u2014 it does, but the extra consistency checks verify runs failed, so its layout evidence cannot be trusted; `fails` \u2014 rendering throws. The payload's `reason` carries the internal error. Do not rewrite the diagram to work around it; report it with the source.",guideNote:"Agentic Mermaid hit an internal defect, not caused by the source; `defaultRender` is `succeeds-unchecked` when an ordinary render still produces output that the failed consistency checks cannot vouch for, or `fails` when rendering throws \u2014 do not rewrite the diagram to work around it; report it with the source",what:"Agentic Mermaid hit an internal defect while drawing this source; the failure is not caused by the source.",triggers:"A failed internal consistency check \u2014 a lowered Scene that disagrees with its own derivation, a broken layout-pass contract, a layout that could not be certified \u2014 or a runtime error such as a <code>TypeError</code> inside the engine. <code>defaultRender</code> says whether an ordinary render still produces output: <code>succeeds-unchecked</code> when it does, but the extra consistency checks verify runs failed, so its layout evidence cannot be trusted; <code>fails</code> when rendering throws.",fix:"Do not rewrite the diagram to work around it. Report it with the source and the warning\u2019s <code>reason</code>; layout is deterministic, so the source reproduces it exactly. A typed edit to a diagram that already had this defect is still accepted.",origins:["engine"]},NODE_OVERLAP:{summary:"Two laid-out node bounding boxes intersect",what:"two nodes\u2019 boxes intersect in the final layout; the warning reports the pair and the overlap area in pixels.",triggers:"The deterministic layout separates nodes by construction, so no small flowchart source fires this \u2014 it appears only when a family adapter or post-pass produces colliding boxes on dense inputs. It is a tripwire, not an everyday lint.",fix:"Shorten the labels of the named pair or reduce local density; if the overlap persists on a stable input, treat it as a layout defect and report the source.",origins:["source","engine"]},CONTENT_OCCLUDED:{summary:"Final layout hides authored text or an interaction marker",what:"a measured label plate, card or header covers authored text or an interaction marker in the final drawing.",triggers:"Dense relationships competing for a label corridor, containment relationships with insufficient clearance, or authored label offsets that move text over protected content. The warning names the affected interaction.",fix:"Remove the conflicting label offset, increase available space or split the view. Persistent occlusion without authored offsets is a renderer defect. Verification fails because retained metadata alone does not make hidden content readable.",origins:["source","engine"]},LAYOUT_LIMIT_EXCEEDED:{summary:"Preserved content exceeds an explicitly requested layout budget",what:"the minimum measured geometry or explicit placement constraints exceed a requested layout budget.",triggers:"A compact C4 width budget smaller than a card, nested boundary, protected label corridor or authored placement constraint can accommodate. Content is retained at its legible size.",fix:"Increase the requested width, allow wrapping, remove explicit placement constraints or split the diagram. The warning reports a limitation rather than silently shrinking or dropping content.",origins:["source","config"]},ROUTE_SELF_CROSS:{summary:"An edge route crosses itself",what:"a single edge\u2019s routed polyline crosses over itself.",triggers:"A routing tripwire on the final geometry: the router avoids self-intersection, so a firing means dense cyclic routing degraded. The warning names the edge and the crossing count.",fix:"Remove or redirect the redundant edge (<code>remove_edge</code>, then <code>add_edge</code> along a simpler path); a persistent self-cross on unchanged source is an engine bug to report.",origins:["engine"]},ROUTE_HITCH:{summary:"An edge bends although a direct lane for it is provably clear (route-contract tripwire)",what:"an edge bends although a clear straight lane exists for it; the warning reports how far the route strays from that lane, in pixels.",triggers:"The layout certifies clear lanes when routes are frozen; a hitch means a later pass mutated geometry after certification. Agents cannot cause this from source alone.",fix:"Simplify the crossing edges near the named edge if a quick fix is needed, and report the reproducing source \u2014 the certificate/geometry mismatch is an engine defect.",origins:["engine"]},ROUTE_UNEXPLAINED_BEND:{summary:"An edge contains a diagonal segment under orthogonal routing (route-contract tripwire)",what:"an orthogonally-routed edge contains a diagonal segment, a bend its route certificate cannot explain.",triggers:"Flowchart and state routes are orthogonal and certified; a diagonal segment on a forward or feedback edge means post-certification geometry drift. Not reachable from well-formed source in normal operation.",fix:"No source-level fix is expected to be needed; if verify reports it, capture the source and report it as a renderer bug \u2014 determinism makes the reproduction exact.",origins:["engine"]},ROUTE_LABEL_ON_SHARED_TRUNK:{summary:"A label pill sits on a line segment another edge shares (route-contract tripwire)",what:"an edge label sits on a line segment shared with another edge, so it is ambiguous which edge it names.",triggers:"Fan-in/fan-out patterns where several labeled edges merge onto a shared trunk and a label pill lands on the shared piece rather than the edge\u2019s own segment.",fix:"Shorten the label with <code>set_label</code> so it fits the edge\u2019s exclusive segment, or restructure the fan so the labeled edge has its own approach.",origins:["source","engine"]},ROUTE_SELF_LOOP_OCCUPANCY:{summary:"A self-loop certificate has invalid side/boundary geometry or collides with another loop/label (route-contract tripwire)",what:"a self-loop cannot reserve a clear side, boundary span, route corridor, or label area without colliding with another loop or route.",triggers:"Several self-loops competing for the same node side, or a later route/label pass entering space already certified for a loop. The warning names the conflict kind and, when applicable, the other edge.",fix:"Move one relationship to a different endpoint or remove a redundant loop. If it persists on unchanged source, report it as a route-allocation defect.",origins:["source","engine"]},ROUTE_CONTAINER_MISANCHOR:{summary:"A container edge does not terminate on the container border (route-contract tripwire)",what:"an edge attached to a subgraph or group does not terminate on the container\u2019s border.",triggers:"Container-anchored edges must end exactly on the group rectangle; a miss means the border moved after routing. This is a tripwire over final geometry rather than a source mistake.",fix:"Re-anchor the edge to a member node instead of the container as a workaround, and report the source \u2014 the container anchor contract is the engine\u2019s to uphold.",origins:["engine"]},ROUTE_SHAPE_MISANCHOR:{summary:"An endpoint is off the rendered shape boundary (route-contract tripwire)",what:"an edge endpoint does not sit on the outline of the node shape it connects to (e.g. off a diamond\u2019s facet).",triggers:"Endpoint-on-shape is checked against the final node geometry; a miss usually accompanies a node that changed size or shape after routes were frozen.",fix:"Switching the node to a simpler shape (rectangle) is the mechanical workaround; the underlying anchor drift is an engine defect worth reporting with the source.",origins:["engine"]},ROUTE_STALE_AFTER_NODE_MOVE:{summary:"An endpoint detached from its node entirely, or another node sits on the edge's route (route-contract tripwire)",what:"an edge still follows a corridor computed before a node moved: an endpoint anchors where its node used to be, or another node now sits on the route.",triggers:"A compaction or alignment pass moved a node after edge routing without re-anchoring the affected edges. Not producible from source alone in normal operation.",fix:"No diagram edit reliably clears it; report the reproducing source. If it blocks a task, removing and re-adding the named edge forces a fresh route.",origins:["engine"]},DUPLICATE_EDGE:{summary:"Flowchart/state contains an exact repeated edge with the same endpoints, label, style, and markers. Usually accidental regeneration or duplicate mutation.",what:"two edges with identical endpoints, label, style, and arrowheads \u2014 the second adds ink but no information.",triggers:"An agent re-adding an edge that already exists, typically an <code>add_edge</code> issued without checking the current edge list, or copy-pasted source lines.",fix:"Remove one copy with <code>remove_edge</code> (or delete the duplicate source line); if two parallel edges are intentional, give them distinct labels so they stop being duplicates.",example:"flowchart LR\n A[Start] --> B[Finish]\n A --> B",origins:["source"]},UNREACHABLE_NODE:{summary:"Flowchart/state contains a node not reachable from any entry root when the graph has roots. Usually a stranded branch after an edit.",what:"a node cannot be reached from any root (a node with no incoming edges) by following edges.",triggers:"Disconnected clusters left behind after <code>remove_edge</code>/<code>remove_node</code> mutations, or a cycle with no entry edge from the main flow.",fix:"Connect the node into the flow with <code>add_edge</code> from a reachable node, or delete it with <code>remove_node</code> if it is leftover.",example:"flowchart LR\n A[Start] --> B[Done]\n C[Orphan] --> D[Cycle]\n D --> C",origins:["source"]},DECISION_BRANCH_UNLABELED:{summary:"A decision diamond has two or more exits and this branch carries no condition label. ISO 5807 (10.3.1.2) and ANSI X3.5 (4.10.2) require every exit of a multi-exit decision to be labeled with its condition value.",guideNote:"a multi-exit decision diamond has an unlabeled branch",what:"a decision diamond with two or more exits has at least one unlabeled exit, so the branch condition is ambiguous.",triggers:"Adding a second exit to a diamond without a condition label. ISO 5807 / ANSI X3.5 require each exit of a multi-exit decision to be labeled with its condition value.",fix:"Label every exit \u2014 <code>set_label</code> on the unlabeled edge (e.g. <code>yes</code>/<code>no</code>) or add <code>|condition|</code> to the source line.",example:"flowchart TD\n A{Ready?} -->|yes| B[Ship]\n A --> C[Wait]",origins:["source"]},FLOW_IMBALANCE:{summary:"A sankey intermediate node (one with both inflow and outflow) receives a different total than it emits. Conservation across stages is the domain's defining property \u2014 the ribbon widths are an account \u2014 and the layout silently renders `max(in, out)`, hiding the unaccounted quantity. Payload carries `node`, `inflow`, `outflow`, and a `message` naming the unaccounted amount. Balance the flows or add an explicit remainder link (e.g. a `Losses` sink).",guideNote:"a sankey intermediate node receives a different total than it emits \u2014 conservation across stages is the domain's defining property, so the warning names the node, its inflow, its outflow, and the unaccounted amount (which otherwise renders silently as node height); balance the flows or add an explicit remainder link",what:"a Sankey intermediate node receives a different total flow than it emits, leaving part of its height without a matching ribbon.",triggers:"A node appears as both a link target and source, but the sum of incoming values differs from the sum of outgoing values beyond floating-point tolerance.",fix:"Balance the incoming and outgoing values, or add an explicit remainder link so every unit of flow has a named destination.",example:"sankey-beta\n Supply,Hub,10\n Hub,Used,7",origins:["source"]},COMMENT_DROPPED:{summary:"A parsed payload carries a known comment-loss receipt, including payloads produced by older serializers. Current built-in serializers retain detected comments; Flowchart and State anchor them to statements, and other structured families append unassociated comments. The warning carries occurrence count and original line numbers.",guideNote:"a payload carries known comment loss; current serializers retain detected comments, but cannot recover text already omitted from an older payload",what:"a record of comments already lost from a parsed artifact.",triggers:"Parsed metadata records a missing comment occurrence. No current built-in source-only reproducer is known; legacy or externally assembled payloads can still carry this receipt.",fix:"Recover the named comment text from the original source before committing the edit. Do not treat an ok flag as a losslessness certificate.",origins:["source"]},UNSUPPORTED_SYNTAX:{summary:'The source uses Mermaid syntax that is preserved losslessly but not fully modeled by local structured mutation/render semantics (for example flowchart edge IDs, edge metadata, click/href directives, or markdown strings), or, with `syntax: "empty_layout"`, the source carries content but the local layout renders a 0x0 canvas with no nodes, edges, or groups. Payload includes `syntax`, optional `line`, and `message`.',guideNote:'either a Mermaid construct (for example flowchart edge IDs, edge metadata, click/href, or markdown strings) is preserved losslessly as source but is not fully modeled by local structured mutation/render semantics, or `syntax: "empty_layout"` means the source carries content but the local layout produced a 0x0 canvas with no nodes, edges, or groups. Inspect the warning message and `verify.layout` before accepting the artifact',what:"the source uses syntax or content the local structured model cannot faithfully express.",triggers:'Flowchart <code>click</code>/<code>href</code> directives, edge IDs and edge metadata, v11 <code>@{ shape: \u2026 }</code> node metadata, markdown strings, unclosed delimiters that would silently drop content, or <code>syntax: "empty_layout"</code> when content-bearing source lays out to a 0\xD70 canvas with no nodes, edges, or groups.',fix:"For preserved Mermaid syntax, remove the directive if local rendering fidelity matters, or keep it knowing the local renderer ignores it; edits touching those lines need source-level editing rather than typed mutations. For <code>empty_layout</code>, inspect the warning message and <code>verify.layout</code>, then repair the malformed or unsupported source before accepting the artifact.",example:"flowchart LR\n A[Start] --> B[Docs]\n click B callCallback",origins:["source"]},CONTENT_DROPPED_ON_ROUNDTRIP:{summary:'The structured `{nodes, edges, groups}` tally changed across a parse \u2192 serialize \u2192 re-parse cycle, so canonical serialization is silently dropping or duplicating content even though the bytes may re-parse (payload carries `before`/`after` counts). The faithfulness analogue of `COMMENT_DROPPED` \u2014 "100% parse success is not faithfulness". Runs on every verify, for every family; opaque bodies (byte-verbatim) are exempt.',guideNote:"the structured node/edge/group tally changed across a parse \u2192 serialize \u2192 re-parse cycle \u2014 canonical serialization is silently dropping or duplicating content even though the bytes may re-parse; treat it as a faithfulness bug to report",what:"a parse \u2192 serialize \u2192 re-parse cycle lost nodes, edges, or groups by count.",triggers:"A serializer defect on unusual syntax: the faithfulness tally before and after the round trip disagrees. This is a tripwire that guards every verify; it should not fire on supported syntax.",fix:"Do not serialize the typed tree for this diagram \u2014 fall back to source-level edits so nothing is lost, and report the source; the before/after counts on the warning pinpoint what vanished.",origins:["engine"]},EVENT_SOURCE_TYPE:{summary:"An explicit Event Modeling input connects frame types outside the domain source rules. The source and connection remain renderable; inspect node, source and message.",guideNote:"inspect the named Event Modeling source and target frame types; rendering preserves the authored connection",what:"an explicit source frame has the wrong domain type for its target.",triggers:"A command sourced from something other than UI/processor, an event from something other than a command, a read model from something other than an event, or UI/processor from something other than a read model.",fix:"Correct the source reference or the authored frame type. Keep the connection when it deliberately documents a domain violation; the diagnostic remains advisory.",example:"eventmodeling\ntf 01 rmo CartItems\ntf 02 evt CartChanged ->> 01",origins:["source"]},INEFFECTIVE_CONFIG:{summary:"A Mermaid config field has no effect on this family's geometry or paint: it is accepted for config-shape compatibility but not wired (e.g. Journey's sequence-era fields `boxMargin`, `rightAngles`, \u2026), unknown to the family's config section, or given an invalid value. Payload names the `field`. Accepting-and-ignoring silently misleads migrating users; this lint says so.",guideNote:"a Mermaid config field has no effect on this family's output \u2014 it was accepted for compatibility but is not wired, is unknown to the family, or has an invalid value (the warning names the field)",what:"a Mermaid config field has no effect on this family\u2019s geometry or paint: it was accepted for compatibility but is not wired, is unknown to the family, or has an invalid value.",triggers:"Copying configuration between diagram families, using a documented upstream option that this deterministic renderer has not wired, supplying an unknown field under a known family section, or giving a field a value of the wrong type or range. The warning names the exact field.",fix:"Remove the inert field, correct an invalid value, move the setting under the family that supports it, or use a wired render option. Do not rely on the accepted value until verify stops reporting it.",example:"---\nconfig:\n flowchart:\n madeUpKey: 1\n---\nflowchart LR\n A --> B",origins:["config"]},LOW_CONTRAST:{summary:"A concrete authored paint remains authoritative but misses a measurable contrast threshold against the final resolved opaque background. Payload names the `field`, `foreground`, `background`, measured `ratio`, and required `minimum`; verification diagnoses without repainting authored intent. Transparent output is not measured because its host backdrop is unknown.",guideNote:"a concrete authored paint remains authoritative but misses a measurable contrast threshold against the final resolved opaque background; the warning reports both colors, the measured ratio, and the minimum without repainting. Transparent output is not measured because its host backdrop is unknown",what:"a concrete authored paint remains in the output but misses a measurable contrast threshold against the final resolved page background.",triggers:"An authored color such as <code>themeVariables.radar.axisColor</code> resolves to less than 4.5:1 against an opaque page. Transparent output is not measured because its host backdrop is unknown.",fix:"Choose a foreground or page color that meets the warning\u2019s <code>minimum</code> ratio. The renderer preserves explicit authored paint, so re-run verify after changing the source rather than expecting an automatic repaint.",example:'---\nconfig:\n themeVariables:\n radar:\n axisColor: "#dddddd"\n---\nradar-beta\n axis speed, cost, safety\n curve current{4,3,5}\n max 5',origins:["config"]},LABELS_HIDDEN:{summary:'A chart\'s layout left out text the source asked for because it did not fit. XY chart: `target: "x-axis"` lists the authored category names the axis does not draw (tick labels thinned to avoid overlap, or the whole category axis dropped when its widest name does not fit); `target: "data-labels"` lists the bars (`category = value`) whose value label fits neither inside the bar nor in the plot beyond its end \u2014 shorten the names, flip with `set_orientation {horizontal: true}`, or widen the value range. Quadrant chart: `target: "point-labels"` lists the points whose label collides with labels placed first \u2014 spread the points, shorten the names, or enlarge the chart. The chart still renders; `describe` still lists every category and point, so this lint is the only signal that a reader cannot see them.',guideNote:'a chart left out text the source asked for because it did not fit: for an XY chart, `target: "x-axis"` lists the category names the axis does not draw (thinned or dropped) and `target: "data-labels"` lists the bars whose value label has no room (shorten the names, flip the chart with `set_orientation {horizontal: true}`, or widen the value range); for a quadrant chart, `target: "point-labels"` lists the points whose label collides with labels placed first (spread the points, shorten the names, or enlarge the chart)',what:"an XY or quadrant chart left out text the source asked for because it did not fit: category names on the x-axis, bar value labels, or quadrant point labels.",triggers:"Many or long category names under a vertical chart, where the axis thins its tick labels to avoid overlap or drops a category axis whose widest name does not fit; a bar whose value label fits neither inside the bar nor in the plot beyond its end; or a quadrant point whose label collides with labels placed before it. <code>target</code> says which, and <code>labels</code> lists exactly what is missing.",fix:"Shorten the category names, flip the chart with <code>set_orientation {horizontal: true}</code> so categories run down the side, or widen the value range so labels have room beyond the bars. For a quadrant chart, spread the points, shorten the names, or enlarge the chart.",example:'xychart-beta\n x-axis ["North region", "South region", "East region", "West region", "Central region", "Coastal region", "Mountain region", "Desert region", "Island region", "Border region"]\n bar [12, 18, 9, 22, 15, 11, 7, 5, 3, 8]',origins:["source","config"]},SCALE_RANGE_EXCLUDES_ZERO:{summary:"The radial scale excludes zero.",what:"Radar radii are measured from an authored non-zero minimum.",triggers:"A radar chart sets min above zero.",fix:"Use min 0 for proportional radii, or retain the deliberate truncation and disclose the scale.",example:"radar-beta\n axis a, b, c\n curve x{95, 96, 99}\n min 90\n max 100",origins:["source"]},BAR_RANGE_EXCLUDES_ZERO:{summary:"An XY chart with bar series has an authored y-axis range that excludes zero. Bars grow from zero clamped into the range, so they start at the reported `baseline` and their lengths stop being proportional to their values (a truncated axis). The authored range is kept. Include zero with `set_y_axis`, or draw the series as a line.",guideNote:"an XY chart with bar series has an authored y-axis range that excludes zero, so bars start at the reported `baseline` and their lengths are not proportional to their values; include zero with `set_y_axis`, or draw the series as a line",what:"an XY chart with bar series has an authored y-axis range that excludes zero, so bar lengths are not proportional to their values.",triggers:"A <code>y-axis min --> max</code> range entirely above or below zero. Bars grow from zero clamped into the range, so every bar starts at the reported <code>baseline</code> and small differences look large.",fix:"Include zero in the range with <code>set_y_axis</code>, or draw the series as a <code>line</code>, whose position (not length) carries the value.",example:"xychart-beta\n x-axis [Q1, Q2, Q3]\n y-axis 90 --> 100\n bar [92, 95, 97]",origins:["source"]},VALUES_OUTSIDE_RANGE:{summary:"An XY chart series has values outside the authored y-axis range. A bar stops at the edge of the range, so its length understates the value, and a line point is drawn past the plot. The warning names the `series`, the `values` outside the range, and the `range`; the range is kept. Widen it with `set_y_axis`, or remove it so the axis fits the data.",guideNote:"an XY chart series has values outside the authored y-axis range: a bar stops at the edge of the range, so its length understates the value, and a line point is drawn past the plot; the warning names the `series` and its `values` outside the `range`. Widen the range with `set_y_axis`, or remove it",what:"an XY chart has values outside its authored y-axis range, so the chart misstates them: a bar stops at the edge of the range and a line point is drawn past the plot.",triggers:"A <code>y-axis min --> max</code> range that does not reach every value of a series. The warning names the <code>series</code>, the <code>values</code> outside the range, and the <code>range</code> itself; a bar chart drawn with <code>bar [5, 20]</code> on <code>0 --> 10</code> shows the two bars at a 1:2 length ratio instead of 1:4.",fix:"Widen the range with <code>set_y_axis</code> so it reaches every value, or remove the range so the axis fits the data.",example:"xychart-beta\n x-axis [a, b]\n y-axis 0 --> 10\n bar [5, 20]",origins:["source"]},BRAND_CONSTRAINT_WARNING:{summary:"A caller-selected inspect-only `contrast`, `accent-area`, or `mono-role` Brand constraint failed or could not be measured. Payload reports the constraint, `measurement`, applicable role/mark, and concrete evidence without repainting or relayout.",what:"an explicitly requested inspect-only Brand constraint failed or could not be measured.",triggers:'A StyleSpec <code>contrast</code>, <code>accent-area</code>, or <code>mono-role</code> constraint with <code>action: "warn"</code> inspects final Scene paint. Transparent or unresolved compositing contexts report unmeasurable evidence without inventing a ratio.',fix:"Inspect the structured measurement payload and adjust the role/slot paint or the constraint threshold. The renderer deliberately preserves the authored artifact and never repaints or relayouts it.",origins:["source","config"]},BRAND_CONSTRAINT_ERROR:{summary:'The same inspect-only Brand constraint contract with `action: "error"`; it preserves authored output but flips `verify.ok` so a caller can enforce its declared brand policy.',what:"a caller-selected Brand constraint failed with error action and therefore blocks verification.",triggers:'The same final-Scene rules as <code>BRAND_CONSTRAINT_WARNING</code>, selected with <code>action: "error"</code> when a project wants its declared brand policy to flip <code>verify.ok</code>.',fix:'Correct the StyleSpec or diagram paint named by the payload, or deliberately change that constraint to <code>action: "warn"</code>. Suppression does not repair the visual issue.',origins:["source","config"]}};function et(e,t,n="HANDLER_ERROR"){const r=[];for(let o=0;o<e.length;o++){try{r.push({ok:true,value:t(e[o],o)})}catch(a){const s=a instanceof Error?a.message:String(a);r.push({ok:false,error:{code:n,message:s}})}}return r}import{existsSync as me,mkdirSync as Et,readFileSync as Rt,writeFileSync as ue}from"fs";import{dirname as _t,join as le}from"path";var nt="https://agentic-mermaid.dev";var ot=`${nt}/llms.txt`;var at=`${nt}/agent-instructions.md`;var it="<!-- agentic-mermaid:start -->";var It="<!-- agentic-mermaid:end -->";var st=Y.map(e=>`\`${e.narrower}\``).join(" / ");var tt=`${it}
2
2
  ## Editing Mermaid diagrams
3
3
 
4
4
  Use **Agentic Mermaid** whenever you create or edit Mermaid diagrams. Do not
@@ -223,4 +223,4 @@ Authoring guide + quality rubric: docs/style-authoring.md.
223
223
  `);for(const i of a.appended)process.stdout.write(` updated ${s(i)}
224
224
  `);for(const i of a.skipped)process.stdout.write(` skipped ${s(i)} (exists; use --force if applicable)
225
225
  `);process.stdout.write("\nNext: read AGENTS.md, connect the MCP server in .mcp.json, or run `am --agent-instructions`.\n");return m}function dr(e,t="svg"){const n=/```mermaid[ \t]*\r?\n([\s\S]*?)\r?\n```/g;const r=[];for(const o of e.matchAll(n))r.push(o[1]);return et(r,(o,a)=>{try{const s=t==="ascii"?ze(o,{useAscii:true}):se(o);return{index:a,ok:true,format:t,output:s}}catch(s){const i=_(s);return{index:a,ok:false,error:i?.error??{code:"RENDER_FAILED",message:s instanceof Error?s.message:String(s)}}}},"MARKDOWN_BLOCK_ERROR").map((o,a)=>o.ok?o.value:{index:a,ok:false,error:o.error})}function cr(e){const t=v(e.positional[0]);const n=N(e,"ascii")?"ascii":"svg";const r=dr(t,n);process.stdout.write(JSON.stringify({ok:true,blocks:r})+"\n");return m}function lr(e,t=0){let n;try{n=JSON.parse(e)}catch(o){return{ok:false,error:{code:"INVALID_JSON",message:o.message}}}if(!n||typeof n!=="object"||typeof n.op!=="string"){return{ok:false,error:{code:"INVALID_PAYLOAD",message:"missing op string"}}}const r=n.op;if(["render","verify","parse","serialize","mutate"].includes(r)&&typeof n.source!=="string"){return{ok:false,op:r,error:{code:"INVALID_PAYLOAD",message:"missing source string"}}}try{switch(r){case"render":{const o=n.options===void 0?{}:n.options;if(typeof o!=="object"||o===null||Array.isArray(o)){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:"batch render options must be a plain JSON object"}}}const{format:a,certificates:s,targetWidth:i,...d}=o;if(a!==void 0&&typeof a!=="string"){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch render option "format" must be a string'}}}const c=a??oe;if(!ae(c)||M(c)?.id==="png"){const A=F.filter(S=>M(S)?.id!=="png");return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:`batch render format must be one of ${A.join(", ")}`}}}const h=M(c);if(s!==void 0&&typeof s!=="boolean"){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch render option "certificates" must be a boolean'}}}if(s===true&&h.id!=="layout"){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch render option "certificates" is valid only with format "layout"'}}}if(i!==void 0&&(!Number.isInteger(i)||i<=0)){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch render option "targetWidth" must be a positive integer'}}}if(i!==void 0&&h.id!=="ascii"&&h.id!=="unicode"){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch render option "targetWidth" is valid only with format "ascii" or "unicode"'}}}const w=H(d);if(w.length>0){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:w.join("; ")}}}const x=d;ye(n.source);const g=we(n.source,c,{...x,...h.id==="svg"?{idPrefix:`d${t}-${x.idPrefix??""}`}:{},...s===void 0?{}:{certificates:s},...i===void 0?{}:{targetWidth:i}});return{ok:true,op:r,data:{[c]:g.output,receipt:g.receipt}}}case"verify":{const o=n.options===void 0?{}:n.options;if(typeof o!=="object"||o===null||Array.isArray(o)){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:"batch verify options must be a plain JSON object"}}}const a=Object.keys(o).filter(c=>c!=="suppress"&&c!=="labelCharCap");if(a.length>0){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:`unknown batch verify option: ${a.join(", ")}`}}}const s=o;const i=new Set(Object.keys(T));if(s.suppress!==void 0&&(!Array.isArray(s.suppress)||s.suppress.some(c=>typeof c!=="string"||!i.has(c)))){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch verify option "suppress" must be an array of known warning-code strings'}}}if(s.labelCharCap!==void 0&&(!Number.isSafeInteger(s.labelCharCap)||s.labelCharCap<=0)){return{ok:false,op:r,error:{code:"INVALID_OPTIONS",message:'batch verify option "labelCharCap" must be a positive safe integer'}}}const d=X(n.source,o);if(!d.ok){const c=JSON.parse(JSON.stringify(d,b));return{ok:false,op:r,error:{code:"VERIFY_FAILED",message:"diagram failed verify",details:c.warnings},verify:c}}return{ok:true,op:r,data:JSON.parse(JSON.stringify(d,b))}}case"parse":{const o=O(n.source);if(!o.ok){const a=L(o.error);return{ok:false,op:r,error:a.error}}return{ok:true,op:r,data:JSON.parse(JSON.stringify(kt(o.value),b))}}case"serialize":{let o;try{o=JSON.parse(n.source)}catch(s){return{ok:false,op:r,error:{code:"INVALID_JSON",message:s.message}}}const a=ie(o);if(!a.ok)return{ok:false,op:r,error:{code:"SYNTHESIZE_FAILED",message:JSON.stringify(a.error)}};return{ok:true,op:r,data:{source:P(a.value)}}}case"mutate":{const o=Object.hasOwn(n,"mutation");const a=Object.hasOwn(n,"mutations");if(o===a){return{ok:false,op:r,error:{code:"INVALID_OP",message:"mutate batch line requires exactly one of mutation or mutations[]"}}}if(a&&!Array.isArray(n.mutations)){return{ok:false,op:r,error:{code:"INVALID_OP",message:"mutate batch line mutations must be a non-empty array"}}}const s=a?n.mutations:[n.mutation];if(s.length===0)return{ok:false,op:r,error:{code:"INVALID_OP",message:"mutate batch line mutations must be a non-empty array"}};if(n.preserveSource!==void 0&&typeof n.preserveSource!=="boolean")return{ok:false,op:r,error:{code:"INVALID_OP",message:"preserveSource must be boolean"}};const i=wt(n.source,s,n.preserveSource===true);if(!i.ok)return{ok:false,op:r,error:{code:i.error.code,message:i.error.message,..."details"in i.error&&i.error.details!==void 0?{details:i.error.details}:{}},...i.verify?{verify:JSON.parse(JSON.stringify(i.verify,b))}:{}};return{ok:true,op:r,data:{source:i.source,verify:JSON.parse(JSON.stringify(i.verify,b)),...i.mode?{mode:i.mode}:{}}}}default:return{ok:false,op:r,error:{code:"UNKNOWN_OP",message:`unknown op: ${r}`}}}}catch(o){const a=_(o);if(a)return{ok:false,op:r,error:a.error};return{ok:false,op:r,error:{code:"RENDER_FAILED",message:o instanceof Error?o.message:String(o)}}}}async function ur(){if(process.stdin.isTTY)throw new Error("needs a file argument or piped stdin");const{streamJsonlBatch:e}=await import("./jsonl-RPJY6YWO.js");await e(process.stdin,process.stdout,lr);return m}function kt(e){if(e.body.kind==="flowchart"){const t=e.body.graph;return{kind:e.kind,meta:e.meta,body:{kind:"flowchart",graph:{direction:t.direction,nodes:Object.fromEntries(t.nodes),edges:t.edges,subgraphs:t.subgraphs,classDefs:Object.fromEntries(t.classDefs),classAssignments:Object.fromEntries(t.classAssignments),nodeStyles:Object.fromEntries(t.nodeStyles),linkStyles:Object.fromEntries([...t.linkStyles].map(([n,r])=>[String(n),r]))}},canonicalSource:e.canonicalSource}}return{kind:e.kind,meta:e.meta,body:e.body,canonicalSource:e.canonicalSource}}export{gr as BOOLEAN_FLAGS,yr as COMMAND_FLAGS,At as COMMAND_HELP,wr as COMMAND_POSITIONALS,hr as FLAG_SPECS,de as GLOBAL_USAGE,q as MUTATION_OPS_BY_FAMILY,fr as PNG_CLI_FLAG_BINDINGS,He as PNG_RENDER_FLAGS,bt as buildCapabilities,ar as buildLlmsTxt,Xt as buildPreviewHtml,N as flagEnabled,p as flagValue,wt as mutateSource,Kt as openPreviewFile,br as parseArgs,ln as renderFileOnce,dr as renderMarkdownBlocks,we as renderSourceToFormatWithReceipt,lr as runBatchLine,cn as runCli,Wt as runPreparedCli,Jt as watchPathForChanges};
226
- //# sourceMappingURL=cli-YGGTJZH7.js.map
226
+ //# sourceMappingURL=cli-ZYIDBYNS.js.map
@@ -1,6 +1,6 @@
1
- import { e8 as PrimitiveCapabilityClaim, e9 as OUTPUT_SECURITY_POLICY_VERSION, cu as SceneNode, ct as SceneDoc, cn as Result, a as ParsedDiagram, bQ as ParseError, ea as ColorMode, eb as AsciiTheme, b0 as FamilyId, e6 as TerminalProjectionDiagnostic, R as RenderRequestReceipt, ec as ResolvedTerminalStyle, ed as MindmapDiagram, ee as GitGraphDiagram, cG as SourcePreservationReceipt, cv as SemanticChannels, ae as ConnectorGeometry, ef as MarkPaint, eg as ConnectorDirection, ag as ConnectorLabelDescriptor, eh as Geometry, bE as MarkerDescriptor, ah as ConnectorMark, ei as ScenePoint, ej as LinearGradientDescriptor, T as TextMeasurementProfile } from './paint-certification-6rwQjIv_.js';
2
- import { R as RenderOptions, H as MermaidRuntimeConfig, q as DiagramColors, w as MermaidGraph } from './types-BcS52Mjt.js';
3
- import { k as ExtensionIdentity, C as StyleSpec, V as ExtensionCompatibility, W as ExtensionProvenance, t as SceneRole } from './svg-styles-BdnoM7AT.js';
1
+ import { e8 as PrimitiveCapabilityClaim, e9 as OUTPUT_SECURITY_POLICY_VERSION, cu as SceneNode, ct as SceneDoc, cn as Result, a as ParsedDiagram, bQ as ParseError, ea as ColorMode, eb as AsciiTheme, b0 as FamilyId, e6 as TerminalProjectionDiagnostic, R as RenderRequestReceipt, ec as ResolvedTerminalStyle, ed as MindmapDiagram, ee as GitGraphDiagram, cG as SourcePreservationReceipt, cv as SemanticChannels, ae as ConnectorGeometry, ef as MarkPaint, eg as ConnectorDirection, ag as ConnectorLabelDescriptor, eh as Geometry, bE as MarkerDescriptor, ah as ConnectorMark, ei as ScenePoint, ej as LinearGradientDescriptor, T as TextMeasurementProfile } from './paint-certification-BoLyr006.js';
2
+ import { R as RenderOptions, H as MermaidRuntimeConfig, q as DiagramColors, w as MermaidGraph } from './types-CLVJCaH2.js';
3
+ import { k as ExtensionIdentity, C as StyleSpec, V as ExtensionCompatibility, W as ExtensionProvenance, t as SceneRole } from './svg-styles-BnCoXyYe.js';
4
4
 
5
5
  /** Numeric wire version and semantic compatibility version from one source. */
6
6
  declare const SCENE_CONTRACT_VERSION: 2;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { U as CAPABILITY_NEGOTIATION_VERSION, V as CORE_CAPABILITY_OFFERS, W as CORE_SCENE_FEATURES, X as CORE_SCENE_OPERATIONS, Y as CORE_SCENE_PRIMITIVES, Z as CapabilityDecision, _ as CapabilityId, $ as CapabilityOffer, a0 as CapabilityRequirement, a1 as CapabilityRequirementLevel, a2 as CapabilityResolution, ek as CapabilityValidationResult, aa as CliRenderTransport, ab as CodeModeRenderTransport, ac as ConnectorContourSemantics, el as ConnectorDash, eg as ConnectorDirection, em as ConnectorEndpointAnchor, ad as ConnectorEndpoints, ae as ConnectorGeometry, af as ConnectorHitGeometry, ag as ConnectorLabelDescriptor, ah as ConnectorMark, ai as ConnectorRelationship, aj as ConnectorRoute, ak as ConnectorStroke, al as ConnectorSubpath, am as ConnectorTerminalLabelProjection, an as ConnectorTerminalMarkerPlacement, ao as ConnectorTerminalMarkerProjection, ap as ConnectorTerminalProjection, aq as ConnectorTerminalStrokeLoss, en as CoreSceneFeature, eo as CoreSceneOperation, ep as CoreScenePrimitive, eq as DEFAULT_TEXT_MEASUREMENT_PROFILE, er as DocumentMark, es as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES, et as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS, eu as EssentialScenePrimitiveCapability, ev as EssentialScenePrimitiveOperation, aM as ExtensionDiagramBody, aN as ExtensionValidDiagram, eh as Geometry, ew as GitGraphBranch, ex as GitGraphCommit, ey as GitGraphCommitType, ee as GitGraphDiagram, ez as GroupMark, bD as LibraryRenderTransport, ej as LinearGradientDescriptor, ef as MarkPaint, bE as MarkerDescriptor, eA as MarkerShape, ed as MindmapDiagram, eB as MindmapNode, eC as MindmapShape, e9 as OUTPUT_SECURITY_POLICY_VERSION, eD as OutputSecurityDiagnostic, eE as OutputSecurityMode, eF as OutputSecurityResult, bL as PRIMITIVE_REALIZATIONS, bP as PaintLayoutCertification, P as PaintLayoutCertificationError, a as ParsedDiagram, eG as ParsedDiagramFamilyMismatchError, eH as PositionedGitGraphDiagram, eI as PositionedMindmapDiagram, bW as PreservedDiagramBody, bX as PreservedSourceSpans, bY as PreservedValidDiagram, e8 as PrimitiveCapabilityClaim, eJ as PrimitiveRealization, eK as ProfileTextMeasurementInput, c2 as RENDER_CONTRACT_VERSION, c3 as RENDER_OUTPUTS, c4 as RENDER_OUTPUT_DESCRIPTORS, ca as RenderCapabilityError, eL as RenderOutput, cb as RenderOutputDescriptor, cc as RenderOutputTransports, R as RenderRequestReceipt, ec as ResolvedTerminalStyle, co as SHARED_RENDER_OPTION_FIELDS, eM as SceneBox, ct as SceneDoc, eN as SceneFeature, cu as SceneNode, eO as SceneNodeBase, eP as SceneOperation, ei as ScenePoint, eQ as ScenePrimitive, cv as SemanticChannels, eR as ShapeMark, cH as SourceSpan, cI as SourceSpanPoint, eS as SvgRelationSemantics, eT as SvgSemanticAccessibility, eU as SvgSemanticIdentity, eV as TERMINAL_STYLE_VERSION, eW as TerminalConnectorProjection, eX as TerminalConnectorProjectionReceipt, e6 as TerminalProjectionDiagnostic, e5 as TerminalProjectionDiagnosticCode, eY as TerminalProjectionSecurityContext, eZ as TextMark, T as TextMeasurementProfile, e_ as TextMeasurementProfileIdentity, e$ as applyOutputSecurityPolicy, f0 as essentialScenePrimitiveOperation, dW as negotiateCapabilities, dX as negotiateRenderCapabilities, dZ as parseSemVer, f1 as renderContractDigest, d_ as semVerSatisfies, d$ as sharedRenderOptionsJsonSchema, e0 as styleInputJsonSchema, e1 as terminalConnectorCapabilityClaims, e3 as validatePrimitiveCapabilities, e4 as validateSerializableRenderOptions, v as verifyNoExternalRefs, f2 as verifySvgDocumentEnvelope } from './paint-certification-6rwQjIv_.js';
2
- export { A as AnyPort, a as ArchitectureVisualOverrides, I as C4RuntimeConfig, C as ConfigDiagnostic, J as DEFAULTS, q as DiagramColors, D as DiamondFacet, b as DisplayRun, E as EdgeRouteCertificate, F as FamilyEdgeRouteCertificate, c as FamilyRouteCertificate, K as GitGraphRuntimeConfig, G as GraphLayoutDecision, O as GraphLayoutHints, Q as GraphLayoutOptions, S as GraphLayoutUnsupportedError, T as JourneyRuntimeConfig, L as LabelContent, U as LayoutCertificationReceipt, d as LayoutRouteCertificate, e as LayoutRouteClass, w as MermaidGraph, H as MermaidRuntimeConfig, V as MermaidThemeVariables, W as MindmapRuntimeConfig, X as PieRuntimeConfig, P as PortSemanticRole, f as PortSide, n as PositionedDiagram, Y as PositionedGraph, g as PreparedDisplayText, Z as QuadrantRuntimeConfig, _ as RadarRuntimeConfig, h as RegionContainmentCertificate, s as RenderContext, R as RenderOptions, $ as ResolvedColors, i as RouteBlocker, j as RouteCertificate, k as RouteClass, l as RoutePortAssignment, a0 as SankeyRuntimeConfig, a1 as StateRuntimeConfig, a2 as TimelineRuntimeConfig, a3 as XyChartRuntimeConfig, a4 as fromShikiTheme, a5 as inlineResolvedColors, a6 as resolveColors } from './types-BcS52Mjt.js';
3
- export { B as BINDABLE_ROLE_STYLE_PROPERTIES, a as BINDABLE_SCENE_ROLES, b as BRAND_CONSTRAINT_DESCRIPTORS, c as BRAND_CONSTRAINT_KINDS, d as BUILTIN_SCENE_ROLE_TRAITS, e as BindableSceneRole, f as BrandConstraint, g as BrandConstraintAction, h as BrandConstraintKind, X as BuiltinSceneRole, Y as CoreSceneRole, E as EXACT_ROLE_STYLE_CONTRACT, i as EXACT_STYLE_SCENE_ROLES, j as ExactStyleSceneRole, Z as ExtensionCollisionError, V as ExtensionCompatibility, _ as ExtensionCompatibilityDecision, $ as ExtensionCompatibilityResolution, k as ExtensionIdentity, W as ExtensionProvenance, a0 as ExtensionRegistration, a1 as KNOWN_EXTENSION_CONTRACT_VERSIONS, a2 as NamespacedSceneRole, R as ROLE_STYLE_PROPERTY_DESCRIPTORS, a3 as ResolvedSceneRoleTraits, l as RoleStyleFor, m as RoleStyleSpec, n as RoleStyles, o as SCENE_ROLE_DESCRIPTORS, p as SEMANTIC_BINDING_CHANNELS, q as STYLE_COLOR_TOKEN_DESCRIPTORS, r as STYLE_SPEC_FIELD_DESCRIPTORS, s as STYLE_SPEC_FORMAT_VERSION, a4 as SceneMarkKind, t as SceneRole, a5 as SceneRoleDescriptor, a6 as SceneRoleTraits, a7 as SceneSketchPolicy, u as SemanticBinding, v as SemanticBindingChannel, w as SemanticSlots, x as StyleColors, y as StyleDescriptor, S as StyleInput, z as StyleReferenceResolution, A as StyleRegistrationOptions, a8 as StyleRegistryKind, C as StyleSpec, a9 as canonicalExtensionId, D as createExtensionIdentity, aa as evaluateExtensionCompatibility, F as getStyle, G as inferBackend, H as knownStyleDescriptors, I as knownStyles, ab as parseExtensionId, ac as registerExtension, J as registerStyle, K as resolveSceneRoleTraits, L as resolveStyleReference, M as resolveStyleStack, N as sceneRoleTraits, O as styleSpecJsonSchema, P as validateStyleSpec } from './svg-styles-BdnoM7AT.js';
4
- export { bd as ARCHITECTURE_ICON_LIMITS, c as AsciiRenderColorMode, A as AsciiRenderOptions, d as AsciiWidthError, e as AsciiWidthErrorReason, B as BACKEND_CONFORMANCE_CHECK_IDS, f as BACKEND_CONFORMANCE_FIXTURE_ID, g as BACKEND_CONFORMANCE_VERSION, be as BROWSER_CANVAS_RUNTIME, h as BackendCapabilityConformanceResult, i as BackendCapabilityConformanceStatus, j as BackendConformanceCheck, k as BackendConformanceCheckId, l as BackendConformanceReport, m as BackendDescriptor, n as BackendRegistrationOptions, bf as BrowserPngDiagnostic, bg as BrowserPngFontSource, bh as BrowserPngHostDiagnostic, bi as BrowserPngRasterContext, bj as BrowserPngRasterResult, bk as BrowserPngRasterizer, bl as BrowserPngRuntimeProvenance, D as DefaultBackend, E as EXTERNAL_SCENE_API_VERSION, o as ExternalSceneConnector, p as ExternalSceneConnectorGeometry, q as ExternalSceneConnectorLabel, r as ExternalSceneContainer, s as ExternalSceneDataMark, t as ExternalSceneDocument, u as ExternalSceneGeometry, v as ExternalSceneInput, w as ExternalSceneMarker, x as ExternalSceneNode, y as ExternalSceneNodeBase, z as ExternalSceneShape, C as ExternalSceneText, F as FamilyDetectionDiagnostic, bm as GitGraphDuplicateCommitError, bn as GitGraphParseError, G as HOSTED_FONT_RESOURCES, H as HostBackendPolicy, bo as HostBackendSelection, bp as HostedFontFace, bq as HostedFontResource, br as LayoutCertificationAttempt, bs as LayoutCertificationError, bt as LayoutMetricBudgetError, M as MAX_HOSTED_PNG_BYTES, I as MAX_HOSTED_PNG_PIXELS, J as MAX_PNG_FONT_DIRECTORIES, K as MAX_PNG_FONT_DIRECTORY_LENGTH, L as MAX_PNG_PIXELS, N as MAX_PNG_RASTER_DIMENSION, bu as MarkerSerializationOptions, bv as Matrix, bw as MermaidBrowserPNGRenderer, bx as MermaidBrowserPNGRendererHostOptions, O as MermaidFamilyClassification, Q as MermaidFamilyDetectionError, by as MermaidRenderer, bz as MermaidRendererHostOptions, bA as MindmapDuplicateIdError, bB as MindmapParseError, R as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS, S as NATIVE_PNG_OUTPUT_POLICY_FIELDS, T as NativePngHostOnlyOptionField, U as NativePngOutputPolicyField, bC as OUTPUT_COLOR_PROFILE, V as PNG_DEFAULT_FONT_FAMILY, W as PNG_DEFAULT_MIN_LABEL_PX, X as PNG_DEFAULT_SCALE, Y as PNG_FONT_SOURCES, Z as PNG_NAPI_RUNTIME, _ as PNG_OUTPUT_OPTION_FIELDS, $ as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS, a0 as PNG_OUTPUT_POLICY_VERSION, a1 as PNG_WASM_RUNTIME, a2 as PORTABLE_PNG_OUTPUT_OPTION_FIELDS, bD as ParserObservation, bE as ParserObservationSource, bF as ParserObservationValue, bG as ParserObserver, bH as PngColorProfileReceipt, bI as PngDimensions, a3 as PngFitTo, a4 as PngFontSource, a5 as PngOutputOptionField, a6 as PngOutputOptionFieldDescriptor, a7 as PngOutputOptionInputKind, a8 as PngOutputOptionPolicyState, a9 as PngOutputOptionReceiptState, aa as PngOutputOptionScope, a as PngOutputPolicyInput, ab as PngRasterDimensions, b as PngRuntimeProvenance, ac as PortablePngOutputOptionField, ad as PortablePngOutputOptions, bJ as RESOLVED_SCENE_VERSION, ae as RESOURCE_MANIFEST, af as RESOURCE_MANIFEST_VERSION, bK as RenderableMarkerDescriptor, ag as RenderedAscii, bL as RenderedBrowserPng, bc as RenderedSvg, bM as ResolvedArchitectureIcon, bN as ResolvedPaint, bO as ResolvedPart, bP as ResolvedPath, ah as ResolvedPngOutputPolicy, bQ as ResolvedPrimitive, bR as ResolvedScene, ai as ResolvedTerminalOutputPolicy, bS as ResolvedText, bT as ResourceLicense, bU as ResourceManifest, bV as ResourceManifestEntry, aj as SCENE_CONTRACT_VERSION, ak as SCENE_VALIDATION_LIMITS, al as SCENE_VALIDATION_VERSION, bW as SceneConnectorHit, am as SceneValidationDiagnostic, an as SceneValidationDiagnosticCode, ao as SceneValidationError, ap as SceneValidationOptions, aq as SceneValidationResult, ar as StyleBackend, as as StyleBackendContext, at as TERMINAL_BOUNDED_PADDING_X, au as TERMINAL_DEFAULT_BOX_BORDER_PADDING, av as TERMINAL_DEFAULT_PADDING_X, aw as TERMINAL_DEFAULT_PADDING_Y, ax as TERMINAL_OUTPUT_POLICY_VERSION, ay as TEXT_MEASUREMENT_CONTRACT, az as TerminalOutputPolicyError, aA as TerminalOutputPolicyInput, aB as TextMeasurementContract, aC as TextMeasurementInput, aD as TextMeasurementResult, bX as applyPngColorProfile, bY as architectureIconManifest, bZ as architectureToMermaidGraph, aJ as assertHostedPngRasterBudget, aK as assertPngRasterBudget, b_ as assertRenderableLinearGradient, b$ as assertRenderableMarker, aL as assertValidSceneDoc, aM as buildExternalScene, aN as classifyMermaidFamilyFromFirstLine, c0 as connectorHitDistance, c1 as createMermaidBrowserPNGRenderer, c2 as createMermaidRenderer, aP as getBackend, c3 as hitTestConnector, c4 as hitTestSceneConnectors, aQ as hostedFontResource, c5 as inspectPngColorProfile, c6 as inspectPngDimensions, aR as knownBackendDescriptors, aS as measureText, aT as measureTextWidth, aU as normalizePortablePngBackground, aV as omitPngOutputOptions, c7 as parseArchitectureDiagram, c8 as parseGitGraph, c9 as parseMindmap, aW as parseRegisteredMermaid, aX as pngNapiRuntimeProvenance, aY as pngOutputOptionsJsonSchema, aZ as pngRasterDimensions, a_ as prepareSvgForPngRasterization, a$ as projectNativePngOutputPolicyInput, b0 as projectPortablePngOutputOptions, b1 as registerBackend, ba as renderMermaidASCII, ca as renderMermaidASCIIWithReceipt, cb as renderMermaidPNGInBrowserWithReceipt, bb as renderMermaidSVG, cc as renderMermaidSVGAsync, cd as renderMermaidSVGWithReceipt, ce as renderResolvedScene, cf as resolveArchitectureIcon, cg as resolveDiagramColors, b2 as resolvePngOutputPolicy, b3 as resolvePortablePngOutputPolicy, b4 as resolveTerminalOutputPolicy, b5 as runBackendConformance, ch as serializeGitGraph, ci as serializeLinearGradientResource, cj as serializeLinearGradientResources, ck as serializeMarkerResource, cl as serializeMarkerResources, cm as serializeMindmap, cn as snapshotResourceManifest, b6 as svgIntrinsicDimensions, b7 as validateResourceManifest, b8 as validateSceneDoc, b9 as verifyResourceBytes, co as withParserObservation } from './index-EeXqJXr5.js';
1
+ export { U as CAPABILITY_NEGOTIATION_VERSION, V as CORE_CAPABILITY_OFFERS, W as CORE_SCENE_FEATURES, X as CORE_SCENE_OPERATIONS, Y as CORE_SCENE_PRIMITIVES, Z as CapabilityDecision, _ as CapabilityId, $ as CapabilityOffer, a0 as CapabilityRequirement, a1 as CapabilityRequirementLevel, a2 as CapabilityResolution, ek as CapabilityValidationResult, aa as CliRenderTransport, ab as CodeModeRenderTransport, ac as ConnectorContourSemantics, el as ConnectorDash, eg as ConnectorDirection, em as ConnectorEndpointAnchor, ad as ConnectorEndpoints, ae as ConnectorGeometry, af as ConnectorHitGeometry, ag as ConnectorLabelDescriptor, ah as ConnectorMark, ai as ConnectorRelationship, aj as ConnectorRoute, ak as ConnectorStroke, al as ConnectorSubpath, am as ConnectorTerminalLabelProjection, an as ConnectorTerminalMarkerPlacement, ao as ConnectorTerminalMarkerProjection, ap as ConnectorTerminalProjection, aq as ConnectorTerminalStrokeLoss, en as CoreSceneFeature, eo as CoreSceneOperation, ep as CoreScenePrimitive, eq as DEFAULT_TEXT_MEASUREMENT_PROFILE, er as DocumentMark, es as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES, et as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS, eu as EssentialScenePrimitiveCapability, ev as EssentialScenePrimitiveOperation, aM as ExtensionDiagramBody, aN as ExtensionValidDiagram, eh as Geometry, ew as GitGraphBranch, ex as GitGraphCommit, ey as GitGraphCommitType, ee as GitGraphDiagram, ez as GroupMark, bD as LibraryRenderTransport, ej as LinearGradientDescriptor, ef as MarkPaint, bE as MarkerDescriptor, eA as MarkerShape, ed as MindmapDiagram, eB as MindmapNode, eC as MindmapShape, e9 as OUTPUT_SECURITY_POLICY_VERSION, eD as OutputSecurityDiagnostic, eE as OutputSecurityMode, eF as OutputSecurityResult, bL as PRIMITIVE_REALIZATIONS, bP as PaintLayoutCertification, P as PaintLayoutCertificationError, a as ParsedDiagram, eG as ParsedDiagramFamilyMismatchError, eH as PositionedGitGraphDiagram, eI as PositionedMindmapDiagram, bW as PreservedDiagramBody, bX as PreservedSourceSpans, bY as PreservedValidDiagram, e8 as PrimitiveCapabilityClaim, eJ as PrimitiveRealization, eK as ProfileTextMeasurementInput, c2 as RENDER_CONTRACT_VERSION, c3 as RENDER_OUTPUTS, c4 as RENDER_OUTPUT_DESCRIPTORS, ca as RenderCapabilityError, eL as RenderOutput, cb as RenderOutputDescriptor, cc as RenderOutputTransports, R as RenderRequestReceipt, ec as ResolvedTerminalStyle, co as SHARED_RENDER_OPTION_FIELDS, eM as SceneBox, ct as SceneDoc, eN as SceneFeature, cu as SceneNode, eO as SceneNodeBase, eP as SceneOperation, ei as ScenePoint, eQ as ScenePrimitive, cv as SemanticChannels, eR as ShapeMark, cH as SourceSpan, cI as SourceSpanPoint, eS as SvgRelationSemantics, eT as SvgSemanticAccessibility, eU as SvgSemanticIdentity, eV as TERMINAL_STYLE_VERSION, eW as TerminalConnectorProjection, eX as TerminalConnectorProjectionReceipt, e6 as TerminalProjectionDiagnostic, e5 as TerminalProjectionDiagnosticCode, eY as TerminalProjectionSecurityContext, eZ as TextMark, T as TextMeasurementProfile, e_ as TextMeasurementProfileIdentity, e$ as applyOutputSecurityPolicy, f0 as essentialScenePrimitiveOperation, dW as negotiateCapabilities, dX as negotiateRenderCapabilities, dZ as parseSemVer, f1 as renderContractDigest, d_ as semVerSatisfies, d$ as sharedRenderOptionsJsonSchema, e0 as styleInputJsonSchema, e1 as terminalConnectorCapabilityClaims, e3 as validatePrimitiveCapabilities, e4 as validateSerializableRenderOptions, v as verifyNoExternalRefs, f2 as verifySvgDocumentEnvelope } from './paint-certification-BoLyr006.js';
2
+ export { A as AnyPort, a as ArchitectureVisualOverrides, I as C4RuntimeConfig, C as ConfigDiagnostic, J as DEFAULTS, q as DiagramColors, D as DiamondFacet, b as DisplayRun, E as EdgeRouteCertificate, F as FamilyEdgeRouteCertificate, c as FamilyRouteCertificate, K as GitGraphRuntimeConfig, G as GraphLayoutDecision, O as GraphLayoutHints, Q as GraphLayoutOptions, S as GraphLayoutUnsupportedError, T as JourneyRuntimeConfig, L as LabelContent, U as LayoutCertificationReceipt, d as LayoutRouteCertificate, e as LayoutRouteClass, w as MermaidGraph, H as MermaidRuntimeConfig, V as MermaidThemeVariables, W as MindmapRuntimeConfig, X as PieRuntimeConfig, P as PortSemanticRole, f as PortSide, n as PositionedDiagram, Y as PositionedGraph, g as PreparedDisplayText, Z as QuadrantRuntimeConfig, _ as RadarRuntimeConfig, h as RegionContainmentCertificate, s as RenderContext, R as RenderOptions, $ as ResolvedColors, i as RouteBlocker, j as RouteCertificate, k as RouteClass, l as RoutePortAssignment, a0 as SankeyRuntimeConfig, a1 as StateRuntimeConfig, a2 as TimelineRuntimeConfig, a3 as XyChartRuntimeConfig, a4 as fromShikiTheme, a5 as inlineResolvedColors, a6 as resolveColors } from './types-CLVJCaH2.js';
3
+ export { B as BINDABLE_ROLE_STYLE_PROPERTIES, a as BINDABLE_SCENE_ROLES, b as BRAND_CONSTRAINT_DESCRIPTORS, c as BRAND_CONSTRAINT_KINDS, d as BUILTIN_SCENE_ROLE_TRAITS, e as BindableSceneRole, f as BrandConstraint, g as BrandConstraintAction, h as BrandConstraintKind, X as BuiltinSceneRole, Y as CoreSceneRole, E as EXACT_ROLE_STYLE_CONTRACT, i as EXACT_STYLE_SCENE_ROLES, j as ExactStyleSceneRole, Z as ExtensionCollisionError, V as ExtensionCompatibility, _ as ExtensionCompatibilityDecision, $ as ExtensionCompatibilityResolution, k as ExtensionIdentity, W as ExtensionProvenance, a0 as ExtensionRegistration, a1 as KNOWN_EXTENSION_CONTRACT_VERSIONS, a2 as NamespacedSceneRole, R as ROLE_STYLE_PROPERTY_DESCRIPTORS, a3 as ResolvedSceneRoleTraits, l as RoleStyleFor, m as RoleStyleSpec, n as RoleStyles, o as SCENE_ROLE_DESCRIPTORS, p as SEMANTIC_BINDING_CHANNELS, q as STYLE_COLOR_TOKEN_DESCRIPTORS, r as STYLE_SPEC_FIELD_DESCRIPTORS, s as STYLE_SPEC_FORMAT_VERSION, a4 as SceneMarkKind, t as SceneRole, a5 as SceneRoleDescriptor, a6 as SceneRoleTraits, a7 as SceneSketchPolicy, u as SemanticBinding, v as SemanticBindingChannel, w as SemanticSlots, x as StyleColors, y as StyleDescriptor, S as StyleInput, z as StyleReferenceResolution, A as StyleRegistrationOptions, a8 as StyleRegistryKind, C as StyleSpec, a9 as canonicalExtensionId, D as createExtensionIdentity, aa as evaluateExtensionCompatibility, F as getStyle, G as inferBackend, H as knownStyleDescriptors, I as knownStyles, ab as parseExtensionId, ac as registerExtension, J as registerStyle, K as resolveSceneRoleTraits, L as resolveStyleReference, M as resolveStyleStack, N as sceneRoleTraits, O as styleSpecJsonSchema, P as validateStyleSpec } from './svg-styles-BnCoXyYe.js';
4
+ export { bd as ARCHITECTURE_ICON_LIMITS, c as AsciiRenderColorMode, A as AsciiRenderOptions, d as AsciiWidthError, e as AsciiWidthErrorReason, B as BACKEND_CONFORMANCE_CHECK_IDS, f as BACKEND_CONFORMANCE_FIXTURE_ID, g as BACKEND_CONFORMANCE_VERSION, be as BROWSER_CANVAS_RUNTIME, h as BackendCapabilityConformanceResult, i as BackendCapabilityConformanceStatus, j as BackendConformanceCheck, k as BackendConformanceCheckId, l as BackendConformanceReport, m as BackendDescriptor, n as BackendRegistrationOptions, bf as BrowserPngDiagnostic, bg as BrowserPngFontSource, bh as BrowserPngHostDiagnostic, bi as BrowserPngRasterContext, bj as BrowserPngRasterResult, bk as BrowserPngRasterizer, bl as BrowserPngRuntimeProvenance, D as DefaultBackend, E as EXTERNAL_SCENE_API_VERSION, o as ExternalSceneConnector, p as ExternalSceneConnectorGeometry, q as ExternalSceneConnectorLabel, r as ExternalSceneContainer, s as ExternalSceneDataMark, t as ExternalSceneDocument, u as ExternalSceneGeometry, v as ExternalSceneInput, w as ExternalSceneMarker, x as ExternalSceneNode, y as ExternalSceneNodeBase, z as ExternalSceneShape, C as ExternalSceneText, F as FamilyDetectionDiagnostic, bm as GitGraphDuplicateCommitError, bn as GitGraphParseError, G as HOSTED_FONT_RESOURCES, H as HostBackendPolicy, bo as HostBackendSelection, bp as HostedFontFace, bq as HostedFontResource, br as LayoutCertificationAttempt, bs as LayoutCertificationError, bt as LayoutMetricBudgetError, M as MAX_HOSTED_PNG_BYTES, I as MAX_HOSTED_PNG_PIXELS, J as MAX_PNG_FONT_DIRECTORIES, K as MAX_PNG_FONT_DIRECTORY_LENGTH, L as MAX_PNG_PIXELS, N as MAX_PNG_RASTER_DIMENSION, bu as MarkerSerializationOptions, bv as Matrix, bw as MermaidBrowserPNGRenderer, bx as MermaidBrowserPNGRendererHostOptions, O as MermaidFamilyClassification, Q as MermaidFamilyDetectionError, by as MermaidRenderer, bz as MermaidRendererHostOptions, bA as MindmapDuplicateIdError, bB as MindmapParseError, R as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS, S as NATIVE_PNG_OUTPUT_POLICY_FIELDS, T as NativePngHostOnlyOptionField, U as NativePngOutputPolicyField, bC as OUTPUT_COLOR_PROFILE, V as PNG_DEFAULT_FONT_FAMILY, W as PNG_DEFAULT_MIN_LABEL_PX, X as PNG_DEFAULT_SCALE, Y as PNG_FONT_SOURCES, Z as PNG_NAPI_RUNTIME, _ as PNG_OUTPUT_OPTION_FIELDS, $ as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS, a0 as PNG_OUTPUT_POLICY_VERSION, a1 as PNG_WASM_RUNTIME, a2 as PORTABLE_PNG_OUTPUT_OPTION_FIELDS, bD as ParserObservation, bE as ParserObservationSource, bF as ParserObservationValue, bG as ParserObserver, bH as PngColorProfileReceipt, bI as PngDimensions, a3 as PngFitTo, a4 as PngFontSource, a5 as PngOutputOptionField, a6 as PngOutputOptionFieldDescriptor, a7 as PngOutputOptionInputKind, a8 as PngOutputOptionPolicyState, a9 as PngOutputOptionReceiptState, aa as PngOutputOptionScope, a as PngOutputPolicyInput, ab as PngRasterDimensions, b as PngRuntimeProvenance, ac as PortablePngOutputOptionField, ad as PortablePngOutputOptions, bJ as RESOLVED_SCENE_VERSION, ae as RESOURCE_MANIFEST, af as RESOURCE_MANIFEST_VERSION, bK as RenderableMarkerDescriptor, ag as RenderedAscii, bL as RenderedBrowserPng, bc as RenderedSvg, bM as ResolvedArchitectureIcon, bN as ResolvedPaint, bO as ResolvedPart, bP as ResolvedPath, ah as ResolvedPngOutputPolicy, bQ as ResolvedPrimitive, bR as ResolvedScene, ai as ResolvedTerminalOutputPolicy, bS as ResolvedText, bT as ResourceLicense, bU as ResourceManifest, bV as ResourceManifestEntry, aj as SCENE_CONTRACT_VERSION, ak as SCENE_VALIDATION_LIMITS, al as SCENE_VALIDATION_VERSION, bW as SceneConnectorHit, am as SceneValidationDiagnostic, an as SceneValidationDiagnosticCode, ao as SceneValidationError, ap as SceneValidationOptions, aq as SceneValidationResult, ar as StyleBackend, as as StyleBackendContext, at as TERMINAL_BOUNDED_PADDING_X, au as TERMINAL_DEFAULT_BOX_BORDER_PADDING, av as TERMINAL_DEFAULT_PADDING_X, aw as TERMINAL_DEFAULT_PADDING_Y, ax as TERMINAL_OUTPUT_POLICY_VERSION, ay as TEXT_MEASUREMENT_CONTRACT, az as TerminalOutputPolicyError, aA as TerminalOutputPolicyInput, aB as TextMeasurementContract, aC as TextMeasurementInput, aD as TextMeasurementResult, bX as applyPngColorProfile, bY as architectureIconManifest, bZ as architectureToMermaidGraph, aJ as assertHostedPngRasterBudget, aK as assertPngRasterBudget, b_ as assertRenderableLinearGradient, b$ as assertRenderableMarker, aL as assertValidSceneDoc, aM as buildExternalScene, aN as classifyMermaidFamilyFromFirstLine, c0 as connectorHitDistance, c1 as createMermaidBrowserPNGRenderer, c2 as createMermaidRenderer, aP as getBackend, c3 as hitTestConnector, c4 as hitTestSceneConnectors, aQ as hostedFontResource, c5 as inspectPngColorProfile, c6 as inspectPngDimensions, aR as knownBackendDescriptors, aS as measureText, aT as measureTextWidth, aU as normalizePortablePngBackground, aV as omitPngOutputOptions, c7 as parseArchitectureDiagram, c8 as parseGitGraph, c9 as parseMindmap, aW as parseRegisteredMermaid, aX as pngNapiRuntimeProvenance, aY as pngOutputOptionsJsonSchema, aZ as pngRasterDimensions, a_ as prepareSvgForPngRasterization, a$ as projectNativePngOutputPolicyInput, b0 as projectPortablePngOutputOptions, b1 as registerBackend, ba as renderMermaidASCII, ca as renderMermaidASCIIWithReceipt, cb as renderMermaidPNGInBrowserWithReceipt, bb as renderMermaidSVG, cc as renderMermaidSVGAsync, cd as renderMermaidSVGWithReceipt, ce as renderResolvedScene, cf as resolveArchitectureIcon, cg as resolveDiagramColors, b2 as resolvePngOutputPolicy, b3 as resolvePortablePngOutputPolicy, b4 as resolveTerminalOutputPolicy, b5 as runBackendConformance, ch as serializeGitGraph, ci as serializeLinearGradientResource, cj as serializeLinearGradientResources, ck as serializeMarkerResource, cl as serializeMarkerResources, cm as serializeMindmap, cn as snapshotResourceManifest, b6 as svgIntrinsicDimensions, b7 as validateResourceManifest, b8 as validateSceneDoc, b9 as verifyResourceBytes, co as withParserObservation } from './index-Bvhprdxz.js';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{$a as Kb,Da as ob,Db as jc,Ea as pb,Eb as kc,Fa as qb,Fb as lc,Ga as rb,Gb as mc,Hb as nc,Ia as sb,Ib as oc,Ja as tb,Ka as ub,La as vb,Ma as wb,Na as xb,Pa as yb,Qa as zb,Ra as Ab,Sa as Bb,Ta as Cb,Ua as Db,Va as Eb,Wa as Fb,Xa as Gb,Ya as Hb,Za as Ib,_a as Jb,ab as Lb,bb as Mb,cb as Nb,db as Ob,eb as Pb,fb as Qb,gb as Rb,hb as Sb,ib as Tb,ja as gb,jb as Ub,kb as Vb,lb as Wb,mb as Xb,nb as Yb,ob as Zb,pb as _b,qb as $b,ra as hb,rb as ac,sb as bc,tb as cc,ub as dc,va as jb,vb as ec,wa as kb,wb as fc,xa as lb,xb as gc,ya as mb,yb as hc,za as nb,zb as ic}from"./chunk-JZOJ4YGS.js";import{Bb as Y,Bg as na,Dc as $,Dh as fb,Gc as aa,Md as ba,Nd as ca,_g as Ba,c as J,ca as K,ki as ib,lh as Va,og as ga,pg as ha,ph as $a,qg as ia,rg as ja,tg as ka,uf as da,ug as la,uh as ab,vf as ea,vg as ma,vh as bb,wf as fa,wh as cb,xh as db,yh as eb}from"./chunk-EHCMJUMD.js";import"./chunk-UA234O4M.js";import{$c as ua,Ab as q,Ac as S,Bc as T,Cb as r,Cc as U,Db as s,Dc as V,Eb as t,Fb as u,Fd as Na,Gb as v,Gc as W,Gd as Oa,Hb as w,Hc as X,Hd as Pa,Ib as x,Id as Qa,J as b,Jb as y,K as c,Kb as z,L as d,Lb as A,M as e,Mb as B,N as f,Nb as C,O as g,Ob as D,Od as Ra,Pb as E,Q as h,Qb as F,Sd as Sa,Tc as oa,Uc as pa,Ud as Ta,V as i,Vc as qa,W as j,Wc as ra,Wd as Ua,X as k,Xc as sa,Yc as ta,ac as G,ad as va,bc as H,bd as wa,cc as I,cd as xa,dd as ya,ed as za,fd as Aa,jb as l,lb as m,ld as Ca,md as Da,nd as Ea,od as Fa,pd as Ga,qb as n,qc as L,qd as Ha,rc as M,rd as Ia,sd as Ja,tb as o,td as Ka,uc as N,vc as O,xc as P,xd as La,yb as p,yc as Q,yd as Ma,zc as R}from"./chunk-OMY6NRQD.js";import{F as Wa,G as Xa,H as Ya,I as Za,J as _a}from"./chunk-O7H2UX5K.js";import{a,b as Z,c as _}from"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";export{da as ARCHITECTURE_ICON_LIMITS,gb as AsciiWidthError,Pa as BACKEND_CONFORMANCE_CHECK_IDS,Oa as BACKEND_CONFORMANCE_FIXTURE_ID,Na as BACKEND_CONFORMANCE_VERSION,B as BINDABLE_ROLE_STYLE_PROPERTIES,A as BINDABLE_SCENE_ROLES,Z as BRAND_CONSTRAINT_DESCRIPTORS,_ as BRAND_CONSTRAINT_KINDS,ic as BROWSER_CANVAS_RUNTIME,C as BUILTIN_SCENE_ROLE_TRAITS,b as CAPABILITY_NEGOTIATION_VERSION,f as CORE_CAPABILITY_OFFERS,T as CORE_SCENE_FEATURES,S as CORE_SCENE_OPERATIONS,P as CORE_SCENE_PRIMITIVES,l as DEFAULTS,h as DEFAULT_TEXT_MEASUREMENT_PROFILE,Ra as DefaultBackend,U as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES,Q as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS,y as EXACT_ROLE_STYLE_CONTRACT,z as EXACT_STYLE_SCENE_ROLES,ub as EXTERNAL_SCENE_API_VERSION,v as ExtensionCollisionError,ha as GitGraphDuplicateCommitError,ga as GitGraphParseError,Va as GraphLayoutUnsupportedError,zb as HOSTED_FONT_RESOURCES,q as KNOWN_EXTENSION_CONTRACT_VERSIONS,K as LayoutCertificationError,ib as LayoutMetricBudgetError,Lb as MAX_HOSTED_PNG_BYTES,Kb as MAX_HOSTED_PNG_PIXELS,Mb as MAX_PNG_FONT_DIRECTORIES,Nb as MAX_PNG_FONT_DIRECTORY_LENGTH,Ib as MAX_PNG_PIXELS,Jb as MAX_PNG_RASTER_DIMENSION,aa as MermaidFamilyDetectionError,la as MindmapDuplicateIdError,ka as MindmapParseError,Tb as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS,Sb as NATIVE_PNG_OUTPUT_POLICY_FIELDS,Db as OUTPUT_COLOR_PROFILE,L as OUTPUT_SECURITY_POLICY_VERSION,Hb as PNG_DEFAULT_FONT_FAMILY,Ob as PNG_DEFAULT_MIN_LABEL_PX,Ya as PNG_DEFAULT_SCALE,ec as PNG_FONT_SOURCES,fc as PNG_NAPI_RUNTIME,Qb as PNG_OUTPUT_OPTION_FIELDS,Pb as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS,Wa as PNG_OUTPUT_POLICY_VERSION,gc as PNG_WASM_RUNTIME,Rb as PORTABLE_PNG_OUTPUT_OPTION_FIELDS,V as PRIMITIVE_REALIZATIONS,J as PaintLayoutCertificationError,db as ParsedDiagramFamilyMismatchError,Za as RENDER_CONTRACT_VERSION,a as RENDER_OUTPUTS,_a as RENDER_OUTPUT_DESCRIPTORS,sb as RESOLVED_SCENE_VERSION,Ab as RESOURCE_MANIFEST,wb as RESOURCE_MANIFEST_VERSION,x as ROLE_STYLE_PROPERTY_DESCRIPTORS,eb as RenderCapabilityError,p as SCENE_CONTRACT_VERSION,D as SCENE_ROLE_DESCRIPTORS,Ja as SCENE_VALIDATION_LIMITS,Ia as SCENE_VALIDATION_VERSION,qa as SEMANTIC_BINDING_CHANNELS,$a as SHARED_RENDER_OPTION_FIELDS,pa as STYLE_COLOR_TOKEN_DESCRIPTORS,ra as STYLE_SPEC_FIELD_DESCRIPTORS,oa as STYLE_SPEC_FORMAT_VERSION,Ka as SceneValidationError,lb as TERMINAL_BOUNDED_PADDING_X,nb as TERMINAL_DEFAULT_BOX_BORDER_PADDING,kb as TERMINAL_DEFAULT_PADDING_X,mb as TERMINAL_DEFAULT_PADDING_Y,Xa as TERMINAL_OUTPUT_POLICY_VERSION,jb as TERMINAL_STYLE_VERSION,i as TEXT_MEASUREMENT_CONTRACT,ob as TerminalOutputPolicyError,O as applyOutputSecurityPolicy,Gb as applyPngColorProfile,fa as architectureIconManifest,ca as architectureToMermaidGraph,Zb as assertHostedPngRasterBudget,Yb as assertPngRasterBudget,Fa as assertRenderableLinearGradient,G as assertRenderableMarker,Ma as assertValidSceneDoc,vb as buildExternalScene,s as canonicalExtensionId,$ as classifyMermaidFamilyFromFirstLine,Ca as connectorHitDistance,u as createExtensionIdentity,jc as createMermaidBrowserPNGRenderer,mc as createMermaidRenderer,R as essentialScenePrimitiveOperation,r as evaluateExtensionCompatibility,m as fromShikiTheme,Ua as getBackend,wa as getStyle,Da as hitTestConnector,Ea as hitTestSceneConnectors,Cb as hostedFontResource,za as inferBackend,o as inlineResolvedColors,Fb as inspectPngColorProfile,Eb as inspectPngDimensions,Ta as knownBackendDescriptors,ya as knownStyleDescriptors,xa as knownStyles,j as measureText,k as measureTextWidth,e as negotiateCapabilities,g as negotiateRenderCapabilities,_b as normalizePortablePngBackground,bc as omitPngOutputOptions,ba as parseArchitectureDiagram,t as parseExtensionId,ia as parseGitGraph,ma as parseMindmap,hb as parseRegisteredMermaid,c as parseSemVer,hc as pngNapiRuntimeProvenance,Ub as pngOutputOptionsJsonSchema,Wb as pngRasterDimensions,Xb as prepareSvgForPngRasterization,ac as projectNativePngOutputPolicyInput,$b as projectPortablePngOutputOptions,Sa as registerBackend,w as registerExtension,ua as registerStyle,fb as renderContractDigest,qb as renderMermaidASCII,rb as renderMermaidASCIIWithReceipt,kc as renderMermaidPNGInBrowserWithReceipt,lc as renderMermaidSVG,oc as renderMermaidSVGAsync,nc as renderMermaidSVGWithReceipt,tb as renderResolvedScene,ea as resolveArchitectureIcon,n as resolveColors,Ba as resolveDiagramColors,dc as resolvePngOutputPolicy,cc as resolvePortablePngOutputPolicy,E as resolveSceneRoleTraits,va as resolveStyleReference,Aa as resolveStyleStack,pb as resolveTerminalOutputPolicy,Qa as runBackendConformance,F as sceneRoleTraits,d as semVerSatisfies,ja as serializeGitGraph,Ga as serializeLinearGradientResource,Ha as serializeLinearGradientResources,H as serializeMarkerResource,I as serializeMarkerResources,na as serializeMindmap,bb as sharedRenderOptionsJsonSchema,xb as snapshotResourceManifest,cb as styleInputJsonSchema,ta as styleSpecJsonSchema,Vb as svgIntrinsicDimensions,W as terminalConnectorCapabilityClaims,X as validatePrimitiveCapabilities,Bb as validateResourceManifest,La as validateSceneDoc,ab as validateSerializableRenderOptions,sa as validateStyleSpec,N as verifyNoExternalRefs,yb as verifyResourceBytes,M as verifySvgDocumentEnvelope,Y as withParserObservation};
1
+ import{$a as Kb,Da as ob,Db as jc,Ea as pb,Eb as kc,Fa as qb,Fb as lc,Ga as rb,Gb as mc,Hb as nc,Ia as sb,Ib as oc,Ja as tb,Ka as ub,La as vb,Ma as wb,Na as xb,Pa as yb,Qa as zb,Ra as Ab,Sa as Bb,Ta as Cb,Ua as Db,Va as Eb,Wa as Fb,Xa as Gb,Ya as Hb,Za as Ib,_a as Jb,ab as Lb,bb as Mb,cb as Nb,db as Ob,eb as Pb,fb as Qb,gb as Rb,hb as Sb,ib as Tb,ja as gb,jb as Ub,kb as Vb,lb as Wb,mb as Xb,nb as Yb,ob as Zb,pb as _b,qb as $b,ra as hb,rb as ac,sb as bc,tb as cc,ub as dc,va as jb,vb as ec,wa as kb,wb as fc,xa as lb,xb as gc,ya as mb,yb as hc,za as nb,zb as ic}from"./chunk-KXMANAST.js";import{Bb as Y,Bg as na,Dc as $,Eh as fb,Gc as aa,Md as ba,Nd as ca,_g as Ba,c as J,ca as K,ki as ib,mh as Va,og as ga,pg as ha,qg as ia,qh as $a,rg as ja,tg as ka,uf as da,ug as la,vf as ea,vg as ma,vh as ab,wf as fa,wh as bb,xh as cb,yh as db,zh as eb}from"./chunk-EHJI3QYE.js";import"./chunk-HINRNKPO.js";import{$c as ta,Ad as La,Bb as q,Bd as Ma,Db as r,Eb as s,Ec as L,Fb as t,Fc as M,Gb as u,Hb as v,Ib as w,Ic as N,Id as Na,J as b,Jb as x,Jc as O,Jd as Oa,K as c,Kb as y,Kd as Pa,L as d,Lb as z,Lc as P,Ld as Qa,M as e,Mb as A,Mc as Q,N as f,Nb as B,Nc as R,O as g,Ob as C,Oc as S,Pb as D,Pc as T,Q as h,Qb as E,Qc as U,Rb as F,Rc as V,Rd as Ra,Uc as W,V as i,Vc as X,Vd as Sa,W as j,Wc as oa,X as k,Xc as pa,Xd as Ta,Yc as qa,Zc as ra,Zd as Ua,_c as sa,cc as G,cd as ua,dc as H,dd as va,ec as I,ed as wa,fd as xa,gd as ya,hd as za,id as Aa,kb as l,mb as m,od as Ca,pd as Da,qd as Ea,rb as n,rd as Fa,sd as Ga,td as Ha,ub as o,ud as Ia,vd as Ja,wd as Ka,zb as p}from"./chunk-DOFB572I.js";import{F as Wa,G as Xa,H as Ya,I as Za,J as _a}from"./chunk-O7H2UX5K.js";import{a,b as Z,c as _}from"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";export{da as ARCHITECTURE_ICON_LIMITS,gb as AsciiWidthError,Pa as BACKEND_CONFORMANCE_CHECK_IDS,Oa as BACKEND_CONFORMANCE_FIXTURE_ID,Na as BACKEND_CONFORMANCE_VERSION,B as BINDABLE_ROLE_STYLE_PROPERTIES,A as BINDABLE_SCENE_ROLES,Z as BRAND_CONSTRAINT_DESCRIPTORS,_ as BRAND_CONSTRAINT_KINDS,ic as BROWSER_CANVAS_RUNTIME,C as BUILTIN_SCENE_ROLE_TRAITS,b as CAPABILITY_NEGOTIATION_VERSION,f as CORE_CAPABILITY_OFFERS,T as CORE_SCENE_FEATURES,S as CORE_SCENE_OPERATIONS,P as CORE_SCENE_PRIMITIVES,l as DEFAULTS,h as DEFAULT_TEXT_MEASUREMENT_PROFILE,Ra as DefaultBackend,U as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES,Q as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS,y as EXACT_ROLE_STYLE_CONTRACT,z as EXACT_STYLE_SCENE_ROLES,ub as EXTERNAL_SCENE_API_VERSION,v as ExtensionCollisionError,ha as GitGraphDuplicateCommitError,ga as GitGraphParseError,Va as GraphLayoutUnsupportedError,zb as HOSTED_FONT_RESOURCES,q as KNOWN_EXTENSION_CONTRACT_VERSIONS,K as LayoutCertificationError,ib as LayoutMetricBudgetError,Lb as MAX_HOSTED_PNG_BYTES,Kb as MAX_HOSTED_PNG_PIXELS,Mb as MAX_PNG_FONT_DIRECTORIES,Nb as MAX_PNG_FONT_DIRECTORY_LENGTH,Ib as MAX_PNG_PIXELS,Jb as MAX_PNG_RASTER_DIMENSION,aa as MermaidFamilyDetectionError,la as MindmapDuplicateIdError,ka as MindmapParseError,Tb as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS,Sb as NATIVE_PNG_OUTPUT_POLICY_FIELDS,Db as OUTPUT_COLOR_PROFILE,L as OUTPUT_SECURITY_POLICY_VERSION,Hb as PNG_DEFAULT_FONT_FAMILY,Ob as PNG_DEFAULT_MIN_LABEL_PX,Ya as PNG_DEFAULT_SCALE,ec as PNG_FONT_SOURCES,fc as PNG_NAPI_RUNTIME,Qb as PNG_OUTPUT_OPTION_FIELDS,Pb as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS,Wa as PNG_OUTPUT_POLICY_VERSION,gc as PNG_WASM_RUNTIME,Rb as PORTABLE_PNG_OUTPUT_OPTION_FIELDS,V as PRIMITIVE_REALIZATIONS,J as PaintLayoutCertificationError,db as ParsedDiagramFamilyMismatchError,Za as RENDER_CONTRACT_VERSION,a as RENDER_OUTPUTS,_a as RENDER_OUTPUT_DESCRIPTORS,sb as RESOLVED_SCENE_VERSION,Ab as RESOURCE_MANIFEST,wb as RESOURCE_MANIFEST_VERSION,x as ROLE_STYLE_PROPERTY_DESCRIPTORS,eb as RenderCapabilityError,p as SCENE_CONTRACT_VERSION,D as SCENE_ROLE_DESCRIPTORS,Ja as SCENE_VALIDATION_LIMITS,Ia as SCENE_VALIDATION_VERSION,qa as SEMANTIC_BINDING_CHANNELS,$a as SHARED_RENDER_OPTION_FIELDS,pa as STYLE_COLOR_TOKEN_DESCRIPTORS,ra as STYLE_SPEC_FIELD_DESCRIPTORS,oa as STYLE_SPEC_FORMAT_VERSION,Ka as SceneValidationError,lb as TERMINAL_BOUNDED_PADDING_X,nb as TERMINAL_DEFAULT_BOX_BORDER_PADDING,kb as TERMINAL_DEFAULT_PADDING_X,mb as TERMINAL_DEFAULT_PADDING_Y,Xa as TERMINAL_OUTPUT_POLICY_VERSION,jb as TERMINAL_STYLE_VERSION,i as TEXT_MEASUREMENT_CONTRACT,ob as TerminalOutputPolicyError,O as applyOutputSecurityPolicy,Gb as applyPngColorProfile,fa as architectureIconManifest,ca as architectureToMermaidGraph,Zb as assertHostedPngRasterBudget,Yb as assertPngRasterBudget,Fa as assertRenderableLinearGradient,G as assertRenderableMarker,Ma as assertValidSceneDoc,vb as buildExternalScene,s as canonicalExtensionId,$ as classifyMermaidFamilyFromFirstLine,Ca as connectorHitDistance,u as createExtensionIdentity,jc as createMermaidBrowserPNGRenderer,mc as createMermaidRenderer,R as essentialScenePrimitiveOperation,r as evaluateExtensionCompatibility,m as fromShikiTheme,Ua as getBackend,wa as getStyle,Da as hitTestConnector,Ea as hitTestSceneConnectors,Cb as hostedFontResource,za as inferBackend,o as inlineResolvedColors,Fb as inspectPngColorProfile,Eb as inspectPngDimensions,Ta as knownBackendDescriptors,ya as knownStyleDescriptors,xa as knownStyles,j as measureText,k as measureTextWidth,e as negotiateCapabilities,g as negotiateRenderCapabilities,_b as normalizePortablePngBackground,bc as omitPngOutputOptions,ba as parseArchitectureDiagram,t as parseExtensionId,ia as parseGitGraph,ma as parseMindmap,hb as parseRegisteredMermaid,c as parseSemVer,hc as pngNapiRuntimeProvenance,Ub as pngOutputOptionsJsonSchema,Wb as pngRasterDimensions,Xb as prepareSvgForPngRasterization,ac as projectNativePngOutputPolicyInput,$b as projectPortablePngOutputOptions,Sa as registerBackend,w as registerExtension,ua as registerStyle,fb as renderContractDigest,qb as renderMermaidASCII,rb as renderMermaidASCIIWithReceipt,kc as renderMermaidPNGInBrowserWithReceipt,lc as renderMermaidSVG,oc as renderMermaidSVGAsync,nc as renderMermaidSVGWithReceipt,tb as renderResolvedScene,ea as resolveArchitectureIcon,n as resolveColors,Ba as resolveDiagramColors,dc as resolvePngOutputPolicy,cc as resolvePortablePngOutputPolicy,E as resolveSceneRoleTraits,va as resolveStyleReference,Aa as resolveStyleStack,pb as resolveTerminalOutputPolicy,Qa as runBackendConformance,F as sceneRoleTraits,d as semVerSatisfies,ja as serializeGitGraph,Ga as serializeLinearGradientResource,Ha as serializeLinearGradientResources,H as serializeMarkerResource,I as serializeMarkerResources,na as serializeMindmap,bb as sharedRenderOptionsJsonSchema,xb as snapshotResourceManifest,cb as styleInputJsonSchema,ta as styleSpecJsonSchema,Vb as svgIntrinsicDimensions,W as terminalConnectorCapabilityClaims,X as validatePrimitiveCapabilities,Bb as validateResourceManifest,La as validateSceneDoc,ab as validateSerializableRenderOptions,sa as validateStyleSpec,N as verifyNoExternalRefs,yb as verifyResourceBytes,M as verifySvgDocumentEnvelope,Y as withParserObservation};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{a,b,c,d}from"./chunk-H3NCS2XZ.js";import"./chunk-7PPW2BMO.js";import"./chunk-VUFVLGTH.js";export{a as MCP_CLI_HELP,b as MCP_FLAG_SPECS,c as parseMcpCliOptions,d as runMcpCli};
2
- //# sourceMappingURL=mcp-cli-63DYXTVD.js.map
1
+ import{a,b,c,d}from"./chunk-7XYB2LNC.js";import"./chunk-7PPW2BMO.js";import"./chunk-VUFVLGTH.js";export{a as MCP_CLI_HELP,b as MCP_FLAG_SPECS,c as parseMcpCliOptions,d as runMcpCli};
2
+ //# sourceMappingURL=mcp-cli-YVDCORWA.js.map
@@ -1,5 +1,5 @@
1
- import { t as SceneRole, C as StyleSpec, Q as InternalStyleFace, k as ExtensionIdentity, T as BRAND_CONSTRAINT_WARNING_POLICY, U as BrandConstraintWarningCode, h as BrandConstraintKind } from './svg-styles-BdnoM7AT.js';
2
- import { L as LabelContent, o as LabelDisplay, p as PixelTextBlock, b as DisplayRun, q as DiagramColors, G as GraphLayoutDecision, C as ConfigDiagnostic, N as NormalizedMermaidSource, R as RenderOptions, r as ResolvedFamilyRenderContext, n as PositionedDiagram, s as RenderContext, t as PositionedDiagramTitle, u as MermaidFrontmatterMap, v as MermaidConfigMap, w as MermaidGraph, m as Direction, x as FloatingStateNote, y as NodeShape, z as EdgeStyle, E as EdgeRouteCertificate, h as RegionContainmentCertificate, k as RouteClass, B as MermaidNode, M as MermaidEdge } from './types-BcS52Mjt.js';
1
+ import { t as SceneRole, C as StyleSpec, Q as InternalStyleFace, k as ExtensionIdentity, T as BRAND_CONSTRAINT_WARNING_POLICY, U as BrandConstraintWarningCode, h as BrandConstraintKind } from './svg-styles-BnCoXyYe.js';
2
+ import { L as LabelContent, o as LabelDisplay, p as PixelTextBlock, b as DisplayRun, q as DiagramColors, G as GraphLayoutDecision, C as ConfigDiagnostic, N as NormalizedMermaidSource, R as RenderOptions, r as ResolvedFamilyRenderContext, n as PositionedDiagram, s as RenderContext, t as PositionedDiagramTitle, u as MermaidFrontmatterMap, v as MermaidConfigMap, w as MermaidGraph, m as Direction, x as FloatingStateNote, y as NodeShape, z as EdgeStyle, E as EdgeRouteCertificate, h as RegionContainmentCertificate, k as RouteClass, B as MermaidNode, M as MermaidEdge } from './types-CLVJCaH2.js';
3
3
 
4
4
  /** Public semantic identity carried by every structured Scene mark. */
5
5
  interface SvgSemanticIdentity {
@@ -1,4 +1,4 @@
1
- import{a as Gt,b as ve}from"./chunk-DQDKA5ND.js";import{b as Ft}from"./chunk-GVCHLSHH.js";import{A as we,B as vt,C as Ot,D as Dt,E as Te,F as It,G as Pt,H as Qe,O as Nt,P as Lt,Q as Bt,R as Vt,S as $t,a as St,b as _t,h as Xe,k as Ee,l as Ae,m as Rt,o as Mt,p as Ye,q as xt,r as Et,t as Ce,u as At,v as Ct,w as wt,x as Ze,y as Tt}from"./chunk-7CRDX2QR.js";import{Ba as ft,Ca as yt,i as j,jb as bt,oa as We,pb as ht,ra as xe,rb as kt,s as Dn}from"./chunk-JZOJ4YGS.js";import{eh as st,gc as it,rh as dt,sh as ct,th as lt,uh as ut,vh as mt,xh as gt,yh as pt}from"./chunk-EHCMJUMD.js";import"./chunk-UA234O4M.js";import{Zc as ze,gc as Je,hc as oe,lc as On,pc as He,xb as vn}from"./chunk-OMY6NRQD.js";import{b as jt,c as qt}from"./chunk-XU5LPD2D.js";import{D as tt,E as rt,I as ot,J as at,c as In,d as Pn,e as Nn,f as Ln,g as Bn,h as Vn,i as $n,j as Fn,k as jn,l as qn,m as Un,n as Gn,o as Kn,p as Jn,q as Hn,r as zn,s as Wn,t as Xn,u as Yn,v as Zn,w as Qn,x as et,y as nt}from"./chunk-O7H2UX5K.js";import"./chunk-3LGLPG33.js";import{a as Ut}from"./chunk-7PPW2BMO.js";import"./chunk-VUFVLGTH.js";import{randomUUID as _s}from"crypto";import{createServer as Rs}from"http";import{URL as Ue}from"url";function Oe(e){const n=[];const t=[];let r=0;const i=a=>{let d=a+1;while(d<e.length){if(e[d]==="\\"){d+=2;continue}if(e[d]==='"')return d+1;d++}return d};while(r<e.length){const a=e[r];if(a==='"'){const d=i(r);let g;try{g=JSON.parse(e.slice(r,d))}catch{r=d;continue}const p=t.length===1&&t[0]==="{"||t.length===2&&t[0]==="["&&t[1]==="{";let y=d;while(/\s/.test(e[y]??""))y++;if(p&&g==="id"&&e[y]===":"){y++;while(/\s/.test(e[y]??""))y++;const f=e.slice(y).match(/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/)?.[0];if(f&&ai(f)&&!di(f)){let k=`__agentic_mermaid_exact_id_${n.length}__`;while(e.includes(k))k+="_";n.push({sentinel:k,raw:f,start:y,end:y+f.length})}}r=d;continue}if(a==="{"||a==="[")t.push(a);else if(a==="}"||a==="]")t.pop();r++}let o=e;for(const a of n.slice().reverse()){o=o.slice(0,a.start)+JSON.stringify(a.sentinel)+o.slice(a.end)}return{body:o,ids:n.map(({sentinel:a,raw:d})=>({sentinel:a,raw:d}))}}function ai(e){const n=Number(e);return Number.isFinite(n)&&Number.isInteger(n)}function di(e){if(!/^-?(?:0|[1-9]\d*)$/.test(e))return false;if(e==="-0")return false;try{const n=BigInt(e);return n<=BigInt(Number.MAX_SAFE_INTEGER)&&n>=BigInt(Number.MIN_SAFE_INTEGER)}catch{return false}}function Kt(e){if(!e)return false;const n=String.raw`[!#$%&'*+.^_\x60|~0-9A-Za-z-]+`;const t=String.raw`"(?:[^"\\]|\\.)*"`;return new RegExp(String.raw`^\s*application/json\s*(?:;\s*${n}\s*=\s*(?:${n}|${t}))*\s*$`,"i").test(e)}function De(e,n=[]){let t=JSON.stringify(e);for(const{sentinel:r,raw:i}of n){t=t.replace(`"id":${JSON.stringify(r)}`,`"id":${i}`)}return t}function ue(e,n){return{jsonrpc:"2.0",id:e,result:n}}function T(e,n,t,r){return{jsonrpc:"2.0",id:e,error:r===void 0?{code:n,message:t}:{code:n,message:t,data:r}}}function K(e,n,t){return ue(e,{content:[{type:"text",text:JSON.stringify(n)}],isError:t})}var ci=["2024-11-05","2025-03-26","2025-06-18","2025-11-25"];var li=["2026-07-28"];var me="io.modelcontextprotocol/protocolVersion";var Jt="io.modelcontextprotocol/clientInfo";var en="io.modelcontextprotocol/clientCapabilities";var Ht="io.modelcontextprotocol/logLevel";var zt="io.modelcontextprotocol/serverInfo";var Ie=-32020;var ge=-32022;var ui="2025-11-25";function ae(e){return typeof e==="string"&&li.includes(e)}function pe(e){return typeof e==="string"&&ci.includes(e)}function Wt(e){return typeof e==="string"&&e>=ui}function Xt(e){const n=e.params;if(!n||typeof n!=="object"||Array.isArray(n))return void 0;const t=n._meta;if(!t||typeof t!=="object"||Array.isArray(t))return void 0;return t}function Yt(e){const n=nn(e);const t=n.present?n.value:void 0;return typeof t==="string"?t:void 0}function nn(e){const n=Xt(e);if(!n||!Object.prototype.hasOwnProperty.call(n,me))return{present:false};return{present:true,value:n[me]}}function tn(e,n){if(typeof e!=="object"||e===null||Array.isArray(e)){return[`${n} is required and must be an object with name and version`]}const t=[];const r=e;if(typeof r.name!=="string")t.push(`${n}.name is required and must be a string`);if(typeof r.version!=="string")t.push(`${n}.version is required and must be a string`);for(const i of["title","description","websiteUrl"]){if(r[i]!==void 0&&typeof r[i]!=="string"){t.push(`${n}.${i} must be a string when present`)}}if(r.icons!==void 0){if(!Array.isArray(r.icons)){t.push(`${n}.icons must be an array when present`)}else{for(const[i,o]of r.icons.entries()){if(!o||typeof o!=="object"||Array.isArray(o)){t.push(`${n}.icons[${i}] must be an object`);continue}const a=o;if(typeof a.src!=="string")t.push(`${n}.icons[${i}].src is required and must be a string`);if(a.mimeType!==void 0&&typeof a.mimeType!=="string")t.push(`${n}.icons[${i}].mimeType must be a string when present`);if(a.sizes!==void 0&&(!Array.isArray(a.sizes)||a.sizes.some(d=>typeof d!=="string"))){t.push(`${n}.icons[${i}].sizes must be an array of strings when present`)}if(a.theme!==void 0&&a.theme!=="light"&&a.theme!=="dark"){t.push(`${n}.icons[${i}].theme must be light or dark when present`)}}}}return t}function rn(e,n){if(!e||typeof e!=="object"||Array.isArray(e)){return[`${n} is required and must be an object (an empty object declares no optional capabilities)`]}const t=[];const r=e;const i=g=>{const p=r[g];if(p===void 0)return void 0;if(typeof p!=="object"||p===null||Array.isArray(p)){t.push(`${n}.${g} must be an object when present`);return void 0}return p};const o=i("roots");if(o?.listChanged!==void 0&&typeof o.listChanged!=="boolean"){t.push(`${n}.roots.listChanged must be a boolean when present`)}const a=i("sampling");for(const g of["context","tools"]){const p=a?.[g];if(p!==void 0&&(typeof p!=="object"||p===null||Array.isArray(p))){t.push(`${n}.sampling.${g} must be an object when present`)}}const d=i("elicitation");for(const g of["form","url"]){const p=d?.[g];if(p!==void 0&&(typeof p!=="object"||p===null||Array.isArray(p))){t.push(`${n}.elicitation.${g} must be an object when present`)}}for(const g of["experimental","extensions"]){const p=i(g);if(!p)continue;for(const[y,f]of Object.entries(p)){if(g==="extensions"&&!/^[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?\/.+/.test(y)){t.push(`${n}.extensions.${y} must use a namespaced key with a prefix`)}if(typeof f!=="object"||f===null||Array.isArray(f)){t.push(`${n}.${g}.${y} must be an object`)}}}return t}function Zt(e){const n=Xt(e);if(!n)return[`params._meta is required and must carry ${me} and ${en}`];const t=[];const r=n[Jt];if(r!==void 0){t.push(...tn(r,`params._meta.${Jt}`))}const i=n[Ht];if(i!==void 0&&(typeof i!=="string"||!["debug","info","notice","warning","error","critical","alert","emergency"].includes(i))){t.push(`params._meta.${Ht} must be a valid logging level when present`)}const o=n[en];t.push(...rn(o,`params._meta.${en}`));return t}var mi=Symbol("AdmittedMcpMessage");function gi(e,n){const t=e.id;return n&&t!==void 0?t:null}function Q(e,n,t,r,i){return{ok:false,kind:e,response:n?null:t,...r?{protocol:r}:{},...i?{requestedEra:i}:{}}}function Qt(e,n,t,r){const i={request:e,id:n,protocol:r,[mi]:true};return t?{ok:true,message:{...i,notification:true}}:{ok:true,message:{...i,notification:false}}}function sn(e,n){const t=e;const r=Boolean(t&&Object.prototype.hasOwnProperty.call(t,"id"));const i=t?.id;const o=i===void 0||typeof i==="string"||typeof i==="number"&&Number.isSafeInteger(i);const a=Boolean(t&&!Array.isArray(t)&&t.jsonrpc==="2.0"&&typeof t.method==="string"&&o);if(!a){return{ok:false,kind:"invalid-request",response:T(null,-32600,"invalid JSON-RPC request")}}const d=e;const g=gi(t,o);const p=!r;const y=nn(d);const f=Yt(d);const k=y.present?"modern":"legacy";const b=n.protocolEra==="legacy"?n.supportedVersions.filter(pe):n.protocolEra==="modern"?n.supportedVersions.filter(ae):[...n.supportedVersions];const w=n.negotiatedVersion??n.headerVersion??void 0;const x=ae(f)?{era:"modern",version:f,supportedVersions:b}:{era:"legacy",version:f??w,supportedVersions:b};if(y.present&&typeof y.value!=="string"){return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: params._meta.${me} is required and must be a string`),void 0,"modern")}if(n.headerVersion!=null&&!b.includes(n.headerVersion)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${n.headerVersion}`,{supported:[...b],requested:n.headerVersion}),x,k)}if(n.negotiatedVersion!=null&&!b.includes(n.negotiatedVersion)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${n.negotiatedVersion}`,{supported:[...b],requested:n.negotiatedVersion}),x,k)}if(f!==void 0&&n.headerVersion!=null&&f!==n.headerVersion){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: MCP-Protocol-Version header value '${n.headerVersion}' does not match body value '${f}'`),x,k)}if(n.protocolEra!==void 0&&k!==n.protocolEra){const L=f??w??"unversioned";return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${L}`,{supported:[...b],requested:L}),x,k)}if(k==="modern"&&pe(f)&&(!n.requireModernVersionHeader||n.headerVersion!=null)){const L=b.filter(ae);return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${f}`,{supported:L,requested:f}),x,k)}if(f!==void 0&&!b.includes(f)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${f}`,{supported:[...b],requested:f}),x,k)}const P=n.protocolEra??(ae(n.headerVersion)||ae(n.negotiatedVersion)?"modern":k);if(P==="modern"){if(!ae(f)){const q=`params._meta.${me} is required and must match the MCP-Protocol-Version header (${n.headerVersion})`;return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: ${q}`),x,k)}const L={era:"modern",version:f,supportedVersions:b};const B=Zt(d);if(B.length>0){return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: ${B.join("; ")}`),L,k)}if(n.requireModernVersionHeader&&n.headerVersion==null){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: MCP-Protocol-Version header is required for protocol version ${f}`),L,k)}const E=n.modernTransportProblem?.(d)??null;if(E!==null){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: ${E}`),L,k)}return Qt(d,g,p,L)}const O={era:"legacy",version:f??w,supportedVersions:b};return Qt(d,g,p,O)}var Pe=Object.freeze(["base64","file","url"]);function tr(e){return typeof e==="string"&&Pe.includes(e)}function rr(e){return{...e,inputSchema:{...e.inputSchema,additionalProperties:false}}}var er="agentic-mermaid-mcp";var ir=vn;var sr={tools:{}};var de={readOnlyHint:true,destructiveHint:false,idempotentHint:true,openWorldHint:false};var pi={readOnlyHint:true,destructiveHint:false,idempotentHint:false,openWorldHint:false};var fi={readOnlyHint:false,destructiveHint:false,idempotentHint:false,openWorldHint:false};var or="execute timeoutMs must be a positive integer";function ar(e){return typeof e==="number"&&Number.isSafeInteger(e)&&e>0}function yi(e){return{options:{...mt(),description:e}}}function dr(e){const n=e.options;const t=n===void 0?{}:n;if(!oe(t))throw new Error("invalid render options: render options must be a plain JSON object");const r={...t};const i=ut(r);if(i.length>0)throw new Error(`invalid render options: ${i.join("; ")}`);return r}function nr(e){if(e.length===0)return"arguments";return e.reduce((n,t)=>typeof t==="number"?`${n}[${t}]`:`${n}.${t}`,"arguments")}function bi(e,n){if(!oe(n))return["arguments must be a plain JSON object"];const t=On(n);if(t.length>0){return He(t.map(i=>`${nr(i.path)} ${i.message}`),"arguments")}const r=st(n,e.inputSchema,e.inputSchema,[],{patternMismatch:i=>i["x-agentic-mermaid-runtime-validator"]==="portablePngBackground"?"must be a portable basic color keyword or 3, 4, 6, or 8 digit hex color":void 0,validateRuntime:(i,o,a)=>{const d=o["x-agentic-mermaid-runtime-validator"];if(d==="portablePngBackground"){return ht(i)===void 0?[{path:a,message:"must be a portable basic color keyword or 3, 4, 6, or 8 digit hex color",generic:false}]:[]}return d==="architectureVisual"?[]:lt(i,o,a)}}).map(i=>`${nr(i.path)} ${i.message}`);return He(r,"arguments")}function cr(e,n={}){const t=e.supportedVersions??(typeof e.protocolVersion==="string"?[e.protocolVersion]:[]);if(!n.supportedVersions)return t;return t.filter(r=>n.supportedVersions.includes(r))}function hi(e,n){return{supportedVersions:[...n],capabilities:sr,instructions:e.instructions}}function ki(e){if(!oe(e))return["params is required and must be an object"];const n=[];if(typeof e.protocolVersion!=="string"){n.push("params.protocolVersion is required and must be a string")}n.push(...rn(e.capabilities,"params.capabilities"));n.push(...tn(e.clientInfo,"params.clientInfo"));return n}async function on(e,n,t){const{request:r,id:i,notification:o,protocol:a}=e;const{era:d,version:g,supportedVersions:p}=a;let y;switch(r.method){case"initialize":{if(d==="modern"){y=Se(i,r.method);break}const f=ki(r.params);if(f.length>0){y=T(i,-32602,`Invalid params: ${f.join("; ")}`);break}const k=r.params?.protocolVersion;const b=p.filter(pe);const w=b.at(-1)??(typeof t.protocolVersion==="function"?t.protocolVersion(r.params):t.protocolVersion);const x=pe(k)&&b.includes(k)?k:w;y=ue(i,{protocolVersion:x,serverInfo:{name:t.serverName??er,version:ir},capabilities:sr,instructions:t.instructions});break}case"notifications/initialized":y=d==="modern"?Se(i,r.method):null;break;case"ping":y=d==="modern"?Se(i,r.method):ue(i,{});break;case"server/discover":y=d==="modern"?ue(i,hi(t,p)):Se(i,r.method);break;case"tools/list":y=ue(i,{tools:t.tools});break;case"tools/call":{if(!oe(r.params)){y=T(i,-32602,"Invalid params: tools/call requires an object");break}const f=r.params.name;if(typeof f!=="string"){y=T(i,-32602,"Invalid params: tools/call requires `name` (string)");break}const k=t.tools.find(x=>x.name===f);if(!k){y=T(i,-32602,`Unknown tool: ${f}`);break}const b=r.params.arguments??{};const w=bi(k,b);if(w.length>0){const x=`Invalid arguments for ${f}: ${w.join("; ")}`;y=Wt(g)?K(i,{ok:false,error:{code:"INVALID_ARGUMENTS",message:x}},true):T(i,-32602,x);break}y=await t.handleToolCall(i,{...r.params,arguments:b},n);break}default:y=Se(i,r.method)}return o?null:Ri(y,r.method,d,t.serverName??er)}var Si=3e5;var _i=new Set(["server/discover","tools/list"]);function Ri(e,n,t,r){if(t!=="modern"||!e||!oe(e.result))return e;const i=oe(e.result._meta)?e.result._meta:{};const o={resultType:"complete",...e.result,_meta:{...i,[zt]:{name:r,version:ir}}};if(_i.has(n)){o.ttlMs=Si;o.cacheScope="public"}return{...e,result:o}}function Se(e,n){return T(e,-32601,`Method not found: ${n}`)}function lr(e){const n=e.hosted?`SVG/ASCII/layout enforce
1
+ import{a as Gt,b as ve}from"./chunk-2DNGDTJD.js";import{b as Ft}from"./chunk-4F2UGYTM.js";import{A as we,B as vt,C as Ot,D as Dt,E as Te,F as It,G as Pt,H as Qe,O as Nt,P as Lt,Q as Bt,R as Vt,S as $t,a as St,b as _t,h as Xe,k as Ee,l as Ae,m as Rt,o as Mt,p as Ye,q as xt,r as Et,t as Ce,u as At,v as Ct,w as wt,x as Ze,y as Tt}from"./chunk-U4MT3RRE.js";import{Ba as ft,Ca as yt,i as j,jb as bt,oa as We,pb as ht,ra as xe,rb as kt,s as Dn}from"./chunk-KXMANAST.js";import{fh as st,gc as it,sh as dt,th as ct,uh as lt,vh as ut,wh as mt,yh as gt,zh as pt}from"./chunk-EHJI3QYE.js";import"./chunk-HINRNKPO.js";import{Dc as He,ad as ze,uc as Je,vc as oe,yb as vn,zc as On}from"./chunk-DOFB572I.js";import{b as jt,c as qt}from"./chunk-XU5LPD2D.js";import{D as tt,E as rt,I as ot,J as at,c as In,d as Pn,e as Nn,f as Ln,g as Bn,h as Vn,i as $n,j as Fn,k as jn,l as qn,m as Un,n as Gn,o as Kn,p as Jn,q as Hn,r as zn,s as Wn,t as Xn,u as Yn,v as Zn,w as Qn,x as et,y as nt}from"./chunk-O7H2UX5K.js";import"./chunk-3LGLPG33.js";import{a as Ut}from"./chunk-7PPW2BMO.js";import"./chunk-VUFVLGTH.js";import{randomUUID as _s}from"crypto";import{createServer as Rs}from"http";import{URL as Ue}from"url";function Oe(e){const n=[];const t=[];let r=0;const i=a=>{let d=a+1;while(d<e.length){if(e[d]==="\\"){d+=2;continue}if(e[d]==='"')return d+1;d++}return d};while(r<e.length){const a=e[r];if(a==='"'){const d=i(r);let g;try{g=JSON.parse(e.slice(r,d))}catch{r=d;continue}const p=t.length===1&&t[0]==="{"||t.length===2&&t[0]==="["&&t[1]==="{";let y=d;while(/\s/.test(e[y]??""))y++;if(p&&g==="id"&&e[y]===":"){y++;while(/\s/.test(e[y]??""))y++;const f=e.slice(y).match(/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/)?.[0];if(f&&ai(f)&&!di(f)){let k=`__agentic_mermaid_exact_id_${n.length}__`;while(e.includes(k))k+="_";n.push({sentinel:k,raw:f,start:y,end:y+f.length})}}r=d;continue}if(a==="{"||a==="[")t.push(a);else if(a==="}"||a==="]")t.pop();r++}let o=e;for(const a of n.slice().reverse()){o=o.slice(0,a.start)+JSON.stringify(a.sentinel)+o.slice(a.end)}return{body:o,ids:n.map(({sentinel:a,raw:d})=>({sentinel:a,raw:d}))}}function ai(e){const n=Number(e);return Number.isFinite(n)&&Number.isInteger(n)}function di(e){if(!/^-?(?:0|[1-9]\d*)$/.test(e))return false;if(e==="-0")return false;try{const n=BigInt(e);return n<=BigInt(Number.MAX_SAFE_INTEGER)&&n>=BigInt(Number.MIN_SAFE_INTEGER)}catch{return false}}function Kt(e){if(!e)return false;const n=String.raw`[!#$%&'*+.^_\x60|~0-9A-Za-z-]+`;const t=String.raw`"(?:[^"\\]|\\.)*"`;return new RegExp(String.raw`^\s*application/json\s*(?:;\s*${n}\s*=\s*(?:${n}|${t}))*\s*$`,"i").test(e)}function De(e,n=[]){let t=JSON.stringify(e);for(const{sentinel:r,raw:i}of n){t=t.replace(`"id":${JSON.stringify(r)}`,`"id":${i}`)}return t}function ue(e,n){return{jsonrpc:"2.0",id:e,result:n}}function T(e,n,t,r){return{jsonrpc:"2.0",id:e,error:r===void 0?{code:n,message:t}:{code:n,message:t,data:r}}}function K(e,n,t){return ue(e,{content:[{type:"text",text:JSON.stringify(n)}],isError:t})}var ci=["2024-11-05","2025-03-26","2025-06-18","2025-11-25"];var li=["2026-07-28"];var me="io.modelcontextprotocol/protocolVersion";var Jt="io.modelcontextprotocol/clientInfo";var en="io.modelcontextprotocol/clientCapabilities";var Ht="io.modelcontextprotocol/logLevel";var zt="io.modelcontextprotocol/serverInfo";var Ie=-32020;var ge=-32022;var ui="2025-11-25";function ae(e){return typeof e==="string"&&li.includes(e)}function pe(e){return typeof e==="string"&&ci.includes(e)}function Wt(e){return typeof e==="string"&&e>=ui}function Xt(e){const n=e.params;if(!n||typeof n!=="object"||Array.isArray(n))return void 0;const t=n._meta;if(!t||typeof t!=="object"||Array.isArray(t))return void 0;return t}function Yt(e){const n=nn(e);const t=n.present?n.value:void 0;return typeof t==="string"?t:void 0}function nn(e){const n=Xt(e);if(!n||!Object.prototype.hasOwnProperty.call(n,me))return{present:false};return{present:true,value:n[me]}}function tn(e,n){if(typeof e!=="object"||e===null||Array.isArray(e)){return[`${n} is required and must be an object with name and version`]}const t=[];const r=e;if(typeof r.name!=="string")t.push(`${n}.name is required and must be a string`);if(typeof r.version!=="string")t.push(`${n}.version is required and must be a string`);for(const i of["title","description","websiteUrl"]){if(r[i]!==void 0&&typeof r[i]!=="string"){t.push(`${n}.${i} must be a string when present`)}}if(r.icons!==void 0){if(!Array.isArray(r.icons)){t.push(`${n}.icons must be an array when present`)}else{for(const[i,o]of r.icons.entries()){if(!o||typeof o!=="object"||Array.isArray(o)){t.push(`${n}.icons[${i}] must be an object`);continue}const a=o;if(typeof a.src!=="string")t.push(`${n}.icons[${i}].src is required and must be a string`);if(a.mimeType!==void 0&&typeof a.mimeType!=="string")t.push(`${n}.icons[${i}].mimeType must be a string when present`);if(a.sizes!==void 0&&(!Array.isArray(a.sizes)||a.sizes.some(d=>typeof d!=="string"))){t.push(`${n}.icons[${i}].sizes must be an array of strings when present`)}if(a.theme!==void 0&&a.theme!=="light"&&a.theme!=="dark"){t.push(`${n}.icons[${i}].theme must be light or dark when present`)}}}}return t}function rn(e,n){if(!e||typeof e!=="object"||Array.isArray(e)){return[`${n} is required and must be an object (an empty object declares no optional capabilities)`]}const t=[];const r=e;const i=g=>{const p=r[g];if(p===void 0)return void 0;if(typeof p!=="object"||p===null||Array.isArray(p)){t.push(`${n}.${g} must be an object when present`);return void 0}return p};const o=i("roots");if(o?.listChanged!==void 0&&typeof o.listChanged!=="boolean"){t.push(`${n}.roots.listChanged must be a boolean when present`)}const a=i("sampling");for(const g of["context","tools"]){const p=a?.[g];if(p!==void 0&&(typeof p!=="object"||p===null||Array.isArray(p))){t.push(`${n}.sampling.${g} must be an object when present`)}}const d=i("elicitation");for(const g of["form","url"]){const p=d?.[g];if(p!==void 0&&(typeof p!=="object"||p===null||Array.isArray(p))){t.push(`${n}.elicitation.${g} must be an object when present`)}}for(const g of["experimental","extensions"]){const p=i(g);if(!p)continue;for(const[y,f]of Object.entries(p)){if(g==="extensions"&&!/^[A-Za-z0-9](?:[A-Za-z0-9.-]*[A-Za-z0-9])?\/.+/.test(y)){t.push(`${n}.extensions.${y} must use a namespaced key with a prefix`)}if(typeof f!=="object"||f===null||Array.isArray(f)){t.push(`${n}.${g}.${y} must be an object`)}}}return t}function Zt(e){const n=Xt(e);if(!n)return[`params._meta is required and must carry ${me} and ${en}`];const t=[];const r=n[Jt];if(r!==void 0){t.push(...tn(r,`params._meta.${Jt}`))}const i=n[Ht];if(i!==void 0&&(typeof i!=="string"||!["debug","info","notice","warning","error","critical","alert","emergency"].includes(i))){t.push(`params._meta.${Ht} must be a valid logging level when present`)}const o=n[en];t.push(...rn(o,`params._meta.${en}`));return t}var mi=Symbol("AdmittedMcpMessage");function gi(e,n){const t=e.id;return n&&t!==void 0?t:null}function Q(e,n,t,r,i){return{ok:false,kind:e,response:n?null:t,...r?{protocol:r}:{},...i?{requestedEra:i}:{}}}function Qt(e,n,t,r){const i={request:e,id:n,protocol:r,[mi]:true};return t?{ok:true,message:{...i,notification:true}}:{ok:true,message:{...i,notification:false}}}function sn(e,n){const t=e;const r=Boolean(t&&Object.prototype.hasOwnProperty.call(t,"id"));const i=t?.id;const o=i===void 0||typeof i==="string"||typeof i==="number"&&Number.isSafeInteger(i);const a=Boolean(t&&!Array.isArray(t)&&t.jsonrpc==="2.0"&&typeof t.method==="string"&&o);if(!a){return{ok:false,kind:"invalid-request",response:T(null,-32600,"invalid JSON-RPC request")}}const d=e;const g=gi(t,o);const p=!r;const y=nn(d);const f=Yt(d);const k=y.present?"modern":"legacy";const b=n.protocolEra==="legacy"?n.supportedVersions.filter(pe):n.protocolEra==="modern"?n.supportedVersions.filter(ae):[...n.supportedVersions];const w=n.negotiatedVersion??n.headerVersion??void 0;const x=ae(f)?{era:"modern",version:f,supportedVersions:b}:{era:"legacy",version:f??w,supportedVersions:b};if(y.present&&typeof y.value!=="string"){return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: params._meta.${me} is required and must be a string`),void 0,"modern")}if(n.headerVersion!=null&&!b.includes(n.headerVersion)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${n.headerVersion}`,{supported:[...b],requested:n.headerVersion}),x,k)}if(n.negotiatedVersion!=null&&!b.includes(n.negotiatedVersion)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${n.negotiatedVersion}`,{supported:[...b],requested:n.negotiatedVersion}),x,k)}if(f!==void 0&&n.headerVersion!=null&&f!==n.headerVersion){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: MCP-Protocol-Version header value '${n.headerVersion}' does not match body value '${f}'`),x,k)}if(n.protocolEra!==void 0&&k!==n.protocolEra){const L=f??w??"unversioned";return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${L}`,{supported:[...b],requested:L}),x,k)}if(k==="modern"&&pe(f)&&(!n.requireModernVersionHeader||n.headerVersion!=null)){const L=b.filter(ae);return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${f}`,{supported:L,requested:f}),x,k)}if(f!==void 0&&!b.includes(f)){return Q("unsupported-version",p,T(g,ge,`Unsupported protocol version: ${f}`,{supported:[...b],requested:f}),x,k)}const P=n.protocolEra??(ae(n.headerVersion)||ae(n.negotiatedVersion)?"modern":k);if(P==="modern"){if(!ae(f)){const q=`params._meta.${me} is required and must match the MCP-Protocol-Version header (${n.headerVersion})`;return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: ${q}`),x,k)}const L={era:"modern",version:f,supportedVersions:b};const B=Zt(d);if(B.length>0){return Q("invalid-modern-metadata",p,T(g,-32602,`Invalid params: ${B.join("; ")}`),L,k)}if(n.requireModernVersionHeader&&n.headerVersion==null){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: MCP-Protocol-Version header is required for protocol version ${f}`),L,k)}const E=n.modernTransportProblem?.(d)??null;if(E!==null){return Q("header-mismatch",p,T(g,Ie,`Header mismatch: ${E}`),L,k)}return Qt(d,g,p,L)}const O={era:"legacy",version:f??w,supportedVersions:b};return Qt(d,g,p,O)}var Pe=Object.freeze(["base64","file","url"]);function tr(e){return typeof e==="string"&&Pe.includes(e)}function rr(e){return{...e,inputSchema:{...e.inputSchema,additionalProperties:false}}}var er="agentic-mermaid-mcp";var ir=vn;var sr={tools:{}};var de={readOnlyHint:true,destructiveHint:false,idempotentHint:true,openWorldHint:false};var pi={readOnlyHint:true,destructiveHint:false,idempotentHint:false,openWorldHint:false};var fi={readOnlyHint:false,destructiveHint:false,idempotentHint:false,openWorldHint:false};var or="execute timeoutMs must be a positive integer";function ar(e){return typeof e==="number"&&Number.isSafeInteger(e)&&e>0}function yi(e){return{options:{...mt(),description:e}}}function dr(e){const n=e.options;const t=n===void 0?{}:n;if(!oe(t))throw new Error("invalid render options: render options must be a plain JSON object");const r={...t};const i=ut(r);if(i.length>0)throw new Error(`invalid render options: ${i.join("; ")}`);return r}function nr(e){if(e.length===0)return"arguments";return e.reduce((n,t)=>typeof t==="number"?`${n}[${t}]`:`${n}.${t}`,"arguments")}function bi(e,n){if(!oe(n))return["arguments must be a plain JSON object"];const t=On(n);if(t.length>0){return He(t.map(i=>`${nr(i.path)} ${i.message}`),"arguments")}const r=st(n,e.inputSchema,e.inputSchema,[],{patternMismatch:i=>i["x-agentic-mermaid-runtime-validator"]==="portablePngBackground"?"must be a portable basic color keyword or 3, 4, 6, or 8 digit hex color":void 0,validateRuntime:(i,o,a)=>{const d=o["x-agentic-mermaid-runtime-validator"];if(d==="portablePngBackground"){return ht(i)===void 0?[{path:a,message:"must be a portable basic color keyword or 3, 4, 6, or 8 digit hex color",generic:false}]:[]}return d==="architectureVisual"?[]:lt(i,o,a)}}).map(i=>`${nr(i.path)} ${i.message}`);return He(r,"arguments")}function cr(e,n={}){const t=e.supportedVersions??(typeof e.protocolVersion==="string"?[e.protocolVersion]:[]);if(!n.supportedVersions)return t;return t.filter(r=>n.supportedVersions.includes(r))}function hi(e,n){return{supportedVersions:[...n],capabilities:sr,instructions:e.instructions}}function ki(e){if(!oe(e))return["params is required and must be an object"];const n=[];if(typeof e.protocolVersion!=="string"){n.push("params.protocolVersion is required and must be a string")}n.push(...rn(e.capabilities,"params.capabilities"));n.push(...tn(e.clientInfo,"params.clientInfo"));return n}async function on(e,n,t){const{request:r,id:i,notification:o,protocol:a}=e;const{era:d,version:g,supportedVersions:p}=a;let y;switch(r.method){case"initialize":{if(d==="modern"){y=Se(i,r.method);break}const f=ki(r.params);if(f.length>0){y=T(i,-32602,`Invalid params: ${f.join("; ")}`);break}const k=r.params?.protocolVersion;const b=p.filter(pe);const w=b.at(-1)??(typeof t.protocolVersion==="function"?t.protocolVersion(r.params):t.protocolVersion);const x=pe(k)&&b.includes(k)?k:w;y=ue(i,{protocolVersion:x,serverInfo:{name:t.serverName??er,version:ir},capabilities:sr,instructions:t.instructions});break}case"notifications/initialized":y=d==="modern"?Se(i,r.method):null;break;case"ping":y=d==="modern"?Se(i,r.method):ue(i,{});break;case"server/discover":y=d==="modern"?ue(i,hi(t,p)):Se(i,r.method);break;case"tools/list":y=ue(i,{tools:t.tools});break;case"tools/call":{if(!oe(r.params)){y=T(i,-32602,"Invalid params: tools/call requires an object");break}const f=r.params.name;if(typeof f!=="string"){y=T(i,-32602,"Invalid params: tools/call requires `name` (string)");break}const k=t.tools.find(x=>x.name===f);if(!k){y=T(i,-32602,`Unknown tool: ${f}`);break}const b=r.params.arguments??{};const w=bi(k,b);if(w.length>0){const x=`Invalid arguments for ${f}: ${w.join("; ")}`;y=Wt(g)?K(i,{ok:false,error:{code:"INVALID_ARGUMENTS",message:x}},true):T(i,-32602,x);break}y=await t.handleToolCall(i,{...r.params,arguments:b},n);break}default:y=Se(i,r.method)}return o?null:Ri(y,r.method,d,t.serverName??er)}var Si=3e5;var _i=new Set(["server/discover","tools/list"]);function Ri(e,n,t,r){if(t!=="modern"||!e||!oe(e.result))return e;const i=oe(e.result._meta)?e.result._meta:{};const o={resultType:"complete",...e.result,_meta:{...i,[zt]:{name:r,version:ir}}};if(_i.has(n)){o.ttlMs=Si;o.cacheScope="public"}return{...e,result:o}}function Se(e,n){return T(e,-32601,`Method not found: ${n}`)}function lr(e){const n=e.hosted?`SVG/ASCII/layout enforce
2
2
  security:'strict', embedFontImport:false.
3
3
 
4
4
  `:"";const t=e.hosted?"Optional CPU-time budget (default 5000ms, max 30000ms).":"Optional hard timeout (default 5000ms).";const r=e.hosted?"an isolated sandbox":"a sandboxed node:vm context";return{name:"execute",title:"Execute Mermaid SDK code",description:`Run JavaScript in ${r}; return a value.
@@ -521,4 +521,4 @@ data: ${r}/message?sessionId=${encodeURIComponent(o)}
521
521
  data: ${De(f,p.ids)}
522
522
 
523
523
  `);return Y(n,202,{ok:true})}n.writeHead(202);n.end()}async function qs(e,n,t,r){const i=await ni(e,r);const o=Oe(i);let a;try{a=JSON.parse(o.body)}catch{throw new ce(400,"invalid JSON-RPC body")}const d=await Qr(a,t,Xr);if(d===null){n.writeHead(202);n.end();return}Y(n,200,d,o.ids)}function Us(e,n,t){const r=n.read(t);if(!r)return Y(e,404,{ok:false,error:"artifact not found"});e.writeHead(200,{"Content-Type":r.mimeType,"Content-Length":r.bytes.length,"Cache-Control":`private, max-age=${r.cacheMaxAgeSeconds}, immutable`});e.end(r.bytes)}function Y(e,n,t,r=[]){const i=De(t,r);e.writeHead(n,{"Content-Type":"application/json; charset=utf-8","Content-Length":Buffer.byteLength(i)});e.end(i)}async function ni(e,n=Yr){const t=Number(e.headers["content-length"]??0);if(Number.isFinite(t)&&t>n)throw new ce(413,`request body exceeds ${n} bytes`);const r=[];let i=0;for await(const o of e){const a=Buffer.isBuffer(o)?o:Buffer.from(String(o));i+=a.byteLength;if(i>n)throw new ce(413,`request body exceeds ${n} bytes`);r.push(a)}return Buffer.concat(r).toString("utf8")}export{xs as HTTP_SSE_PROTOCOL_VERSIONS,Cs as LOCAL_TOOLS,As as MAX_SSE_SESSIONS,xn as STDIO_PROTOCOL_VERSIONS,Ls as createStdioMessageProcessor,Qr as handleRequest,ni as readRequestBody,ya as runHttp,fa as runStdio,Bs as startHttpServer};
524
- //# sourceMappingURL=server-5NEOHOFS.js.map
524
+ //# sourceMappingURL=server-4JGAVXR3.js.map
@@ -31,7 +31,7 @@ interface ExtensionIdentity<Kind extends string = string> {
31
31
  /** Host contract versions understood by this runtime. Requirements for other
32
32
  * namespaced contracts are retained but deliberately deferred to their owner. */
33
33
  declare const KNOWN_EXTENSION_CONTRACT_VERSIONS: Readonly<{
34
- readonly core: "0.5.3";
34
+ readonly core: "0.5.4";
35
35
  readonly scene: "2.0.0";
36
36
  }>;
37
37
  interface ExtensionCompatibilityResolution {
@@ -1 +1 @@
1
- export { F as getStyle, H as knownStyleDescriptors, I as knownStyles, J as registerStyle } from './svg-styles-BdnoM7AT.js';
1
+ export { F as getStyle, H as knownStyleDescriptors, I as knownStyles, J as registerStyle } from './svg-styles-BnCoXyYe.js';
@@ -1,2 +1,2 @@
1
- import"./chunk-UA234O4M.js";import{$c as e,bd as t,cd as r,dd as o}from"./chunk-OMY6NRQD.js";import"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";export{t as getStyle,o as knownStyleDescriptors,r as knownStyles,e as registerStyle};
1
+ import"./chunk-HINRNKPO.js";import{cd as e,ed as t,fd as r,gd as o}from"./chunk-DOFB572I.js";import"./chunk-3LGLPG33.js";import"./chunk-VUFVLGTH.js";export{t as getStyle,o as knownStyleDescriptors,r as knownStyles,e as registerStyle};
2
2
  //# sourceMappingURL=svg-styles.js.map
package/dist/svg.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { R as RenderRequestReceipt } from './paint-certification-6rwQjIv_.js';
2
- export { P as PaintLayoutCertificationError, v as verifyNoExternalRefs } from './paint-certification-6rwQjIv_.js';
3
- import { R as RenderOptions } from './types-BcS52Mjt.js';
4
- import './svg-styles-BdnoM7AT.js';
1
+ import { R as RenderRequestReceipt } from './paint-certification-BoLyr006.js';
2
+ export { P as PaintLayoutCertificationError, v as verifyNoExternalRefs } from './paint-certification-BoLyr006.js';
3
+ import { R as RenderOptions } from './types-CLVJCaH2.js';
4
+ import './svg-styles-BnCoXyYe.js';
5
5
 
6
6
  interface RenderedSvg {
7
7
  readonly svg: string;