agentic-mermaid 0.4.1 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENT_NATIVE.md +94 -627
- package/CHANGELOG.md +651 -0
- package/Instructions_for_agents.md +44 -23
- package/LICENSES/Khroma-MIT.txt +21 -0
- package/LICENSES/Mermaid-MIT.txt +21 -0
- package/LICENSES/es-toolkit-MIT.txt +21 -0
- package/LICENSES/pele-MIT.txt +40 -0
- package/LICENSES/zenuml-core-MIT.txt +21 -0
- package/README.md +93 -50
- package/SECURITY.md +28 -12
- package/THIRD_PARTY_NOTICES.md +60 -0
- package/assets/hero.png +0 -0
- package/dist/agent-core.d.ts +478 -210
- package/dist/agent-core.js +1 -396
- package/dist/agent.d.ts +17 -8
- package/dist/agent.js +1 -408
- package/dist/agentic-mermaid-mcp.js +1 -11
- package/dist/am.js +1 -34562
- package/dist/browser-lazy/chunks/agentic-producer-core-CC6OOLDW.js +1 -0
- package/dist/browser-lazy/chunks/architecture-QUFVKYJR.js +13 -0
- package/dist/browser-lazy/chunks/block-6J3Q63BO.js +11 -0
- package/dist/browser-lazy/chunks/builtin-backends-7SOZZHPF.js +12 -0
- package/dist/browser-lazy/chunks/c4-SQVBZAKJ.js +10 -0
- package/dist/browser-lazy/chunks/chunk-2GPK4VFF.js +5 -0
- package/dist/browser-lazy/chunks/chunk-2I4UPL7Q.js +3 -0
- package/dist/browser-lazy/chunks/chunk-2SH76OTH.js +1 -0
- package/dist/browser-lazy/chunks/chunk-2UIA2IME.js +3 -0
- package/dist/browser-lazy/chunks/chunk-4LHYF3BS.js +1 -0
- package/dist/browser-lazy/chunks/chunk-5B2Z7575.js +1 -0
- package/dist/browser-lazy/chunks/chunk-5FQ534HP.js +1 -0
- package/dist/browser-lazy/chunks/chunk-5UVGUSD6.js +1 -0
- package/dist/browser-lazy/chunks/chunk-5X6MJX3H.js +1 -0
- package/dist/browser-lazy/chunks/chunk-AMJLVPUB.js +4 -0
- package/dist/browser-lazy/chunks/chunk-BU5LHXNJ.js +3 -0
- package/dist/browser-lazy/chunks/chunk-BY2CPG6B.js +1 -0
- package/dist/browser-lazy/chunks/chunk-CN7WTBWB.js +1 -0
- package/dist/browser-lazy/chunks/chunk-CQE4HQEW.js +1 -0
- package/dist/browser-lazy/chunks/chunk-CSFUKSU6.js +1 -0
- package/dist/browser-lazy/chunks/chunk-DF6765YX.js +17 -0
- package/dist/browser-lazy/chunks/chunk-E2WMJZNM.js +1 -0
- package/dist/browser-lazy/chunks/chunk-FAIMVOX5.js +6 -0
- package/dist/browser-lazy/chunks/chunk-GVOEAY52.js +1 -0
- package/dist/browser-lazy/chunks/chunk-HLWUNUCM.js +1 -0
- package/dist/browser-lazy/chunks/chunk-ICC7HBJX.js +1 -0
- package/dist/browser-lazy/chunks/chunk-J35HAQQF.js +20 -0
- package/dist/browser-lazy/chunks/chunk-J7FFAFQF.js +1 -0
- package/dist/browser-lazy/chunks/chunk-LH7HUDKW.js +1 -0
- package/dist/browser-lazy/chunks/chunk-N5ELX7LR.js +2 -0
- package/dist/browser-lazy/chunks/chunk-NMQQMRIR.js +1 -0
- package/dist/browser-lazy/chunks/chunk-NO7ZIVRU.js +1 -0
- package/dist/browser-lazy/chunks/chunk-OZ443IVJ.js +16 -0
- package/dist/browser-lazy/chunks/chunk-PQGPS2YV.js +7 -0
- package/dist/browser-lazy/chunks/chunk-QA6GJQ4X.js +1 -0
- package/dist/browser-lazy/chunks/chunk-RIVTHZAQ.js +1 -0
- package/dist/browser-lazy/chunks/chunk-SZELX2EJ.js +1 -0
- package/dist/browser-lazy/chunks/chunk-TYZOZXUJ.js +22 -0
- package/dist/browser-lazy/chunks/chunk-UL6NDWLL.js +1 -0
- package/dist/browser-lazy/chunks/chunk-VQYYGAXP.js +1 -0
- package/dist/browser-lazy/chunks/chunk-VWVZGQE2.js +1 -0
- package/dist/browser-lazy/chunks/chunk-X2UYKWKM.js +4 -0
- package/dist/browser-lazy/chunks/chunk-YCEICNM6.js +1 -0
- package/dist/browser-lazy/chunks/chunk-Z3FDIVLN.js +20 -0
- package/dist/browser-lazy/chunks/class-5QA4SCTS.js +13 -0
- package/dist/browser-lazy/chunks/decode-63UIZGD2.js +1 -0
- package/dist/browser-lazy/chunks/elk.bundled-L4CADV5W.js +24 -0
- package/dist/browser-lazy/chunks/er-7ZSKGN7Y.js +11 -0
- package/dist/browser-lazy/chunks/eventmodeling-2BPLHWRN.js +19 -0
- package/dist/browser-lazy/chunks/flowchart-NEIMZTB5.js +4 -0
- package/dist/browser-lazy/chunks/forest-implementation-AEP24AIP.js +1 -0
- package/dist/browser-lazy/chunks/gantt-RDPIFYAF.js +11 -0
- package/dist/browser-lazy/chunks/gitgraph-N4Y5RYB7.js +9 -0
- package/dist/browser-lazy/chunks/ishikawa-LD3YBDJN.js +6 -0
- package/dist/browser-lazy/chunks/journey-6YQR5DJX.js +16 -0
- package/dist/browser-lazy/chunks/kanban-PLMJ7NBW.js +20 -0
- package/dist/browser-lazy/chunks/mermaid-yaml-runtime-QVYX4EWK.js +136 -0
- package/dist/browser-lazy/chunks/mindmap-K2UBFO3Y.js +12 -0
- package/dist/browser-lazy/chunks/packet-CUW4QY6Y.js +7 -0
- package/dist/browser-lazy/chunks/pie-7F7UUCG3.js +15 -0
- package/dist/browser-lazy/chunks/quadrant-TOONO2WC.js +10 -0
- package/dist/browser-lazy/chunks/radar-J6JVWVAX.js +16 -0
- package/dist/browser-lazy/chunks/render-core-BZOM3K7D.js +3 -0
- package/dist/browser-lazy/chunks/requirement-CMAKDJPO.js +19 -0
- package/dist/browser-lazy/chunks/sankey-AWXQEP3F.js +13 -0
- package/dist/browser-lazy/chunks/sequence-Q2RJRB4L.js +5 -0
- package/dist/browser-lazy/chunks/state-WRBFQEDX.js +4 -0
- package/dist/browser-lazy/chunks/timeline-D2KILFXM.js +6 -0
- package/dist/browser-lazy/chunks/treemap-N3VYX5D4.js +6 -0
- package/dist/browser-lazy/chunks/xychart-G73OGK66.js +16 -0
- package/dist/browser-lazy/chunks/zenuml-H4BXNYXR.js +16 -0
- package/dist/browser-lazy/index.d.ts +544 -275
- package/dist/browser-lazy/index.js +1 -1
- package/dist/browser.global.js +802 -565
- package/dist/chunk-3LGLPG33.js +2 -0
- package/dist/chunk-7CRDX2QR.js +2 -0
- package/dist/chunk-7PPW2BMO.js +2 -0
- package/dist/chunk-DQDKA5ND.js +2 -0
- package/dist/chunk-EHCMJUMD.js +52 -0
- package/dist/chunk-GVCHLSHH.js +4 -0
- package/dist/chunk-H3NCS2XZ.js +19 -0
- package/dist/chunk-JZOJ4YGS.js +201 -0
- package/dist/chunk-MKE7GNYU.js +146 -0
- package/dist/chunk-NKNFOREZ.js +2 -0
- package/dist/chunk-O7H2UX5K.js +2 -0
- package/dist/chunk-OMY6NRQD.js +58 -0
- package/dist/chunk-UA234O4M.js +4 -0
- package/dist/chunk-VUFVLGTH.js +2 -0
- package/dist/chunk-XU5LPD2D.js +2 -0
- package/dist/cli-YGGTJZH7.js +226 -0
- package/dist/elk-constructor.js +2 -0
- package/dist/elk-constructor.node.js +11 -0
- package/dist/index-EeXqJXr5.d.ts +1223 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.js +1 -334
- package/dist/jsonl-RPJY6YWO.js +2 -0
- package/dist/mcp-cli-63DYXTVD.js +2 -0
- package/dist/{index-BGA_-6LV.d.ts → paint-certification-6rwQjIv_.d.ts} +5283 -6173
- package/dist/server-5NEOHOFS.js +524 -0
- package/dist/svg-styles-BdnoM7AT.d.ts +724 -0
- package/dist/svg-styles.d.ts +1 -0
- package/dist/svg-styles.js +2 -0
- package/dist/svg.d.ts +13 -0
- package/dist/svg.js +2 -0
- package/dist/types-BcS52Mjt.d.ts +1360 -0
- package/dist/zenuml/chunks/appearance-UOQ5KA6O.js +1 -0
- package/dist/zenuml/chunks/builtin-backends-KDKE7YHO.js +12 -0
- package/dist/zenuml/chunks/chunk-42DXZ5C6.js +4 -0
- package/dist/zenuml/chunks/chunk-7TVYPTDW.js +1 -0
- package/dist/zenuml/chunks/chunk-EVPSMEKN.js +1 -0
- package/dist/zenuml/chunks/chunk-OXQWRSBM.js +20 -0
- package/dist/zenuml/chunks/chunk-QWX77U7G.js +2 -0
- package/dist/zenuml/chunks/chunk-RLJEI7YN.js +29 -0
- package/dist/zenuml/chunks/chunk-RZ6XK5CD.js +29 -0
- package/dist/zenuml/chunks/decode-BWERFDGK.js +1 -0
- package/dist/zenuml/chunks/mermaid-yaml-runtime-KZVU74WU.js +136 -0
- package/dist/zenuml/chunks/render-core-V5RQ737O.js +3 -0
- package/dist/zenuml/chunks/zenuml-EA2ZFRUX.js +20 -0
- package/dist/zenuml-frame.global.js +3626 -0
- package/dist/zenuml.d.ts +83 -0
- package/dist/zenuml.js +1 -0
- package/docs/MCP-DIRECTORY-LISTINGS.md +5 -1
- package/docs/README.md +59 -103
- package/docs/agent-api-cookbook.md +26 -16
- package/docs/agent-mutation-policy.md +86 -15
- package/docs/agent-workflow-examples.md +1 -1
- package/docs/api-advanced.md +385 -0
- package/docs/api.md +320 -366
- package/docs/ascii.md +40 -4
- package/docs/browser.md +46 -7
- package/docs/choosing-a-diagram.md +148 -0
- package/docs/code-mode-impact.md +1 -0
- package/docs/comparison.md +244 -28
- package/docs/computational-aesthetics-prototype-plan.md +10 -10
- package/docs/config.md +60 -2
- package/docs/custom-fonts.md +78 -21
- package/docs/diagram-families.md +160 -10
- package/docs/eventmodeling-and-zenuml.md +165 -0
- package/docs/features.md +21 -19
- package/docs/fork-differences.md +105 -32
- package/docs/getting-started.md +56 -51
- package/docs/layout-certification.md +126 -0
- package/docs/mcp-code-mode-rationale.md +20 -12
- package/docs/mcp-http-transport.md +14 -8
- package/docs/quality.md +145 -15
- package/docs/react.md +76 -31
- package/docs/style-authoring.md +23 -11
- package/docs/svg-semantic-contract.md +104 -4
- package/docs/testing-strategy.md +684 -126
- package/docs/theming.md +27 -8
- package/examples/styles/readme-hero.md +25 -0
- package/examples/styles/readme-hero.mmd +13 -0
- package/examples/styles/readme-hero.style.json +7 -0
- package/package.json +114 -57
- package/server.json +2 -2
- package/skills/agentic-mermaid-diagram-workflow/SKILL.md +26 -8
- package/skills/agentic-mermaid-diagram-workflow/references/cli.md +13 -3
- package/skills/agentic-mermaid-diagram-workflow/references/code-mode.md +2 -1
- package/skills/agentic-mermaid-diagram-workflow/references/flowchart.md +9 -6
- package/skills/agentic-mermaid-diagram-workflow/references/hosted-mcp.md +1 -0
- package/skills/agentic-mermaid-diagram-workflow/references/sequence.md +4 -3
- package/skills/agentic-mermaid-diagram-workflow/references/timeline.md +7 -6
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/agentflow.md +574 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/architecture.md +10 -2
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/c4.md +18 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/classDiagram.md +123 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/cynefin.md +6 -1
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/entityRelationshipDiagram.md +129 -9
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/eventmodeling.md +22 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/flowchart.md +188 -60
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/gitgraph.md +13 -7
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/mindmap.md +110 -1
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/packet.md +38 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/requirementDiagram.md +115 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/sequenceDiagram.md +101 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/stateDiagram.md +87 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/swimlanes.md +105 -2
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/timeline.md +12 -6
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/usecase.md +953 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/venn.md +77 -0
- package/skills/agentic-mermaid-diagram-workflow/references/upstream/xyChart.md +1 -1
- package/dist/browser-lazy/chunks/architecture-KTHE2HX3.js +0 -31
- package/dist/browser-lazy/chunks/chunk-2XCPFAD5.js +0 -46
- package/dist/browser-lazy/chunks/chunk-3H4F7RBT.js +0 -1
- package/dist/browser-lazy/chunks/chunk-4EVLW2NJ.js +0 -1
- package/dist/browser-lazy/chunks/chunk-5Q4S74UO.js +0 -1
- package/dist/browser-lazy/chunks/chunk-6OAPWSDO.js +0 -1
- package/dist/browser-lazy/chunks/chunk-A7L4WWVW.js +0 -143
- package/dist/browser-lazy/chunks/chunk-C7FJO2I3.js +0 -4
- package/dist/browser-lazy/chunks/chunk-D3XXDKIO.js +0 -1
- package/dist/browser-lazy/chunks/chunk-DXA5WL7H.js +0 -4
- package/dist/browser-lazy/chunks/chunk-EPFMQPXX.js +0 -1
- package/dist/browser-lazy/chunks/chunk-FFOHLPDA.js +0 -2
- package/dist/browser-lazy/chunks/chunk-FLD63DXE.js +0 -2
- package/dist/browser-lazy/chunks/chunk-G6OLSHRG.js +0 -7
- package/dist/browser-lazy/chunks/chunk-GRXCKTHX.js +0 -0
- package/dist/browser-lazy/chunks/chunk-I6VE56S7.js +0 -1
- package/dist/browser-lazy/chunks/chunk-KJVNXJ5Y.js +0 -1
- package/dist/browser-lazy/chunks/chunk-L227EPFP.js +0 -11
- package/dist/browser-lazy/chunks/chunk-LNIHDJSF.js +0 -1
- package/dist/browser-lazy/chunks/chunk-M6BT2HIP.js +0 -1
- package/dist/browser-lazy/chunks/chunk-NZRUMODH.js +0 -1
- package/dist/browser-lazy/chunks/chunk-OFRMKQA6.js +0 -1
- package/dist/browser-lazy/chunks/chunk-P7HMSKHJ.js +0 -1
- package/dist/browser-lazy/chunks/chunk-PXKL3O6H.js +0 -1
- package/dist/browser-lazy/chunks/chunk-PZEWZT35.js +0 -1
- package/dist/browser-lazy/chunks/chunk-STQRDZ67.js +0 -1
- package/dist/browser-lazy/chunks/chunk-SUFMSWTX.js +0 -1
- package/dist/browser-lazy/chunks/chunk-T7IJ6V4B.js +0 -3
- package/dist/browser-lazy/chunks/chunk-UAEZO5VL.js +0 -1
- package/dist/browser-lazy/chunks/chunk-WEUWIFG3.js +0 -1
- package/dist/browser-lazy/chunks/chunk-X64T74C5.js +0 -24
- package/dist/browser-lazy/chunks/class-F7R6TJ73.js +0 -9
- package/dist/browser-lazy/chunks/er-BDK7CM5L.js +0 -9
- package/dist/browser-lazy/chunks/flowchart-KFU6XV7S.js +0 -4
- package/dist/browser-lazy/chunks/gantt-I64VVDSP.js +0 -28
- package/dist/browser-lazy/chunks/gitgraph-EDUVJ5IJ.js +0 -8
- package/dist/browser-lazy/chunks/journey-TLO2RNM3.js +0 -40
- package/dist/browser-lazy/chunks/mindmap-OJCNDYPM.js +0 -9
- package/dist/browser-lazy/chunks/pie-HVG6XO7K.js +0 -19
- package/dist/browser-lazy/chunks/quadrant-U6S2L4MJ.js +0 -24
- package/dist/browser-lazy/chunks/radar-ZDLOBTVG.js +0 -32
- package/dist/browser-lazy/chunks/render-core-Y2DFNMQG.js +0 -12
- package/dist/browser-lazy/chunks/sequence-Z4WFS3VB.js +0 -12
- package/dist/browser-lazy/chunks/state-2HV2YGN3.js +0 -4
- package/dist/browser-lazy/chunks/timeline-XM4UFPOC.js +0 -20
- package/dist/browser-lazy/chunks/xychart-7JDHWTQY.js +0 -36
- package/dist/chunk-GGXCNCNA.js +0 -4118
- package/dist/chunk-IVD4NXNE.js +0 -615
- package/dist/chunk-JDMRPUAG.js +0 -37
- package/dist/chunk-JWAAW3FH.js +0 -149
- package/dist/chunk-LCGBT32P.js +0 -62036
- package/dist/chunk-RWMZRUIC.js +0 -4715
- package/dist/mcp-cli-4MLKC3ZH.js +0 -17
- package/docs/mutation-testing.md +0 -285
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import"./chunk-EVPSMEKN.js";var e,t=Symbol.for("yaml.alias"),s=Symbol.for("yaml.document"),n=Symbol.for("yaml.map"),i=Symbol.for("yaml.pair"),r=Symbol.for("yaml.scalar"),o=Symbol.for("yaml.seq"),l=Symbol.for("yaml.node.type"),a=e=>!!e&&"object"==typeof e&&e[l]===t,c=e=>!!e&&"object"==typeof e&&e[l]===s,u=e=>!!e&&"object"==typeof e&&e[l]===n,f=e=>!!e&&"object"==typeof e&&e[l]===i,h=e=>!!e&&"object"==typeof e&&e[l]===r,d=e=>!!e&&"object"==typeof e&&e[l]===o;function p(e){if(e&&"object"==typeof e)switch(e[l]){case n:case o:return!0}return!1}function m(e){if(e&&"object"==typeof e)switch(e[l]){case t:case n:case r:case o:return!0}return!1}var g=e=>(h(e)||p(e))&&!!e.anchor,y=Symbol("break visit"),b=Symbol("skip children"),k=Symbol("remove node");function v(e,t){let s=N(t);c(e)?w(null,e.contents,s,Object.freeze([e]))===k&&(e.contents=null):w(null,e,s,Object.freeze([]))}function w(e,t,s,n){let i=O(e,t,s,n);if(m(i)||f(i))return A(e,n,i),w(e,i,s,n);if("symbol"!=typeof i){if(p(t)){n=Object.freeze(n.concat(t));for(let e=0;e<t.items.length;++e){let i=w(e,t.items[e],s,n);if("number"==typeof i)e=i-1;else{if(i===y)return y;i===k&&(t.items.splice(e,1),e-=1)}}}else if(f(t)){n=Object.freeze(n.concat(t));let e=w("key",t.key,s,n);if(e===y)return y;e===k&&(t.key=null);let i=w("value",t.value,s,n);if(i===y)return y;i===k&&(t.value=null)}}return i}async function S(e,t){let s=N(t);c(e)?await E(null,e.contents,s,Object.freeze([e]))===k&&(e.contents=null):await E(null,e,s,Object.freeze([]))}async function E(e,t,s,n){let i=await O(e,t,s,n);if(m(i)||f(i))return A(e,n,i),E(e,i,s,n);if("symbol"!=typeof i){if(p(t)){n=Object.freeze(n.concat(t));for(let e=0;e<t.items.length;++e){let i=await E(e,t.items[e],s,n);if("number"==typeof i)e=i-1;else{if(i===y)return y;i===k&&(t.items.splice(e,1),e-=1)}}}else if(f(t)){n=Object.freeze(n.concat(t));let e=await E("key",t.key,s,n);if(e===y)return y;e===k&&(t.key=null);let i=await E("value",t.value,s,n);if(i===y)return y;i===k&&(t.value=null)}}return i}function N(e){return"object"==typeof e&&(e.Collection||e.Node||e.Value)?Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e):e}function O(e,t,s,n){return"function"==typeof s?s(e,t,n):u(t)?s.Map?.(e,t,n):d(t)?s.Seq?.(e,t,n):f(t)?s.Pair?.(e,t,n):h(t)?s.Scalar?.(e,t,n):a(t)?s.Alias?.(e,t,n):void 0}function A(e,t,s){let n=t[t.length-1];if(p(n))n.items[e]=s;else if(f(n))"key"===e?n.key=s:n.value=s;else if(c(n))n.contents=s;else{let e=a(n)?"alias":"scalar";throw Error(`Cannot replace node with ${e} parent`)}}v.BREAK=y,v.SKIP=b,v.REMOVE=k,S.BREAK=y,S.SKIP=b,S.REMOVE=k;var T={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},I=e=>e.replace(/[!,[\]{}]/g,e=>T[e]),x=class e{constructor(t,s){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,s)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags)}return t}add(t,s){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),i=n.shift();switch(i){case"%TAG":{if(2!==n.length&&(s(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[e,t]=n;return this.tags[e]=t,!0}case"%YAML":{if(this.yaml.explicit=!0,1!==n.length)return s(0,"%YAML directive should contain exactly one part"),!1;let[e]=n;if("1.1"===e||"1.2"===e)return this.yaml.version=e,!0;{let t=/^\d+\.\d+$/.test(e);return s(6,`Unsupported YAML version ${e}`,t),!1}}default:return s(0,`Unknown directive ${i}`,!0),!1}}tagName(e,t){if("!"===e)return"!";if("!"!==e[0])return t(`Not a valid tag: ${e}`),null;if("<"===e[1]){let s=e.slice(2,-1);return"!"===s||"!!"===s?(t(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(">"!==e[e.length-1]&&t("Verbatim tags must end with a >"),s)}let[,s,n]=e.match(/^(.*!)([^!]*)$/s);n||t(`The ${e} tag has no suffix`);let i=this.tags[s];if(i)try{return i+decodeURIComponent(n)}catch(e){return t(String(e)),null}return"!"===s?e:(t(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[t,s]of Object.entries(this.tags))if(e.startsWith(s))return t+I(e.substring(s.length));return"!"===e[0]?e:`!<${e}>`}toString(e){let t=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),n;if(e&&s.length>0&&m(e.contents)){let t={};v(e.contents,(e,s)=>{m(s)&&s.tag&&(t[s.tag]=!0)}),n=Object.keys(t)}else n=[];for(let[i,r]of s)"!!"===i&&"tag:yaml.org,2002:"===r||(!e||n.some(e=>e.startsWith(r)))&&t.push(`%TAG ${i} ${r}`);return t.join(`
|
|
2
|
+
`)}};function $(e){if(/[\x00-\x19\s,[\]{}]/.test(e))throw Error(`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`);return!0}function L(e){let t=new Set;return v(e,{Value(e,s){s.anchor&&t.add(s.anchor)}}),t}function C(e,t){for(let s=1;;++s){let n=`${e}${s}`;if(!t.has(n))return n}}function _(e,t,s,n){if(n&&"object"==typeof n)if(Array.isArray(n))for(let t=0,s=n.length;t<s;++t){let s=n[t],i=_(e,n,String(t),s);void 0===i?delete n[t]:i!==s&&(n[t]=i)}else if(n instanceof Map)for(let t of Array.from(n.keys())){let s=n.get(t),i=_(e,n,t,s);void 0===i?n.delete(t):i!==s&&n.set(t,i)}else if(n instanceof Set)for(let t of Array.from(n)){let s=_(e,n,t,t);void 0===s?n.delete(t):s!==t&&(n.delete(t),n.add(s))}else for(let[t,s]of Object.entries(n)){let i=_(e,n,t,s);void 0===i?delete n[t]:i!==s&&(n[t]=i)}return e.call(t,s,n)}function K(e,t,s){if(Array.isArray(e))return e.map((e,t)=>K(e,String(t),s));if(e&&"function"==typeof e.toJSON){if(!s||!g(e))return e.toJSON(t,s);let n={aliasCount:0,count:1,res:void 0};s.anchors.set(e,n),s.onCreate=e=>{n.res=e,delete s.onCreate};let i=e.toJSON(t,s);return s.onCreate&&s.onCreate(i),i}return"bigint"!=typeof e||s?.keep?e:Number(e)}x.defaultYaml={explicit:!1,version:"1.2"},x.defaultTags={"!!":"tag:yaml.org,2002:"};var B=class{constructor(e){Object.defineProperty(this,l,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:s,onAnchor:n,reviver:i}={}){if(!c(e))throw TypeError("A document argument is required");let r={anchors:new Map,doc:e,keep:!0,mapAsMap:!0===t,mapKeyWarned:!1,maxAliasCount:"number"==typeof s?s:100},o=K(this,"",r);if("function"==typeof n)for(let{count:e,res:t}of r.anchors.values())n(t,e);return"function"==typeof i?_(i,{"":o},"",o):o}},j=class extends B{constructor(e){super(t),this.source=e,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(e,t){let s,n;if(t?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");for(let i of(t?.aliasResolveCache?s=t.aliasResolveCache:(s=[],v(e,{Node:(e,t)=>{(a(t)||g(t))&&s.push(t)}}),t&&(t.aliasResolveCache=s)),s)){if(i===this)break;i.anchor===this.source&&(n=i)}return n}toJSON(e,t){if(!t)return{source:this.source};let{anchors:s,doc:n,maxAliasCount:i}=t,r=this.resolve(n,t);if(!r)throw ReferenceError(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);let o=s.get(r);if(o||(K(r,null,t),o=s.get(r)),o?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(i>=0&&(o.count+=1,0===o.aliasCount&&(o.aliasCount=function e(t,s,n){if(a(s)){let e=s.resolve(t),i=n&&e&&n.get(e);return i?i.count*i.aliasCount:0}if(p(s)){let i=0;for(let r of s.items){let s=e(t,r,n);s>i&&(i=s)}return i}return f(s)?Math.max(e(t,s.key,n),e(t,s.value,n)):1}(n,r,s)),o.count*o.aliasCount>i))throw ReferenceError("Excessive alias count indicates a resource exhaustion attack");return o.res}toString(e,t,s){let n=`*${this.source}`;if(e){if($(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source))throw Error(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);if(e.implicitKey)return`${n} `}return n}},M=e=>!e||"function"!=typeof e&&"object"!=typeof e,D=class extends B{constructor(e){super(r),this.value=e}toJSON(e,t){return t?.keep?this.value:K(this.value,e,t)}toString(){return String(this.value)}};function P(e,t,s){if(c(e)&&(e=e.contents),m(e))return e;if(f(e)){let t=s.schema[n].createNode?.(s.schema,null,s);return t.items.push(e),t}(e instanceof String||e instanceof Number||e instanceof Boolean||"u">typeof BigInt&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:i,onAnchor:r,onTagObj:l,schema:a,sourceObjects:u}=s,h;if(i&&e&&"object"==typeof e){if(h=u.get(e))return h.anchor??(h.anchor=r(e)),new j(h.anchor);h={anchor:null,node:null},u.set(e,h)}t?.startsWith("!!")&&(t="tag:yaml.org,2002:"+t.slice(2));let d=function(e,t,s){if(t){let e=s.filter(e=>e.tag===t),n=e.find(e=>!e.format)??e[0];if(!n)throw Error(`Tag ${t} not found`);return n}return s.find(t=>t.identify?.(e)&&!t.format)}(e,t,a.tags);if(!d){if(e&&"function"==typeof e.toJSON&&(e=e.toJSON()),!e||"object"!=typeof e){let t=new D(e);return h&&(h.node=t),t}d=e instanceof Map?a[n]:Symbol.iterator in Object(e)?a[o]:a[n]}l&&(l(d),delete s.onTagObj);let p=d?.createNode?d.createNode(s.schema,e,s):"function"==typeof d?.nodeClass?.from?d.nodeClass.from(s.schema,e,s):new D(e);return t?p.tag=t:d.default||(p.tag=d.tag),h&&(h.node=p),p}function q(e,t,s){let n=s;for(let e=t.length-1;e>=0;--e){let s=t[e];if("number"==typeof s&&Number.isInteger(s)&&s>=0){let e=[];e[s]=n,n=e}else n=new Map([[s,n]])}return P(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}D.BLOCK_FOLDED="BLOCK_FOLDED",D.BLOCK_LITERAL="BLOCK_LITERAL",D.PLAIN="PLAIN",D.QUOTE_DOUBLE="QUOTE_DOUBLE",D.QUOTE_SINGLE="QUOTE_SINGLE";var U=e=>null==e||"object"==typeof e&&!!e[Symbol.iterator]().next().done,R=class extends B{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(t=>m(t)||f(t)?t.clone(e):t),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(U(e))this.add(t);else{let[s,...n]=e,i=this.get(s,!0);if(p(i))i.addIn(n,t);else if(void 0===i&&this.schema)this.set(s,q(this.schema,n,t));else throw Error(`Expected YAML collection at ${s}. Remaining path: ${n}`)}}deleteIn(e){let[t,...s]=e;if(0===s.length)return this.delete(t);let n=this.get(t,!0);if(p(n))return n.deleteIn(s);throw Error(`Expected YAML collection at ${t}. Remaining path: ${s}`)}getIn(e,t){let[s,...n]=e,i=this.get(s,!0);return 0===n.length?!t&&h(i)?i.value:i:p(i)?i.getIn(n,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!f(t))return!1;let s=t.value;return null==s||e&&h(s)&&null==s.value&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){let[t,...s]=e;if(0===s.length)return this.has(t);let n=this.get(t,!0);return!!p(n)&&n.hasIn(s)}setIn(e,t){let[s,...n]=e;if(0===n.length)this.set(s,t);else{let e=this.get(s,!0);if(p(e))e.setIn(n,t);else if(void 0===e&&this.schema)this.set(s,q(this.schema,n,t));else throw Error(`Expected YAML collection at ${s}. Remaining path: ${n}`)}}},F=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function J(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var V=(e,t,s)=>e.endsWith(`
|
|
3
|
+
`)?J(s,t):s.includes(`
|
|
4
|
+
`)?`
|
|
5
|
+
`+J(s,t):(e.endsWith(" ")?"":" ")+s,Y="flow",W="block",G="quoted";function H(e,t,s="flow",{indentAtStart:n,lineWidth:i=80,minContentWidth:r=20,onFold:o,onOverflow:l}={}){if(!i||i<0)return e;i<r&&(r=0);let a=Math.max(1+r,1+i-t.length);if(e.length<=a)return e;let c=[],u={},f=i-t.length;"number"==typeof n&&(n>i-Math.max(2,r)?c.push(0):f=i-n);let h,d,p=!1,m=-1,g=-1,y=-1;s===W&&-1!==(m=Q(e,m,t.length))&&(f=m+a);for(let n;n=e[m+=1];){if(s===G&&"\\"===n){switch(g=m,e[m+1]){case"x":m+=3;break;case"u":m+=5;break;case"U":m+=9;break;default:m+=1}y=m}if(n===`
|
|
6
|
+
`)s===W&&(m=Q(e,m,t.length)),f=m+t.length+a,h=void 0;else{if(" "===n&&d&&" "!==d&&d!==`
|
|
7
|
+
`&&" "!==d){let t=e[m+1];t&&" "!==t&&t!==`
|
|
8
|
+
`&&" "!==t&&(h=m)}if(m>=f)if(h)c.push(h),f=h+a,h=void 0;else if(s===G){for(;" "===d||" "===d;)d=n,n=e[m+=1],p=!0;let t=m>y+1?m-2:g-1;if(u[t])return e;c.push(t),u[t]=!0,f=t+a,h=void 0}else p=!0}d=n}if(p&&l&&l(),0===c.length)return e;o&&o();let b=e.slice(0,c[0]);for(let n=0;n<c.length;++n){let i=c[n],r=c[n+1]||e.length;0===i?b=`
|
|
9
|
+
${t}${e.slice(0,r)}`:(s===G&&u[i]&&(b+=`${e[i]}\\`),b+=`
|
|
10
|
+
${t}${e.slice(i+1,r)}`)}return b}function Q(e,t,s){let n=t,i=t+1,r=e[i];for(;" "===r||" "===r;)if(t<i+s)r=e[++t];else{do r=e[++t];while(r&&r!==`
|
|
11
|
+
`)n=t,r=e[i=t+1]}return n}var X=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth});function z(e,t){let s=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return s;let{implicitKey:n}=t,i=t.options.doubleQuotedMinMultiLineLength,r=t.indent||(/^(%|---|\.\.\.)/m.test(e)?" ":""),o="",l=0;for(let e=0,t=s[e];t;t=s[++e])if(" "===t&&"\\"===s[e+1]&&"n"===s[e+2]&&(o+=s.slice(l,e)+"\\ ",e+=1,l=e,t="\\"),"\\"===t)switch(s[e+1]){case"u":{o+=s.slice(l,e);let t=s.substr(e+2,4);switch(t){case"0000":o+="\\0";break;case"0007":o+="\\a";break;case"000b":o+="\\v";break;case"001b":o+="\\e";break;case"0085":o+="\\N";break;case"00a0":o+="\\_";break;case"2028":o+="\\L";break;case"2029":o+="\\P";break;default:"00"===t.substr(0,2)?o+="\\x"+t.substr(2):o+=s.substr(e,6)}e+=5,l=e+1}break;case"n":if(n||'"'===s[e+2]||s.length<i)e+=1;else{for(o+=s.slice(l,e)+`
|
|
12
|
+
|
|
13
|
+
`;"\\"===s[e+2]&&"n"===s[e+3]&&'"'!==s[e+4];)o+=`
|
|
14
|
+
`,e+=2;o+=r," "===s[e+2]&&(o+="\\"),e+=1,l=e+1}break;default:e+=1}return o=l?o+s.slice(l):s,n?o:H(o,r,G,X(t,!1))}function Z(e,t){if(!1===t.options.singleQuote||t.implicitKey&&e.includes(`
|
|
15
|
+
`)||/[ \t]\n|\n[ \t]/.test(e))return z(e,t);let s=t.indent||(/^(%|---|\.\.\.)/m.test(e)?" ":""),n="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
16
|
+
${s}`)+"'";return t.implicitKey?n:H(n,s,Y,X(t,!1))}function ee(e,t){let{singleQuote:s}=t.options,n;if(!1===s)n=z;else{let t=e.includes('"'),i=e.includes("'");n=t&&!i?Z:i&&!t?z:s?Z:z}return n(e,t)}try{e=RegExp(`(^|(?<!
|
|
17
|
+
))
|
|
18
|
+
+(?!
|
|
19
|
+
|$)`,"g")}catch{e=/\n+(?!\n|$)/g}function et({comment:t,type:s,value:n},i,r,o){let l,a,c,{blockQuote:u,commentString:f,lineWidth:h}=i.options;if(!u||/\n[\t ]+$/.test(n))return ee(n,i);let d=i.indent||(i.forceBlockIndent||(l=n,/^(%|---|\.\.\.)/m.test(l))?" ":""),p="literal"===u||"folded"!==u&&s!==D.BLOCK_FOLDED&&(s===D.BLOCK_LITERAL||!function(e,t,s){if(!t||t<0)return!1;let n=t-s,i=e.length;if(i<=n)return!1;for(let t=0,s=0;t<i;++t)if(e[t]===`
|
|
20
|
+
`){if(t-s>n)return!0;if(i-(s=t+1)<=n)return!1}return!0}(n,h,d.length));if(!n)return p?`|
|
|
21
|
+
`:`>
|
|
22
|
+
`;for(c=n.length;c>0;--c){let e=n[c-1];if(e!==`
|
|
23
|
+
`&&" "!==e&&" "!==e)break}let m=n.substring(c),g=m.indexOf(`
|
|
24
|
+
`);-1===g?a="-":n===m||g!==m.length-1?(a="+",o&&o()):a="",m&&(n=n.slice(0,-m.length),m[m.length-1]===`
|
|
25
|
+
`&&(m=m.slice(0,-1)),m=m.replace(e,`$&${d}`));let y=!1,b,k=-1;for(b=0;b<n.length;++b){let e=n[b];if(" "===e)y=!0;else if(e===`
|
|
26
|
+
`)k=b;else break}let v=n.substring(0,k<b?k+1:b);v&&(n=n.substring(v.length),v=v.replace(/\n+/g,`$&${d}`));let w=(y?d?"2":"1":"")+a;if(t&&(w+=" "+f(t.replace(/ ?[\r\n]+/g," ")),r&&r()),!p){let e=n.replace(/\n+/g,`
|
|
27
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${d}`),t=!1,r=X(i,!0);"folded"!==u&&s!==D.BLOCK_FOLDED&&(r.onOverflow=()=>{t=!0});let o=H(`${v}${e}${m}`,d,W,r);if(!t)return`>${w}
|
|
28
|
+
${d}${o}`}return n=n.replace(/\n+/g,`$&${d}`),`|${w}
|
|
29
|
+
${d}${v}${n}${m}`}function es(e,t,s,n){let{implicitKey:i,inFlow:r}=t,o="string"==typeof e.value?e:Object.assign({},e,{value:String(e.value)}),{type:l}=e;l!==D.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(o.value)&&(l=D.QUOTE_DOUBLE);let a=e=>{switch(e){case D.BLOCK_FOLDED:case D.BLOCK_LITERAL:return i||r?ee(o.value,t):et(o,t,s,n);case D.QUOTE_DOUBLE:return z(o.value,t);case D.QUOTE_SINGLE:return Z(o.value,t);case D.PLAIN:return function(e,t,s,n){let{type:i,value:r}=e,{actualString:o,implicitKey:l,indent:a,indentStep:c,inFlow:u}=t;if(l&&r.includes(`
|
|
30
|
+
`)||u&&/[[\]{},]/.test(r))return ee(r,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return l||u||!r.includes(`
|
|
31
|
+
`)?ee(r,t):et(e,t,s,n);if(!l&&!u&&i!==D.PLAIN&&r.includes(`
|
|
32
|
+
`))return et(e,t,s,n);if(/^(%|---|\.\.\.)/m.test(r)){if(""===a)return t.forceBlockIndent=!0,et(e,t,s,n);if(l&&a===c)return ee(r,t)}let f=r.replace(/\n+/g,`$&
|
|
33
|
+
${a}`);if(o){let e=e=>e.default&&"tag:yaml.org,2002:str"!==e.tag&&e.test?.test(f),{compat:s,tags:n}=t.doc.schema;if(n.some(e)||s?.some(e))return ee(r,t)}return l?f:H(f,a,Y,X(t,!1))}(o,t,s,n);default:return null}},c=a(l);if(null===c){let{defaultKeyType:e,defaultStringType:s}=t.options,n=i&&e||s;if(null===(c=a(n)))throw Error(`Unsupported default string type ${n}`)}return c}function en(e,t){let s=Object.assign({blockQuote:!0,commentString:F,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(s.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:s.flowCollectionPadding?" ":"",indent:"",indentStep:"number"==typeof s.indent?" ".repeat(s.indent):" ",inFlow:n,options:s}}function ei(e,t,s,n){if(f(e))return e.toString(t,s,n);if(a(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let i,r=m(e)?e:t.doc.createNode(e,{onTagObj:e=>i=e});i??(i=function(e,t){let s,n;if(t.tag){let s=e.filter(e=>e.tag===t.tag);if(s.length>0)return s.find(e=>e.format===t.format)??s[0]}if(h(t)){n=t.value;let i=e.filter(e=>e.identify?.(n));if(i.length>1){let e=i.filter(e=>e.test);e.length>0&&(i=e)}s=i.find(e=>e.format===t.format)??i.find(e=>!e.format)}else n=t,s=e.find(e=>e.nodeClass&&n instanceof e.nodeClass);if(!s){let e=n?.constructor?.name??(null===n?"null":typeof n);throw Error(`Tag not resolved for ${e} value`)}return s}(t.doc.schema.tags,r));let o=function(e,t,{anchors:s,doc:n}){if(!n.directives)return"";let i=[],r=(h(e)||p(e))&&e.anchor;r&&$(r)&&(s.add(r),i.push(`&${r}`));let o=e.tag??(t.default?null:t.tag);return o&&i.push(n.directives.tagString(o)),i.join(" ")}(r,i,t);o.length>0&&(t.indentAtStart=(t.indentAtStart??0)+o.length+1);let l="function"==typeof i.stringify?i.stringify(r,t,s,n):h(r)?es(r,t,s,n):r.toString(t,s,n);return o?h(r)||"{"===l[0]||"["===l[0]?`${o} ${l}`:`${o}
|
|
34
|
+
${t.indent}${l}`:l}function er(e,t){("debug"===e||"warn"===e)&&console.warn(t)}var eo={identify:e=>"<<"===e||"symbol"==typeof e&&"<<"===e.description,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new D(Symbol("<<")),{addToJSMap:el}),stringify:()=>"<<"};function el(e,t,s){let n=ec(e,s);if(d(n))for(let s of n.items)ea(e,t,s);else if(Array.isArray(n))for(let s of n)ea(e,t,s);else ea(e,t,n)}function ea(e,t,s){let n=ec(e,s);if(!u(n))throw Error("Merge sources must be maps or map aliases");for(let[s,i]of n.toJSON(null,e,Map))t instanceof Map?t.has(s)||t.set(s,i):t instanceof Set?t.add(s):Object.prototype.hasOwnProperty.call(t,s)||Object.defineProperty(t,s,{value:i,writable:!0,enumerable:!0,configurable:!0});return t}function ec(e,t){return e&&a(t)?t.resolve(e.doc,e):t}function eu(e,t,{key:s,value:n}){if(m(s)&&s.addToJSMap)s.addToJSMap(e,t,n);else if((eo.identify(s)||h(s)&&(!s.type||s.type===D.PLAIN)&&eo.identify(s.value))&&e?.doc.schema.tags.some(e=>e.tag===eo.tag&&e.default))el(e,t,n);else{let i=K(s,"",e);if(t instanceof Map)t.set(i,K(n,i,e));else if(t instanceof Set)t.add(i);else{let r=function(e,t,s){if(null===t)return"";if("object"!=typeof t)return String(t);if(m(e)&&s?.doc){let t=en(s.doc,{});for(let e of(t.anchors=new Set,s.anchors.keys()))t.anchors.add(e.anchor);t.inFlow=!0,t.inStringifyKey=!0;let n=e.toString(t);if(!s.mapKeyWarned){let e=JSON.stringify(n);e.length>40&&(e=e.substring(0,36)+'..."'),er(s.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${e}. Set mapAsMap: true to use object keys.`),s.mapKeyWarned=!0}return n}return JSON.stringify(t)}(s,i,e),o=K(n,r,e);r in t?Object.defineProperty(t,r,{value:o,writable:!0,enumerable:!0,configurable:!0}):t[r]=o}}return t}function ef(e,t,s){return new eh(P(e,void 0,s),P(t,void 0,s))}var eh=class e{constructor(e,t=null){Object.defineProperty(this,l,{value:i}),this.key=e,this.value=t}clone(t){let{key:s,value:n}=this;return m(s)&&(s=s.clone(t)),m(n)&&(n=n.clone(t)),new e(s,n)}toJSON(e,t){let s=t?.mapAsMap?new Map:{};return eu(t,s,this)}toString(e,t,s){return e?.doc?function({key:e,value:t},s,n,i){let r,o,l,{allNullValues:a,doc:c,indent:u,indentStep:f,options:{commentString:g,indentSeq:y,simpleKeys:b}}=s,k=m(e)&&e.comment||null;if(b){if(k)throw Error("With simple keys, key nodes cannot have comments");if(p(e)||!m(e)&&"object"==typeof e)throw Error("With simple keys, collection cannot be used as a key value")}let v=!b&&(!e||k&&null==t&&!s.inFlow||p(e)||(h(e)?e.type===D.BLOCK_FOLDED||e.type===D.BLOCK_LITERAL:"object"==typeof e));s=Object.assign({},s,{allNullValues:!1,implicitKey:!v&&(b||!a),indent:u+f});let w=!1,S=!1,E=ei(e,s,()=>w=!0,()=>S=!0);if(!v&&!s.inFlow&&E.length>1024){if(b)throw Error("With simple keys, single line scalar must not span more than 1024 characters");v=!0}if(s.inFlow){if(a||null==t)return w&&n&&n(),""===E?"?":v?`? ${E}`:E}else if(a&&!b||null==t&&v)return E=`? ${E}`,k&&!w?E+=V(E,s.indent,g(k)):S&&i&&i(),E;w&&(k=null),v?(k&&(E+=V(E,s.indent,g(k))),E=`? ${E}
|
|
35
|
+
${u}:`):(E=`${E}:`,k&&(E+=V(E,s.indent,g(k)))),m(t)?(r=!!t.spaceBefore,o=t.commentBefore,l=t.comment):(r=!1,o=null,l=null,t&&"object"==typeof t&&(t=c.createNode(t))),s.implicitKey=!1,!v&&!k&&h(t)&&(s.indentAtStart=E.length+1),S=!1,!(!y&&f.length>=2&&!s.inFlow&&!v&&d(t))||t.flow||t.tag||t.anchor||(s.indent=s.indent.substring(2));let N=!1,O=ei(t,s,()=>N=!0,()=>S=!0),A=" ";if(k||r||o){if(A=r?`
|
|
36
|
+
`:"",o){let e=g(o);A+=`
|
|
37
|
+
${J(e,s.indent)}`}""!==O||s.inFlow?A+=`
|
|
38
|
+
${s.indent}`:A===`
|
|
39
|
+
`&&l&&(A=`
|
|
40
|
+
|
|
41
|
+
`)}else if(!v&&p(t)){let e=O[0],n=O.indexOf(`
|
|
42
|
+
`),i=-1!==n,r=s.inFlow??t.flow??0===t.items.length;if(i||!r){let t=!1;if(i&&("&"===e||"!"===e)){let s=O.indexOf(" ");"&"===e&&-1!==s&&s<n&&"!"===O[s+1]&&(s=O.indexOf(" ",s+1)),(-1===s||n<s)&&(t=!0)}t||(A=`
|
|
43
|
+
${s.indent}`)}}else(""===O||O[0]===`
|
|
44
|
+
`)&&(A="");return E+=A+O,s.inFlow?N&&n&&n():l&&!N?E+=V(E,s.indent,g(l)):S&&i&&i(),E}(this,e,t,s):JSON.stringify(this)}};function ed(e,t,s){return(t.inFlow??e.flow?function({items:e},t,{flowChars:s,itemIndent:n}){let{indent:i,indentStep:r,flowCollectionPadding:o,options:{commentString:l}}=t,a=Object.assign({},t,{indent:n+=r,inFlow:!0,type:null}),c=!1,u=0,h=[];for(let s=0;s<e.length;++s){let i=e[s],r=null;if(m(i))i.spaceBefore&&h.push(""),ep(t,h,i.commentBefore,!1),i.comment&&(r=i.comment);else if(f(i)){let e=m(i.key)?i.key:null;e&&(e.spaceBefore&&h.push(""),ep(t,h,e.commentBefore,!1),e.comment&&(c=!0));let s=m(i.value)?i.value:null;s?(s.comment&&(r=s.comment),s.commentBefore&&(c=!0)):null==i.value&&e?.comment&&(r=e.comment)}r&&(c=!0);let o=ei(i,a,()=>r=null);c||(c=h.length>u||o.includes(`
|
|
45
|
+
`)),s<e.length-1?o+=",":t.options.trailingComma&&(t.options.lineWidth>0&&(c||(c=h.reduce((e,t)=>e+t.length+2,2)+(o.length+2)>t.options.lineWidth)),c&&(o+=",")),r&&(o+=V(o,n,l(r))),h.push(o),u=h.length}let{start:d,end:p}=s;if(0===h.length)return d+p;if(!c){let e=h.reduce((e,t)=>e+t.length+2,2);c=t.options.lineWidth>0&&e>t.options.lineWidth}if(!c)return`${d}${o}${h.join(" ")}${o}${p}`;{let e=d;for(let t of h)e+=t?`
|
|
46
|
+
${r}${i}${t}`:`
|
|
47
|
+
`;return`${e}
|
|
48
|
+
${i}${p}`}}:function({comment:e,items:t},s,{blockItemPrefix:n,flowChars:i,itemIndent:r,onChompKeep:o,onComment:l}){let a,{indent:c,options:{commentString:u}}=s,h=Object.assign({},s,{indent:r,type:null}),d=!1,p=[];for(let e=0;e<t.length;++e){let i=t[e],o=null;if(m(i))!d&&i.spaceBefore&&p.push(""),ep(s,p,i.commentBefore,d),i.comment&&(o=i.comment);else if(f(i)){let e=m(i.key)?i.key:null;e&&(!d&&e.spaceBefore&&p.push(""),ep(s,p,e.commentBefore,d))}d=!1;let l=ei(i,h,()=>o=null,()=>d=!0);o&&(l+=V(l,r,u(o))),d&&o&&(d=!1),p.push(n+l)}if(0===p.length)a=i.start+i.end;else{a=p[0];for(let e=1;e<p.length;++e){let t=p[e];a+=t?`
|
|
49
|
+
${c}${t}`:`
|
|
50
|
+
`}}return e?(a+=`
|
|
51
|
+
`+J(u(e),c),l&&l()):d&&o&&o(),a})(e,t,s)}function ep({indent:e,options:{commentString:t}},s,n,i){if(n&&i&&(n=n.replace(/^\n+/,"")),n){let i=J(t(n),e);s.push(i.trimStart())}}function em(e,t){let s=h(t)?t.value:t;for(let n of e)if(f(n)&&(n.key===t||n.key===s||h(n.key)&&n.key.value===s))return n}var eg=class extends R{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(n,e),this.items=[]}static from(e,t,s){let{keepUndefined:n,replacer:i}=s,r=new this(e),o=(e,o)=>{if("function"==typeof i)o=i.call(t,e,o);else if(Array.isArray(i)&&!i.includes(e))return;(void 0!==o||n)&&r.items.push(ef(e,o,s))};if(t instanceof Map)for(let[e,s]of t)o(e,s);else if(t&&"object"==typeof t)for(let e of Object.keys(t))o(e,t[e]);return"function"==typeof e.sortMapEntries&&r.items.sort(e.sortMapEntries),r}add(e,t){let s;s=f(e)?e:e&&"object"==typeof e&&"key"in e?new eh(e.key,e.value):new eh(e,e?.value);let n=em(this.items,s.key),i=this.schema?.sortMapEntries;if(n){if(!t)throw Error(`Key ${s.key} already set`);h(n.value)&&M(s.value)?n.value.value=s.value:n.value=s.value}else if(i){let e=this.items.findIndex(e=>0>i(s,e));-1===e?this.items.push(s):this.items.splice(e,0,s)}else this.items.push(s)}delete(e){let t=em(this.items,e);return!!t&&this.items.splice(this.items.indexOf(t),1).length>0}get(e,t){let s=em(this.items,e)?.value;return(!t&&h(s)?s.value:s)??void 0}has(e){return!!em(this.items,e)}set(e,t){this.add(new eh(e,t),!0)}toJSON(e,t,s){let n=s?new s:t?.mapAsMap?new Map:{};for(let e of(t?.onCreate&&t.onCreate(n),this.items))eu(t,n,e);return n}toString(e,t,s){if(!e)return JSON.stringify(this);for(let e of this.items)if(!f(e))throw Error(`Map items must all be pairs; found ${JSON.stringify(e)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),ed(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:t})}},ey={collection:"map",default:!0,nodeClass:eg,tag:"tag:yaml.org,2002:map",resolve:(e,t)=>(u(e)||t("Expected a mapping for this tag"),e),createNode:(e,t,s)=>eg.from(e,t,s)},eb=class extends R{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(o,e),this.items=[]}add(e){this.items.push(e)}delete(e){let t=ek(e);return"number"==typeof t&&this.items.splice(t,1).length>0}get(e,t){let s=ek(e);if("number"!=typeof s)return;let n=this.items[s];return!t&&h(n)?n.value:n}has(e){let t=ek(e);return"number"==typeof t&&t<this.items.length}set(e,t){let s=ek(e);if("number"!=typeof s)throw Error(`Expected a valid index, not ${e}.`);let n=this.items[s];h(n)&&M(t)?n.value=t:this.items[s]=t}toJSON(e,t){let s=[];t?.onCreate&&t.onCreate(s);let n=0;for(let e of this.items)s.push(K(e,String(n++),t));return s}toString(e,t,s){return e?ed(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+" ",onChompKeep:s,onComment:t}):JSON.stringify(this)}static from(e,t,s){let{replacer:n}=s,i=new this(e);if(t&&Symbol.iterator in Object(t)){let e=0;for(let r of t){if("function"==typeof n){let s=t instanceof Set?r:String(e++);r=n.call(t,s,r)}i.items.push(P(r,void 0,s))}}return i}};function ek(e){let t=h(e)?e.value:e;return t&&"string"==typeof t&&(t=Number(t)),"number"==typeof t&&Number.isInteger(t)&&t>=0?t:null}var ev={collection:"seq",default:!0,nodeClass:eb,tag:"tag:yaml.org,2002:seq",resolve:(e,t)=>(d(e)||t("Expected a sequence for this tag"),e),createNode:(e,t,s)=>eb.from(e,t,s)},ew={identify:e=>"string"==typeof e,default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:(e,t,s,n)=>es(e,t=Object.assign({actualString:!0},t),s,n)},eS={identify:e=>null==e,createNode:()=>new D(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new D(null),stringify:({source:e},t)=>"string"==typeof e&&eS.test.test(e)?e:t.options.nullStr},eE={identify:e=>"boolean"==typeof e,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new D("t"===e[0]||"T"===e[0]),stringify:({source:e,value:t},s)=>e&&eE.test.test(e)&&t===("t"===e[0]||"T"===e[0])?e:t?s.options.trueStr:s.options.falseStr};function eN({format:e,minFractionDigits:t,tag:s,value:n}){if("bigint"==typeof n)return String(n);let i="number"==typeof n?n:Number(n);if(!isFinite(i))return isNaN(i)?".nan":i<0?"-.inf":".inf";let r=Object.is(n,-0)?"-0":JSON.stringify(n);if(!e&&t&&(!s||"tag:yaml.org,2002:float"===s)&&/^-?\d/.test(r)&&!r.includes("e")){let e=r.indexOf(".");e<0&&(e=r.length,r+=".");let s=t-(r.length-e-1);for(;s-- >0;)r+="0"}return r}var eO={identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>"nan"===e.slice(-3).toLowerCase()?NaN:"-"===e[0]?-1/0:1/0,stringify:eN},eA={identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():eN(e)}},eT={identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new D(parseFloat(e)),s=e.indexOf(".");return -1!==s&&"0"===e[e.length-1]&&(t.minFractionDigits=e.length-s-1),t},stringify:eN},eI=e=>"bigint"==typeof e||Number.isInteger(e),ex=(e,t,s,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),s);function e$(e,t,s){let{value:n}=e;return eI(n)&&n>=0?s+n.toString(t):eN(e)}var eL={identify:e=>eI(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,s)=>ex(e,2,8,s),stringify:e=>e$(e,8,"0o")},eC={identify:eI,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,s)=>ex(e,0,10,s),stringify:eN},e_={identify:e=>eI(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,s)=>ex(e,2,16,s),stringify:e=>e$(e,16,"0x")},eK=[ey,ev,ew,eS,eE,eL,eC,e_,eO,eA,eT];function eB(e){return"bigint"==typeof e||Number.isInteger(e)}var ej=({value:e})=>JSON.stringify(e),eM=[ey,ev].concat([{identify:e=>"string"==typeof e,default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:ej},{identify:e=>null==e,createNode:()=>new D(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:ej},{identify:e=>"boolean"==typeof e,default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:e=>"true"===e,stringify:ej},{identify:eB,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:s})=>s?BigInt(e):parseInt(e,10),stringify:({value:e})=>eB(e)?e.toString():JSON.stringify(e)},{identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:ej}],{default:!0,tag:"",test:/^/,resolve:(e,t)=>(t(`Unresolved plain scalar ${JSON.stringify(e)}`),e)}),eD={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if("function"!=typeof atob)return t("This environment does not support reading binary tags; either Buffer or atob is required"),e;{let t=atob(e.replace(/[\n\r]/g,"")),s=new Uint8Array(t.length);for(let e=0;e<t.length;++e)s[e]=t.charCodeAt(e);return s}},stringify({comment:e,type:t,value:s},n,i,r){let o;if(!s)return"";if("function"==typeof btoa){let e="";for(let t=0;t<s.length;++t)e+=String.fromCharCode(s[t]);o=btoa(e)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(t??(t=D.BLOCK_LITERAL),t!==D.QUOTE_DOUBLE){let e=Math.max(n.options.lineWidth-n.indent.length,n.options.minContentWidth),s=Math.ceil(o.length/e),i=Array(s);for(let t=0,n=0;t<s;++t,n+=e)i[t]=o.substr(n,e);o=i.join(t===D.BLOCK_LITERAL?`
|
|
52
|
+
`:" ")}return es({comment:e,type:t,value:o},n,i,r)}};function eP(e,t){if(d(e))for(let s=0;s<e.items.length;++s){let n=e.items[s];if(!f(n)){if(u(n)){n.items.length>1&&t("Each pair must have its own sequence indicator");let e=n.items[0]||new eh(new D(null));if(n.commentBefore&&(e.key.commentBefore=e.key.commentBefore?`${n.commentBefore}
|
|
53
|
+
${e.key.commentBefore}`:n.commentBefore),n.comment){let t=e.value??e.key;t.comment=t.comment?`${n.comment}
|
|
54
|
+
${t.comment}`:n.comment}n=e}e.items[s]=f(n)?n:new eh(n)}}else t("Expected a sequence for this tag");return e}function eq(e,t,s){let{replacer:n}=s,i=new eb(e);i.tag="tag:yaml.org,2002:pairs";let r=0;if(t&&Symbol.iterator in Object(t))for(let e of t){let o,l;if("function"==typeof n&&(e=n.call(t,String(r++),e)),Array.isArray(e))if(2===e.length)o=e[0],l=e[1];else throw TypeError(`Expected [key, value] tuple: ${e}`);else if(e&&e instanceof Object){let t=Object.keys(e);if(1===t.length)l=e[o=t[0]];else throw TypeError(`Expected tuple with one key, not ${t.length} keys`)}else o=e;i.items.push(ef(o,l,s))}return i}var eU={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:eP,createNode:eq},eR=class e extends eb{constructor(){super(),this.add=eg.prototype.add.bind(this),this.delete=eg.prototype.delete.bind(this),this.get=eg.prototype.get.bind(this),this.has=eg.prototype.has.bind(this),this.set=eg.prototype.set.bind(this),this.tag=e.tag}toJSON(e,t){if(!t)return super.toJSON(e);let s=new Map;for(let e of(t?.onCreate&&t.onCreate(s),this.items)){let n,i;if(f(e)?(n=K(e.key,"",t),i=K(e.value,n,t)):n=K(e,"",t),s.has(n))throw Error("Ordered maps must not include duplicate keys");s.set(n,i)}return s}static from(e,t,s){let n=eq(e,t,s),i=new this;return i.items=n.items,i}};eR.tag="tag:yaml.org,2002:omap";var eF={collection:"seq",identify:e=>e instanceof Map,nodeClass:eR,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let s=eP(e,t),n=[];for(let{key:e}of s.items)h(e)&&(n.includes(e.value)?t(`Ordered maps must not include duplicate keys: ${e.value}`):n.push(e.value));return Object.assign(new eR,s)},createNode:(e,t,s)=>eR.from(e,t,s)};function eJ({value:e,source:t},s){return t&&(e?eV:eY).test.test(t)?t:e?s.options.trueStr:s.options.falseStr}var eV={identify:e=>!0===e,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new D(!0),stringify:eJ},eY={identify:e=>!1===e,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new D(!1),stringify:eJ},eW=e=>"bigint"==typeof e||Number.isInteger(e);function eG(e,t,s,{intAsBigInt:n}){let i=e[0];if(("-"===i||"+"===i)&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(s){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`}let t=BigInt(e);return"-"===i?BigInt(-1)*t:t}let r=parseInt(e,s);return"-"===i?-1*r:r}function eH(e,t,s){let{value:n}=e;if(eW(n)){let e=n.toString(t);return n<0?"-"+s+e.substr(1):s+e}return eN(e)}var eQ=class e extends eg{constructor(t){super(t),this.tag=e.tag}add(e){let t;t=f(e)?e:e&&"object"==typeof e&&"key"in e&&"value"in e&&null===e.value?new eh(e.key,null):new eh(e,null),em(this.items,t.key)||this.items.push(t)}get(e,t){let s=em(this.items,e);return!t&&f(s)?h(s.key)?s.key.value:s.key:s}set(e,t){if("boolean"!=typeof t)throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let s=em(this.items,e);s&&!t?this.items.splice(this.items.indexOf(s),1):!s&&t&&this.items.push(new eh(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,s);throw Error("Set items must all have null values")}static from(e,t,s){let{replacer:n}=s,i=new this(e);if(t&&Symbol.iterator in Object(t))for(let e of t)"function"==typeof n&&(e=n.call(t,e,e)),i.items.push(ef(e,null,s));return i}};eQ.tag="tag:yaml.org,2002:set";var eX={collection:"map",identify:e=>e instanceof Set,nodeClass:eQ,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,s)=>eQ.from(e,t,s),resolve(e,t){if(u(e)){if(e.hasAllNullValues(!0))return Object.assign(new eQ,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};function ez(e,t){let s=e[0],n="-"===s||"+"===s?e.substring(1):e,i=e=>t?BigInt(e):Number(e),r=n.replace(/_/g,"").split(":").reduce((e,t)=>e*i(60)+i(t),i(0));return"-"===s?i(-1)*r:r}function eZ(e){let{value:t}=e,s=e=>e;if("bigint"==typeof t)s=e=>BigInt(e);else if(isNaN(t)||!isFinite(t))return eN(e);let n="";t<0&&(n="-",t*=s(-1));let i=s(60),r=[t%i];return t<60?r.unshift(0):(t=(t-r[0])/i,r.unshift(t%i),t>=60&&(t=(t-r[0])/i,r.unshift(t))),n+r.map(e=>String(e).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var e0={identify:e=>"bigint"==typeof e||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:s})=>ez(e,s),stringify:eZ},e1={identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>ez(e,!1),stringify:eZ},e2={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(e2.test);if(!t)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,s,n,i,r,o,l]=t.map(Number),a=Date.UTC(s,n-1,i,r||0,o||0,l||0,t[7]?Number((t[7]+"00").substr(1,3)):0),c=t[8];if(c&&"Z"!==c){let e=ez(c,!1);30>Math.abs(e)&&(e*=60),a-=6e4*e}return new Date(a)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""},e9=[ey,ev,ew,eS,eV,eY,{identify:eW,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,s)=>eG(e,2,2,s),stringify:e=>eH(e,2,"0b")},{identify:eW,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,s)=>eG(e,1,8,s),stringify:e=>eH(e,8,"0")},{identify:eW,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,s)=>eG(e,0,10,s),stringify:eN},{identify:eW,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,s)=>eG(e,2,16,s),stringify:e=>eH(e,16,"0x")},{identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>"nan"===e.slice(-3).toLowerCase()?NaN:"-"===e[0]?-1/0:1/0,stringify:eN},{identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():eN(e)}},{identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new D(parseFloat(e.replace(/_/g,""))),s=e.indexOf(".");if(-1!==s){let n=e.substring(s+1).replace(/_/g,"");"0"===n[n.length-1]&&(t.minFractionDigits=n.length)}return t},stringify:eN},eD,eo,eF,eU,eX,e0,e1,e2],e8=new Map([["core",eK],["failsafe",[ey,ev,ew]],["json",eM],["yaml11",e9],["yaml-1.1",e9]]),e6={binary:eD,bool:eE,float:eT,floatExp:eA,floatNaN:eO,floatTime:e1,int:eC,intHex:e_,intOct:eL,intTime:e0,map:ey,merge:eo,null:eS,omap:eF,pairs:eU,seq:ev,set:eX,timestamp:e2},e4={"tag:yaml.org,2002:binary":eD,"tag:yaml.org,2002:merge":eo,"tag:yaml.org,2002:omap":eF,"tag:yaml.org,2002:pairs":eU,"tag:yaml.org,2002:set":eX,"tag:yaml.org,2002:timestamp":e2};function e3(e,t,s){let n=e8.get(t);if(n&&!e)return s&&!n.includes(eo)?n.concat(eo):n.slice();let i=n;if(!i)if(Array.isArray(e))i=[];else{let e=Array.from(e8.keys()).filter(e=>"yaml11"!==e).map(e=>JSON.stringify(e)).join(", ");throw Error(`Unknown schema "${t}"; use one of ${e} or define customTags array`)}if(Array.isArray(e))for(let t of e)i=i.concat(t);else"function"==typeof e&&(i=e(i.slice()));return s&&(i=i.concat(eo)),i.reduce((e,t)=>{let s="string"==typeof t?e6[t]:t;if(!s){let e=JSON.stringify(t),s=Object.keys(e6).map(e=>JSON.stringify(e)).join(", ");throw Error(`Unknown custom tag ${e}; use one of ${s}`)}return e.includes(s)||e.push(s),e},[])}var e7=(e,t)=>e.key<t.key?-1:+(e.key>t.key),e5=class e{constructor({compat:e,customTags:t,merge:s,resolveKnownTags:i,schema:l,sortMapEntries:a,toStringDefaults:c}){this.compat=Array.isArray(e)?e3(e,"compat"):e?e3(null,e):null,this.name="string"==typeof l&&l||"core",this.knownTags=i?e4:{},this.tags=e3(t,this.name,s),this.toStringOptions=c??null,Object.defineProperty(this,n,{value:ey}),Object.defineProperty(this,r,{value:ew}),Object.defineProperty(this,o,{value:ev}),this.sortMapEntries="function"==typeof a?a:!0===a?e7:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}},te=class e{constructor(e,t,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,l,{value:s});let i=null;"function"==typeof t||Array.isArray(t)?i=t:void 0===n&&t&&(n=t,t=void 0);let r=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},n);this.options=r;let{version:o}=r;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(o=this.directives.yaml.version)):this.directives=new x({version:o}),this.setSchema(o,n),this.contents=void 0===e?null:this.createNode(e,i,n)}clone(){let t=Object.create(e.prototype,{[l]:{value:s}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=m(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(e){tt(this.contents)&&this.contents.add(e)}addIn(e,t){tt(this.contents)&&this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let s=L(this);e.anchor=!t||s.has(t)?C(t||"a",s):t}return new j(e.anchor)}createNode(e,t,s){var n,i;let r,o,l,a;if("function"==typeof t)e=t.call({"":e},"",e),r=t;else if(Array.isArray(t)){let e=t.filter(e=>"number"==typeof e||e instanceof String||e instanceof Number).map(String);e.length>0&&(t=t.concat(e)),r=t}else void 0===s&&t&&(s=t,t=void 0);let{aliasDuplicateObjects:c,anchorPrefix:u,flow:f,keepUndefined:d,onTagObj:m,tag:g}=s??{},{onAnchor:y,setAnchors:b,sourceObjects:k}=(n=this,i=u||"a",o=[],l=new Map,a=null,{onAnchor:e=>{o.push(e),a??(a=L(n));let t=C(i,a);return a.add(t),t},setAnchors:()=>{for(let e of o){let t=l.get(e);if("object"==typeof t&&t.anchor&&(h(t.node)||p(t.node)))t.node.anchor=t.anchor;else{let t=Error("Failed to resolve repeated object (this should not happen)");throw t.source=e,t}}},sourceObjects:l}),v={aliasDuplicateObjects:c??!0,keepUndefined:d??!1,onAnchor:y,onTagObj:m,replacer:r,schema:this.schema,sourceObjects:k},w=P(e,g,v);return f&&p(w)&&(w.flow=!0),b(),w}createPair(e,t,s={}){return new eh(this.createNode(e,null,s),this.createNode(t,null,s))}delete(e){return!!tt(this.contents)&&this.contents.delete(e)}deleteIn(e){return U(e)?null!=this.contents&&(this.contents=null,!0):!!tt(this.contents)&&this.contents.deleteIn(e)}get(e,t){return p(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){return U(e)?!t&&h(this.contents)?this.contents.value:this.contents:p(this.contents)?this.contents.getIn(e,t):void 0}has(e){return!!p(this.contents)&&this.contents.has(e)}hasIn(e){return U(e)?void 0!==this.contents:!!p(this.contents)&&this.contents.hasIn(e)}set(e,t){null==this.contents?this.contents=q(this.schema,[e],t):tt(this.contents)&&this.contents.set(e,t)}setIn(e,t){U(e)?this.contents=t:null==this.contents?this.contents=q(this.schema,Array.from(e),t):tt(this.contents)&&this.contents.setIn(e,t)}setSchema(e,t={}){let s;switch("number"==typeof e&&(e=String(e)),e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new x({version:"1.1"}),s={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new x({version:e}),s={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{let t=JSON.stringify(e);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${t}`)}}if(t.schema instanceof Object)this.schema=t.schema;else if(s)this.schema=new e5(Object.assign(s,t));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:t,mapAsMap:s,maxAliasCount:n,onAnchor:i,reviver:r}={}){let o={anchors:new Map,doc:this,keep:!e,mapAsMap:!0===s,mapKeyWarned:!1,maxAliasCount:"number"==typeof n?n:100},l=K(this.contents,t??"",o);if("function"==typeof i)for(let{count:e,res:t}of o.anchors.values())i(t,e);return"function"==typeof r?_(r,{"":l},"",l):l}toJSON(e,t){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:t})}toString(e={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||0>=Number(e.indent))){let t=JSON.stringify(e.indent);throw Error(`"indent" option must be a positive integer, not ${t}`)}return function(e,t){let s=[],n=!0===t.directives;if(!1!==t.directives&&e.directives){let t=e.directives.toString(e);t?(s.push(t),n=!0):e.directives.docStart&&(n=!0)}n&&s.push("---");let i=en(e,t),{commentString:r}=i.options;if(e.commentBefore){1!==s.length&&s.unshift("");let t=r(e.commentBefore);s.unshift(J(t,""))}let o=!1,l=null;if(e.contents){if(m(e.contents)){if(e.contents.spaceBefore&&n&&s.push(""),e.contents.commentBefore){let t=r(e.contents.commentBefore);s.push(J(t,""))}i.forceBlockIndent=!!e.comment,l=e.contents.comment}let t=l?void 0:()=>o=!0,a=ei(e.contents,i,()=>l=null,t);l&&(a+=V(a,"",r(l))),("|"===a[0]||">"===a[0])&&"---"===s[s.length-1]?s[s.length-1]=`--- ${a}`:s.push(a)}else s.push(ei(e.contents,i));if(e.directives?.docEnd)if(e.comment){let t=r(e.comment);t.includes(`
|
|
55
|
+
`)?(s.push("..."),s.push(J(t,""))):s.push(`... ${t}`)}else s.push("...");else{let t=e.comment;t&&o&&(t=t.replace(/^\n+/,"")),t&&((!o||l)&&""!==s[s.length-1]&&s.push(""),s.push(J(r(t),"")))}return s.join(`
|
|
56
|
+
`)+`
|
|
57
|
+
`}(this,e)}};function tt(e){if(p(e))return!0;throw Error("Expected a YAML collection as document contents")}var ts=class extends Error{constructor(e,t,s,n){super(),this.name=e,this.code=s,this.message=n,this.pos=t}},tn=class extends ts{constructor(e,t,s){super("YAMLParseError",e,t,s)}},ti=class extends ts{constructor(e,t,s){super("YAMLWarning",e,t,s)}},tr=(e,t)=>s=>{if(-1===s.pos[0])return;s.linePos=s.pos.map(e=>t.linePos(e));let{line:n,col:i}=s.linePos[0];s.message+=` at line ${n}, column ${i}`;let r=i-1,o=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(r>=60&&o.length>80){let e=Math.min(r-39,o.length-79);o="…"+o.substring(e),r-=e-1}if(o.length>80&&(o=o.substring(0,79)+"…"),n>1&&/^ *$/.test(o.substring(0,r))){let s=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);s.length>80&&(s=s.substring(0,79)+`\u2026
|
|
58
|
+
`),o=s+o}if(/[^ ]/.test(o)){let e=1,t=s.linePos[1];t?.line===n&&t.col>i&&(e=Math.max(1,Math.min(t.col-i,80-r)));let l=" ".repeat(r)+"^".repeat(e);s.message+=`:
|
|
59
|
+
|
|
60
|
+
${o}
|
|
61
|
+
${l}
|
|
62
|
+
`}};function to(e,{flow:t,indicator:s,next:n,offset:i,onError:r,parentIndent:o,startOnNewline:l}){let a=!1,c=l,u=l,f="",h="",d=!1,p=!1,m=null,g=null,y=null,b=null,k=null,v=null,w=null;for(let i of e)switch(p&&("space"!==i.type&&"newline"!==i.type&&"comma"!==i.type&&r(i.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),p=!1),m&&(c&&"comment"!==i.type&&"newline"!==i.type&&r(m,"TAB_AS_INDENT","Tabs are not allowed as indentation"),m=null),i.type){case"space":!t&&("doc-start"!==s||n?.type!=="flow-collection")&&i.source.includes(" ")&&(m=i),u=!0;break;case"comment":{u||r(i,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let e=i.source.substring(1)||" ";f?f+=h+e:f=e,h="",c=!1;break}case"newline":c?f?f+=i.source:v&&"seq-item-ind"===s||(a=!0):h+=i.source,c=!0,d=!0,(g||y)&&(b=i),u=!0;break;case"anchor":g&&r(i,"MULTIPLE_ANCHORS","A node can have at most one anchor"),i.source.endsWith(":")&&r(i.offset+i.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),g=i,w??(w=i.offset),c=!1,u=!1,p=!0;break;case"tag":y&&r(i,"MULTIPLE_TAGS","A node can have at most one tag"),y=i,w??(w=i.offset),c=!1,u=!1,p=!0;break;case s:(g||y)&&r(i,"BAD_PROP_ORDER",`Anchors and tags must be after the ${i.source} indicator`),v&&r(i,"UNEXPECTED_TOKEN",`Unexpected ${i.source} in ${t??"collection"}`),v=i,c="seq-item-ind"===s||"explicit-key-ind"===s,u=!1;break;case"comma":if(t){k&&r(i,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),k=i,c=!1,u=!1;break}default:r(i,"UNEXPECTED_TOKEN",`Unexpected ${i.type} token`),c=!1,u=!1}let S=e[e.length-1],E=S?S.offset+S.source.length:i;return p&&n&&"space"!==n.type&&"newline"!==n.type&&"comma"!==n.type&&("scalar"!==n.type||""!==n.source)&&r(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),m&&(c&&m.indent<=o||n?.type==="block-map"||n?.type==="block-seq")&&r(m,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:k,found:v,spaceBefore:a,comment:f,hasNewline:d,anchor:g,tag:y,newlineAfterProp:b,end:E,start:w??E}}function tl(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(`
|
|
63
|
+
`))return!0;if(e.end){for(let t of e.end)if("newline"===t.type)return!0}return!1;case"flow-collection":for(let t of e.items){for(let e of t.start)if("newline"===e.type)return!0;if(t.sep){for(let e of t.sep)if("newline"===e.type)return!0}if(tl(t.key)||tl(t.value))return!0}return!1;default:return!0}}function ta(e,t,s){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&("]"===n.source||"}"===n.source)&&tl(t)&&s(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function tc(e,t,s){let{uniqueKeys:n}=e.options;if(!1===n)return!1;let i="function"==typeof n?n:(e,t)=>e===t||h(e)&&h(t)&&e.value===t.value;return t.some(e=>i(e.key,s))}var tu="All mapping items must start at the same column";function tf(e,t,s,n){let i="";if(e){let r=!1,o="";for(let l of e){let{source:e,type:a}=l;switch(a){case"space":r=!0;break;case"comment":{s&&!r&&n(l,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let t=e.substring(1)||" ";i?i+=o+t:i=t,o="";break}case"newline":i&&(o+=e),r=!0;break;default:n(l,"UNEXPECTED_TOKEN",`Unexpected ${a} at node end`)}t+=e.length}}return{comment:i,offset:t}}var th="Block collections are not allowed within flow collections",td=e=>e&&("block-map"===e.type||"block-seq"===e.type);function tp(e,t,s,n,i,r){let o="block-map"===s.type?function({composeNode:e,composeEmptyNode:t},s,n,i,r){let o=new(r?.nodeClass??eg)(s.schema);s.atRoot&&(s.atRoot=!1);let l=n.offset,a=null;for(let r of n.items){let{start:c,key:u,sep:f,value:h}=r,d=to(c,{indicator:"explicit-key-ind",next:u??f?.[0],offset:l,onError:i,parentIndent:n.indent,startOnNewline:!0}),p=!d.found;if(p){if(u&&("block-seq"===u.type?i(l,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in u&&u.indent!==n.indent&&i(l,"BAD_INDENT",tu)),!d.anchor&&!d.tag&&!f){a=d.end,d.comment&&(o.comment?o.comment+=`
|
|
64
|
+
`+d.comment:o.comment=d.comment);continue}(d.newlineAfterProp||tl(u))&&i(u??c[c.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else d.found?.indent!==n.indent&&i(l,"BAD_INDENT",tu);s.atKey=!0;let m=d.end,g=u?e(s,u,d,i):t(s,m,c,null,d,i);s.schema.compat&&ta(n.indent,u,i),s.atKey=!1,tc(s,o.items,g)&&i(m,"DUPLICATE_KEY","Map keys must be unique");let y=to(f??[],{indicator:"map-value-ind",next:h,offset:g.range[2],onError:i,parentIndent:n.indent,startOnNewline:!u||"block-scalar"===u.type});if(l=y.end,y.found){p&&(h?.type!=="block-map"||y.hasNewline||i(l,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),s.options.strict&&d.start<y.found.offset-1024&&i(g.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));let a=h?e(s,h,y,i):t(s,l,f,null,y,i);s.schema.compat&&ta(n.indent,h,i),l=a.range[2];let c=new eh(g,a);s.options.keepSourceTokens&&(c.srcToken=r),o.items.push(c)}else{p&&i(g.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),y.comment&&(g.comment?g.comment+=`
|
|
65
|
+
`+y.comment:g.comment=y.comment);let e=new eh(g);s.options.keepSourceTokens&&(e.srcToken=r),o.items.push(e)}}return a&&a<l&&i(a,"IMPOSSIBLE","Map comment with trailing content"),o.range=[n.offset,l,a??l],o}(e,t,s,n,r):"block-seq"===s.type?function({composeNode:e,composeEmptyNode:t},s,n,i,r){let o=new(r?.nodeClass??eb)(s.schema);s.atRoot&&(s.atRoot=!1),s.atKey&&(s.atKey=!1);let l=n.offset,a=null;for(let{start:r,value:c}of n.items){let u=to(r,{indicator:"seq-item-ind",next:c,offset:l,onError:i,parentIndent:n.indent,startOnNewline:!0});if(!u.found)if(u.anchor||u.tag||c)c?.type==="block-seq"?i(u.end,"BAD_INDENT","All sequence items must start at the same column"):i(l,"MISSING_CHAR","Sequence item without - indicator");else{a=u.end,u.comment&&(o.comment=u.comment);continue}let f=c?e(s,c,u,i):t(s,u.end,r,null,u,i);s.schema.compat&&ta(n.indent,c,i),l=f.range[2],o.items.push(f)}return o.range=[n.offset,l,a??l],o}(e,t,s,n,r):function({composeNode:e,composeEmptyNode:t},s,n,i,r){let o="{"===n.start.source,l=o?"flow map":"flow sequence",a=new(r?.nodeClass??(o?eg:eb))(s.schema);a.flow=!0;let c=s.atRoot;c&&(s.atRoot=!1),s.atKey&&(s.atKey=!1);let u=n.offset+n.start.source.length;for(let r=0;r<n.items.length;++r){let c=n.items[r],{start:h,key:d,sep:p,value:m}=c,g=to(h,{flow:l,indicator:"explicit-key-ind",next:d??p?.[0],offset:u,onError:i,parentIndent:n.indent,startOnNewline:!1});if(!g.found){if(!g.anchor&&!g.tag&&!p&&!m){0===r&&g.comma?i(g.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${l}`):r<n.items.length-1&&i(g.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${l}`),g.comment&&(a.comment?a.comment+=`
|
|
66
|
+
`+g.comment:a.comment=g.comment),u=g.end;continue}!o&&s.options.strict&&tl(d)&&i(d,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(0===r)g.comma&&i(g.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${l}`);else if(g.comma||i(g.start,"MISSING_CHAR",`Missing , between ${l} items`),g.comment){let e="";e:for(let t of h)switch(t.type){case"comma":case"space":break;case"comment":e=t.source.substring(1);break e;default:break e}if(e){let t=a.items[a.items.length-1];f(t)&&(t=t.value??t.key),t.comment?t.comment+=`
|
|
67
|
+
`+e:t.comment=e,g.comment=g.comment.substring(e.length+1)}}if(o||p||g.found){s.atKey=!0;let r=g.end,f=d?e(s,d,g,i):t(s,r,h,null,g,i);td(d)&&i(f.range,"BLOCK_IN_FLOW",th),s.atKey=!1;let y=to(p??[],{flow:l,indicator:"map-value-ind",next:m,offset:f.range[2],onError:i,parentIndent:n.indent,startOnNewline:!1});if(y.found){if(!o&&!g.found&&s.options.strict){if(p)for(let e of p){if(e===y.found)break;if("newline"===e.type){i(e,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}g.start<y.found.offset-1024&&i(y.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else m&&("source"in m&&m.source?.[0]===":"?i(m,"MISSING_CHAR",`Missing space after : in ${l}`):i(y.start,"MISSING_CHAR",`Missing , or : between ${l} items`));let b=m?e(s,m,y,i):y.found?t(s,y.end,p,null,y,i):null;b?td(m)&&i(b.range,"BLOCK_IN_FLOW",th):y.comment&&(f.comment?f.comment+=`
|
|
68
|
+
`+y.comment:f.comment=y.comment);let k=new eh(f,b);if(s.options.keepSourceTokens&&(k.srcToken=c),o)tc(s,a.items,f)&&i(r,"DUPLICATE_KEY","Map keys must be unique"),a.items.push(k);else{let e=new eg(s.schema);e.flow=!0,e.items.push(k);let t=(b??f).range;e.range=[f.range[0],t[1],t[2]],a.items.push(e)}u=b?b.range[2]:y.end}else{let n=m?e(s,m,g,i):t(s,g.end,p,null,g,i);a.items.push(n),u=n.range[2],td(m)&&i(n.range,"BLOCK_IN_FLOW",th)}}let h=o?"}":"]",[d,...p]=n.end,m=u;if(d?.source===h)m=d.offset+d.source.length;else{let e=l[0].toUpperCase()+l.substring(1),t=c?`${e} must end with a ${h}`:`${e} in block collection must be sufficiently indented and end with a ${h}`;i(u,c?"MISSING_CHAR":"BAD_INDENT",t),d&&1!==d.source.length&&p.unshift(d)}if(p.length>0){let e=tf(p,m,s.options.strict,i);e.comment&&(a.comment?a.comment+=`
|
|
69
|
+
`+e.comment:a.comment=e.comment),a.range=[n.offset,m,e.offset]}else a.range=[n.offset,m,m];return a}(e,t,s,n,r),l=o.constructor;return"!"===i||i===l.tagName?o.tag=l.tagName:i&&(o.tag=i),o}function tm(e){let t,s;try{t=RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
70
|
+
`,"sy"),s=RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
71
|
+
`,"sy")}catch{t=/(.*?)[ \t]*\r?\n/sy,s=/[ \t]*(.*?)[ \t]*\r?\n/sy}let n=t.exec(e);if(!n)return e;let i=n[1],r=" ",o=t.lastIndex;for(s.lastIndex=o;n=s.exec(e);)""===n[1]?r===`
|
|
72
|
+
`?i+=r:r=`
|
|
73
|
+
`:(i+=r+n[1],r=" "),o=s.lastIndex;let l=/[ \t]*(.*)/sy;return l.lastIndex=o,n=l.exec(e),i+r+(n?.[1]??"")}var tg={0:"\0",a:"\x07",b:"\b",e:"\x1b",f:"\f",n:`
|
|
74
|
+
`,r:"\r",t:" ",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function ty(e,t,s,n){let i,{value:o,type:l,comment:a,range:c}="block-scalar"===t.type?function(e,t,s){let n=t.offset,i=function({offset:e,props:t},s,n){if("block-scalar-header"!==t[0].type)return n(t[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:i}=t[0],r=i[0],o=0,l="",a=-1;for(let t=1;t<i.length;++t){let s=i[t];if(l||"-"!==s&&"+"!==s){let n=Number(s);!o&&n?o=n:-1===a&&(a=e+t)}else l=s}-1!==a&&n(a,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${i}`);let c=!1,u="",f=i.length;for(let e=1;e<t.length;++e){let i=t[e];switch(i.type){case"space":c=!0;case"newline":f+=i.source.length;break;case"comment":s&&!c&&n(i,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),f+=i.source.length,u=i.source.substring(1);break;case"error":n(i,"UNEXPECTED_TOKEN",i.message),f+=i.source.length;break;default:{let e=`Unexpected token in block scalar header: ${i.type}`;n(i,"UNEXPECTED_TOKEN",e);let t=i.source;t&&"string"==typeof t&&(f+=t.length)}}}return{mode:r,indent:o,chomp:l,comment:u,length:f}}(t,e.options.strict,s);if(!i)return{value:"",type:null,comment:"",range:[n,n,n]};let r=">"===i.mode?D.BLOCK_FOLDED:D.BLOCK_LITERAL,o=t.source?function(e){let t=e.split(/\n( *)/),s=t[0],n=s.match(/^( *)/),i=[n?.[1]?[n[1],s.slice(n[1].length)]:["",s]];for(let e=1;e<t.length;e+=2)i.push([t[e],t[e+1]]);return i}(t.source):[],l=o.length;for(let e=o.length-1;e>=0;--e){let t=o[e][1];if(""===t||"\r"===t)l=e;else break}if(0===l){let e="+"===i.chomp&&o.length>0?`
|
|
75
|
+
`.repeat(Math.max(1,o.length-1)):"",s=n+i.length;return t.source&&(s+=t.source.length),{value:e,type:r,comment:i.comment,range:[n,s,s]}}let a=t.indent+i.indent,c=t.offset+i.length,u=0;for(let t=0;t<l;++t){let[n,r]=o[t];if(""===r||"\r"===r)0===i.indent&&n.length>a&&(a=n.length);else{n.length<a&&s(c+n.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),0===i.indent&&(a=n.length),u=t,0!==a||e.atRoot||s(c,"BAD_INDENT","Block scalar values in collections must be indented");break}c+=n.length+r.length+1}for(let e=o.length-1;e>=l;--e)o[e][0].length>a&&(l=e+1);let f="",h="",d=!1;for(let e=0;e<u;++e)f+=o[e][0].slice(a)+`
|
|
76
|
+
`;for(let e=u;e<l;++e){let[t,n]=o[e];c+=t.length+n.length+1;let l="\r"===n[n.length-1];if(l&&(n=n.slice(0,-1)),n&&t.length<a){let e=`Block scalar lines must not be less indented than their ${i.indent?"explicit indentation indicator":"first line"}`;s(c-n.length-(l?2:1),"BAD_INDENT",e),t=""}r===D.BLOCK_LITERAL?(f+=h+t.slice(a)+n,h=`
|
|
77
|
+
`):t.length>a||" "===n[0]?(" "===h?h=`
|
|
78
|
+
`:d||h!==`
|
|
79
|
+
`||(h=`
|
|
80
|
+
|
|
81
|
+
`),f+=h+t.slice(a)+n,h=`
|
|
82
|
+
`,d=!0):""===n?h===`
|
|
83
|
+
`?f+=`
|
|
84
|
+
`:h=`
|
|
85
|
+
`:(f+=h+n,h=" ",d=!1)}switch(i.chomp){case"-":break;case"+":for(let e=l;e<o.length;++e)f+=`
|
|
86
|
+
`+o[e][0].slice(a);f[f.length-1]!==`
|
|
87
|
+
`&&(f+=`
|
|
88
|
+
`);break;default:f+=`
|
|
89
|
+
`}let p=n+i.length+t.source.length;return{value:f,type:r,comment:i.comment,range:[n,p,p]}}(e,t,n):function(e,t,s){let{offset:n,type:i,source:r,end:o}=e,l,a,c=(e,t,i)=>s(n+e,t,i);switch(i){case"scalar":l=D.PLAIN,a=function(e,t){let s="";switch(e[0]){case" ":s="a tab character";break;case",":s="flow indicator character ,";break;case"%":s="directive indicator character %";break;case"|":case">":s=`block scalar indicator ${e[0]}`;break;case"@":case"`":s=`reserved character ${e[0]}`}return s&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${s}`),tm(e)}(r,c);break;case"single-quoted-scalar":l=D.QUOTE_SINGLE,("'"!==r[r.length-1]||1===r.length)&&c(r.length,"MISSING_CHAR","Missing closing 'quote"),a=tm(r.slice(1,-1)).replace(/''/g,"'");break;case"double-quoted-scalar":l=D.QUOTE_DOUBLE,a=function(e,t){let s="";for(let n=1;n<e.length-1;++n){let i=e[n];if("\r"!==i||e[n+1]!==`
|
|
90
|
+
`)if(i===`
|
|
91
|
+
`){let{fold:t,offset:i}=function(e,t){let s="",n=e[t+1];for(;(" "===n||" "===n||n===`
|
|
92
|
+
`||"\r"===n)&&("\r"!==n||e[t+2]===`
|
|
93
|
+
`);)n===`
|
|
94
|
+
`&&(s+=`
|
|
95
|
+
`),t+=1,n=e[t+1];return s||(s=" "),{fold:s,offset:t}}(e,n);s+=t,n=i}else if("\\"===i){let i=e[++n],r=tg[i];if(r)s+=r;else if(i===`
|
|
96
|
+
`)for(i=e[n+1];" "===i||" "===i;)i=e[++n+1];else if("\r"===i&&e[n+1]===`
|
|
97
|
+
`)for(i=e[++n+1];" "===i||" "===i;)i=e[++n+1];else if("x"===i||"u"===i||"U"===i){let r="x"===i?2:"u"===i?4:8;s+=function(e,t,s,n){let i=e.substr(t,s),r=i.length===s&&/^[0-9a-fA-F]+$/.test(i)?parseInt(i,16):NaN;try{return String.fromCodePoint(r)}catch{let i=e.substr(t-2,s+2);return n(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${i}`),i}}(e,n+1,r,t),n+=r}else{let i=e.substr(n-1,2);t(n-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${i}`),s+=i}}else if(" "===i||" "===i){let t=n,r=e[n+1];for(;" "===r||" "===r;)r=e[++n+1];r!==`
|
|
98
|
+
`&&("\r"!==r||e[n+2]!==`
|
|
99
|
+
`)&&(s+=n>t?e.slice(t,n+1):i)}else s+=i}return('"'!==e[e.length-1]||1===e.length)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),s}(r,c);break;default:return s(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${i}`),{value:"",type:null,comment:"",range:[n,n+r.length,n+r.length]}}let u=n+r.length,f=tf(o,u,t,s);return{value:a,type:l,comment:f.comment,range:[n,u,f.offset]}}(t,e.options.strict,n),u=s?e.directives.tagName(s.source,e=>n(s,"TAG_RESOLVE_FAILED",e)):null,f;f=e.options.stringKeys&&e.atKey?e.schema[r]:u?function(e,t,s,n,i){if("!"===s)return e[r];let o=[];for(let t of e.tags)if(!t.collection&&t.tag===s)if(!t.default||!t.test)return t;else o.push(t);for(let e of o)if(e.test?.test(t))return e;let l=e.knownTags[s];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(i(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${s}`,"tag:yaml.org,2002:str"!==s),e[r])}(e.schema,o,u,s,n):"scalar"===t.type?function({atKey:e,directives:t,schema:s},n,i,o){let l=s.tags.find(t=>(!0===t.default||e&&"key"===t.default)&&t.test?.test(n))||s[r];if(s.compat){let e=s.compat.find(e=>e.default&&e.test?.test(n))??s[r];if(l.tag!==e.tag){let s=t.tagString(l.tag),n=t.tagString(e.tag);o(i,"TAG_RESOLVE_FAILED",`Value may be parsed as either ${s} or ${n}`,!0)}}return l}(e,o,t,n):e.schema[r];try{let r=f.resolve(o,e=>n(s??t,"TAG_RESOLVE_FAILED",e),e.options);i=h(r)?r:new D(r)}catch(e){n(s??t,"TAG_RESOLVE_FAILED",e instanceof Error?e.message:String(e)),i=new D(o)}return i.range=c,i.source=o,l&&(i.type=l),u&&(i.tag=u),f.format&&(i.format=f.format),a&&(i.comment=a),i}var tb={composeNode:tk,composeEmptyNode:tv};function tk(e,t,s,n){let i=e.atKey,{spaceBefore:r,comment:o,anchor:l,tag:a}=s,c,u=!0;switch(t.type){case"alias":c=function({options:e},{offset:t,source:s,end:n},i){let r=new j(s.substring(1));""===r.source&&i(t,"BAD_ALIAS","Alias cannot be an empty string"),r.source.endsWith(":")&&i(t+s.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let o=t+s.length,l=tf(n,o,e.strict,i);return r.range=[t,o,l.offset],l.comment&&(r.comment=l.comment),r}(e,t,n),(l||a)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":c=ty(e,t,a,n),l&&(c.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{c=function(e,t,s,n,i){let r=n.tag,o=r?t.directives.tagName(r.source,e=>i(r,"TAG_RESOLVE_FAILED",e)):null;if("block-seq"===s.type){let{anchor:e,newlineAfterProp:t}=n,s=e&&r?e.offset>r.offset?e:r:e??r;s&&(!t||t.offset<s.offset)&&i(s,"MISSING_CHAR","Missing newline after block sequence props")}let l="block-map"===s.type?"map":"block-seq"===s.type?"seq":"{"===s.start.source?"map":"seq";if(!r||!o||"!"===o||o===eg.tagName&&"map"===l||o===eb.tagName&&"seq"===l)return tp(e,t,s,i,o);let a=t.schema.tags.find(e=>e.tag===o&&e.collection===l);if(!a){let n=t.schema.knownTags[o];if(n?.collection!==l)return n?i(r,"BAD_COLLECTION_TYPE",`${n.tag} used for ${l} collection, but expects ${n.collection??"scalar"}`,!0):i(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${o}`,!0),tp(e,t,s,i,o);t.schema.tags.push(Object.assign({},n,{default:!1})),a=n}let c=tp(e,t,s,i,o,a),u=a.resolve?.(c,e=>i(r,"TAG_RESOLVE_FAILED",e),t.options)??c,f=m(u)?u:new D(u);return f.range=c.range,f.tag=o,a?.format&&(f.format=a.format),f}(tb,e,t,s,n),l&&(c.anchor=l.source.substring(1))}catch(e){n(t,"RESOURCE_EXHAUSTION",e instanceof Error?e.message:String(e))}break;default:{let e="error"===t.type?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",e),u=!1}}return c??(c=tv(e,t.offset,void 0,null,s,n)),l&&""===c.anchor&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),i&&e.options.stringKeys&&(!h(c)||"string"!=typeof c.value||c.tag&&"tag:yaml.org,2002:str"!==c.tag)&&n(a??t,"NON_STRING_KEY","With stringKeys, all keys must be strings"),r&&(c.spaceBefore=!0),o&&("scalar"===t.type&&""===t.source?c.comment=o:c.commentBefore=o),e.options.keepSourceTokens&&u&&(c.srcToken=t),c}function tv(e,t,s,n,{spaceBefore:i,comment:r,anchor:o,tag:l,end:a},c){let u=ty(e,{type:"scalar",offset:function(e,t,s){if(t){s??(s=t.length);for(let n=s-1;n>=0;--n){let s=t[n];switch(s.type){case"space":case"comment":case"newline":e-=s.source.length;continue}for(s=t[++n];s?.type==="space";)e+=s.source.length,s=t[++n];break}}return e}(t,s,n),indent:-1,source:""},l,c);return o&&(u.anchor=o.source.substring(1),""===u.anchor&&c(o,"BAD_ALIAS","Anchor cannot be an empty string")),i&&(u.spaceBefore=!0),r&&(u.comment=r,u.range[2]=a),u}function tw(e){if("number"==typeof e)return[e,e+1];if(Array.isArray(e))return 2===e.length?e:[e[0],e[1]];let{offset:t,source:s}=e;return[t,t+("string"==typeof s?s.length:1)]}function tS(e){let t="",s=!1,n=!1;for(let i=0;i<e.length;++i){let r=e[i];switch(r[0]){case"#":t+=(""===t?"":n?`
|
|
100
|
+
|
|
101
|
+
`:`
|
|
102
|
+
`)+(r.substring(1)||" "),s=!0,n=!1;break;case"%":e[i+1]?.[0]!=="#"&&(i+=1),s=!1;break;default:s||(n=!0),s=!1}}return{comment:t,afterEmptyLine:n}}var tE=class{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(e,t,s,n)=>{let i=tw(e);n?this.warnings.push(new ti(i,t,s)):this.errors.push(new tn(i,t,s))},this.directives=new x({version:e.version||"1.2"}),this.options=e}decorate(e,t){let{comment:s,afterEmptyLine:n}=tS(this.prelude);if(s){let i=e.contents;if(t)e.comment=e.comment?`${e.comment}
|
|
103
|
+
${s}`:s;else if(n||e.directives.docStart||!i)e.commentBefore=s;else if(p(i)&&!i.flow&&i.items.length>0){let e=i.items[0];f(e)&&(e=e.key);let t=e.commentBefore;e.commentBefore=t?`${s}
|
|
104
|
+
${t}`:s}else{let e=i.commentBefore;i.commentBefore=e?`${s}
|
|
105
|
+
${e}`:s}}if(t){for(let t=0;t<this.errors.length;++t)e.errors.push(this.errors[t]);for(let t=0;t<this.warnings.length;++t)e.warnings.push(this.warnings[t])}else e.errors=this.errors,e.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:tS(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,t=!1,s=-1){for(let t of e)yield*this.next(t);yield*this.end(t,s)}*next(e){switch(e.type){case"directive":this.directives.add(e.source,(t,s,n)=>{let i=tw(e);i[0]+=t,this.onError(i,"BAD_DIRECTIVE",s,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let t=function(e,t,{offset:s,start:n,value:i,end:r},o){let l=new te(void 0,Object.assign({_directives:t},e)),a={atKey:!1,atRoot:!0,directives:l.directives,options:l.options,schema:l.schema},c=to(n,{indicator:"doc-start",next:i??r?.[0],offset:s,onError:o,parentIndent:0,startOnNewline:!0});c.found&&(l.directives.docStart=!0,i&&("block-map"===i.type||"block-seq"===i.type)&&!c.hasNewline&&o(c.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),l.contents=i?tk(a,i,c,o):tv(a,c.end,n,null,c,o);let u=l.contents.range[2],f=tf(r,u,!1,o);return f.comment&&(l.comment=f.comment),l.range=[s,u,f.offset],l}(this.options,this.directives,e,this.onError);this.atDirectives&&!t.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(t,!1),this.doc&&(yield this.doc),this.doc=t,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{let t=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,s=new tn(tw(e),"UNEXPECTED_TOKEN",t);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){this.errors.push(new tn(tw(e),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let t=tf(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),t.comment){let e=this.doc.comment;this.doc.comment=e?`${e}
|
|
106
|
+
${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new tn(tw(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,t=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let e=new te(void 0,Object.assign({_directives:this.directives},this.options));this.atDirectives&&this.onError(t,"MISSING_CHAR","Missing directives-end indicator line"),e.range=[0,t,t],this.decorate(e,!1),yield e}}},tN=Symbol("break visit"),tO=Symbol("skip children"),tA=Symbol("remove item");function tT(e,t){"type"in e&&"document"===e.type&&(e={start:e.start,value:e.value}),function e(t,s,n){let i=n(s,t);if("symbol"==typeof i)return i;for(let r of["key","value"]){let o=s[r];if(o&&"items"in o){for(let s=0;s<o.items.length;++s){let i=e(Object.freeze(t.concat([[r,s]])),o.items[s],n);if("number"==typeof i)s=i-1;else{if(i===tN)return tN;i===tA&&(o.items.splice(s,1),s-=1)}}"function"==typeof i&&"key"===r&&(i=i(s,t))}}return"function"==typeof i?i(s,t):i}(Object.freeze([]),e,t)}function tI(e){switch(e){case void 0:case" ":case`
|
|
107
|
+
`:case"\r":case" ":return!0;default:return!1}}tT.BREAK=tN,tT.SKIP=tO,tT.REMOVE=tA,tT.itemAtPath=(e,t)=>{let s=e;for(let[e,n]of t){let t=s?.[e];if(!t||!("items"in t))return;s=t.items[n]}return s},tT.parentCollection=(e,t)=>{let s=tT.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],i=s?.[n];if(i&&"items"in i)return i;throw Error("Parent collection not found")};var tx=new Set("0123456789ABCDEFabcdef"),t$=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),tL=new Set(",[]{}"),tC=new Set(` ,[]{}
|
|
108
|
+
\r `),t_=e=>!e||tC.has(e),tK=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,t=!1){if(e){if("string"!=typeof e)throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!t;let s=this.next??"stream";for(;s&&(t||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let e=this.pos,t=this.buffer[e];for(;" "===t||" "===t;)t=this.buffer[++e];return!t||"#"===t||t===`
|
|
109
|
+
`||"\r"===t&&this.buffer[e+1]===`
|
|
110
|
+
`}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let t=this.buffer[e];if(this.indentNext>0){let s=0;for(;" "===t;)t=this.buffer[++s+e];if("\r"===t){let t=this.buffer[s+e+1];if(t===`
|
|
111
|
+
`||!t&&!this.atEnd)return e+s+1}return t!==`
|
|
112
|
+
`&&!(s>=this.indentNext)&&(t||this.atEnd)?-1:e+s}if("-"===t||"."===t){let t=this.buffer.substr(e,3);if(("---"===t||"..."===t)&&tI(this.buffer[e+3]))return -1}return e}getLine(){let e=this.lineEndPos;return("number"!=typeof e||-1!==e&&e<this.pos)&&(e=this.buffer.indexOf(`
|
|
113
|
+
`,this.pos),this.lineEndPos=e),-1===e?this.atEnd?this.buffer.substring(this.pos):null:("\r"===this.buffer[e-1]&&(e-=1),this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let e=this.getLine();if(null===e)return this.setNext("stream");if("\uFEFF"===e[0]&&(yield*this.pushCount(1),e=e.substring(1)),"%"===e[0]){let t=e.length,s=e.indexOf("#");for(;-1!==s;){let n=e[s-1];if(" "===n||" "===n){t=s-1;break}s=e.indexOf("#",s+1)}for(;;){let s=e[t-1];if(" "===s||" "===s)t-=1;else break}let n=(yield*this.pushCount(t))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-n),this.pushNewline(),"stream"}if(this.atLineEnd()){let t=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-t),yield*this.pushNewline(),"stream"}return yield"\x02",yield*this.parseLineStart()}*parseLineStart(){let e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if("-"===e||"."===e){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let e=this.peek(3);if(("---"===e||"..."===e)&&tI(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,"---"===e?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!tI(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[e,t]=this.peek(2);if(!t&&!this.atEnd)return this.setNext("block-start");if(("-"===e||"?"===e||":"===e)&&tI(t)){let e=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=e,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let e=this.getLine();if(null===e)return this.setNext("doc");let t=yield*this.pushIndicators();switch(e[t]){case"#":yield*this.pushCount(e.length-t);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(t_),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return t+=yield*this.parseBlockScalarHeader(),t+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-t),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,t,s=-1;do(e=yield*this.pushNewline())>0?(t=yield*this.pushSpaces(!1),this.indentValue=s=t):t=0,t+=yield*this.pushSpaces(!0);while(e+t>0)let n=this.getLine();if(null===n)return this.setNext("flow");if((-1!==s&&s<this.indentNext&&"#"!==n[0]||0===s&&(n.startsWith("---")||n.startsWith("..."))&&tI(n[3]))&&(s!==this.indentNext-1||1!==this.flowLevel||"]"!==n[0]&&"}"!==n[0]))return this.flowLevel=0,yield"\x18",yield*this.parseLineStart();let i=0;for(;","===n[i];)i+=yield*this.pushCount(1),i+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(n[i+=yield*this.pushIndicators()]){case void 0:return"flow";case"#":return yield*this.pushCount(n.length-i),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(t_),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let e=this.charAt(1);if(this.flowKey||tI(e)||","===e)return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let e=this.charAt(0),t=this.buffer.indexOf(e,this.pos+1);if("'"===e)for(;-1!==t&&"'"===this.buffer[t+1];)t=this.buffer.indexOf("'",t+2);else for(;-1!==t;){let e=0;for(;"\\"===this.buffer[t-1-e];)e+=1;if(e%2==0)break;t=this.buffer.indexOf('"',t+1)}let s=this.buffer.substring(0,t),n=s.indexOf(`
|
|
114
|
+
`,this.pos);if(-1!==n){for(;-1!==n;){let e=this.continueScalar(n+1);if(-1===e)break;n=s.indexOf(`
|
|
115
|
+
`,e)}-1!==n&&(t=n-("\r"===s[n-1]?2:1))}if(-1===t){if(!this.atEnd)return this.setNext("quoted-scalar");t=this.buffer.length}return yield*this.pushToIndex(t+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){let t=this.buffer[++e];if("+"===t)this.blockScalarKeep=!0;else if(t>"0"&&t<="9")this.blockScalarIndent=Number(t)-1;else if("-"!==t)break}return yield*this.pushUntil(e=>tI(e)||"#"===e)}*parseBlockScalar(){let e=this.pos-1,t=0,s;e:for(let n=this.pos;s=this.buffer[n];++n)switch(s){case" ":t+=1;break;case`
|
|
116
|
+
`:e=n,t=0;break;case"\r":{let e=this.buffer[n+1];if(!e&&!this.atEnd)return this.setNext("block-scalar");if(e===`
|
|
117
|
+
`)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(t>=this.indentNext){-1===this.blockScalarIndent?this.indentNext=t:this.indentNext=this.blockScalarIndent+(0===this.indentNext?1:this.indentNext);do{let t=this.continueScalar(e+1);if(-1===t)break;e=this.buffer.indexOf(`
|
|
118
|
+
`,t)}while(-1!==e)if(-1===e){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let n=e+1;for(s=this.buffer[n];" "===s;)s=this.buffer[++n];if(" "===s){for(;" "===s||" "===s||"\r"===s||s===`
|
|
119
|
+
`;)s=this.buffer[++n];e=n-1}else if(!this.blockScalarKeep)for(;;){let s=e-1,n=this.buffer[s];"\r"===n&&(n=this.buffer[--s]);let i=s;for(;" "===n;)n=this.buffer[--s];if(n===`
|
|
120
|
+
`&&s>=this.pos&&s+1+t>i)e=s;else break}return yield"\x1f",yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let e=this.flowLevel>0,t=this.pos-1,s=this.pos-1,n;for(;n=this.buffer[++s];)if(":"===n){let n=this.buffer[s+1];if(tI(n)||e&&tL.has(n))break;t=s}else if(tI(n)){let i=this.buffer[s+1];if("\r"===n&&(i===`
|
|
121
|
+
`?(s+=1,n=`
|
|
122
|
+
`,i=this.buffer[s+1]):t=s),"#"===i||e&&tL.has(i))break;if(n===`
|
|
123
|
+
`){let e=this.continueScalar(s+1);if(-1===e)break;s=Math.max(s,e-2)}}else{if(e&&tL.has(n))break;t=s}return n||this.atEnd?(yield"\x1f",yield*this.pushToIndex(t+1,!0),e?"flow":"doc"):this.setNext("plain-scalar")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,t){let s=this.buffer.slice(this.pos,e);return s?(yield s,this.pos+=s.length,s.length):(t&&(yield""),0)}*pushIndicators(){let e=0;for(;;){switch(this.charAt(0)){case"!":e+=yield*this.pushTag(),e+=yield*this.pushSpaces(!0);continue;case"&":e+=yield*this.pushUntil(t_),e+=yield*this.pushSpaces(!0);continue;case"-":case"?":case":":{let t=this.flowLevel>0,s=this.charAt(1);if(tI(s)||t&&tL.has(s)){t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,e+=yield*this.pushCount(1),e+=yield*this.pushSpaces(!0);continue}}}break}return e}*pushTag(){if("<"===this.charAt(1)){let e=this.pos+2,t=this.buffer[e];for(;!tI(t)&&">"!==t;)t=this.buffer[++e];return yield*this.pushToIndex(">"===t?e+1:e,!1)}{let e=this.pos+1,t=this.buffer[e];for(;t;)if(t$.has(t))t=this.buffer[++e];else if("%"===t&&tx.has(this.buffer[e+1])&&tx.has(this.buffer[e+2]))t=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){let e=this.buffer[this.pos];return e===`
|
|
124
|
+
`?yield*this.pushCount(1):"\r"===e&&this.charAt(1)===`
|
|
125
|
+
`?yield*this.pushCount(2):0}*pushSpaces(e){let t=this.pos-1,s;do s=this.buffer[++t];while(" "===s||e&&" "===s)let n=t-this.pos;return n>0&&(yield this.buffer.substr(this.pos,n),this.pos=t),n}*pushUntil(e){let t=this.pos,s=this.buffer[t];for(;!e(s);)s=this.buffer[++t];return yield*this.pushToIndex(t,!1)}},tB=class{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let t=0,s=this.lineStarts.length;for(;t<s;){let n=t+s>>1;this.lineStarts[n]<e?t=n+1:s=n}if(this.lineStarts[t]===e)return{line:t+1,col:1};if(0===t)return{line:0,col:e};let n=this.lineStarts[t-1];return{line:t,col:e-n+1}}}};function tj(e,t){for(let s=0;s<e.length;++s)if(e[s].type===t)return!0;return!1}function tM(e){for(let t=0;t<e.length;++t)switch(e[t].type){case"space":case"comment":case"newline":break;default:return t}return -1}function tD(e){switch(e?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function tP(e){switch(e.type){case"document":return e.start;case"block-map":{let t=e.items[e.items.length-1];return t.sep??t.start}case"block-seq":return e.items[e.items.length-1].start;default:return[]}}function tq(e){if(0===e.length)return[];let t=e.length;e:for(;--t>=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function tU(e,t){if(t.length<1e5)Array.prototype.push.apply(e,t);else for(let s=0;s<t.length;++s)e.push(t[s])}function tR(e){if("flow-seq-start"===e.start.type)for(let t of e.items)!t.sep||t.value||tj(t.start,"explicit-key-ind")||tj(t.sep,"map-value-ind")||(t.key&&(t.value=t.key),delete t.key,tD(t.value)?t.value.end?tU(t.value.end,t.sep):t.value.end=t.sep:tU(t.start,t.sep),delete t.sep)}var tF=class{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new tK,this.onNewLine=e}*parse(e,t=!1){for(let s of(this.onNewLine&&0===this.offset&&this.onNewLine(0),this.lexer.lex(e,t)))yield*this.next(s);t||(yield*this.end())}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=function(e){switch(e){case"\uFEFF":return"byte-order-mark";case"\x02":return"doc-mode";case"\x18":return"flow-error-end";case"\x1f":return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
126
|
+
`:case`\r
|
|
127
|
+
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}(e);if(t)if("scalar"===t)this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=t,yield*this.step(),t){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&" "===e[0]&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{let t=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:t,source:e}),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let e=this.peek(1);if("doc-end"===this.type&&e?.type!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){let t=e??this.stack.pop();if(t)if(0===this.stack.length)yield t;else{let e=this.peek(1);switch("block-scalar"===t.type?t.indent="indent"in e?e.indent:0:"flow-collection"===t.type&&"document"===e.type&&(t.indent=0),"flow-collection"===t.type&&tR(t),e.type){case"document":e.value=t;break;case"block-scalar":e.props.push(t);break;case"block-map":{let s=e.items[e.items.length-1];if(s.value){e.items.push({start:[],key:t,sep:[]}),this.onKeyLine=!0;return}if(s.sep)s.value=t;else{Object.assign(s,{key:t,sep:[]}),this.onKeyLine=!s.explicitKey;return}break}case"block-seq":{let s=e.items[e.items.length-1];s.value?e.items.push({start:[],value:t}):s.value=t;break}case"flow-collection":{let s=e.items[e.items.length-1];!s||s.value?e.items.push({start:[],key:t,sep:[]}):s.sep?s.value=t:Object.assign(s,{key:t,sep:[]});return}default:yield*this.pop(),yield*this.pop(t)}if(("document"===e.type||"block-map"===e.type||"block-seq"===e.type)&&("block-map"===t.type||"block-seq"===t.type)){let s=t.items[t.items.length-1];s&&!s.sep&&!s.value&&s.start.length>0&&-1===tM(s.start)&&(0===t.indent||s.start.every(e=>"comment"!==e.type||e.indent<t.indent))&&("document"===e.type?e.end=s.start:e.items.push({start:s.start}),t.items.splice(-1,1))}}else yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let e={type:"document",offset:this.offset,start:[]};"doc-start"===this.type&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case"doc-start":return void(-1!==tM(e.start)?(yield*this.pop(),yield*this.step()):e.start.push(this.sourceToken));case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}let t=this.startBlockValue(e);t?this.stack.push(t):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if("map-value-ind"===this.type){let t=tq(tP(this.peek(2))),s;e.end?((s=e.end).push(this.sourceToken),delete e.end):s=[this.sourceToken];let n={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:t,key:e,sep:s}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=n}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let e=this.source.indexOf(`
|
|
128
|
+
`)+1;for(;0!==e;)this.onNewLine(this.offset+e),e=this.source.indexOf(`
|
|
129
|
+
`,e)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,t.value){let s="end"in t.value?t.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){let s=e.items[e.items.length-2]?.value?.end;if(Array.isArray(s)){tU(s,t.start),s.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let s=!this.onKeyLine&&this.indent===e.indent,n=s&&(t.sep||t.explicitKey)&&"seq-item-ind"!==this.type,i=[];if(n&&t.sep&&!t.value){let s=[];for(let n=0;n<t.sep.length;++n){let i=t.sep[n];switch(i.type){case"newline":s.push(n);break;case"space":break;case"comment":i.indent>e.indent&&(s.length=0);break;default:s.length=0}}s.length>=2&&(i=t.sep.splice(s[1]))}switch(this.type){case"anchor":case"tag":n||t.value?(i.push(this.sourceToken),e.items.push({start:i}),this.onKeyLine=!0):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"explicit-key-ind":t.sep||t.explicitKey?n||t.value?(i.push(this.sourceToken),e.items.push({start:i,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}):(t.start.push(this.sourceToken),t.explicitKey=!0),this.onKeyLine=!0;return;case"map-value-ind":if(t.explicitKey)if(t.sep)if(t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(tj(t.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]});else if(tD(t.key)&&!tj(t.sep,"newline")){let e=tq(t.start),s=t.key,n=t.sep;n.push(this.sourceToken),delete t.key,delete t.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:e,key:s,sep:n}]})}else i.length>0?t.sep=t.sep.concat(i,this.sourceToken):t.sep.push(this.sourceToken);else if(tj(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let e=tq(t.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:e,key:null,sep:[this.sourceToken]}]})}else t.sep?t.value||n?e.items.push({start:i,key:null,sep:[this.sourceToken]}):tj(t.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let s=this.flowScalar(this.type);n||t.value?(e.items.push({start:i,key:s,sep:[]}),this.onKeyLine=!0):t.sep?this.stack.push(s):(Object.assign(t,{key:s,sep:[]}),this.onKeyLine=!0);return}default:{let n=this.startBlockValue(e);if(n){if("block-seq"===n.type){if(!t.explicitKey&&t.sep&&!tj(t.sep,"newline"))return void(yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source}))}else s&&e.items.push({start:i});this.stack.push(n);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(t.value){let s="end"in t.value?t.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(t.start,e.indent)){let s=e.items[e.items.length-2]?.value?.end;if(Array.isArray(s)){tU(s,t.start),s.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return;case"anchor":case"tag":if(t.value||this.indent<=e.indent)break;t.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;t.value||tj(t.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return}if(this.indent>e.indent){let t=this.startBlockValue(e);if(t)return void this.stack.push(t)}yield*this.pop(),yield*this.step()}*flowCollection(e){let t=e.items[e.items.length-1];if("flow-error-end"===this.type){let e;do yield*this.pop(),e=this.peek(1);while(e?.type==="flow-collection")}else if(0===e.end.length){switch(this.type){case"comma":case"explicit-key-ind":!t||t.sep?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return;case"map-value-ind":!t||t.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!t||t.value?e.items.push({start:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let s=this.flowScalar(this.type);!t||t.value?e.items.push({start:[],key:s,sep:[]}):t.sep?this.stack.push(s):Object.assign(t,{key:s,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let s=this.startBlockValue(e);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{let t=this.peek(2);if("block-map"!==t.type||("map-value-ind"!==this.type||t.indent!==e.indent)&&("newline"!==this.type||t.items[t.items.length-1].sep))if("map-value-ind"===this.type&&"flow-collection"!==t.type){let s=tq(tP(t));tR(e);let n=e.end.splice(1,e.end.length);n.push(this.sourceToken);let i={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:s,key:e,sep:n}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=i}else yield*this.lineEnd(e);else yield*this.pop(),yield*this.step()}}flowScalar(e){if(this.onNewLine){let e=this.source.indexOf(`
|
|
130
|
+
`)+1;for(;0!==e;)this.onNewLine(this.offset+e),e=this.source.indexOf(`
|
|
131
|
+
`,e)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let t=tq(tP(e));return t.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let t=tq(tP(e));return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){return"comment"===this.type&&!(this.indent<=t)&&e.every(e=>"newline"===e.type||"space"===e.type)}*documentEnd(e){"doc-mode"!==this.type&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],"newline"===this.type&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],"newline"===this.type&&(yield*this.pop())}}};function tJ(e,t={}){let s,{lineCounter:n,prettyErrors:i}=(s=!1!==t.prettyErrors,{lineCounter:t.lineCounter||s&&new tB||null,prettyErrors:s}),r=new tF(n?.addNewLine),o=new tE(t),l=null;for(let t of o.compose(r.parse(e),!0,e.length))if(l){if("silent"!==l.options.logLevel){l.errors.push(new tn(t.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}}else l=t;return i&&n&&(l.errors.forEach(tr(e,n)),l.warnings.forEach(tr(e,n))),l}var tV=/^[-+]?(?:0b[01]+|0x[0-9a-fA-F]+|0o[0-7]+|[0-9]+)$/,tY=/^(?:[-+]?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\.(?:inf|Inf|INF)|\.(?:nan|NaN|NAN))$/,tW={identify:e=>"number"==typeof e&&Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",test:tV,resolve:function(e,t){if(!tV.test(e))return t(`cannot resolve ${JSON.stringify(e)} as an integer`),NaN;let s=e,n="-"===s[0]?-1:1;("-"===s[0]||"+"===s[0])&&(s=s.slice(1));let i="b"===s[1]?2:"x"===s[1]?16:"o"===s[1]?8:10,r=n*Number.parseInt(10===i?s:s.slice(2),i);return Number.isFinite(r)?r:e},stringify:eN},tG={identify:e=>"number"==typeof e,default:!0,tag:"tag:yaml.org,2002:float",test:tY,resolve:function(e,t){if(!tY.test(e))return t(`cannot resolve ${JSON.stringify(e)} as a float`),NaN;let s=e.toLowerCase(),n="-"===s[0]?-1:1;if(("-"===s[0]||"+"===s[0])&&(s=s.slice(1)),".inf"===s)return 1/0*n;if(".nan"===s)return NaN;let i=n*Number.parseFloat(s);return Number.isFinite(i)?i:e},stringify:eN},tH={schema:"core",customTags:e=>[...e.filter(e=>"string"==typeof e||e.tag!==tW.tag&&e.tag!==tG.tag),tW,tG]},tQ=/(?:^|[[{,]|[:?-][ \t])[ \t]*$/,tX=/(?:^|[:?-][ \t])[ \t]*[|>][-+0-9]*[ \t]*(?:#.*)?$/;function tz(e){let t,s,n=tJ(e,{...tH,logLevel:"silent"}),i=n.errors.find(t=>!("MISSING_CHAR"===t.code&&t.message.startsWith("Comments must be separated from other tokens by white space characters"))||!!/[|>][-+0-9]*$/.test(e.slice(0,t.pos[0])))??n.warnings[0];if(i)return{ok:!1,message:i.message.split(`
|
|
132
|
+
`)[0]};if(t=!1,v(n,{Pair(s,n,i){let r=i[i.length-1],o=n.key,l=h(o)&&""===o.source&&o.range?.[0]===o.range?.[1]?o.range[0]:-1;if(l>=0&&u(r)&&!r.flow&&/^[ \t]*:/.test(e.slice(l))&&/^[ \t]*$/.test(e.slice(e.lastIndexOf(`
|
|
133
|
+
`,l-1)+1,l)))return t=!0,v.BREAK}}),t)return{ok:!1,message:"a block mapping entry has no key"};if(v(n,{Scalar(e,t){let n=t.tag===tW.tag?tV:t.tag===tG.tag?tY:void 0;n&&(!n.test(t.source??"")||"number"!=typeof t.value)&&(s=`cannot resolve ${JSON.stringify(t.source)} as ${t.tag}`)},Pair(e,t){h(t.key)&&null===t.key.value&&(t.key=new D("null"))}}),s)return{ok:!1,message:s};try{return{ok:!0,value:n.toJS()}}catch(e){return{ok:!1,message:e instanceof Error?e.message:String(e)}}}function tZ(e){let t=e.length>0&&!/[\n\r]$/.test(e)?`${e}
|
|
134
|
+
`:e,s=tz(t);if(s.ok)return s;let n=function(e){let t=e.split(`
|
|
135
|
+
`),s=e=>e.match(/^[ \t]*/)[0],n,i="",r,o=!1;for(let e=0;e<t.length;e++){let l=t[e];if(void 0!==r){if(""===l.trim()||s(l).length>r)continue;r=void 0}n&&(t[e]=i+l,o=!0);let a=0;for(;a<l.length;a++){let e=l[a];if('"'===n)"\\"===e?a++:'"'===e&&(n=void 0);else if("'"===n)"'"===e&&"'"===l[a+1]?a++:"'"===e&&(n=void 0);else{if("#"===e&&(0===a||/[ \t]/.test(l[a-1])))break;('"'===e||"'"===e)&&tQ.test(l.slice(0,a))&&(n=e,i=`${s(l)} `)}}!n&&tX.test(l)&&(r=s(l).length)}return o?t.join(`
|
|
136
|
+
`):void 0}(t),i=void 0===n?void 0:tz(n);return i?.ok?i:s}function t0(e){return function(e,t,s){let n,i=tJ(e,void 0);if(!i)return null;if(i.warnings.forEach(e=>er(i.options.logLevel,e)),i.errors.length>0){if("silent"!==i.options.logLevel)throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:n},void 0))}(e)}function t1(e){let t=tJ(e,{keepSourceTokens:!0}),s=[];if(!u(t.contents))return s;for(let e of t.contents.items){if(!h(e.key)||!e.key.range||!e.value||!("range"in e.value)||!e.value.range)continue;let t=e.srcToken?.sep?.find(e=>"anchor"===e.type||"tag"===e.type);s.push({name:String(e.key.value),keyStart:e.key.range[0],keyEnd:e.key.range[1],valueStart:t?.offset??e.value.range[0],valueEnd:e.value.range[1]})}return s}function t2(e){let t=new te(e,tH);return v(t,{Scalar(e,t){"string"==typeof t.value&&/(?:^|\n)[ \t]+\r?(?:\n|$)/.test(t.value)&&(t.type=D.QUOTE_DOUBLE)}}),t.toString()}export{t0 as parseDirectiveYaml,tZ as parseMermaidYaml,t1 as readYamlMappingRanges,t2 as stringifyMermaidYaml};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as e,b as t,c as i,d as n,e as r,f as o,g as a,h as s}from"./chunk-42DXZ5C6.js";import{b as l,e as d,f as u}from"./chunk-7TVYPTDW.js";import{g as c}from"./chunk-OXQWRSBM.js";import"./chunk-QWX77U7G.js";import{A as f,B as h,C as p,D as y,E as m,F as g,G as x,H as b,I as v,J as k,K as w,L as M,M as O,N as N,O as S,P as $,Q as j,R as F,S as z,T as E,U as C,V as P,W as I,X as W,Y as B,Z as L,aa as T,b as D,c as A,ca as R,d as _,e as q,ea as U,f as G,fa as V,ga as K,h as H,ha as J,ia as X,ka as Y,l as Z,n as Q,na as ee,pa as et,q as ei,qa as en,ra as er,t as eo,u as ea,v as es,w as el,x as ed,y as eu}from"./chunk-RLJEI7YN.js";import{$ as ec,A as ef,C as eh,D as ep,G as ey,H as em,S as eg,T as ex,U as eb,V as ev,W as ek,Z as ew,aa as eM,ba as eO,ca as eN,d as eS,da as e$,e as ej,ea as eF,f as ez,fa as eE,ga as eC,p as eP,s as eI,sa as eW,ta as eB,u as eL,ua as eT,x as eD}from"./chunk-RZ6XK5CD.js";import"./chunk-EVPSMEKN.js";function eA(e,t){return e.match(RegExp(`\\b${t}\\s*=\\s*(["'])(.*?)\\1`,"i"))?.[2]}function eR(e,t){return eA(e,"style")?.match(RegExp(`(?:^|;)\\s*${t}\\s*:\\s*([^;]+)`,"i"))?.[1]?.trim()??eA(e,t)}function e_(e,t,i){let n=Number.parseFloat(eR(e,t)??"");return Number.isFinite(n)?n:i}function eq(e,t){let i=eR(e,"font-weight")?.trim().toLowerCase();if(void 0===i)return t;if("normal"===i)return 400;if("bold"===i)return 700;if("bolder"===i)return t<350?400:t<550?700:900;if("lighter"===i)return t<550?100:t<750?400:700;let n=Number.parseFloat(i);return Number.isFinite(n)?n:t}function eU(e){return e.children.filter(e=>"element"===e.kind)}function eG(e,t){var i;let n="b"===t.name||"strong"===t.name,r=e.mono||(i=t.attrs,/\bclass\s*=\s*(["'])[^"']*\bmono\b/i.test(i)||/(?:^|[,\s])monospace(?:[,\s]|$)/i.test(eR(i,"font-family")??""));return{size:e_(t.attrs,"font-size",e.size),weight:n?Math.max(700,eq(t.attrs,e.weight)):eq(t.attrs,e.weight),letterSpacing:e_(t.attrs,"letter-spacing",e.letterSpacing),mono:r,fontFamily:eR(t.attrs,"font-family")??(r&&!e.mono?void 0:e.fontFamily),fontStyle:"i"===t.name||"em"===t.name||"italic"===eR(t.attrs,"font-style")?"italic":"normal"===eR(t.attrs,"font-style")?"normal":e.fontStyle}}function eV(e,t){return RegExp(`\\b${t}\\s*=`,"i").test(e)}function eK(e){return"tspan"===e.name&&["x","y","dx","dy"].some(t=>eV(e.attrs,t))}var eH=new WeakMap,eJ=0,eX=new WeakMap,eY=0,eZ=new WeakMap,eQ=new eI(128,8388608),e0=new eI(128,0x1000000,e=>{eQ.delete(e)}),e1=new WeakSet;function e2(e,t){let i=eH.get(e);return void 0===i&&(i=eJ++,eH.set(e,i)),`${i}:${t}`}function e5(e){let t=structuredClone(e),i=new WeakSet,n=(e,t)=>{if(!(null===e||"object"!=typeof e||null===t||"object"!=typeof t||i.has(e)))if(i.add(e),ei(e,t),e instanceof Map&&t instanceof Map){let i=t.entries();for(let[t,r]of e){let[e,o]=i.next().value;n(t,e),n(r,o)}}else if(e instanceof Set&&t instanceof Set){let i=t.values();for(let t of e)n(t,i.next().value)}else for(let i of Object.keys(e))n(e[i],t[i])};return n(e,t),t}function e3(e,t,i,n,r){let o={result:i,...n?{projection:n}:{}},a=2*t.length+ev([o,A(i)],0x1000000)+1024;if(a>0x1000000)return void ej("positioned-layout","store-skipped","weight-limit");let s=o;if(r){try{s=e5(o)}catch(e){if(e instanceof Error&&"DataCloneError"===e.name)return void ej("positioned-layout","store-skipped","uncloneable");throw e}_(i,s.result)}r||eX.set(s,{locallyRepeated:!1}),e0.set(e2(e,t),s,a),e1.add(s.result)}function e8(e,t,i){let n=eZ.get(t);if(!i)return void eZ.delete(t);if(!n||n.request!==e||e0.get(n.key)!==n.snapshot)return;let r=++eY,o=eX.get(n.snapshot);o.locallyRepeated=o.lastUse===r-1,o.lastUse=r;let a=eQ.get(n.key);return a?.owner===n.snapshot?a.drawing:void 0}var e4=new Set(["rectangle","rounded","note","service","diamond","stadium","hexagon","cylinder"]),e6={journey:"x",sequence:"none",xychart:"center",quadrant:"center"};function e7(e){return e.role?"box"===e.role:e4.has(e.shape)}function e9(e,t,i,n){return Number.isFinite(e)&&Number.isFinite(t)&&Number.isFinite(i)&&Number.isFinite(n)&&i>=0&&n>=0}function te(e,t){let i=Math.min(e.x+e.w,t.x+t.w)-Math.max(e.x,t.x),n=Math.min(e.y+e.h,t.y+t.h)-Math.max(e.y,t.y);return i>.5&&n>.5}function tt(e,t,i="both"){let n="center"===i?t.x+t.w/2>=e.x-.5&&t.x+t.w/2<=e.x+e.w+.5:t.x>=e.x-.5&&t.x+t.w<=e.x+e.w+.5,r="x"===i||("center"===i?t.y+t.h/2>=e.y-.5&&t.y+t.h/2<=e.y+e.h+.5:t.y>=e.y-.5&&t.y+t.h<=e.y+e.h+.5);return n&&r}function ti(e,t,i){let n=t,r=new Set;for(;n?.parentId&&!r.has(n.id);){if(r.add(n.id),n.parentId===e.id)return!0;n=i.get(n.parentId)}return!1}var tn=new WeakMap,tr=new WeakMap,to=new WeakSet;function ta(e,i,n){if(D(e,{...i,role:n}),"agentic"!==i.requested||"elk"!==i.selected||to.has(e))return;to.add(e);let r={code:"INEFFECTIVE_CONFIG",field:"graphLayout.backend",message:`Agentic graph layout declined this input; using the requested ELK fallback: ${i.reason??"candidate rejected"}`};(t(e).onConfigDiagnostic??(e=>console.warn(e.message)))(r)}var ts=new Set(["media","supports","container","layer","document"]),tl=new WeakSet,td=new WeakMap,tu=new WeakMap;function tc(e){return tu.get(e)??td.get(e)}var tf=new WeakMap,th=new WeakSet,tp=Object.freeze([1,0,0,1,0,0]);function ty(e){return tf.get(e)}function tm(e){return[e.x0,e.x1,e.y0,e.y1].every(Number.isFinite)&&e.x0<=e.x1&&e.y0<=e.y1}function tg(e){return"none"===e||"transparent"===e||!!e&&eP(e)?.[3]===0}function tx(e){if(void 0===e)return 1;let t=e.trim();if(!/^[+-]?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?$/.test(t))return NaN;let i=Number(t);return Number.isFinite(i)?Math.max(0,Math.min(1,i)):NaN}function tb(e,t){return 0===e||0===t?0:e*t}function tv(e,t){return e&&0!==Number(t.opacity??1)&&(!tg(t.fill)||void 0!==t.stroke&&!tg(t.stroke)&&0!==Number.parseFloat(t.strokeWidth??"1"))}function tk(e,t){return e?e.lineBlocks.some(e=>e.runs.some(e=>""!==e.text.trim())):""!==t.trim()}var tw=new WeakSet,tM=Object.freeze([]);function tO(e){return Object.freeze({id:e.id,role:e.role})}function tN(e,t,i=!1){let n=[],r={measured:0,unmeasured:0,nonPainting:0,preparedText:0,fallbackText:0};return{leaf:(e,o,a,s,l,d,u,c=void 0===a)=>{let f=u??e.owner??s.at(-1)??e.identity??{id:e.id,role:e.role},h=i?function(e){switch(e.kind){case"shape":return Object.freeze({kind:e.kind,geometry:e.geometry,paint:e.paint,...e.childPaints?{childPaints:e.childPaints}:{},...e.transform?{transform:e.transform}:{}});case"connector":return Object.freeze({kind:e.kind,lineStyle:e.lineStyle,endpoints:e.endpoints,route:e.route,stroke:e.stroke,markers:e.markers,...e.transform?{transform:e.transform}:{}});case"text":return Object.freeze({kind:e.kind,paint:e.paint});case"document":return Object.freeze({kind:e.kind})}}(e):void 0,p=0===d||("document"===e.kind?"content"!==e.element||void 0!==e.nonPaint||""===O(e).trim():"text"===e.kind?!tv(tk(e.block,e.text),e.paint):"connector"===e.kind?"invisible"===e.lineStyle:"shape"===e.kind&&!e.conditionalPaint&&[e.paint,...e.childPaints??[]].every(e=>void 0!==e.opacity&&0===Number(e.opacity)||tg(e.fill)&&(void 0===e.stroke||tg(e.stroke)))),[y,x,b,k,w,M]=a??eo,N=a||e.transform?{kind:"matrix",a:y,b:x,c:b,d:k,e:w,f:M}:void 0,S=a||e.transform?Object.freeze(es(a??eo,ea(e.transform))):tp,$=p?void 0:v(e,N),j=!!$&&tm($),F=Object.freeze({key:o,id:e.id,kind:e.kind,role:e.role,owner:i&&s.includes(f)?f:tO(f),ancestors:s,order:n.length,coverage:p?"non-painting":j?"measured":"unmeasured",...l||"conditional"===e.visibility||!Number.isFinite(d)?{visibility:"conditional"}:{},...d<1?{groupOpacity:d}:{},...j?{bounds:Object.freeze($)}:{},...!p&&!j?{reason:"document"===e.kind?"opaque-visible-content":"missing-paint-geometry"}:{},..."text"===e.kind?{text:Object.freeze({measurement:e.measurement??"unavailable",...t?.(e.text,e.block,!0)})}:{}});h?tu.set(F,h):td.set(F,e),tf.set(F,S),c&&!e.transform&&th.add(F),n.push(F),p?r.nonPainting++:j?r.measured++:r.unmeasured++,"text"===e.kind&&!p&&("prepared"===e.measurement?r.preparedText++:r.fallbackText++),"connector"===e.kind&&e.labels.forEach((i,a)=>{if(i.visual?.kind!=="inline")return;let s={...i.paint,...i.halo?{stroke:i.halo.color??"var(--bg)",strokeWidth:String(i.halo.width)}:{}},l=0===d||!tv(tk(i.block,i.text),s),u=l?void 0:m(i),[c,f,p,y,x,b]=S,v=u&&g(u,{kind:"matrix",a:c,b:f,c:p,d:y,e:x,f:b}),k=!!v&&tm(v),w=Object.freeze({key:`${o}.label.${a}`,id:i.id??`${e.id}:label:${a}`,kind:"text",role:"label",owner:F.owner,ancestors:F.ancestors,order:n.length,coverage:l?"non-painting":k?"measured":"unmeasured",...F.visibility?{visibility:F.visibility}:{},...d<1?{groupOpacity:d}:{},...k?{bounds:Object.freeze(v)}:l?{}:{reason:"missing-inline-label-geometry"},text:Object.freeze({measurement:i.block?"prepared":"fallback",...t?.(i.text,i.block)})});h?tu.set(w,h):td.set(w,e),tf.set(w,S),n.push(w),l?r.nonPainting++:(k?r.measured++:r.unmeasured++,i.block?r.preparedText++:r.fallbackText++)})},finish:()=>Object.freeze({version:1,family:e.family,bounds:Object.freeze({width:e.width,height:e.height}),primitives:Object.freeze(n),coverage:Object.freeze(r)})}}tw.add(tM);var tS=new WeakSet,t$=new WeakMap;function tj(e,t,i=X()){let n=e.id.startsWith("family:"),r=Y(t,n?"external":"internal",i);if(!n&&!i)return r;let o=[];n&&r.family!==e.id&&o.push({code:"SCENE_DOCUMENT",path:"scene.family",message:`external family "${e.id}" emitted a document owned by "${r.family}"`});let a=new Set(e.semanticRoles),s=new Set(e.semanticChannels),l=new Map(e.scenePrimitiveEvidence.map(e=>[`${e.role}\0${e.primitive}`,e]));if(function e(t,i,n="scene.parts"){t.forEach((t,r)=>{let o=`${n}[${r}]`;i(t,o),"group"===t.kind&&e(t.children.map(e=>e.node),i,`${o}.children`)})}(r.parts,(e,t)=>{if(!a.has(e.role))return void o.push({code:"SCENE_PRIMITIVE_CLAIM",path:`${t}.role`,message:`emitted undeclared role "${e.role}"`});for(let i of Object.keys(e.channels??{}))s.has(i)||o.push({code:"SCENE_CHANNEL_CLAIM",path:`${t}.channels.${i}`,message:`emitted undeclared semantic channel "${i}"`});for(let i of T(e)){let n=l.get(`${e.role}\0${i}`);n&&"applicable"===n.applicability&&"unsupported"!==n.realization||o.push({code:"SCENE_PRIMITIVE_CLAIM",path:t,message:`emitted undeclared ${e.role}/${i} primitive`})}}),o.length>0)throw new V(Object.freeze(o));return r}var tF=(e,t,i=0)=>e.x0<=t.x0+i&&e.y0<=t.y0+i&&e.x1>=t.x1-i&&e.y1>=t.y1-i,tz=(e,t)=>e.x0<t.x1&&t.x0<e.x1&&e.y0<t.y1&&t.y0<e.y1,tE=e=>({x0:e.x,y0:e.y,x1:e.x+e.w,y1:e.y+e.h});function tC(e,t){let i=tx(t.opacity),n=tx(t.fillOpacity),r=t.fill?eP(t.fill):null;return"line"!==e.kind&&"none"!==t.fill&&"transparent"!==t.fill&&!(i<1||n<1||r&&r[3]<1)}function tP(e,t){return 0!==tx(t.opacity)&&0!==tx(t.strokeOpacity)&&0!==b(t,["polygon","polyline","path","compound"].includes(e.kind))}function tI(e,t,i,n,r=0,o=()=>!0,a,s,l=!1){let d=tc(e.primitive);if(d?.kind!=="shape")return!1;let u=ed(ty(e.primitive));if(!u)return!1;let{geometry:c,paint:f,childPaints:h}=d,p=(n??[{x:t.x0,y:t.y0},{x:t.x0,y:t.y1},{x:t.x1,y:t.y0},{x:t.x1,y:t.y1}]).map(e=>el(e,u)),[y,m,g,x]=u,v=(Math.hypot(y+x,m-g)+Math.hypot(y-x,m+g))/2,k=r*v,w=s?el(s,u):void 0,M=!1,O,N=[],S=(n,r=e.borderWidth??0,a=f,s=!0,y=e.bounds,m)=>{if(!o())return!1;if(!m&&N.includes(n)||m&&(m.x<y.x0||m.x>y.x1||m.y<y.y0||m.y>y.y1))return!0;let g=m?[el(m,u)]:p,x=m?0:k,$=m?-1e-8:1e-8*!l,j=m?-1e-8:0;if("compound"===n.kind)return n===c&&n.children.length<=64&&n.children.every((t,i)=>"compound"!==t.kind&&S(t,e.partBorderWidths?.[i]??0,h?.[i]??f,e.partFilled?.[i]??!0,e.partBounds?.[i]??e.bounds,m));if(!s&&(0===tx(a.opacity)||0===tx(a.strokeOpacity)||0===b(a,"line"!==n.kind)))return!0;if("line"===n.kind){if(!m&&O&&w&&["butt","round","square"].includes(a.strokeLinecap??"butt")){if(!o())return!1;let e=n.x2-n.x1,t=n.y2-n.y1,i=w.x===n.x1&&w.y===n.y1?1:w.x===n.x2&&w.y===n.y2?-1:0;if(i&&Number.isFinite(e)&&Number.isFinite(t)&&(0!==e||0!==t)&&p.every(n=>{if(!o())return!1;let r=((n.x-w.x)*e+(n.y-w.y)*t)*i;return Number.isFinite(r)&&r<=0}))return S(n,r,a,s,y,O)}let e=b(a,!1);if(void 0===e)return!1;if(0===e)return!0;let t=e*("non-scaling-stroke"===a.vectorEffect?v:1);return g.every(e=>o()&&e.x+x<=Math.min(n.x1,n.x2)-t+j)||g.every(e=>o()&&e.x-x>=Math.max(n.x1,n.x2)+t-j)||g.every(e=>o()&&e.y+x<=Math.min(n.y1,n.y2)-t+j)||g.every(e=>o()&&e.y-x>=Math.max(n.y1,n.y2)+t-j)}let F=b(a,["polygon","polyline","path"].includes(n.kind));if(void 0===F)return!1;if(m)x=F*("non-scaling-stroke"===a.vectorEffect?v:1);else if(F>0&&0!==tx(a.opacity)&&0!==tx(a.strokeOpacity)&&!(i&&M&&r>0)&&tz(y,t))return!1;let z=!m&&i&&M?Math.max(0,r/2):0;if("rect"===n.kind){let t=Math.min(n.width/2,n.rx??n.ry??0),i=Math.min(n.height/2,n.ry??n.rx??0);if(t>0&&i>0){var E;let s=!d.transform&&(E=e.primitive,th.has(E))&&u.every((e,t)=>e===[1,0,0,1,0,0][t])&&Number(ex(r))===r&&Number.parseFloat(eb("stroke-width",a.strokeWidth??"1"))===Number.parseFloat(a.strokeWidth??"1"),l=s&&Number(ex(n.x))===n.x&&Number(ex(n.width))===n.width,c=s&&Number(ex(n.y))===n.y&&Number(ex(n.height))===n.height;if(l&&(g.every(e=>o()&&e.x+x<=n.x+z+$)||g.every(e=>o()&&e.x-x>=n.x+n.width-z-$))||c&&(g.every(e=>o()&&e.y+x<=n.y+z+$)||g.every(e=>o()&&e.y-x>=n.y+n.height-z-$)))return!0;let f=n.x+n.width/2,h=n.y+n.height/2,p=n.width/2-t,y=n.height/2-i;for(let e of g){if(!o())break;let n=e.x-f,r=e.y-h,a=(n-Math.max(-p,Math.min(p,n)))/(t*t),s=(r-Math.max(-y,Math.min(y,r)))/(i*i),l=Math.hypot(a,s);if(!l)continue;let d=a/l,u=s/l,c=p*Math.abs(d)+y*Math.abs(u)+Math.hypot(t*d,i*u)-z+x;if(g.every(e=>o()&&(e.x-f)*d+(e.y-h)*u>=c-$))return!0}return!1}}if("ellipse"===n.kind||"circle"===n.kind){let e="circle"===n.kind?n.r:n.rx,t="circle"===n.kind?n.r:n.ry;if(!(e>0&&t>0))return!1;if("circle"===n.kind){let t=Math.max(Math.min(...g.map(e=>e.x)),Math.min(n.cx,Math.max(...g.map(e=>e.x)))),i=Math.max(Math.min(...g.map(e=>e.y)),Math.min(n.cy,Math.max(...g.map(e=>e.y))));if(Math.hypot(t-n.cx,i-n.cy)>=e-z+x-$)return!0}for(let i of g){if(!o())break;let r=(i.x-n.cx)/(e*e),a=(i.y-n.cy)/(t*t),s=Math.hypot(r,a);if(!s)continue;let l=r/s,d=a/s,u=Math.hypot(e*l,t*d)-z+x;if(g.every(e=>o()&&(e.x-n.cx)*l+(e.y-n.cy)*d>=u-$))return!0}return!1}let C="rect"===n.kind?[{x:n.x,y:n.y},{x:n.x+n.width,y:n.y},{x:n.x+n.width,y:n.y+n.height},{x:n.x,y:n.y+n.height}]:"polygon"===n.kind?n.points:void 0;if(!C||C.length<3||C.length>64)return!1;let P=(e,t,i)=>(t.x-e.x)*(i.y-e.y)-(t.y-e.y)*(i.x-e.x),I=Math.sign(C.reduce((e,t,i)=>{let n=C[(i+1)%C.length];return e+t.x*n.y-n.x*t.y},0));return!!I&&!!C.every((e,t)=>C.every(i=>o()&&I*P(e,C[(t+1)%C.length],i)>=-(m||l?0:1e-8)))&&C.some((e,t)=>{let i=C[(t+1)%C.length],n=Math.hypot(i.x-e.x,i.y-e.y);return n>0&&g.every(t=>o()&&I*P(e,i,t)<=(z-x+$)*n)})};if(i&&(O=a?.find(t=>o()&&S(c,e.borderWidth??0,f,!0,e.bounds,t))),(M=void 0!==O)&&w&&"compound"===c.kind&&u.every((e,t)=>e===[1,0,0,1,0,0][t])){let t=c.children[0];if(o()&&t?.kind==="rect"&&!t.rx&&!t.ry&&e.partFilled?.[0]&&0===b(h?.[0]??f,!1)){let i=w.x===t.x?1:2*(w.x===t.x+t.width),n=c.children[i],r=e.partOwnBorderWidths?.[i]??0;i&&n?.kind==="line"&&r>0&&n.x1===n.x2&&n.x1===w.x&&Math.min(n.y1,n.y2)===t.y&&Math.max(n.y1,n.y2)===t.y+t.height&&w.y>t.y&&w.y<t.y+t.height&&p.every(e=>o()&&(1===i?-1:1)*(e.x-n.x1)>=k-r/2)&&(N=[t,n])}}return S(c)}function tW(e,t){let i=e.marker.geometry;if("polygon"!==i.kind&&"polyline"!==i.kind)return;let n=i.points,r="polygon"===i.kind?n.length:n.length-2;for(let e=0;e<r;e++){for(let e=0;e<8;e++)if(!t())return;let r="polygon"===i.kind?e:e+1,o=n[(r+n.length-1)%n.length],a=n[r],s=n[(r+1)%n.length],l=a.x-o.x,d=a.y-o.y,u=s.x-a.x,c=s.y-a.y,f=Math.hypot(l,d),h=Math.hypot(u,c),p=l/f*(u/h)+d/f*(c/h);if(!(f>0)||!(h>0)||!Number.isFinite(p)||p<=-.875+128*Number.EPSILON)return}let o={},a;try{a=function(e,t,i,n,r,o){o?.();let a=e.geometry;if(!a)return[];let s="start"===n&&"auto-start-reverse"===e.orient?-1:1,l=Math.hypot(i.x,i.y);if(!l)return[];let d=s*i.x/l,u=s*i.y/l,c=e.viewBox,f=("userSpaceOnUse"===e.units?1:r)*Math.max(1,e.scale??1)*(c&&e.size?Math.min(e.size.width/c.width,e.size.height/c.height):1);if(!Number.isFinite(f))throw TypeError("Nonfinite Class marker scale");if(f<=0)return[];let h=i=>{o?.();let n=(i.x-(e.ref?.x??0))*f,r=(i.y-(e.ref?.y??0))*f;return{x:t.x+d*n-u*r,y:t.y+u*n+d*r}},p=e.paint??{},y=p.stroke&&"none"!==p.stroke&&"transparent"!==p.stroke?Number.parseFloat(p.strokeWidth??"1")/2:0,m=void 0!==p.fill&&"none"!==p.fill&&"transparent"!==p.fill;if("circle"===a.kind){let e=h({x:a.cx,y:a.cy});return[{kind:"circle",cx:e.x,cy:e.y,r:(a.r+y)*f}]}if("polygon"!==a.kind&&"polyline"!==a.kind)throw TypeError("Unmeasured Class marker geometry");let g=a.points,x=[];if(m&&"polygon"===a.kind){for(let e=0;e<g.length;e++)o?.();x.push([...g])}let b="polygon"===a.kind?g.length:g.length-1,v=(e,t)=>{o?.();let i=Math.hypot(t.x-e.x,t.y-e.y);return{x:(t.x-e.x)/i,y:(t.y-e.y)/i}};if(y>0){for(let e=0;e<b;e++){o?.();let t=g[e],i=g[(e+1)%g.length],n=v(t,i),r={x:-n.y*y,y:n.x*y};x.push([{x:t.x+r.x,y:t.y+r.y},{x:i.x+r.x,y:i.y+r.y},{x:i.x-r.x,y:i.y-r.y},{x:t.x-r.x,y:t.y-r.y}])}for(let e=+("polygon"!==a.kind);e<("polygon"===a.kind?g.length:g.length-1);e++){o?.();let t=g[e],i=g[(e-1+g.length)%g.length],n=g[(e+1)%g.length],r=v(i,t),a=v(t,n),s=r.x*a.y-r.y*a.x;if(!s)continue;let l=s>0?-1:1,d={x:t.x-l*r.y*y,y:t.y+l*r.x*y},u={x:t.x-l*a.y*y,y:t.y+l*a.x*y},c=((u.x-d.x)*a.y-(u.y-d.y)*a.x)/s,f={x:d.x+c*r.x,y:d.y+c*r.y};x.push(Math.hypot(f.x-t.x,f.y-t.y)<=Number(p.strokeMiterlimit??"4")*y?[t,d,f,u]:[t,d,u])}}let k=(e,t,i,n)=>{let r=[];for(let a=0;a<e.length;a++){o?.();let s=e[a],l=e[(a+1)%e.length],d=e=>n?e[t]>=i:e[t]<=i,u=d(s),c=d(l);if(u&&r.push(s),u!==c){let e=(i-s[t])/(l[t]-s[t]);r.push({x:s.x+e*(l.x-s.x),y:s.y+e*(l.y-s.y)})}}return r};return x.flatMap(t=>{if(o?.(),"hidden"===e.overflow&&c)for(let[e,i,n]of[["x",c.x,!0],["x",c.x+c.width,!1],["y",c.y,!0],["y",c.y+c.height,!1]])o?.(),t=k(t,e,i,n);let i=t[0],n=0;if(i)for(let e=0;e<t.length;e++){o?.();let r=t[e],a=t[(e+1)%t.length];n+=(r.x-i.x)*(a.y-i.y)-(r.y-i.y)*(a.x-i.x)}return t.length>=3&&0!==n?[{kind:"polygon",points:t.map(h)}]:[]})}(e.marker,e.anchor,e.tangent,e.position,e.width,()=>{if(!t())throw o})}catch(e){if(e===o)return;throw e}for(let e of a){if(!t()||"polygon"!==e.kind||e.points.length<3)return;let i=0;for(let n=0;n<e.points.length;n++){if(!t())return;let r=e.points[n],o=e.points[(n+1)%e.points.length];if(!Number.isFinite(r.x)||!Number.isFinite(r.y))return;i+=(r.x-e.points[0].x)*(o.y-e.points[0].y)-(r.y-e.points[0].y)*(o.x-e.points[0].x)}if(!Number.isFinite(i)||0===i)return}return a}function tB(e,t,i){if(!i())return"exhausted";let n=e=>e?.fill==="absent"&&"absent"===e.stroke&&(e.fillColor?.[3]===0||e.paintPieceSource?.marker.paint?.fill==="none");if(n(e)||n(t))return"clear";if(!e?.paintPieceSource||!t?.paintPieceSource)return"unknown";let r={},o=()=>{if(!i())throw r;return!0};try{let i=tW(e.paintPieceSource,o);if(i){let e=tW(t.paintPieceSource,o);if(e&&function(e,t,i){for(let n of e)for(let e of t){if(!i()||"polygon"!==n.kind||"polygon"!==e.kind)return!1;let t=!1;for(let r of[n.points,e.points]){for(let o=0;o<r.length;o++){if(!i())return!1;let a=r[o],s=r[(o+1)%r.length],l=a.y-s.y,d=s.x-a.x,u=Math.hypot(l,d);if(!(u>0)||!Number.isFinite(u))continue;let c=l/u,f=d/u,h=n.points[0],p=1/0,y=-1/0,m=1/0,g=-1/0,x=1;for(let e of n.points){if(!i())return!1;let t=(e.x-h.x)*c+(e.y-h.y)*f;p=Math.min(p,t),y=Math.max(y,t),x=Math.max(x,Math.abs(e.x),Math.abs(e.y))}for(let t of e.points){if(!i())return!1;let e=(t.x-h.x)*c+(t.y-h.y)*f;m=Math.min(m,e),g=Math.max(g,e),x=Math.max(x,Math.abs(t.x),Math.abs(t.y))}let b=1e-8+128*Number.EPSILON*x;if(Number.isFinite(p+y+m+g)&&(y+b<m||g+b<p)){t=!0;break}}if(t)break}if(!t)return!1}return!0}(i,e,o))return"clear"}}catch(e){if(e===r)return"exhausted";throw e}return"unknown"}var tL=new Set(["node","service","class-box","entity"]),tT=new Set([...tL,"group","note","actor","junction"]);function tD(e,t,i,n={}){let r=[],o=!1,a=!1,s=(e,t=!1)=>{r.length<64&&r.push(Object.freeze(e)),t?o=!0:a=!0},l=(e,t,i)=>s({code:"POTENTIAL_OCCLUSION",id:e,by:t,message:i}),d=(e,t,i=!1)=>s({code:"UNMEASURED_PAINT",id:e,message:t},i),u=e=>s({code:"OUTPUT_SCOPE",message:e}),c=t$.get(t);c&&e!==c.header&&(u("Retained emission is paired with a different document header"),e=c.header);let m=0,k=0,w=e.width,M=e.height,O=0;for(let e of t.primitives){if(!c&&tS.has(e)&&u("Native paint occurrences have no bound emission context"),"conditional"===e.visibility){O++;continue}"unmeasured"===e.coverage&&d(e.id,e.reason??"Paint geometry is unavailable"),e.text&&"non-painting"!==e.coverage&&"prepared"!==e.text.measurement&&s({code:"UNPREPARED_TEXT",id:e.id,message:"Text was not retained from layout preparation"});let t=e.bounds;t&&(m=Math.min(m,t.x0),k=Math.min(k,t.y0),w=Math.max(w,t.x1),M=Math.max(M,t.y1))}O&&s({code:"CONDITIONAL_PAINT",message:`${O} primitives depend on unresolved paint or interaction state`}),(!1===n.outputSupported||e.family.startsWith("family:"))&&u("Selected backend, style or external family has no native final-paint proof"),m=Math.min(0,m+1e-6),k=Math.min(0,k+1e-6),w=Math.max(e.width,w-1e-6),M=Math.max(e.height,M-1e-6);let N=m<0||k<0||w>e.width||M>e.height,S={x:Math.floor(m),y:Math.floor(k),width:Math.ceil(w)-Math.floor(m),height:Math.ceil(M)-Math.floor(k)};if(N&&e.width>0&&e.height>0){let t=e.width/e.height;S.width/S.height>t?S.height=S.width/t:S.width=S.height*t}let $=Object.freeze(N?S:{x:0,y:0,width:e.width,height:e.height}),j={x0:$.x,y0:$.y,x1:$.x+$.width,y1:$.y+$.height};N&&t.primitives.some(e=>{let t=tc(e);return t?.kind==="connector"?t.stroke.nonScaling:(t?.kind==="shape"||t?.kind==="text")&&"non-scaling-stroke"===t.paint.vectorEffect})&&u("Viewport expansion changes the user-unit extent of non-scaling strokes; final painted containment is unverified");let F=0,z=(t,i,n)=>{if(F++,!i||!n)return void d(t,"Projected label has no retained occupied or available region");let r=tE(n);0===r.x0&&0===r.y0&&r.x1===e.width&&r.y1===e.height&&(r=j),tF(r,tE(i),.5)||s({code:"LABEL_CONTAINMENT",id:t,message:"Retained text extends beyond its declared available region"},!0)};if(i){for(let e of i.nodes)e.label?.trim()&&"hidden"!==e.labelVisibility&&"semantic"!==e.labelVisibility&&z(String(e.id),e.labelBounds,e.labelContainer);for(let e of i.labels??[])e.text.trim()&&"hidden"!==e.visibility&&"semantic"!==e.visibility&&z(e.id,e.bounds,e.container)}let E=function e(t){if(!t.length)return;let i={x0:1/0,y0:1/0,x1:-1/0,y1:-1/0};for(let e of t)i.x0=Math.min(i.x0,e.bounds.x0),i.y0=Math.min(i.y0,e.bounds.y0),i.x1=Math.max(i.x1,e.bounds.x1),i.y1=Math.max(i.y1,e.bounds.y1);if(t.length<=8)return{bounds:i,leaves:t};let n=i.x1-i.x0>=i.y1-i.y0?"x0":"y0";t.sort((e,t)=>e.bounds[n]-t.bounds[n]||e.primitive.order-t.primitive.order);let r=Math.floor(t.length/2);return{bounds:i,left:e(t.slice(0,r)),right:e(t.slice(r))}}(function(e,t){let i=new Map,n=t=>{if(i.has(t))return i.get(t);let n=eB(t,e.colors),r=!!n&&eP(n)?.[3]===1;return i.set(t,r),r},r=e=>{if("non-scaling-stroke"===e.vectorEffect||!e.stroke||!n(e.stroke)||1!==Number(e.opacity??1)||1!==Number(e.strokeOpacity??1)||e.strokeDasharray)return 0;let t=Number(e.strokeWidth?.replace(/px$/,"")??1);return Number.isFinite(t)&&t>0?t:0},o=new Map,a=(e,t)=>JSON.stringify([e.owner,t,ty(e)]);for(let e of t){let t=tc(e);if(t?.kind!=="shape"||"measured"!==e.coverage||"conditional"===e.visibility||void 0!==e.groupOpacity)continue;let i="compound"===t.geometry.kind?t.geometry.children:[t.geometry];for(let n=0;n<i.length;n++){let s=r("compound"===t.geometry.kind?t.childPaints?.[n]??t.paint:t.paint);s>0&&o.set(a(e,i[n]),s)}}let s=[];for(let e of t){let t=tc(e);if(!t||"shape"!==t.kind||"conditional"===e.visibility||"measured"!==e.coverage||void 0!==e.groupOpacity)continue;let{geometry:i,paint:l,childPaints:d}=t,u="compound"===i.kind?i.children:void 0,c=u?void 0:i,h=u?.map((e,t)=>d?.[t]??l),p=u?void 0:l,y=u?.map((e,t)=>tC(e,h[t])),m=!u&&tC(c,p),x=u?.map((e,t)=>tP(e,h[t])),k=!u&&tP(c,p);if(!(y?y.some(Boolean):m)&&!(x?x.some(Boolean):k))continue;let w=ty(e),[M,O,N,S,$,j]=w,F={kind:"matrix",a:M,b:O,c:N,d:S,e:$,f:j},z,E=u?[]:void 0;for(let t=0,i=u?.length??1;t<i;t++){if(u&&!(t in u))continue;let i=u?u[t]:c,n=h?h[t]:p;if(!(y?y[t]:m)&&!(x?x[t]:k))continue;let r=v({kind:"shape",id:e.id,role:e.role,geometry:i,paint:n},F)??e.bounds;E&&(E[t]=r),z=f(z,r)}if(!z)continue;let C={primitive:e,bounds:z,borderWidth:o.get(a(e,i)),...u?{partBorderWidths:u.map(t=>o.get(a(e,t))??0),partOwnBorderWidths:h.map(r),partFilled:y,partBounds:E}:{}};if(Math.abs(w[1])>1e-12||Math.abs(w[2])>1e-12){s.push(C);continue}let P=[],I=[];for(let e=0,t=u?.length??1;e<t;e++){if(u&&!(e in u))continue;let t=u?u[e]:c,i=h?h[e]:p;if("rect"===t.kind&&1===w[0]&&1===w[3]&&0===w[1]&&0===w[2]&&"non-scaling-stroke"!==i.vectorEffect&&i.stroke&&n(i.stroke)&&1===tx(i.opacity)&&1===tx(i.strokeOpacity)&&!i.strokeDasharray&&void 0!==b(i,!1)){let e=Number.parseFloat(i.strokeWidth??"1")/2,n=Math.max(0,Math.min(t.width/2,t.rx??t.ry??0)),r=Math.max(0,Math.min(t.height/2,t.ry??t.rx??0));if(e>0)for(let i of[{x0:t.x-e,y0:t.y+r,x1:t.x+e,y1:t.y+t.height-r},{x0:t.x+t.width-e,y0:t.y+r,x1:t.x+t.width+e,y1:t.y+t.height-r},{x0:t.x+n,y0:t.y-e,x1:t.x+t.width-n,y1:t.y+e},{x0:t.x+n,y0:t.y+t.height-e,x1:t.x+t.width-n,y1:t.y+t.height+e}])i.x0<i.x1&&i.y0<i.y1&&I.push(g(i,F))}if(!(y?y[e]:m)||"rect"!==t.kind||1!==tx(i.opacity)||1!==tx(i.fillOpacity)||!i.fill||!n(i.fill))continue;let r=Math.min(t.width/2,t.rx??t.ry??0),o=Math.min(t.height/2,t.ry??t.rx??0),a=el({x:t.x+r,y:t.y+o},w),s=el({x:t.x+t.width-r,y:t.y+t.height-o},w);P.push({x0:Math.min(a.x,s.x),y0:Math.min(a.y,s.y),x1:Math.max(a.x,s.x),y1:Math.max(a.y,s.y)})}s.push({...C,interiors:P,strokeInteriors:I})}return s}(e,t.primitives));c?.uncertain&&u("Emitted document context or marker resource differs from retained paint evidence");let C=0,P=c?.operations??0,I=c?.exhausted??!1,W=()=>P>=4e5?(I=!0,!1):(P++,!0),B=new Map;for(let e of t.primitives){if(I)break;for(let t of[e.owner,...e.ancestors]){if(!W())break;if(!tT.has(t.role))continue;let e=B.get(t.id)??new Set;e.add(t.role),B.set(t.id,e)}}let L=(e,t)=>{let i=!1;for(let[n,r]of[[e.endpoints.from,e.endpoints.start],[e.endpoints.to,e.endpoints.end]])if(n===t.id)if(r?.owner){if(r.owner.id!==n){i=!0;continue}if(r.owner.role===t.role)return"attached"}else{if(!((B.get(n)?.size??0)>1))return"attached";i=!0}return i?"ambiguous":"unrelated"},T=(e,t)=>{if(!(I||!W()||!e||!tz(e.bounds,t.bounds))){if(!e.leaves){T(e.left,t),T(e.right,t);return}for(let i of e.leaves){if(!W())return;if(++C>1e5){I=!0;return}i.primitive.order<=t.order||!tz(i.bounds,t.bounds)||(i.interiors?.some(e=>W()&&tF(e,t.bounds))?s({code:"TEXT_OCCLUDED",id:t.id,by:i.primitive.id,message:`Retained text is fully covered by later opaque artwork owned by ${i.primitive.owner.id}`},!0):l(t.id,i.primitive.id,"Later filled artwork overlaps the occupied text band; its exact ink intersection is unverified"))}}};for(let e of t.primitives)"text"===e.kind&&"measured"===e.coverage&&"conditional"!==e.visibility&&T(E,e);let D=new Map;for(let i of t.primitives){if(!W())break;let t=tc(i);if(t?.kind!=="connector"||!["edge","relationship"].includes(i.role)||"invisible"===t.lineStyle||"conditional"===i.visibility||"measured"!==i.coverage)continue;let r=Number.parseFloat(String(t.stroke.width)),o=Number(t.stroke.opacity??1);if(0===r||0===o||"none"===t.stroke.color||"transparent"===t.stroke.color)continue;if(!D.has(t.stroke.color)){let i=eB(t.stroke.color,e.colors);D.set(t.stroke.color,i?eP(i)?.[3]:void 0)}let a=D.get(t.stroke.color);if(0===a)continue;let u=!1!==n.outputSupported&&!e.family.startsWith("family:")&&!!t.endpoints?.from&&!!t.endpoints.to&&void 0!==a&&a>0&&r>0&&o>0&&!t.stroke.dash,c=ty(i),[f,y,m,v,k,w]=c,M={kind:"matrix",a:f,b:y,c:m,d:v,e:k,f:w},O=b({stroke:t.stroke.color,strokeWidth:String(t.stroke.width),strokeLinecap:t.stroke.lineCap,strokeLinejoin:t.stroke.lineJoin,strokeMiterlimit:String(t.stroke.miterLimit)},x(t.route));if(void 0===O){d(i.id,"Final connector stroke has no bounded cap/join extent");continue}let N=e=>{if(!W())return!1;let n=t.stroke.nonScaling?h(g(e.bounds,M),O):g(h(e.bounds,O),M),o=e.line?.map(e=>el(e,c)),a=e=>{if(!(I||!W()||!e||!tz(e.bounds,n))){if(!e.leaves){a(e.left),a(e.right);return}for(let a of e.leaves){if(!W())return;if(++C>1e5){I=!0;return}let e=u&&"note"===a.primitive.role&&!!a.interiors?.length;if(!tL.has(a.primitive.role)&&!e||a.primitive.owner.id===i.owner.id&&a.primitive.owner.role===i.owner.role||!tz(a.bounds,n))continue;let d=L(t,a.primitive.owner);"attached"!==d&&(u&&o&&function(e,t,i,n,r,o,a){if(!a()||!o.every(Number.isFinite)||1!==o[0]||0!==o[1]||0!==o[2]||1!==o[3]||i.nonScaling||!["butt","round","square"].includes(i.lineCap??"butt")||!["miter","round","bevel"].includes(i.lineJoin??"miter")||!Number.isFinite(n)||n<=0||!Number.isFinite(r)||r<n/2)return!1;let[s,l]=e;if(![s.x,s.y,l.x,l.y].every(Number.isFinite)||s.x!==l.x&&s.y!==l.y||s.x===l.x&&s.y===l.y)return!1;let d=n/2,u={x0:Math.min(s.x,l.x)-d,y0:Math.min(s.y,l.y)-d,x1:Math.max(s.x,l.x)+d,y1:Math.max(s.y,l.y)+d};if(!a()||!Object.values(u).every(Number.isFinite)||tz(u,t))return!1;for(let i of e){if(!a())return!1;let e={x0:i.x-r,y0:i.y-r,x1:i.x+r,y1:i.y+r};if(!Object.values(e).every(Number.isFinite)||tz(e,t))return!1}return!0}(o,a.bounds,t.stroke,r,O,c,W)||(u&&"unrelated"===d&&o&&a.interiors?.some(e=>W()&&function(e,t){let[i,n]=e,r=0,o=1;for(let[e,a,s,l]of[[i.x,n.x-i.x,t.x0,t.x1],[i.y,n.y-i.y,t.y0,t.y1]])if(1e-12>Math.abs(a)){if(e<=s+1e-8||e>=l-1e-8)return!1}else{let t=(s-e)/a,i=(l-e)/a;r=Math.max(r,Math.min(t,i)),o=Math.min(o,Math.max(t,i))}return(o-r)*Math.hypot(n.x-i.x,n.y-i.y)>1e-8}(o,e))?s({code:"CONNECTOR_CARD_CROSSING",id:i.id,by:a.primitive.id,message:`Final connector shaft crosses opaque artwork owned by unrelated ${e?"note":"card"} ${a.primitive.owner.id}`},!0):l(i.id,a.primitive.id,e?"Final connector envelope intersects unrelated filled note artwork; actual route/note crossing is unverified":"Final connector envelope intersects unrelated filled card artwork; actual route/card crossing is unverified")))}}};return a(E),!I},S=t.route.geometry;if("path"===S.kind)p(S.d,N,W)||I||d(i.id,"Final connector segments could not be measured from typed path geometry");else{let e="line"===S.kind?[{x:S.x1,y:S.y1},{x:S.x2,y:S.y2}]:S.points;for(let t=1;t<e.length;t++){let i=e[t-1],n=e[t];if(!N({bounds:{x0:Math.min(i.x,n.x),y0:Math.min(i.y,n.y),x1:Math.max(i.x,n.x),y1:Math.max(i.y,n.y)},line:[i,n]}))break}}}let A=new Map,R,_=t=>(R??=eT())(t,e.colors);for(let i of t.primitives){let t=tc(i);if("connector"!==i.kind||t?.kind!=="connector"||"invisible"===t.lineStyle||"non-painting"===i.coverage)continue;let r=ed(ea(t.transform));if(!r)continue;let[o,a,s,l,u,c]=es(ty(i),r);for(let r of y(t,{kind:"matrix",a:o,b:a,c:s,d:l,e:u,f:c})){if(!r.bounds){d(i.id,"Endpoint marker has no painted footprint");continue}let o=JSON.stringify([i.owner.id,i.owner.role,r.position,r.resource,r.anchor,r.repaint]),a="number"==typeof t.stroke.width?Number.isFinite(t.stroke.width)&&t.stroke.width>0:/^\s*(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?(?:px)?\s*$/i.test(t.stroke.width)&&Number.parseFloat(t.stroke.width)>0,s="start"===r.position?t.markers.start:"end"===r.position?t.markers.end:1===t.markers.mid.length?t.markers.mid[0]:void 0,l="measured"===i.coverage&&!!ed(ty(i)),u=s?.units==="userSpaceOnUse"||a,c=A.get(o),h=!1!==n.outputSupported&&!e.family.startsWith("family:")&&(["edge","relationship"].includes(i.role)&&!!t.endpoints?.from&&!!t.endpoints.to||c?.semantic===!0),m=ty(i),g="measured"===i.coverage&&"conditional"!==i.visibility&&(i.groupOpacity??1)===1&&0===i.ancestors.length&&!!m&&1===m[0]&&0===m[1]&&0===m[2]&&1===m[3]&&0===m[4]&&0===m[5],x=h&&g&&u?function(e,t,i,n){let{position:r,anchor:o}=i;for(let e=0;e<18;e++)if(!n())return;if(!t||"mid"===r||e.transform||e.route.closed||e.stroke.nonScaling||"visible"===t.overflow||(t.scale??1)!==1||t.paint?.vectorEffect==="non-scaling-stroke"||void 0!==t.orient&&"auto"!==t.orient&&"auto-start-reverse"!==t.orient||!t.size||!t.ref||!(t.size.width>0)||!(t.size.height>0)||!Number.isFinite(t.size.width+t.size.height+t.ref.x+t.ref.y)||t.ref.y<0||t.ref.y>t.size.height||0!==t.ref.x&&t.ref.x!==t.size.width||t.viewBox&&(0!==t.viewBox.x||0!==t.viewBox.y||t.viewBox.width!==t.size.width||t.viewBox.height!==t.size.height))return;let a=e.route.geometry,s,l,d=(e,t)=>{if(!n()||!Number.isFinite(e)||!Number.isFinite(t))return!1;if(s){if(e!==s.x||t!==s.y)return l={x:e,y:t},!1}else s={x:e,y:t};return!0};if("line"===a.kind){if(!d("start"===r?a.x1:a.x2,"start"===r?a.y1:a.y2))return;d("start"===r?a.x2:a.x1,"start"===r?a.y2:a.y1)}else if("polyline"!==a.kind)return;else for(let e=0;e<a.points.length;e++){let t=a.points["start"===r?e:a.points.length-e-1];if(!d(t.x,t.y))break}if(!s||!l||s.x!==o.x||s.y!==o.y||s.x!==l.x&&s.y!==l.y)return;let u=e=>({x:Number(ex(e.x)),y:Number(ex(e.y))}),c=u(s),h=u(l),p=s.y===l.y;if(![c.x,c.y,h.x,h.y].every(Number.isFinite)||p&&(c.x!==s.x||c.y!==h.y||Math.sign(h.x-c.x)!==Math.sign(l.x-s.x))||!p&&(c.y!==s.y||c.x!==h.x||Math.sign(h.y-c.y)!==Math.sign(l.y-s.y)))return;let m=1;if("userSpaceOnUse"!==t.units){let t=String(e.stroke.width);if(!/^\s*(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?(?:px)?\s*$/i.test(t)||!((m=Number.parseFloat("number"==typeof e.stroke.width?ex(e.stroke.width):eb("stroke-width",e.stroke.width)))>0)||!Number.isFinite(m)||m!==Number.parseFloat(t))return}let g="start"===r?c:h,x="start"===r?h:c,b={x:x.x-g.x,y:x.y-g.y},v=y({route:{geometry:{kind:"line",x1:g.x,y1:g.y,x2:x.x,y2:x.y},closed:!1,contours:[{start:g,end:x,closed:!1,startTangent:b,endTangent:b}]},stroke:{width:m},markers:{mid:[],..."start"===r?{start:t}:{end:t}}})[0];if(!n()||!v?.bounds||!i.bounds)return;let k=f(i.bounds,v.bounds),w="end"===r||"auto-start-reverse"===t.orient?-1:1,M=0===t.ref.x?1:-1,O=Math.sign(l.x-s.x)*w*M,N=Math.sign(l.y-s.y)*w*M;if(!n())return;let S={x0:O>0?Math.max(k.x0,v.anchor.x):k.x0,y0:N>0?Math.max(k.y0,v.anchor.y):k.y0,x1:O<0?Math.min(k.x1,v.anchor.x):k.x1,y1:N<0?Math.min(k.y1,v.anchor.y):k.y1};return S.x0<=S.x1&&S.y0<=S.y1?{region:{...v,bounds:k},clipped:S}:void 0}(t,s,r,W):void 0,v=x?.region??r,k=l&&u?function(e,t,i,n){if(!e||!t||e.geometry?.kind!=="polygon"||(e.scale??1)>1||1!==tx(e.paint?.opacity)||1!==tx(e.paint?.fillOpacity)||!e.paint?.fill)return;let r=i(e.paint.fill);if(!r||eP(r)?.[3]!==1)return;let o=e.geometry.points;if(o.length<3||o.length>64||o.length!==t.length)return;let a=Math.sign(o.reduce((e,t,i)=>{let n=o[(i+1)%o.length];return e+t.x*n.y-n.x*t.y},0));if(!a||!o.every((e,t)=>o.every(i=>n()&&a*((o[(t+1)%o.length].x-e.x)*(i.y-e.y)-(o[(t+1)%o.length].y-e.y)*(i.x-e.x))>=0)))return;let s=e=>({x:e.reduce((e,t)=>e+t.x,0)/e.length,y:e.reduce((e,t)=>e+t.y,0)/e.length}),l=s(o),d=s(t),u=e.viewBox??(e.size?{x:0,y:0,width:e.size.width,height:e.size.height}:void 0),c=[];for(let i=-1,r=o.length;i<r;i++){if(!n())continue;let r=i<0?l:{x:(l.x+o[i].x)/2,y:(l.y+o[i].y)/2};("visible"===e.overflow||u&&r.x>u.x&&r.x<u.x+u.width&&r.y>u.y&&r.y<u.y+u.height)&&c.push(i<0?d:{x:(d.x+t[i].x)/2,y:(d.y+t[i].y)/2})}return c}(s,v.hull,_,W):void 0,w=l&&u&&s?.paint?.vectorEffect!=="non-scaling-stroke"&&function(e,t,i,n){if(t?.length)return!0;if(!e?.geometry||1!==tx(e.paint?.opacity))return!1;let r=e.viewBox??(e.size?{x:0,y:0,width:e.size.width,height:e.size.height}:void 0),o=t=>Number.isFinite(t.x)&&Number.isFinite(t.y)&&("visible"===e.overflow||!!r&&t.x>r.x&&t.x<r.x+r.width&&t.y>r.y&&t.y<r.y+r.height),a=e=>{if(!e||!n())return!1;let t=i(e);return!!t&&eP(t)?.[3]===1},s=e.geometry;if(1===tx(e.paint?.fillOpacity)&&a(e.paint?.fill)&&("circle"===s.kind&&s.r>0&&o({x:s.cx,y:s.cy})||"ellipse"===s.kind&&s.rx>0&&s.ry>0&&o({x:s.cx,y:s.cy})||"rect"===s.kind&&s.width>0&&s.height>0&&o({x:s.x+s.width/2,y:s.y+s.height/2})))return!0;if(1!==tx(e.paint?.strokeOpacity)||!a(e.paint?.stroke)||e.paint?.strokeDasharray||!(Number.parseFloat(e.paint?.strokeWidth??"1")>0)||void 0===b(e.paint??{},!0))return!1;let l=(e,t)=>n()&&Math.hypot(t.x-e.x,t.y-e.y)>0&&o({x:(e.x+t.x)/2,y:(e.y+t.y)/2});if("line"===s.kind)return l({x:s.x1,y:s.y1},{x:s.x2,y:s.y2});if("polygon"===s.kind||"polyline"===s.kind)return s.points.length<=64&&s.points.some((e,t)=>t>0&&l(s.points[t-1],e));if("path"===s.kind){let e=!1;return p(s.d,t=>(t.line&&l(t.line[0],t.line[1])&&(e=!0),n()),n)&&e}return!1}(s,k,_,W),M=function(e,t,i){if(!i()||!t)return!0;if(t.geometry?.kind==="line"||t.paint?.fill==="none"||t.paint?.fill==="transparent"||1>tx(t.paint?.opacity))return!1;let n=t.paint?.fill;if(!n||!i())return!0;let r=e(n),o=r?eP(r):null;return!o||1===o[3]}(_,s,W),O=h&&(i.groupOpacity??1)===1&&0===i.ancestors.length&&(!t.stroke.mixBlendMode||"normal"===t.stroke.mixBlendMode)?function(e,t,i){let n=e?.paint;if(!i()||!n||!Number.isFinite(tx(n.opacity))||void 0===b(n,!0)||void 0!==n.strokeDasharray&&"none"!==n.strokeDasharray||void 0!==n.strokeDashoffset||void 0!==n.paintOrder&&"normal"!==n.paintOrder||!n.fill||!n.stroke||!i())return;let r=t(n.fill);if(!r||"none"!==r&&!eP(r)||!i())return;let o=t(n.stroke);if(!(!o||"none"!==o&&!eP(o)))return`${r}\0${o}`}(s,_,W):void 0,N=h&&g?function(e,t,i,n,r,o){let a,s=e=>{for(let t=0;t<e;t++)if(!r())return!1;return!0};if(!s(3)||!i||"mid"===n||i.geometry?.kind!=="polygon"&&i.geometry?.kind!=="polyline"||i.geometry.points.length<3||i.geometry.points.length>64||t.transform||"polyline"===i.geometry.kind&&i.paint?.strokeLinecap!==void 0&&!["butt","round"].includes(i.paint.strokeLinecap)||t.route.closed||t.stroke.nonScaling||t.stroke.mixBlendMode&&"normal"!==t.stroke.mixBlendMode||(i.scale??1)!==1||i.paint?.vectorEffect==="non-scaling-stroke"||i.paint?.strokeLinejoin&&!["miter","round","bevel"].includes(i.paint.strokeLinejoin)||!i.size||!i.ref||!(i.size.width>0)||!(i.size.height>0)||!Number.isFinite(i.size.width+i.size.height+i.ref.x+i.ref.y)||i.viewBox&&(!(i.viewBox.width>0)||!(i.viewBox.height>0)||!Number.isFinite(i.viewBox.x+i.viewBox.y+i.viewBox.width+i.viewBox.height)))return;let l=String(t.stroke.width);if(!/^\s*(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?(?:px)?\s*$/i.test(l))return;let d=Number.parseFloat("number"==typeof t.stroke.width?ex(t.stroke.width):eb("stroke-width",t.stroke.width));if(!(d>0)||!Number.isFinite(d)||!s(12+5*i.geometry.points.length))return;let u=t.route.geometry,c,f,h=(e,t)=>{if(!r())return!1;let i={x:Number(ex(e)),y:Number(ex(t))};if(!Number.isFinite(i.x)||!Number.isFinite(i.y))return!1;if(c){if(i.x!==c.x||i.y!==c.y)return f=i,!1}else c=i;return!0};if("line"===u.kind)h("start"===n?u.x1:u.x2,"start"===n?u.y1:u.y2),h("start"===n?u.x2:u.x1,"start"===n?u.y2:u.y1);else if("polyline"!==u.kind)return;else for(let e=0;e<u.points.length;e++){let t=u.points["start"===n?e:u.points.length-e-1];if(!h(t.x,t.y))break}if(!c||!f||!r()||c.x!==f.x&&c.y!==f.y)return;let p=i.geometry.points,m="polygon"===i.geometry.kind?i:{...i,geometry:{kind:"polygon",points:p}},g="start"===n?{x:f.x-c.x,y:f.y-c.y}:{x:c.x-f.x,y:c.y-f.y},x="start"===n?c:f,b="start"===n?f:c,v={kind:"line",x1:x.x,y1:x.y,x2:b.x,y2:b.y},k=y({route:{...t.route,geometry:v,contours:[{start:x,end:b,closed:!1,startTangent:g,endTangent:g}]},stroke:{...t.stroke,width:d},markers:{mid:[],..."start"===n?{start:m}:{end:m}}})[0],w=k?.hull;if(!w||w.length!==p.length||!s(w.length))return;let M=0;for(let e=0;e<w.length;e++){let t=w[e],i=w[(e+1)%w.length];for(let e of w){if(!r())return;let n=(i.x-t.x)*(e.y-t.y)-(i.y-t.y)*(e.x-t.x);if(!Number.isFinite(n))return;if(n){if(M&&Math.sign(n)!==M)return;M||=Math.sign(n)}}}if(!M)return;let O=m.viewBox??(m.size?{x:0,y:0,...m.size}:void 0),N=e=>"visible"===m.overflow||!!O&&e.x>O.x&&e.x<O.x+O.width&&e.y>O.y&&e.y<O.y+O.height,S=i.paint??{},$=t=>{if(!t||!r())return;let i=o?o(t):eB(t,e.colors);return i?eP(i)??void 0:void 0},j=$(S.fill),F=$(S.stroke),z=tx(S.opacity),E="none"===S.fill||z<1||j&&j[3]<1?"absent":j?.[3]===1&&1===z&&p.every(e=>r()&&N(e))?"opaque":"unknown",C=void 0===S.stroke||"none"===S.stroke||0===z||F?.[3]===0,P=S.strokeWidth??"1",I=/^\s*(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?(?:px)?\s*$/i.test(P)?Number.parseFloat(P):void 0,W=("userSpaceOnUse"===m.units?1:d)*(m.viewBox&&m.size?Math.min(m.size.width/m.viewBox.width,m.size.height/m.viewBox.height):1),B=C?0:void 0!==I&&Number.isFinite(I*W)?I*W/2:void 0,L=C||0===I?"absent":void 0!==I&&I>0&&F?.[3]===1&&1===z&&!S.strokeDasharray?"visible":"unknown",T=[];if(!C&&void 0!==I&&I>0&&F?.[3]===1&&1===z&&!S.strokeDasharray){for(let e=0;e<p.length-("polyline"===i.geometry.kind);e++){let t=p[e],i=p[(e+1)%p.length];if(t.x!==i.x||t.y!==i.y)for(let n=1;n<4;n++){if(!s(3))return;let r=n/4;N({x:t.x*(1-r)+i.x*r,y:t.y*(1-r)+i.y*r})&&T.push({x:w[e].x*(1-r)+w[(e+1)%w.length].x*r,y:w[e].y*(1-r)+w[(e+1)%w.length].y*r})}}let e=+("polygon"!==i.geometry.kind),t=p.length-("polygon"!==i.geometry.kind);for(let i=e;i<t;i++){if(!s(2))return;let e=p[(i+p.length-1)%p.length],t=p[i],n=p[(i+1)%p.length];(e.x!==t.x||e.y!==t.y)&&(t.x!==n.x||t.y!==n.y)&&N(t)&&T.push(w[i])}}let D=!1;if("hidden"===i.overflow){if(!s(5))return;D=i.viewBox?.x===0&&0===i.viewBox.y&&i.viewBox.width===i.size.width&&i.viewBox.height===i.size.height}if(("visible"===i.overflow||D)&&(void 0===i.orient||"auto"===i.orient||"auto-start-reverse"===i.orient)&&"unknown"!==E&&"unknown"!==L&&1===z&&("polygon"===i.geometry.kind||"none"===S.fill||j?.[3]===0)&&!S.strokeDasharray&&(void 0===S.strokeLinecap||"butt"===S.strokeLinecap)&&(void 0===S.strokeLinejoin||"miter"===S.strokeLinejoin)&&(void 0===S.strokeMiterlimit||4===Number(S.strokeMiterlimit))){if(D&&!s(16))return;a={marker:D?{id:i.id,shape:i.shape,geometry:i.geometry,paint:i.paint,units:i.units,size:i.size,ref:i.ref,orient:i.orient,viewBox:i.viewBox,scale:i.scale,overflow:"visible"}:i,anchor:c,tangent:g,position:n,width:d}}return(!a||r())&&s(6)?{repaint:{resource:k.repaint,anchor:c,geometry:i.geometry.kind},hull:w,fill:E,stroke:L,fillColor:j,strokeColor:F,innerStroke:B,strokeWitnesses:T,padding:k.padding,...a?{paintPieceSource:a}:{}}:void 0}(e,t,s,r.position,W,_):void 0;A.set(o,{primitive:i,position:r.position,clipped:x?.clipped,anchor:v.anchor,repaint:v.repaint,bounds:v.bounds,hull:v.hull,padding:v.padding,witnesses:k,actualInk:w,strokeProof:N,paintIdentity:O,semantic:h,mayFill:M})}}let q=(e,t)=>{if("conditional"!==t.primitive.visibility&&!(I||!W()||!e||!tz(e.bounds,t.bounds))){if(!e.leaves){q(e.left,t),q(e.right,t);return}for(let i of e.leaves){if(!W())return;if(++C>1e5){I=!0;return}if(i.primitive.order<=t.primitive.order||!tz(i.bounds,t.bounds))continue;if(t.actualInk&&(i.interiors?.some(e=>W()&&tF(e,t.bounds))||i.strokeInteriors?.some(e=>W()&&tF(e,t.bounds)))){s({code:"MARKER_OCCLUDED",id:t.primitive.id,by:i.primitive.id,message:"Endpoint marker is fully covered by later opaque artwork with no owned repaint"},!0);continue}let e=tc(t.primitive),n=e?.kind==="connector"&&"attached"===L(e,i.primitive.owner);tI(i,t.bounds,n,t.hull,t.padding,W,t.witnesses,t.anchor)||t.clipped&&tI(i,t.clipped,n,void 0,0,W,t.witnesses,t.anchor,!0)||l(t.primitive.id,i.primitive.id,"Later filled artwork overlaps an endpoint marker; its exact ink intersection is unverified")}}},U=Array.from(A.values());for(let e=0;e<U.length;e++)q(E,U[e]);for(let e=0;e<U.length;e++){let i=U[e];if(!W())break;if(!i.semantic||"conditional"===i.primitive.visibility||i.strokeProof?.fill==="absent"&&"absent"===i.strokeProof.stroke)continue;let n=t.primitives;for(let e=0;e<n.length;e++){let t=n[e];if(!W())break;if("text"!==t.kind||"measured"!==t.coverage||"conditional"===t.visibility||!t.bounds||!tz(t.bounds,i.bounds))continue;if(++C>1e5){I=!0;break}let r=i.primitive.order>t.order;l(r?t.id:i.primitive.id,r?i.primitive.id:t.id,r?"Later endpoint-marker ink overlaps occupied text; actual text visibility is unverified.":"Later occupied text or its halo overlaps an endpoint marker; actual marker ink visibility is unverified.")}}for(let e=0;e<U.length;e++){let i=U[e];if(I)break;if(!(!i.semantic||"conditional"===i.primitive.visibility))for(let e=0;e<U.length;e++){let n=U[e];if(!W())break;let r=i.strokeProof?.repaint,o=n.strokeProof?.repaint,a=void 0!==i.paintIdentity&&i.paintIdentity===n.paintIdentity;if(!n.semantic||"conditional"===n.primitive.visibility||n.primitive.order<=i.primitive.order||a&&(i.anchor.x===n.anchor.x&&i.anchor.y===n.anchor.y&&i.repaint===n.repaint||r&&o&&r.resource===o.resource&&r.geometry===o.geometry&&r.anchor.x===o.anchor.x&&r.anchor.y===o.anchor.y)||!tz(i.bounds,n.bounds))continue;if(++C>1e5){I=!0;break}let d=0,u="unknown";for(;!I;){let e=n.mayFill?function(e,t,i,n=0){if(!i()||!Number.isSafeInteger(n)||n<0)return"unknown";if(t?.fill==="absent"||e?.stroke==="absent"&&"absent"===e.fill)return"clear";if(!e||!t)return"unknown";let r=t.hull;if(void 0!==e.innerStroke){let t=0;for(let n=0;n<e.hull.length;n++){if(!i())return"unknown";let r=e.hull[n],o=e.hull[(n+1)%e.hull.length],a=e.hull[(n+2)%e.hull.length],s=(o.x-r.x)*(a.y-o.y)-(o.y-r.y)*(a.x-o.x);if(s){t=Math.sign(s);break}}if(t)for(let n=0;n<e.hull.length;n++){if(!i())return"unknown";let o=e.hull[n],a=e.hull[(n+1)%e.hull.length],s=a.x-o.x,l=a.y-o.y,d=Math.hypot(s,l);if(!d)continue;let u=!0;for(let n of r){if(!i())return"unknown";let r=t*(s*(n.y-o.y)-l*(n.x-o.x))/d,c=1e-8+64*Number.EPSILON*Math.max(1,Math.abs(n.x),Math.abs(n.y),Math.abs(o.x),Math.abs(o.y),Math.abs(a.x),Math.abs(a.y));if(!Number.isFinite(r)||r>=-e.innerStroke-c){u=!1;break}}if(u)return"clear"}}if(void 0!==e.padding&&Number.isFinite(e.padding))for(let t of[e.hull,r])for(let n=0;n<t.length;n++){if(!i())return"unknown";let o=t[n],a=t[(n+1)%t.length],s=a.y-o.y,l=o.x-a.x,d=Math.hypot(s,l);if(!d)continue;let u=1/0,c=-1/0,f=1/0,h=-1/0;for(let t of e.hull){if(!i())return"unknown";let e=(t.x-o.x)*s+(t.y-o.y)*l;u=Math.min(u,e),c=Math.max(c,e)}for(let e of r){if(!i())return"unknown";let t=(e.x-o.x)*s+(e.y-o.y)*l;f=Math.min(f,t),h=Math.max(h,t)}if(c+e.padding*d<f||h<u-e.padding*d)return"clear"}if(e.paintPieceSource&&t.paintPieceSource){let n=tB(e,t,i);if("clear"===n)return"clear";if("exhausted"===n)return"unknown"}if("visible"!==e.stroke||"opaque"!==t.fill||void 0===t.innerStroke||!e.strokeColor||!t.fillColor)return"unknown";let o=!0;for(let n=0;n<3;n++){if(!i())return"unknown";e.strokeColor[n]!==t.fillColor[n]&&(o=!1)}if(o)return"unknown";for(let o=n;o<e.strokeWitnesses.length&&i();o++){let n=e.strokeWitnesses[o],a=0,s=!0;for(let e=0;e<r.length;e++){if(!i())return"unknown";let o=r[e],l=r[(e+1)%r.length],d=l.x-o.x,u=l.y-o.y,c=Math.hypot(d,u),f=d*(n.y-o.y)-u*(n.x-o.x),h=1e-8+64*Number.EPSILON*Math.max(1,Math.abs(n.x),Math.abs(n.y),Math.abs(o.x),Math.abs(o.y),Math.abs(l.x),Math.abs(l.y));if(!Number.isFinite(f)||!c||Math.abs(f)/c<=t.innerStroke+h||a&&Math.sign(f)!==a){s=!1;break}a||=Math.sign(f)}if(s&&a)return n}return"unknown"}(i.strokeProof,n.strokeProof,W,d):tB(i.strokeProof,n.strokeProof,W);if("exhausted"===e&&(e="unknown"),"string"==typeof e){u=e;break}let r=!1,o=t.primitives;for(let t=0;t<o.length;t++){let i=o[t];if(!W())break;let a=i.bounds;if(i.order<=n.primitive.order||"non-painting"===i.coverage)continue;if(!a){r=!0;break}if(a.x0>e.x||e.x>a.x1||a.y0>e.y||e.y>a.y1)continue;let s=tc(i);if(s?.kind==="connector"&&0===Number(s.stroke.opacity)){let t=!1;for(let n=0;n<U.length;n++){let r=U[n];if(!W())break;if(!(r.primitive.order!==i.order||r.bounds.x0>e.x||e.x>r.bounds.x1||r.bounds.y0>e.y||e.y>r.bounds.y1)&&!function(e,t,i){if(!e||void 0===e.innerStroke)return!1;let n=e.hull,r=0;for(let e=0;e<n.length;e++){if(!i())return!1;let t=n[e],o=n[(e+1)%n.length],a=n[(e+2)%n.length],s=(o.x-t.x)*(a.y-o.y)-(o.y-t.y)*(a.x-o.x);if(s){r=Math.sign(s);break}}if(!r)return!1;for(let o=0;o<n.length&&i();o++){let i=n[o],a=n[(o+1)%n.length],s=a.x-i.x,l=a.y-i.y,d=Math.hypot(s,l),u=r*(s*(t.y-i.y)-l*(t.x-i.x))/d,c=1e-8+64*Number.EPSILON*Math.max(1,Math.abs(t.x),Math.abs(t.y),Math.abs(i.x),Math.abs(i.y),Math.abs(a.x),Math.abs(a.y));if(Number.isFinite(u)&&u<-e.innerStroke-c)return!0}return!1}(r.strokeProof,e,W)){t=!0;break}}if(!t&&!I)continue}r=!0;break}if(!r&&!I){u="covered";break}let a=i.strokeProof.strokeWitnesses,s=!1;for(;d<a.length&&W();d++)if(a[d]===e){d++,s=!0;break}if(!s)break}"covered"!==u||I?"unknown"===u&&l(i.primitive.id,n.primitive.id,"Distinct endpoint-marker envelopes overlap; actual marker ink separation is unverified."):s({code:"MARKER_OCCLUDED",id:i.primitive.id,by:n.primitive.id,message:"Later opaque endpoint-marker fill covers actual stroke ink of a distinct marker."},!0)}}for(let e of(I&&s({code:"CHECK_BUDGET",message:"Occlusion checking reached its 100000-pair or 400000-operation limit"}),t.primitives))e.bounds&&"conditional"!==e.visibility&&!tF(j,e.bounds,1e-6)&&d(e.id,"Final viewport does not contain retained paint",!0);for(let e of U)"conditional"===e.primitive.visibility||tF(j,e.bounds,1e-6)||d(e.primitive.id,"Final viewport does not contain serialized marker paint",!0);return Object.freeze({version:1,unit:"px",scope:"native-scene",status:o?"failed":a?"unverified":"passed",viewport:$,attempts:N?2:1,repairs:Object.freeze(N?["expand-viewport"]:[]),coverage:Object.freeze({measured:t.coverage.measured,unmeasured:t.coverage.unmeasured,preparedText:t.coverage.preparedText,fallbackText:t.coverage.fallbackText,conditional:O}),checks:Object.freeze({primitives:t.primitives.length,labels:F,occlusionPairs:Math.min(C,1e5),maxOcclusionPairs:1e5,operations:P,maxOperations:4e5,markers:A.size}),issues:Object.freeze(r),limitations:Object.freeze(["Prepared occupied text regions bound native geometry; exact glyph ink depends on the resolved font.","Declared transparency, intentional data-mark overlap and externally modified CSS are outside this proof."])})}var tA=class extends Error{constructor(e){super(`Final paint certification failed: ${e.issues.map(e=>`${e.id??"scene"}: ${e.message}`).join("; ")}`),this.certification=e,this.name="PaintLayoutCertificationError"}certification;code="PAINT_LAYOUT_CERTIFICATION_FAILED"},tR=new WeakMap,t_=new WeakMap;function tq(e,i){let r=t_.get(i);r||(r=new WeakMap,t_.set(i,r));let o=r.get(e);if(o)return ej("positioned-scene","hit"),X(e)&&!o.crossChecks&&(tj(t(e).family,o.scene,!0),o.crossChecks=!0),o.scene;ej("positioned-scene","miss");let a=t(e);if(!a.family.lowerScene)throw Error(`Resolved ${e.output} family has no Scene lowering`);let s="png"===e.output&&!1!==e.appearance.colors.embedFontImport?{...e.appearance.colors,embedFontImport:!1}:e.appearance.colors,l=X(e),d=()=>a.family.lowerScene({positioned:i.positioned,colors:s,resolved:n(e)}),u=eD(a.textMeasurement,()=>tj(a.family,l||a.family.id.startsWith("family:")?d():k(d),l));return r.set(e,{scene:u,crossChecks:l}),u}function tU(e,i){let r=t(e),o=X(e)?"scene-assertions":r.family.id.startsWith("family:")?"external-family":r.backend&&!et(r.backend.backend)?"alternate-backend":("layout"===r.mode?"default"===e.appearance.inferredBackend:"scene"===r.mode&&r.backend?.inputName==="default")?void 0:"unsupported-mode",a=o?void 0:d(r.family.lowerScene);if(a||(o??="no-native-producer"),o){ej("native-drawing","bypass",o),ez("native-drawing",o);return}let s=tR.get(i);s||(s=new WeakMap,tR.set(i,s));let l=s.get(e);if(l){if(ej("native-drawing","hit"),l.producer===d(r.family.lowerScene))return l.drawing;ej("native-drawing","bypass","changed-producer"),s.delete(e)}r.backend&&er(r.backend.conformance,r.backend.inputName);let c=e8(e,i,(a=d(r.family.lowerScene))===u(r.family.lowerScene));if(c){ej("native-drawing","hit",void 0,"positioned-owner");let t=a;if(t&&t===d(r.family.lowerScene)&&t===u(r.family.lowerScene))return s.set(e,{drawing:c,producer:t,certification:c.certification}),c;ej("native-drawing","bypass","changed-producer"),e8(e,i,!1),a=d(r.family.lowerScene)}if(ej("native-drawing","miss"),!(a=d(r.family.lowerScene))){ej("native-drawing","bypass","no-native-producer"),ez("native-drawing","no-native-producer");return}let f=a,h="png"===e.output&&!1!==e.appearance.colors.embedFontImport?{...e.appearance.colors,embedFontImport:!1}:e.appearance.colors,p=eD(r.textMeasurement,()=>{let t;return function(e,t,i,n){var r;let o,a,s,l,d,u,c,f,h,p,y,m,g,x,b={family:i,width:t.positioned.width,height:t.positioned.height,colors:t.colors,transparent:t.resolved.renderOptions.transparent??!1},v=(l=0,d=!1,u=!1,c=new Map,f=[],h=(e=1)=>!d&&(!Number.isSafeInteger(e)||e<0||e>4e5-l?(d=!0,!1):(l+=e,!0)),p=Symbol("unsupported-emission"),y=(e,t=0,i=new Set)=>{if(t>64)throw p;if(null==e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e)return e;if("object"!=typeof e||!h()||i.has(e))throw p;let n=Object.getPrototypeOf(e);if(n!==Object.prototype&&null!==n&&n!==Array.prototype)throw p;let r=Object.getOwnPropertyNames(e);if(!h(r.length))throw p;i.add(e);let o=Array.isArray(e)?[]:{},a,s=w(e);for(let n of r){if(!h())throw p;let r=Object.getOwnPropertyDescriptor(e,n);if(r){if("length"===n&&Array.isArray(e)){a=r;continue}if(!("terminalProjection"===n&&s)){if(!("value"in r))throw p;Object.defineProperty(o,n,{value:y(r.value,t+1,i),enumerable:r.enumerable,configurable:!1,writable:!1})}}}if(Array.isArray(e)){if(!a||!("value"in a))throw p;Object.defineProperty(o,"length",{value:a.value,writable:!1})}if(s){if(!h(3)||!M(e,o))throw p;let t=Object.getOwnPropertyDescriptor(o,"terminalProjection");Object.defineProperty(o,"terminalProjection",{...t,configurable:!1})}return ei(e,o),i.delete(e),Object.preventExtensions(o)},m=e=>{try{return y(e)}catch{return}},g=(e,t)=>{if(!h())return!1;if("string"==typeof e&&"string"==typeof t)return h(e.length+t.length)&&e===t;if(e===t)return!0;if(!e||!t||"object"!=typeof e||"object"!=typeof t)return!1;let i=0,n=0;if(!h(2))return!1;let r=Object.getOwnPropertyNames(e),o=Object.getOwnPropertyNames(t);if(!h(r.length+o.length))return!1;for(let n of r){if(!h(3))return!1;let r=Object.getOwnPropertyDescriptor(e,n),o=Object.getOwnPropertyDescriptor(t,n);if(r&&(i++,!o||!("value"in r)||!("value"in o)||r.enumerable!==o.enumerable||!g(r.value,o.value)))return!1}for(let e of o){if(!h())return!1;Object.hasOwn(t,e)&&n++}return i===n},x=e=>{if(!h())return;if("string"==typeof e)return 6*e.length+2;if("number"==typeof e)return 32;if(!e||"object"!=typeof e)return 8;let t=64;if(!h())return;let i=Object.getOwnPropertyNames(e);if(h(i.length)){for(let n of i){if(!h(3))return;let i=Object.getOwnPropertyDescriptor(e,n);if(!i||!("value"in i))return;let r=x(i.value);if(void 0===r||!Number.isSafeInteger(t+=n.length+16+r)||t>4e5)return}return t}},{snapshot:m,same:g,retainFragment:()=>h(),parts(e,t){if(!h()||!Array.isArray(e))return u=!0,e;let i=Object.getOwnPropertyDescriptor(e,"length")?.value;if(!Number.isSafeInteger(i)||i<0||i>t)throw RangeError("Native drawing contains too many emitted nodes");if(!h(4*i))return u=!0,e;let n=[];for(let t=0;t<i;t++){let i=Object.getOwnPropertyDescriptor(e,String(t));i&&"value"in i?n.push(i.value):(u=!0,n.push(e[t]))}return Object.freeze(n)},uncertain(){u=!0},header(e,t){if(!h(8*t.length+128))return e;let i=ew(t).find(e=>"svg"===e.name);if(!i)return u=!0,e;let n=ex(e.width),r=ex(e.height),o=eO(i,"viewBox");for(let t of((void 0!==o?o!==`0 0 ${n} ${r}`:eO(i,"width")!==n||eO(i,"height")!==r)&&(u=!0),i.attributes)){if(!h())return e;["xmlns","width","height","viewBox","style","role","class","id"].includes(t.name)||t.name.startsWith("data-")||t.name.startsWith("aria-")||(u=!0)}let a=Object.freeze({...e,width:Number(n),height:Number(r)}),s=e.colors,l=eO(i,"style");if(void 0===l)return a;let d=new Set;for(let e of l.split(";")){if(!h(e.length+4))break;if(!e.trim())continue;let t=e.indexOf(":"),i=e.slice(0,t).trim(),n=e.slice(t+1).trim();if(t<0||d.has(i)){u=!0;continue}if(d.add(i),"background"!==i||"var(--bg)"!==n){if("--font"===i){h("string"==typeof s.font?4*s.font.length:1)&&eC(s.font)===n||(u=!0);continue}["bg","fg","line","accent","muted","surface","border","font"].some(e=>`--${e}`===i)&&s[i.slice(2)]===n||(u=!0)}}return a},group(e){if(!h(8*e.open.length))return;let t=ew(e.open)[0];if(!t||"g"!==t.name){u=!0;return}(eO(t,"opacity")!==e.paint?.opacity||e.paint?.fill!==void 0||void 0!==eO(t,"style"))&&(u=!0);let i=eO(t,"transform");if(void 0===i)return;let n=eu(i);return n||(u=!0),n&&Object.freeze(n)},observe(e,t){if(!h(2*(1+("connector"===e.kind?e.labels.length:0))))return!1;if("connector"===e.kind){let t=e=>{e&&h(2)&&f.push(e)};for(let i of(t(e.markers.start),e.markers.mid)){if(!h())break;t(i)}t(e.markers.end)}else if("document"===e.kind&&"definitions"===e.element){if(!h(8*t.length))return!1;for(let e of ew(t)){if(!h(e.attributes.length+1))break;if("marker"!==e.name)continue;let i=eO(e,"id"),n=t.indexOf("</marker>",e.end);if(!i||n<0||c.has(i)){u=!0;continue}let r=t.slice(e.start,n+9).replace(/(^|\n)[ \t]+(?=<)/g,"$1");if(!h(2))break;c.set(i,r)}}return!d},leaf(e){let t=m(e);return t?(S(e,t),{node:t,conditional:!1}):{node:e,conditional:!0}},finish(e,t){let i=new Map;for(let e of f){if(!h())break;try{if(!h(2))break;let t=i.get(e.id);if(t&&g(t,e))continue;let n=x(e);if(void 0===n||!h(2*n)){u=!0;break}let r=R(e,{indent:0}).replace(/(^|\n)[ \t]+(?=<)/g,"$1");h(3*r.length)&&c.get(e.id)===r?h(2)&&i.set(e.id,e):u=!0}catch{u=!0}}for(let t of e.primitives)"conditional"!==t.visibility&&tS.add(t);t$.set(e,Object.freeze({operations:l,exhausted:d,uncertain:u,header:t}))}});i.startsWith("family:")&&v.uncertain();let O=v.snapshot(b),$=J(b),T=new WeakSet,D=e=>(v.retainFragment()&&T.add(e),Object.freeze(e)),A=e=>{let t=v.leaf(e),i=$.node(t.node);return D({kind:"leaf",node:t.node,svg:i,conditional:t.conditional,nodeCount:1,depth:0,prepared:"document"===e.kind?!/<\s*text/i.test(i):"text"!==e.kind||"prepared"===e.measurement&&void 0!==e.block})},_={shape:e=>A(j(e)),text:e=>A(z(e)),connector:e=>A(F(e)),documentOpen:(e,t)=>{let n=v.snapshot(e);return n?(O=Object.freeze({family:i,width:n.width,height:n.height,colors:n.colors,transparent:n.transparent}),O=v.header(O,t)):v.uncertain(),A(B(e,t))},documentContent:(e,t)=>A(E(e,t)),documentText:e=>A(C(e)),definitions:(e,t)=>A(P(e,t)),documentClose:()=>A(I()),group(e){let t=Object.getOwnPropertyDescriptor(e,"children");t&&"value"in t||v.uncertain();let{children:i,...n}=e,r=v.parts(i,U.maxNodes),o=[],a=1,s=0,l=1,d=!0,u=[];for(let e of r){let t=Object.getOwnPropertyDescriptor(e,"node"),i=Object.getOwnPropertyDescriptor(e,"indent");t&&"value"in t&&i&&"value"in i||v.uncertain();let n=Object.freeze({node:e.node,indent:e.indent});o.push(n),T.has(n.node)||v.uncertain(),u.push(n.node),a+=n.node.nodeCount,s+=n.node.svg.length,l=Math.max(l,1+n.node.depth),d=d&&n.node.prepared}if(a>U.maxNodes)throw RangeError("Native drawing contains too many emitted nodes");if(s>U.maxSerializationBytesPerNode)throw RangeError("Native group has an oversized SVG serialization");let c=W({...n,children:[]});$.node(c),$.depth(l);let f=v.snapshot(c),h=f?v.group(f):void 0,p=f?.identity??{id:c.id,role:c.role};for(let e of u)"leaf"!==e.kind||"shape"!==e.node.kind||e.node.identity||$.enclosure(e.node.id,p);let y=[c.open];for(let e of o)y.push(N(e.node.svg,e.indent));y.push(c.close);let m=y.join(c.join);return $.serialization(m),D({kind:"group",svg:m,children:Object.freeze(u),matrix:h,own:p,owner:f?.owner,conditional:!f||"conditional"===c.visibility,opacity:tx(f?.paint?.opacity),nodeCount:a,depth:l,prepared:!/<\s*text/i.test(c.open+c.close)&&d})},pathArtwork:e=>L(_,e)},q=k(()=>e(_,t));for(let e of["parts","family","width","height","colors","transparent"]){let t=Object.getOwnPropertyDescriptor(q,e);t&&"value"in t||v.uncertain()}let G=v.parts(q.parts,U.maxNodes);for(let e of G)T.has(e)||v.uncertain();let H=$.finish();if(!H.valid)throw new V(H.diagnostics);let X=0,Y=-1,Z=!0;for(let e of G)X+=e.nodeCount,Y+=e.svg.length+1,Z=Z&&e.prepared;if(X>U.maxNodes)throw RangeError("Native drawing contains too many emitted nodes");if(Y>U.maxFinalSvgBytes)throw RangeError("Native drawing exceeds the final SVG limit");let Q=ee(q,{seed:0,...n?{style:n}:{}}),et=G.map((e,t)=>0===t&&Q?`${e.svg}
|
|
2
|
+
${Q}`:e.svg).join(`
|
|
3
|
+
`);K(et,"native drawing output");let en=O??Object.freeze({...b,colors:Object.freeze({bg:"none",fg:"none"})}),er=v.snapshot({family:q.family,width:q.width,height:q.height,colors:q.colors,transparent:q.transparent}),ea=Object.freeze({...en,family:er?.family??i});er&&v.same({...er,width:Number(ex(er.width)),height:Number(ex(er.height))},ea)||v.uncertain();let el=(r=v.observe,a={leaf(e,t,i,n=tM,r=!1,a=1,s){if(!tw.has(n))throw TypeError("Native paint ancestors must be owned snapshots");o.leaf(e,t,i,n,r,a,s)},finish:(o=tN(ea,void 0,!0)).finish},s=[],function e(t,i,n){for(let o=0;o<t.length;o++){let l=t[o],d=`${i}.${o}`;if("group"===l.kind){s.push(l);let t,i=1,r;for(let e=s.length-1;e>=0;e--){let n=s[e];(void 0!==n.matrix||void 0!==t)&&(t=es(n.matrix??eo,t??eo)),i=tb(n.opacity,i),n.conditional&&(r=!0)}let o=function(e,t){let i=tO(t),n=Object.freeze([...void 0===e?tM:tw.has(e)?e:Array.from(e,tO),i]);return tw.add(n),n}(n?.ancestors,l.own),a=l.owner?.id===l.own.id&&l.owner.role===l.own.role?o.at(-1):l.owner;e(l.children,d,{parentMatrix:t,ancestors:o,owner:a,conditional:r,groupOpacity:i}),s.pop()}else if(n){let e=!l.conditional&&r(l.node,l.svg);a.leaf(l.node,d,n.parentMatrix,n.ancestors,n.conditional||!e,n.groupOpacity,l.node.owner??n.owner)}else{let e=!l.conditional&&r(l.node,l.svg);a.leaf(l.node,d,void 0,void 0,!e)}}}(G,"scene"),a.finish());return v.finish(el,ea),Object.freeze({svg:et,header:ea,preparedText:Z,paint:el})}(f,{positioned:(t=tr.get(i))&&t!==f?e5(i.positioned):i.positioned,colors:h,resolved:n(e)},r.family.id,e.appearance.styled?e.appearance.style:void 0)});return s.set(e,{drawing:p,producer:f,evidence:p}),p}function tG(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}async function tV(e,t,i){return(await tK(e,t,i)).svg}async function tK(f,h,p){"default"!==a(h=o(h))&&await import("./builtin-backends-KDKE7YHO.js"),c(p);let y,m=new Map;for(;;)try{return y??=q("request",()=>s(f,h,"svg",void 0,{expectedFamilyId:p.id,familyDescriptor:p})),function(o){return ek(()=>(function(o){var a;!function(e){if(tl.has(e))return;tl.add(e);let i=t(e),n=i.configDiagnostics??[];if(0===n.length)return;let r=i.onConfigDiagnostic??(e=>console.warn(e.message));for(let e of n)r(e)}(o);let s=[],c=(a=q("layout",()=>{let e,i,r,a;return i=d((e=t(o)).family.lowerScene),r="scene"===e.mode&&en(e.backend?.backend)&&l(e.family)&&!e.textMeasurement&&!!i&&i===u(e.family.lowerScene)&&!X(o),a=function(e,i,r,o,a){let s=t(i),l=s.family;if(l.id!==e)throw Error(`Resolved request planned family ${l.id}, not ${e}`);if(!l.layout)throw Error(`No layout registered for Mermaid family ${e}`);let d=!e.startsWith("family:"),u=`${e}:final`;if(d&&!l.projectPositioned)throw new G([{strategy:u,violations:["missing final geometry projection"]}]);let c=n(i),f=globalThis.process?.env,h=em("position-cache")&&d&&"gantt"!==e&&!s.textMeasurement&&(f?.AGENTIC_MERMAID_ELK_CACHE??globalThis.AGENTIC_MERMAID_ELK_CACHE)!=="0",p=h&&r===i.source?{...r,cleanup:void 0}:r,y=h?JSON.stringify([p,i.renderOptions,i.appearance,i.familyConfig,o,"class"===e?c.paintBackendId??"backend:default":void 0,Object.entries(f??{}).filter(([e])=>e.startsWith("APL_")).sort(),ey.map(em)]):void 0,m=void 0!==y&&y.length<=65536?y:void 0;return void 0===m&&ej("positioned-layout","bypass",em("position-cache")?d?"gantt"===e?"time-dependent-family":s.textMeasurement?"custom-text-measurement":void 0===y?"elk-cache-disabled":"key-limit":"external-family":"disabled"),eD(s.textMeasurement,()=>{var t,n;let s="ascii"===i.output||"unicode"===i.output||"html"===i.output?"companion":"primary";if(a&&void 0!==m){let e=function(e,t,i){let n=e2(e,t),r=e0.get(n);if(ej("positioned-layout",r?"hit":"miss"),i&&r&&eX.has(r)){let e=Object.freeze({...r.result});return _(r.result,e),eZ.set(e,{key:n,snapshot:r,request:i}),e1.add(e),{...r,result:e}}return r}(l,m,"svg"===i.output?i:void 0);if(e?.projection){for(let t of A(e.result))ta(i,t,s);return tn.set(e.result,e.projection),e.result}}let f=void 0===m?void 0:function(e,t,i=!1){let n=e0.get(e2(e,t));if(i||ej("positioned-layout",n?"hit":"miss"),!n)return;let r=e5(n.result);return _(n.result,r),r}(l,m,a),h=[],p=f??("positioned"in(t=Z(e=>{h.push(e),ta(i,e,s)},()=>l.layout({source:r,renderOptions:c.renderOptions,...c.styleFace?{styleFace:c.styleFace}:{},...c.paintBackendId?{paintBackendId:c.paintBackendId}:{},...c.familyConfig?{familyConfig:c.familyConfig}:{},...c.familyAppearance?{familyAppearance:c.familyAppearance}:{}})))?t:{positioned:t});if(f)for(let e of A(f))ta(i,e,s);else for(let e of h)D(p,e);if(d)try{let t=l.projectPositioned({positioned:p.positioned,options:o}),i=(n={...t,kind:e},function(e){let t=[];e9(0,0,e.bounds.w,e.bounds.h)||t.push({metric:"nonFiniteGeometry",detail:`bounds ${e.bounds.w}\xd7${e.bounds.h}`});let i=(i,n,r)=>{r&&(e9(r.x,r.y,r.w,r.h)?(r.x<-.5||r.y<-.5||r.x+r.w>e.bounds.w+.5||r.y+r.h>e.bounds.h+.5)&&t.push({metric:"offCanvas",detail:"node"===i?`node ${n} at (${r.x},${r.y}) ${r.w}\xd7${r.h}`:`${i} ${n}`}):t.push({metric:"nonFiniteGeometry",detail:`${i} ${n}`}))};for(let t of e.nodes)i("node",t.id,t);for(let t of e.nodes)"hidden"!==t.labelVisibility&&"semantic"!==t.labelVisibility&&i("label",t.id,t.labelBounds);for(let t of e.edges)i("label",t.id,t.label?.bounds);for(let t of e.labels??[])"hidden"!==t.visibility&&"semantic"!==t.visibility&&i("label",t.id,t.bounds);for(let i of e.edges){let n=!1;for(let[r,o]of i.path){if(!Number.isFinite(r)||!Number.isFinite(o)){t.push({metric:"nonFiniteGeometry",detail:`edge ${i.id} path`}),n=!0;break}!n&&(r<-.5||o<-.5||r>e.bounds.w+.5||o>e.bounds.h+.5)&&(t.push({metric:"offCanvas",detail:`edge ${i.id} point (${r},${o})`}),n=!0)}}for(let t of e.groups)i("group",t.id,t);let n=e.nodes.filter(e7);for(let e=0;e<n.length;e++)for(let i=e+1;i<n.length;i++){let r=n[e],o=n[i];e9(r.x,r.y,r.w,r.h)&&e9(o.x,o.y,o.w,o.h)&&te(r,o)&&t.push({metric:"nodeOverlaps",detail:`${r.id} overlaps ${o.id}`})}let r=e6[e.kind]??"both",o=new Map(e.groups.map(e=>[e.id,e]));if("none"!==r){let i=new Map(e.nodes.map(e=>[e.id,e]));for(let n of e.groups){let e=n.parentId?o.get(n.parentId):void 0;for(let o of(e&&e9(n.x,n.y,n.w,n.h)&&e9(e.x,e.y,e.w,e.h)&&(tt(e,n,r)||t.push({metric:"groupBreaches",detail:`${n.id} outside parent ${e.id}`})),n.members)){let e=i.get(o);!e||!e9(e.x,e.y,e.w,e.h)||tt(n,e,r)||t.push({metric:"groupBreaches",detail:`${o} outside ${n.id}`})}}}for(let i=0;i<e.groups.length;i++)for(let n=i+1;n<e.groups.length;n++){let r=e.groups[i],a=e.groups[n];!e9(r.x,r.y,r.w,r.h)||!e9(a.x,a.y,a.w,a.h)||te(r,a)&&(tt(r,a)||tt(a,r)||ti(r,a,o)||ti(a,r,o)||t.push({metric:"groupOverlaps",detail:`${r.id} partially overlaps ${a.id}`}))}return{violations:t,groupById:o}}(n).violations);if(i.length)throw new G([{strategy:u,violations:i.map(e=>`${e.metric}: ${e.detail}`)}]);tn.set(p,t)}catch(e){throw e instanceof G?e:new G([{strategy:u,violations:[e instanceof Error?e.message:String(e)]}])}return f||void 0===m||(a&&"svg"===i.output&&("sequence"===e||"flowchart"===e||"state"===e)?function(e,t,i,n){e3(e,t,i,n,!1)}:function(e,t,i,n){e3(e,t,i,n,!0)})(l,m,p,tn.get(p)),p})}(e.family.id,o,o.source,{},r),r&&e1.has(a)&&tr.set(a,i),a}),eD(t(o).textMeasurement,()=>(function(i,r,o,a){var s;let l,c,f=t(i);if("scene"!==f.mode&&"family-svg"!==f.mode||!f.executionDecision)throw Error(`Resolved ${i.output} request has no graphical execution plan`);let h=i.renderOptions,p=f.family,y=(l=i.appearance.colors,c="png"===i.output&&!1!==l.embedFontImport?{...l,embedFontImport:!1}:l,{positioned:r.positioned,colors:c,resolved:n(i)}),m,g=!1,x;if("scene"===f.mode){let e=a?void 0:q("drawing",()=>tU(i,r)),n=e?void 0:q("scene",()=>(function(e,i){if("scene"!==t(e).mode)throw Error(`Resolved ${e.output} request has no Scene execution plan`);return tq(e,i)})(i,r));if(x=q("paint-certification",()=>(function(e,i){let n=tR.get(i)?.get(e)?.drawing??tU(e,i);if(n){let r=tR.get(i).get(e);if(ej("paint-certification",r.certification?"hit":"miss",void 0,"native"),r.certification)return r.certification;let o=r.evidence,a=tD(o.header,o.paint,tn.get(i),{outputSupported:!e.appearance.colors.shadow});r.certification=a;let s=Object.freeze({svg:n.svg,preparedText:n.preparedText,certification:a}),l=t(e).family.lowerScene;return r.producer===d(l)&&r.producer===u(l)?function(e,t,i){let n=eZ.get(t);if(!n||n.request!==e||e0.get(n.key)!==n.snapshot)return;let r=eX.get(n.snapshot);if(r.oversized)return ej("native-drawing","store-skipped","weight-limit");let o=r.drawingWeight??2*n.key.length+4*i.svg.length+1024,a=eQ.leastRecentlyUsed(),s=a&&eX.get(a.owner)?.lastUse,l=void 0!==s&&eY-s>=128;if(!r.locallyRepeated&&!l&&!eQ.canFit(n.key,o))return ej("native-drawing","store-skipped","drawing-budget");let d={owner:n.snapshot,drawing:i},u=2*n.key.length+ev(i,8388608)+1024;if(r.drawingWeight=u,u>8388608){r.oversized=!0,ej("native-drawing","store-skipped","weight-limit");return}r.locallyRepeated||l||eQ.canFit(n.key,u)?eQ.set(n.key,d,u):ej("native-drawing","store-skipped","drawing-budget")}(e,i,s):(ej("native-drawing","store-skipped","changed-producer"),e8(e,i,!1)),a}let r=tq(e,i),o=t_.get(i).get(e);if(ej("paint-certification",o.certification?"hit":"miss",void 0,"scene"),o.certification)return o.certification;let a=t(e),s=!e.appearance.colors.shadow&&("layout"===a.mode?"default"===e.appearance.inferredBackend:"scene"===a.mode&&a.backend?.inputName==="default");return o.certification=function(e,t,i={}){return tD(e,function(e,t){let i=tN(e,void 0),n=(e,t,r,o,a=!1,s=1,l=!0)=>{e.forEach((e,d)=>{let u=`${t}.${d}`;if("group"===e.kind){let t=e.identity??{id:e.id,role:e.role};n(e.children.map(e=>e.node),u,es(r,ea(e.transform)),Object.freeze([...o,tO(t)]),a||"conditional"===e.visibility,tb(s,tx(e.paint?.opacity)),l&&!e.transform)}else i.leaf(e,u,r,o,a,s,void 0,l)})};return n(e.parts,"scene",eo,Object.freeze([])),i.finish()}(e),t,i)}(r,tn.get(i),{outputSupported:s})})(i,r)),"strict"===h.layoutSafety&&"passed"!==x.status||"failed"===x.status&&f.backend?.inputName==="default")throw new tA(x);m=e?.svg??q("backend",()=>{let e={seed:h.seed??0,...i.appearance.styled?{style:i.appearance.style}:{}};return a?.begin(e,n),f.backend.backend.render(n,e)}),g=f.backend?.inputName==="default"&&!p.id.startsWith("family:")&&(e?.preparedText??$(n))}else{if("strict"===h.layoutSafety)throw new e("Strict layout safety requires native Scene evidence");m=q("backend",()=>p.renderSvg(y))}K(m,"backend/family SVG output");let b=eW(m,y.colors);x?.repairs.length&&f.backend?.inputName==="default"&&(b=function(e,t){let i=ec(e);if(!i)throw Error("Cannot certify a graphical output with no SVG root");let n=e.slice(i.start,i.end).replace(/\sviewBox="[^"]*"/g,""),r=` viewBox="${t.x} ${t.y} ${t.width} ${t.height}"`;return eE(e,i,n.slice(0,-1)+r+">")}(b,x.viewport)),K(b,"color-resolved SVG output"),g||(b=function(e,t){let i=function(e){let t=[],i=[],n=0;for(;n<e.length;){let r=e.indexOf("<",n);if(r<0){i.length>0&&n<e.length&&i[i.length-1].children.push({kind:"text-node",raw:e.slice(n)}),n=e.length;break}if(i.length>0&&r>n&&i[i.length-1].children.push({kind:"text-node",raw:e.slice(n,r)}),e.startsWith("\x3c!--",r)){let t=e.indexOf("--\x3e",r+4);if(t<0)return null;n=t+3;continue}let o=function(e,t){let i="";for(let n=t+1;n<e.length;n++){let t=e[n];if(i){t===i&&(i="");continue}if('"'===t||"'"===t){i=t;continue}if(">"===t)return n}return -1}(e,r);if(o<0)return null;let a=e.slice(r,o+1);if(/^<\?/.test(a)||/^<!/.test(a)){n=o+1;continue}let s=a.match(/^<\/\s*([\w:-]+)\s*>$/);if(s){let e=i.pop();if(!e||e.name!==s[1].toLowerCase())return null;e.closeStart=r,n=o+1;continue}let l=a.match(/^<\s*([\w:-]+)([\s\S]*?)(\/?)>$/);if(!l)return null;let d={kind:"element",name:l[1].toLowerCase(),attrs:l[2],openEnd:o+1,closeStart:o+1,children:[]};i.length>0?i[i.length-1].children.push(d):t.push(d),"/"!==l[3]&&i.push(d),n=o+1}return 0===i.length?t:null}(e);if(!i)return e;let n=[],r={size:0,weight:400,letterSpacing:0,mono:!1,fontStyle:"normal",fontFamily:t},o=(e,t,i,r=!1)=>{if(eV(e.attrs,"data-prepared-text"))return;let a=eG(t,e),s=r||eV(e.attrs,"data-literal-text"),l="text"===e.name&&!i,d=l||i&&eK(e);if(d&&eV(e.attrs,"textLength"))return;if(d&&!(l&&function e(t){return eU(t).some(t=>eK(t)||e(t))}(e))){let i,r,o,a=(i=[],r=!1,(o=(e,t,n)=>{let a=eG(t,e);if(!(!n&&eK(e))){if(!n&&eV(e.attrs,"textLength")){r=!0;return}for(let t of e.children)if("text-node"===t.kind){let e=eS(t.raw);e.length>0&&i.push({text:e,metrics:a})}else o(t,a,!1)}})(e,t,!0),{runs:i,blocked:r}),l=a.blocked?null:function(e,t=!1){let i=e.filter(e=>e.text.length>0);if(0===i.length||i.every(e=>0===e.text.trim().length))return null;let n=0,r=0,o=0;for(let e of i){if(!(e.metrics.size>0))return null;let i=eL(e.text).length;r>0&&i>0&&(n+=o),n+=e.metrics.mono?eh(e.text,e.metrics.size,e.metrics.letterSpacing,e.metrics.weight,e.metrics.fontStyle,e.metrics.fontFamily):t?ef(e.text,e.metrics.size,e.metrics.weight,e.metrics.fontStyle,e.metrics.fontFamily)+Math.max(0,i-1)*e.metrics.letterSpacing:ep(e.text,e.metrics.size,e.metrics.weight,e.metrics.letterSpacing,e.metrics.fontStyle,e.metrics.fontFamily),r=i,o=e.metrics.letterSpacing}return Math.round(1e3*n)/1e3}(a.runs,s);null!==l&&n.push({offset:e.openEnd-1,text:` textLength="${l}" lengthAdjust="spacingAndGlyphs" data-font-metrics="deterministic-fit"`})}let u=i||l;for(let t of eU(e))o(t,a,u,s)};for(let e of i)o(e,r,!1);let a=e;for(let e of n.sort((e,t)=>t.offset-e.offset))a=a.slice(0,e.offset)+e.text+a.slice(e.offset);return a}(b,i.appearance.font)),K(b,"font-geometry-fitted SVG output");let v=h.idPrefix??"";v&&K(b=function(e,t){if(!/^[A-Za-z0-9_.:-]+$/.test(t))throw Error("idPrefix must be non-empty and contain only ASCII letters, digits, underscore, hyphen, dot, and colon");let i=new Set;for(let t of ew(e))for(let e of t.attributes)"id"===e.name&&i.add(e.value);let n=e=>e.startsWith(t)?e:`${t}${e}`;return eF(eN(e,e=>{if("id"===e.name)return n(e.value);if("aria-labelledby"===e.name||"aria-describedby"===e.name)return e.value.split(/\s+/).map(e=>i.has(e)?n(e):e).join(" ");if(("href"===e.name||"xlink:href"===e.name)&&e.value.startsWith("#")){let t=e.value.slice(1);return i.has(t)?`#${n(t)}`:e.value}}),e=>e.replace(/url\(#([^)]+)\)/g,(e,t)=>i.has(t)?`url(#${n(t)})`:e))}(b,v),"namespaced SVG output");let k=i.source.accessibility,w="c4"===p.id?"C4 architecture diagram":void 0;(r.injectAccessibility??!0)&&(k.title||k.descr||w)&&K(b=function(e,t,i,n){let r=`${i}svg-title`,o=`${i}svg-desc`,a=[],s=[];if(t.title&&(a.push(`aria-labelledby="${r}"`),s.push(`<title id="${r}">${tG(t.title)}</title>`)),t.descr&&(a.push(`aria-describedby="${o}"`),s.push(`<desc id="${o}">${tG(t.descr)}</desc>`)),0===s.length&&!n)return e;let l=ec(e);if(!l||eM(l,"aria-labelledby")||eM(l,"aria-describedby"))return e;!n||t.title||eM(l,"aria-label")||a.push(`aria-label="${tG(n).replace(/"/g,""")}"`);let d=`${eM(l,"role")?"":' role="img"'} ${a.join(" ")}`,u=e.slice(l.start,l.end);return eE(e,l,`${u.slice(0,-1)}${d}>${s.join("")}`)}(b,k,v,w),"accessibility-projected SVG output"),a&&(b=a.finish(b)),K(b=function(e){let t=ec(e);if(!t)return e;let i=e$(e);if(0===i.length)return e;let n=`am-${function(e){let t=0xdeadbeef,i=0x41c6ce57;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t=Math.imul(t^r,0x9e3779b1),i=Math.imul(i^r,0x5f356495)}return t=Math.imul(t^t>>>16,0x85ebca6b)^Math.imul(i^i>>>13,0xc2b2ae35),i=Math.imul(i^i>>>16,0x85ebca6b)^Math.imul(t^t>>>13,0xc2b2ae35),`${(i>>>0).toString(36).padStart(7,"0")}${(t>>>0).toString(36).padStart(7,"0")}`}(e)}`,r=e;for(let e=i.length-1;e>=0;e--){let t=i[e];r=`${r.slice(0,t.start)}${function e(t,i){let n="",r=0,o=0,a,s=0;for(;r<t.length;){let l=t[r];if(a){"\\"===l?r++:l===a&&(a=void 0),r++;continue}if("/"===l&&"*"===t[r+1]){let e=t.indexOf("*/",r+2);r=e<0?t.length:e+2;continue}if('"'===l||"'"===l)a=l;else if("("===l)s++;else if(")"===l)s=Math.max(0,s-1);else if(";"===l&&0===s)n+=t.slice(o,r+1),o=r+1;else if("{"===l&&0===s){let a=function(e,t){let i=0,n;for(let r=t;r<e.length;r++){let t=e[r];if(n)"\\"===t?r++:t===n&&(n=void 0);else if("/"===t&&"*"===e[r+1]){let t=e.indexOf("*/",r+2);if(t<0)return e.length;r=t+1}else if('"'===t||"'"===t)n=t;else if("{"===t)i++;else if("}"===t&&0==--i)return r}return e.length}(t,r);n+=function(t,i,n){let r=t.match(/^(?:\s*\/\*[\s\S]*?\*\/)*/)[0],o=t.slice(r.length),a=/^\s*@([\w-]+)/.exec(o);if(a){let r=a[1].toLowerCase(),o=ts.has(r)?e(i,n):i;return`${t}{${o}}`}let s=(function(e){let t=[],i=0,n,r=0;for(let o=0;o<e.length;o++){let a=e[o];n?"\\"===a?o++:a===n&&(n=void 0):'"'===a||"'"===a?n=a:"("===a||"["===a?i++:")"===a||"]"===a?i--:","===a&&0===i&&(t.push(e.slice(r,o)),r=o+1)}return t.push(e.slice(r)),t})(o).map(e=>{let t,i;return t=e.match(/^\s*/)[0],0===(i=e.slice(t.length)).length?e:/^svg(?![\w-])/.exec(i)?`${t}svg.${n}${i.slice(3)}`:`${t}.${n} ${i}`}).join(",");return`${r}${s}{${i}}`}(t.slice(o,r),t.slice(r+1,a),i),o=r=a+1;continue}r++}return n+t.slice(o)}(r.slice(t.start,t.end),n)}${r.slice(t.end)}`}let o=r.slice(t.start,t.end),a=eM(t,"class"),s=a?`${o.slice(0,a.valueEnd-t.start)}${a.value?" ":""}${n}${o.slice(a.valueEnd-t.start)}`:`${o.slice(0,-1)} class="${n}">`;return eE(r,t,s)}((s=b,eg.test(s)?eN(s,({name:e,value:t})=>eb(e,t)):s)),"style-scoped SVG output"),h.compact&&K(b=function(e){let t=/<((?:[A-Za-z_][\w.-]*:)?(?:style|text|title|desc|metadata))\b[\s\S]*?<\/\1>/gi,i=[],n=e=>e.replace(/>\s*\r?\n\s*</g,"><"),r=0,o;for(;null!==(o=t.exec(e));)o.index>r&&i.push(n(e.slice(r,o.index))),i.push(o[0]),r=o.index+o[0].length;return r<e.length&&i.push(n(e.slice(r))),i.join("")}(b),"compacted SVG output");let M="png"===i.output?"strict":h.security,O=q("svg-security",()=>Q(b,M));return o.push(...O.diagnostics),K(b=O.svg,"final SVG output"),Object.freeze({svg:b,executionDecision:f.executionDecision,...x?{layoutCertification:x}:{}})})(o,a,s,void 0)));return function(e,t,n){let o=Object.hasOwn(t,"layoutCertification")?t.layoutCertification:void 0;return function(e,t){let i=t,n;return Object.freeze({svg:e,get receipt(){return void 0===n&&(n=i(),i=void 0),n}})}(t.svg,()=>{var a;let s=(K(a=t.svg,"graphical projection digest input"),r(JSON.stringify(a)));return Object.freeze({...i(e,n),graphicalProjectionDigest:s,executionDecision:t.executionDecision,...o?{layoutCertification:Object.freeze({...o,outputDigest:s})}:{}})})}(o,c,s)})(o))}(y)}catch(n){let e=H(n),t=e?e.load:n?.loadHtmlEntityTable,i=e?"ELK"===e.dependency||"YAML"===e.dependency||"Agentic layout"===e.dependency||"Forest layout"===e.dependency?e.dependency:void 0:"function"==typeof t?"HTML entities":void 0;if(!i||"function"!=typeof t||m.has(i)||[...m.values()].includes(t))throw n;m.set(i,t),await t()}}export{tV as renderLoadedFamilySvg,tK as renderLoadedFamilySvgWithReceipt};
|