codeplane-darwin-x64-baseline 29.0.19 → 29.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/bin/codeplane +0 -0
  2. package/bin/runtime/tui/{_baseUniq-CKZsAae7-amy2zxzj.js → _baseUniq-CIdKO3dq-saxa3280.js} +1 -1
  3. package/bin/runtime/tui/{ar-DWS3OItw-dt0zkv78.js → ar-BmGaE6dF-q6t3706d.js} +1 -1
  4. package/bin/runtime/tui/{ar-BZWjfbwB-qtqfb7fg.js → ar-DWiV1g-n-1af1nyxy.js} +1 -1
  5. package/bin/runtime/tui/{arc-DMMoS4Sa-03vsc6n3.js → arc-DqLXbJ-l-1yzq3v1g.js} +1 -1
  6. package/bin/runtime/tui/{architectureDiagram-Q4EWVU46-By5q-GjB-1yar27d6.js → architectureDiagram-Q4EWVU46-9rt-8b6E-wk53k0jh.js} +1 -1
  7. package/bin/runtime/tui/{blockDiagram-DXYQGD6D-COiddImv-pv135sbv.js → blockDiagram-DXYQGD6D-Wi5D5jIb-83qd40vp.js} +1 -1
  8. package/bin/runtime/tui/{br-CYRyU94d-sdhx3xkp.js → br-C0Yr4nSr-bs9cbqgb.js} +1 -1
  9. package/bin/runtime/tui/{br-DkTIl03T-n4zbcp2r.js → br-CJxfXkhA-h51k61qx.js} +1 -1
  10. package/bin/runtime/tui/{bs-IyM3ti4T-ykpjn53f.js → bs-CEFL9l5a-k8vrktf8.js} +1 -1
  11. package/bin/runtime/tui/{bs-BoIQtU4H-yv99fc6q.js → bs-CaCKWAeY-xew7v80s.js} +1 -1
  12. package/bin/runtime/tui/{c4Diagram-AHTNJAMY-CuWIN9yJ-rkrgtknt.js → c4Diagram-AHTNJAMY-Cnx6lSY6-hfk7ydjz.js} +1 -1
  13. package/bin/runtime/tui/channel-CRd61DfB-a84z4rad.js +1 -0
  14. package/bin/runtime/tui/{chunk-4BX2VUAB-D2vOyEOF-m6f9p1ek.js → chunk-4BX2VUAB-DdU5eMNC-r5g39pnj.js} +1 -1
  15. package/bin/runtime/tui/{chunk-4TB4RGXK-QDNaQXp8-aqnrpxkh.js → chunk-4TB4RGXK-DkOtUh9r-1g0b4dt8.js} +1 -1
  16. package/bin/runtime/tui/{chunk-55IACEB6-CKSwUx1G-tvns5bk7.js → chunk-55IACEB6-CU9uIPGP-rh65kk9d.js} +1 -1
  17. package/bin/runtime/tui/{chunk-EDXVE4YY-NnNsBfoC-wm46mzn6.js → chunk-EDXVE4YY-DqmH469b-5ymhdtxk.js} +1 -1
  18. package/bin/runtime/tui/{chunk-FMBD7UC4-DEcg0ekQ-wat1s63x.js → chunk-FMBD7UC4-BMB1F1VO-vy5p5w7r.js} +1 -1
  19. package/bin/runtime/tui/{chunk-OYMX7WX6-BkbRIi1Q-zm4wak80.js → chunk-OYMX7WX6-mS1fhc79-0fg9mpxa.js} +1 -1
  20. package/bin/runtime/tui/{chunk-QZHKN3VN-Bb-kvwI_-pgpf90wx.js → chunk-QZHKN3VN-B_uJ2Sul-q596hvme.js} +1 -1
  21. package/bin/runtime/tui/{chunk-YZCP3GAM-D5Jrc8Wg-2t7drtfm.js → chunk-YZCP3GAM-X3zoXePk-wt6cc28k.js} +1 -1
  22. package/bin/runtime/tui/classDiagram-6PBFFD2Q-B2auL2tY-ve962fat.js +1 -0
  23. package/bin/runtime/tui/classDiagram-v2-HSJHXN6E-B2auL2tY-ve962fat.js +1 -0
  24. package/bin/runtime/tui/clone-BzwFlJAo-xaa46y8s.js +1 -0
  25. package/bin/runtime/tui/{cose-bilkent-S5V4N54A-Be0H7JB8-anyaen8e.js → cose-bilkent-S5V4N54A-COxeQzun-09sz9bh5.js} +1 -1
  26. package/bin/runtime/tui/{da-BEIVgvZZ-d2k49mqp.js → da-CLGt8t51-fzwrsjwy.js} +1 -1
  27. package/bin/runtime/tui/{da-D9qz0rjo-kjc2r6bx.js → da-DYi2YCQi-k85nfe73.js} +1 -1
  28. package/bin/runtime/tui/{dagre-KV5264BT-BTpulNI0-001q0wcg.js → dagre-KV5264BT-BgAj3J6z-q3rxwrwn.js} +1 -1
  29. package/bin/runtime/tui/{de-DwHk2dT7-60bw2v0d.js → de-27e6V80Y-9dnj28p9.js} +1 -1
  30. package/bin/runtime/tui/{de-BvGtd_2t-dt9neae0.js → de-BDLaTYvp-wvmhyndj.js} +1 -1
  31. package/bin/runtime/tui/{diagram-5BDNPKRD-3AKY6Uzn-csrvjcvc.js → diagram-5BDNPKRD-B595d8w6-sdjnp45b.js} +1 -1
  32. package/bin/runtime/tui/{diagram-G4DWMVQ6-Cu0J7ePJ-fgm0m496.js → diagram-G4DWMVQ6-GH5GGsQB-13f0w3x6.js} +1 -1
  33. package/bin/runtime/tui/{diagram-MMDJMWI5-_lAEwwhe-vba3das7.js → diagram-MMDJMWI5-iFQuIw9r-sz4jv8vy.js} +1 -1
  34. package/bin/runtime/tui/{diagram-TYMM5635-DZ7Gjcd4-g32kra4a.js → diagram-TYMM5635-t1HmZT7K-ys2esat3.js} +1 -1
  35. package/bin/runtime/tui/{dialog-connect-provider-DmusNzFo-6p95j26n.js → dialog-connect-provider-CbBxytwI-q3p86cwv.js} +2 -2
  36. package/bin/runtime/tui/{dialog-edit-project-p56AjST6-pssnmvd1.js → dialog-edit-project-CX76A6rc-58d95507.js} +1 -1
  37. package/bin/runtime/tui/{dialog-fork-DWmHX3bN-n38stabf.js → dialog-fork-CG-wOlV3-xsxbpcme.js} +1 -1
  38. package/bin/runtime/tui/{dialog-manage-models-l5oINHkE-6580qjkv.js → dialog-manage-models-BFS05VVX-wg4qb1qy.js} +1 -1
  39. package/bin/runtime/tui/{dialog-quick-switcher-CBfhHLhX-8y791cz7.js → dialog-quick-switcher-Bvm8ie5S-x84spk50.js} +1 -1
  40. package/bin/runtime/tui/{dialog-select-directory-Cv7O9BIN-gf2c3y12.js → dialog-select-directory-BgyTQJRP-8f8rm1ms.js} +1 -1
  41. package/bin/runtime/tui/{dialog-select-file-DBC_hrA3-kt14p0jy.js → dialog-select-file-B1bCyEnR-w76wavza.js} +1 -1
  42. package/bin/runtime/tui/{dialog-select-mcp-NJhjvEbx-mwc2hsjg.js → dialog-select-mcp-DWrPE3wB-6jw1gxs7.js} +1 -1
  43. package/bin/runtime/tui/{dialog-select-model-unpaid-DgDw-CXo-hsatq0gd.js → dialog-select-model-unpaid-DxRiJHnB-1e51xzvn.js} +2 -2
  44. package/bin/runtime/tui/{dialog-select-provider-B92vIz_h-zqk042wr.js → dialog-select-provider-C-JEreLC-a3hzzr95.js} +1 -1
  45. package/bin/runtime/tui/{dialog-select-server-dfebswC4-7q9hjg2d.js → dialog-select-server-DGTNSgKw-hkzncy6h.js} +1 -1
  46. package/bin/runtime/tui/{erDiagram-SMLLAGMA-DP5cAA3n-bagy0xnn.js → erDiagram-SMLLAGMA-Dkutm0UC-mr8b5cr2.js} +1 -1
  47. package/bin/runtime/tui/{es-DBeXBNfl-bfw45c04.js → es--JMv8T7K-4n7x3j2t.js} +1 -1
  48. package/bin/runtime/tui/{es-DLzj3tOR-bv7qbg0d.js → es-KW_Zclw5-sm6qt3en.js} +1 -1
  49. package/bin/runtime/tui/{file-icon-WDJkIQUb-e6bydd82.js → file-icon-hzEOBp5u-wzb45m8v.js} +1 -1
  50. package/bin/runtime/tui/{flowDiagram-DWJPFMVM-DQuJBuvD-sy6zm4y8.js → flowDiagram-DWJPFMVM-Dxq5CqUW-55cxb8yg.js} +1 -1
  51. package/bin/runtime/tui/{fr-DlY6ywao-jv4c74mw.js → fr-BKYYu4_6-q6bgdt7z.js} +1 -1
  52. package/bin/runtime/tui/{fr-CT5dh1GO-kczghwcx.js → fr-EPg9myXQ-scb4s2xb.js} +1 -1
  53. package/bin/runtime/tui/{ganttDiagram-T4ZO3ILL-DQN0SBG4-y4ba06b4.js → ganttDiagram-T4ZO3ILL-BMFQ_DA_-wv9dzvbt.js} +1 -1
  54. package/bin/runtime/tui/{ghostty-web-BsEg925m-x58q6dx0.js → ghostty-web-DF5QFCvM-vyezzh2f.js} +1 -1
  55. package/bin/runtime/tui/{gitGraphDiagram-UUTBAWPF-_wDXoco0-bhmdgg7v.js → gitGraphDiagram-UUTBAWPF-CXFHqzP_-t4byf1er.js} +1 -1
  56. package/bin/runtime/tui/{graph-B5741XBm-gsp5acb1.js → graph-CdxUj6yb-scg0vj1a.js} +1 -1
  57. package/bin/runtime/tui/{home-DmQx2UFO-n4f6az0b.js → home-BxUuIoXQ-ppzcm720.js} +1 -1
  58. package/bin/runtime/tui/{index-CPokXzBk-mtscz30j.js → index-CaPWFEmi-2z8vnrgq.js} +6 -6
  59. package/bin/runtime/tui/{index-e6kmsrda.html → index-fanx7c5q.html} +1 -1
  60. package/bin/runtime/tui/{infoDiagram-42DDH7IO-C_a3CFEZ-z08bkk68.js → infoDiagram-42DDH7IO-gNmXJmyB-s5qv9bvz.js} +1 -1
  61. package/bin/runtime/tui/{ishikawaDiagram-UXIWVN3A-bKIAb2Qr-bdy3prj1.js → ishikawaDiagram-UXIWVN3A-DB4uZHja-e8hkd3zx.js} +1 -1
  62. package/bin/runtime/tui/{ja-BvuREAZm-gk37bjmy.js → ja-BflM-d8c-t7h818p0.js} +1 -1
  63. package/bin/runtime/tui/{ja-J2rvy9Sm-vgn550cs.js → ja-CJTo4KkK-zz1pfe3t.js} +1 -1
  64. package/bin/runtime/tui/{journeyDiagram-VCZTEJTY-BfBXXSNc-843bw9m4.js → journeyDiagram-VCZTEJTY-C2cCx7a9-n6nfmvss.js} +1 -1
  65. package/bin/runtime/tui/{kanban-definition-6JOO6SKY-2VedazDB-g1z2s2x0.js → kanban-definition-6JOO6SKY-CNIEkQb7-tejfkajm.js} +1 -1
  66. package/bin/runtime/tui/{ko-C4ctDXLT-t5qa1fzr.js → ko-1AesI1gp-7w8kmsd8.js} +1 -1
  67. package/bin/runtime/tui/{ko-3NJR9qON-j403fgwv.js → ko-wnATYZhS-e8rh7bnb.js} +1 -1
  68. package/bin/runtime/tui/{layout-resSDDfp-szpqjrwd.js → layout-CsyKM6QG-7fdxg3x9.js} +1 -1
  69. package/bin/runtime/tui/{linear-C4n34Dvy-xx9267bv.js → linear-B97-2TdH-311hnq70.js} +1 -1
  70. package/bin/runtime/tui/{list-B-BljgiC-zjyn8pzq.js → list-BiQMzfJm-c8sbm1ws.js} +1 -1
  71. package/bin/runtime/tui/{mermaid.core-BYfeCraQ-wvjh9cwb.js → mermaid.core-B1DAMRyG-23wemngf.js} +5 -5
  72. package/bin/runtime/tui/{min-BGmgVSVZ-2gk8fzng.js → min-BxM1U1Fg-21yb3amj.js} +1 -1
  73. package/bin/runtime/tui/{mindmap-definition-QFDTVHPH-DrNpZjMx-x4p4scna.js → mindmap-definition-QFDTVHPH-CcS-c13S-b9v8r98c.js} +1 -1
  74. package/bin/runtime/tui/{no-DKoerABz-khva2d4e.js → no-bayaWMMG-fkj8cwdj.js} +1 -1
  75. package/bin/runtime/tui/{no-D0QS5gIq-bgbqx72c.js → no-zt964wOK-kasce13c.js} +1 -1
  76. package/bin/runtime/tui/node-main.js +117 -117
  77. package/bin/runtime/tui/{notifications-yiDqvVWb-mg5jjzqq.js → notifications-Can6MxXX-aw5q9fhj.js} +1 -1
  78. package/bin/runtime/tui/{pieDiagram-DEJITSTG-D13bv9Xl-pegjjyb0.js → pieDiagram-DEJITSTG-Doif1hoz-3b07tqbh.js} +1 -1
  79. package/bin/runtime/tui/{pl-fQsf_cNV-e5he2t1p.js → pl-4fUPofNs-237e1s4t.js} +1 -1
  80. package/bin/runtime/tui/{pl-C6Uj0x5G-jwefyv8g.js → pl-DP31XAiJ-tn04m90e.js} +1 -1
  81. package/bin/runtime/tui/{provider-icon-7kFt_4lz-fp5dsjgn.js → provider-icon-mQ6o_ygz-ygz739x5.js} +1 -1
  82. package/bin/runtime/tui/{quadrantDiagram-34T5L4WZ-zX5wMAeQ-5frczs12.js → quadrantDiagram-34T5L4WZ-DzCsn8oz-66jhgzt4.js} +1 -1
  83. package/bin/runtime/tui/{requirementDiagram-MS252O5E-t7b6HUfP-ymfqvzkn.js → requirementDiagram-MS252O5E-3SSg0glz-j59wp495.js} +1 -1
  84. package/bin/runtime/tui/{ru-BA0rrWOy-1hhhsnck.js → ru-DaitQUn1-hagr69y5.js} +1 -1
  85. package/bin/runtime/tui/{ru-CaqP6-Hd-dvf7kd6h.js → ru-DjsUX_Mx-m7ckn8dk.js} +1 -1
  86. package/bin/runtime/tui/{sankeyDiagram-XADWPNL6-9EFqtb_N-9dcd7jys.js → sankeyDiagram-XADWPNL6-mWMx9G9E-4f71xj48.js} +1 -1
  87. package/bin/runtime/tui/{sequenceDiagram-FGHM5R23-oiFZnj1o-xbyqyx7r.js → sequenceDiagram-FGHM5R23-0Ri6_7zP-k17t9yk8.js} +1 -1
  88. package/bin/runtime/tui/{session-BmQ21D29-x4hy8ayr.js → session-BV0LX606-j11ppydf.js} +6 -6
  89. package/bin/runtime/tui/{settings-Bdh9G_Vp-0rvn4ep5.js → settings-CaQrQUx2-jhes3jwj.js} +1 -1
  90. package/bin/runtime/tui/{stateDiagram-FHFEXIEX-CRUp1geZ-43rkr1eb.js → stateDiagram-FHFEXIEX-fwQ5rVuv-ecabdwkx.js} +1 -1
  91. package/bin/runtime/tui/stateDiagram-v2-QKLJ7IA2-Dwy86PJv-fgm1z51m.js +1 -0
  92. package/bin/runtime/tui/{th-X36C4Enc-6ydpve98.js → th-BS1uSHlN-gaxxaqr8.js} +1 -1
  93. package/bin/runtime/tui/{th-DtVRtACI-kqj0dgr9.js → th-DjONqhgk-72te62ev.js} +1 -1
  94. package/bin/runtime/tui/{timeline-definition-GMOUNBTQ-DfOMe5W2-99dkaa7m.js → timeline-definition-GMOUNBTQ-D_Neh8bS-f9qz8qj3.js} +1 -1
  95. package/bin/runtime/tui/{tr-Dz0LfA8h-y50k3ws9.js → tr-D7JUDkNG-trybtksg.js} +1 -1
  96. package/bin/runtime/tui/{tr-Bz5jwN7v-dgeqqq5m.js → tr-DHKVC_SD-t7crfnsr.js} +1 -1
  97. package/bin/runtime/tui/{vennDiagram-DHZGUBPP-BA-4dB5--nx8ybcnr.js → vennDiagram-DHZGUBPP-fIOdUHTG-bm8beekk.js} +1 -1
  98. package/bin/runtime/tui/{wardley-RL74JXVD-CXrPLuRI-ttzthp46.js → wardley-RL74JXVD-mp486ivj-s1bcrv2m.js} +1 -1
  99. package/bin/runtime/tui/{wardleyDiagram-NUSXRM2D-BwzCJvO--jp7fvn8w.js → wardleyDiagram-NUSXRM2D-CbulH8KL-9vtmgc00.js} +1 -1
  100. package/bin/runtime/tui/{xychartDiagram-5P7HB3ND-Czb-iER0-z9ypyv26.js → xychartDiagram-5P7HB3ND-5c4vGFpm-4ajepfh1.js} +1 -1
  101. package/bin/runtime/tui/{zh-6RMNNK9t-3qhrp0e6.js → zh--EusBuW5-v3jgdrns.js} +1 -1
  102. package/bin/runtime/tui/{zh-zNhqkXA3-sv32qvvj.js → zh-BdQ5rFUE-gq6r6pg6.js} +1 -1
  103. package/bin/runtime/tui/{zht-C8fAvl_9-nzzhmvsc.js → zht-C2Bj8Y3u-j4mn0ty9.js} +1 -1
  104. package/bin/runtime/tui/{zht-SA4HMWzQ-9a7e372p.js → zht-uBUhPDWj-tabqnar8.js} +1 -1
  105. package/package.json +1 -1
  106. package/bin/runtime/tui/channel-CBN6o8Mh-6mc5pb57.js +0 -1
  107. package/bin/runtime/tui/classDiagram-6PBFFD2Q-DCY7sQQa-jfnazp9n.js +0 -1
  108. package/bin/runtime/tui/classDiagram-v2-HSJHXN6E-DCY7sQQa-jfnazp9n.js +0 -1
  109. package/bin/runtime/tui/clone-DFOVzhNw-9jnxj7cm.js +0 -1
  110. package/bin/runtime/tui/stateDiagram-v2-QKLJ7IA2-DW1b1IPu-0wqkajks.js +0 -1
@@ -1,3 +1,3 @@
1
- import{d as e}from"./index-CPokXzBk.js";const a={"command.category.suggested":"Önerilen","command.category.view":"Görünüm","command.category.project":"Proje","command.category.provider":"Sağlayıcı","command.category.server":"Sunucu","command.category.session":"Oturum","command.category.theme":"Tema","command.category.language":"Dil","command.category.file":"Dosya","command.category.context":"Bağlam","command.category.agent":"Ajan","command.category.permissions":"İzinler","command.category.workspace":"Çalışma Alanı","command.category.settings":"Ayarlar","theme.scheme.system":"Sistem","theme.scheme.light":"Açık","theme.scheme.dark":"Koyu","command.sidebar.toggle":"Kenar çubuğunu aç/kapat","command.project.open":"Proje aç","command.provider.connect":"Sağlayıcı bağla","command.server.switch":"Sunucu değiştir","command.settings.open":"Ayarları aç","command.session.previous":"Önceki oturum","command.session.next":"Sonraki oturum","command.session.previous.unseen":"Önceki okunmamış oturum","command.session.next.unseen":"Sonraki okunmamış oturum","command.session.archive":"Oturumu arşivle","command.palette":"Komut paleti","command.theme.cycle":"Tema değiştir","command.theme.set":"Tema kullan: {{theme}}","command.theme.scheme.cycle":"Renk şemasını değiştir","command.theme.scheme.set":"Renk şeması kullan: {{scheme}}","command.language.cycle":"Dil değiştir","command.language.set":"Dil kullan: {{language}}","command.session.new":"Yeni oturum","command.file.open":"Dosya aç","command.tab.close":"Sekmeyi kapat","command.context.addSelection":"Seçimi bağlama ekle","command.context.addSelection.description":"Mevcut dosyadan seçili satırları ekle","command.input.focus":"Girişi odakla","command.terminal.toggle":"Terminali aç/kapat","command.fileTree.toggle":"Dosya ağacını aç/kapat","command.review.toggle":"İncelemeyi aç/kapat","command.terminal.new":"Yeni terminal","command.terminal.new.description":"Yeni bir terminal sekmesi oluştur","command.steps.toggle":"Adımları aç/kapat","command.steps.toggle.description":"Mevcut mesaj için adımları göster veya gizle","command.message.previous":"Önceki mesaj","command.message.previous.description":"Önceki kullanıcı mesajına git","command.message.next":"Sonraki mesaj","command.message.next.description":"Sonraki kullanıcı mesajına git","command.model.choose":"Model seç","command.model.choose.description":"Farklı bir model seç","command.mcp.toggle":"MCP'leri aç/kapat","command.mcp.toggle.description":"MCP'leri aç/kapat","command.agent.cycle":"Ajan değiştir","command.agent.cycle.description":"Sonraki ajana geç","command.agent.cycle.reverse":"Ajanı geri değiştir","command.agent.cycle.reverse.description":"Önceki ajana geç","command.model.variant.cycle":"Düşünme eforu değiştir","command.model.variant.cycle.description":"Sonraki efor seviyesine geç","command.prompt.mode.shell":"Kabuk","command.prompt.mode.normal":"Komut","command.permissions.autoaccept.enable":"Düzenlemeleri otomatik kabul et","command.permissions.autoaccept.disable":"Otomatik kabulü durdur","command.workspace.toggle":"Çalışma alanlarını aç/kapat","command.workspace.toggle.description":"Kenar çubuğunda birden fazla çalışma alanını göster veya gizle","command.session.undo":"Geri al","command.session.undo.description":"Son mesajı geri al","command.session.redo":"Yinele","command.session.redo.description":"Son geri alınan mesajı yinele","command.session.compact":"Oturumu sıkıştır","command.session.compact.description":"Bağlam boyutunu azaltmak için oturumu özetle","command.session.fork":"Mesajdan dallandır","command.session.fork.description":"Önceki bir mesajdan yeni oturum oluştur","command.session.share":"Oturumu paylaş","command.session.share.description":"Bu oturumu paylaş ve URL'yi panoya kopyala","command.session.unshare":"Paylaşımı kaldır","command.session.unshare.description":"Bu oturumun paylaşımını durdur","palette.search.placeholder":"Dosya, komut ve oturum ara","palette.empty":"Sonuç bulunamadı","palette.group.commands":"Komutlar","palette.group.files":"Dosyalar","dialog.provider.search.placeholder":"Sağlayıcı ara","dialog.provider.empty":"Sağlayıcı bulunamadı","dialog.provider.group.popular":"Popüler","dialog.provider.group.other":"Diğer","dialog.provider.tag.recommended":"Önerilen","dialog.provider.codeplane.note":"Claude, GPT, Gemini ve daha fazlasını içeren seçilmiş modeller","dialog.provider.codeplane.tagline":"Güvenilir optimize edilmiş modeller","dialog.provider.anthropic.note":"Anthropic API anahtarıyla bağlan","dialog.provider.copilot.note":"GitHub Copilot üzerinden kodlama yardımı için yapay zekâ modelleri","dialog.provider.openai.note":"Hızlı ve yetenekli genel yapay zekâ görevleri için GPT modelleri","dialog.provider.google.note":"Hızlı ve yapılandırılmış yanıtlar için Gemini modelleri","dialog.provider.openrouter.note":"Tek bir sağlayıcıdan tüm desteklenen modellere eriş","dialog.provider.vercel.note":"Akıllı yönlendirme ile yapay zekâ modellerine birleşik erişim","dialog.model.select.title":"Model seç","dialog.model.search.placeholder":"Model ara","dialog.model.empty":"Model sonucu yok","dialog.model.manage":"Modelleri yönet","dialog.model.manage.description":"Model seçicide hangi modellerin görüneceğini özelleştirin.","dialog.model.manage.provider.toggle":"Tüm {{provider}} modellerini aç/kapat","dialog.model.unpaid.freeModels.title":"Codeplane tarafından sunulan ücretsiz modeller","dialog.model.unpaid.addMore.title":"Popüler sağlayıcılardan daha fazla model ekleyin","dialog.provider.viewAll":"Daha fazla sağlayıcı göster","provider.connect.title":"{{provider}} bağla","provider.connect.title.anthropicProMax":"Claude Pro/Max ile giriş yap","provider.connect.selectMethod":"{{provider}} için giriş yöntemini seçin.","provider.connect.method.apiKey":"API anahtarı","provider.connect.status.inProgress":"Yetkilendirme devam ediyor...","provider.connect.status.waiting":"Yetkilendirme bekleniyor...","provider.connect.status.failed":"Yetkilendirme başarısız: {{error}}","provider.connect.apiKey.description":"Hesabınızı bağlamak ve Codeplane'da {{provider}} modellerini kullanmak için {{provider}} API anahtarınızı girin.","provider.connect.apiKey.label":"{{provider}} API anahtarı","provider.connect.apiKey.placeholder":"API anahtarı","provider.connect.apiKey.required":"API anahtarı gerekli","provider.connect.oauth.code.visit.prefix":"Lütfen ","provider.connect.oauth.code.visit.link":"bu bağlantıyı","provider.connect.oauth.code.visit.suffix":" ziyaret edin ve hesabınızı bağlamak, ayrıca Codeplane'da {{provider}} modellerini kullanmak için yetkilendirme kodunuzu alın.","provider.connect.oauth.code.label":"{{method}} yetkilendirme kodu","provider.connect.oauth.code.placeholder":"Yetkilendirme kodu","provider.connect.oauth.code.required":"Yetkilendirme kodu gerekli","provider.connect.oauth.code.invalid":"Geçersiz yetkilendirme kodu","provider.connect.oauth.auto.visit.prefix":"Lütfen ","provider.connect.oauth.auto.visit.link":"bu bağlantıyı","provider.connect.oauth.auto.visit.suffix":" ziyaret edin, ardından hesabınızı bağlamak ve Codeplane'da {{provider}} modellerini kullanmak için aşağıdaki kodu girin.","provider.connect.oauth.auto.confirmationCode":"Onay kodu","provider.connect.toast.connected.title":"{{provider}} bağlandı","provider.connect.toast.connected.description":"{{provider}} modelleri artık kullanımda.","provider.custom.title":"Özel sağlayıcı","provider.custom.description.prefix":"OpenAI uyumlu bir sağlayıcı yapılandırın. ","provider.custom.description.link":"Sağlayıcı yapılandırma dökümanları","provider.custom.description.suffix":" sayfasına bakın.","provider.custom.field.providerID.label":"Sağlayıcı kimlik","provider.custom.field.providerID.placeholder":"saglayicim","provider.custom.field.providerID.description":"Küçük harfler, rakamlar, tire veya alt çizgi","provider.custom.field.name.label":"Görünen ad","provider.custom.field.name.placeholder":"Yapay Zekâ Sağlayıcım","provider.custom.field.baseURL.label":"Temel URL","provider.custom.field.baseURL.placeholder":"https://api.saglayicim.com/v1","provider.custom.field.apiKey.label":"API anahtarı","provider.custom.field.apiKey.placeholder":"API anahtarı","provider.custom.field.apiKey.description":"İsteğe bağlı. Kimlik doğrulamayı başlıklar ile yönetiyorsanız boş bırakın.","provider.custom.models.label":"Modeller","provider.custom.models.id.label":"Kimlik","provider.custom.models.id.placeholder":"model-kimlik","provider.custom.models.name.label":"Ad","provider.custom.models.name.placeholder":"Görünen Ad","provider.custom.models.remove":"Modeli kaldır","provider.custom.models.add":"Model ekle","provider.custom.headers.label":"Başlıklar (isteğe bağlı)","provider.custom.headers.key.label":"Başlık","provider.custom.headers.key.placeholder":"Başlık-Adı","provider.custom.headers.value.label":"Değer","provider.custom.headers.value.placeholder":"değer","provider.custom.headers.remove":"Başlığı kaldır","provider.custom.headers.add":"Başlık ekle","provider.custom.error.providerID.required":"Sağlayıcı kimlik gerekli","provider.custom.error.providerID.format":"Küçük harf, rakam, tire veya alt çizgi kullanın","provider.custom.error.providerID.exists":"Bu sağlayıcı kimlik zaten mevcut","provider.custom.error.name.required":"Görünen ad gerekli","provider.custom.error.baseURL.required":"Temel URL gerekli","provider.custom.error.baseURL.format":"http:// veya https:// ile başlamalı","provider.custom.error.required":"Gerekli","provider.custom.error.duplicate":"Tekrar","provider.disconnect.toast.disconnected.title":"{{provider}} bağlantısı kesildi","provider.disconnect.toast.disconnected.description":"{{provider}} modelleri artık kullanılabilir değil.","model.tag.free":"Ücretsiz","model.tag.latest":"En yeni","model.input.text":"metin","model.input.image":"görsel","model.input.audio":"ses","model.tooltip.allows":"Kabul eder: {{inputs}}","model.tooltip.reasoning.allowed":"Akıl yürütme destekler","model.tooltip.reasoning.none":"Akıl yürütme yok","model.tooltip.context":"Bağlam limiti {{limit}}","common.search.placeholder":"Ara","common.goBack":"Geri git","common.goForward":"İleri git","common.loading":"Yükleniyor","common.cancel":"İptal","common.connect":"Bağlan","common.disconnect":"Bağlantı Kes","common.continue":"Gönder","common.submit":"Gönder","common.save":"Kaydet","common.saving":"Kaydediliyor...","common.default":"Varsayılan","common.attachment":"ek","prompt.placeholder.shell":"Kabuk komutu girin... {{example}}","prompt.placeholder.normal":'Bir şeyler sorun... "{{example}}"',"prompt.placeholder.simple":"Bir şeyler sorun...","prompt.placeholder.summarizeComments":"Yorumları özetle…","prompt.placeholder.summarizeComment":"Yorumu özetle…","prompt.mode.shell":"Kabuk","prompt.mode.normal":"Komut","prompt.mode.shell.exit":"çıkmak için esc","prompt.example.1":"Kod tabanındaki bir TODO'yu düzelt","prompt.example.2":"Bu projenin teknoloji yığını nedir?","prompt.example.3":"Bozuk testleri düzelt","prompt.example.4":"Kimlik doğrulamanın nasıl çalıştığını açıkla","prompt.example.5":"Güvenlik açıkları bul ve düzelt","prompt.example.6":"Kullanıcı servisi için birim testleri ekle","prompt.example.7":"Bu fonksiyonu daha okunabilir hale getir","prompt.example.8":"Bu hata ne anlama geliyor?","prompt.example.9":"Bu sorunu ayıklamama yardım et","prompt.example.10":"API dokümantasyonu oluştur","prompt.example.11":"Veritabanı sorgularını optimize et","prompt.example.12":"Girdi doğrulama ekle","prompt.example.13":"İçin yeni bir bileşen oluştur...","prompt.example.14":"Bu projeyi nasıl dağıtabilirim?","prompt.example.15":"Kodumu en iyi uygulamalar için incele","prompt.example.16":"Bu fonksiyona hata yönetimi ekle","prompt.example.17":"Bu regex kalıbını açıkla","prompt.example.18":"Bunu TypeScript'e dönüştür","prompt.example.19":"Kod tabanı boyunca loglama ekle","prompt.example.20":"Hangi bağımlılıklar güncellenmemiş?","prompt.example.21":"Bir göç betiği yazmama yardım et","prompt.example.22":"Bu uç nokta için önbellekleme uygula","prompt.example.23":"Bu listeye sayfalama ekle","prompt.example.24":"İçin bir CLI komutu oluştur...","prompt.example.25":"Ortam değişkenleri burada nasıl çalışıyor?","prompt.popover.emptyResults":"Eşleşen sonuç yok","prompt.popover.emptyCommands":"Eşleşen komut yok","prompt.dropzone.label":"Resimleri, PDF'leri veya metin dosyalarını buraya bırakın","prompt.dropzone.file.label":"@bahsetmek için dosyayı bırakın","prompt.slash.badge.custom":"özel","prompt.slash.badge.skill":"beceri","prompt.context.active":"aktif","prompt.context.includeActiveFile":"Aktif dosyayı dahil et","prompt.context.removeActiveFile":"Aktif dosyayı bağlamdan çıkar","prompt.context.removeFile":"Dosyayı bağlamdan çıkar","prompt.action.attachFile":"Dosya ekle","prompt.attachment.remove":"Eki kaldır","prompt.action.send":"Gönder","prompt.action.stop":"Durdur","prompt.toast.pasteUnsupported.title":"Desteklenmeyen ek","prompt.toast.pasteUnsupported.description":"Buraya yalnızca resimler, PDF'ler veya metin dosyaları eklenebilir.","prompt.toast.modelAgentRequired.title":"Bir ajan ve model seçin","prompt.toast.modelAgentRequired.description":"Komut göndermeden önce bir ajan ve model seçin.","prompt.toast.worktreeCreateFailed.title":"Çalışma ağacı oluşturulamadı","prompt.toast.sessionCreateFailed.title":"Oturum oluşturulamadı","prompt.toast.shellSendFailed.title":"Kabuk komutu gönderilemedi","prompt.toast.commandSendFailed.title":"Komut gönderilemedi","prompt.toast.promptSendFailed.title":"Komut gönderilemedi","prompt.toast.promptSendFailed.description":"Oturum alınamadı","dialog.mcp.title":"MCP'ler","dialog.mcp.description":"{{total}} içerisinden {{enabled}} etkin","dialog.mcp.empty":"Yapılandırılmış MCP yok","dialog.lsp.empty":"LSP'ler dosya türlerinden otomatik algılanır","dialog.plugins.empty":"Eklentiler codeplane.json içinde yapılandırılır","mcp.status.connected":"bağlı","mcp.status.failed":"başarısız","mcp.status.needs_auth":"kimlik doğrulama gerekli","mcp.status.disabled":"devre dışı","dialog.fork.empty":"Dallandırılacak mesaj yok","dialog.directory.search.placeholder":"Klasör ara","dialog.directory.empty":"Klasör bulunamadı","dialog.server.title":"Sunucular","dialog.server.description":"Bu uygulamanın hangi Codeplane sunucusuna bağlanacağını değiştirin.","dialog.server.search.placeholder":"Sunucu ara","dialog.server.empty":"Henüz sunucu yok","dialog.server.add.title":"Sunucu ekle","dialog.server.add.url":"Sunucu URL'si","dialog.server.add.error":"Sunucuya bağlanılamadı","dialog.server.add.checking":"Kontrol ediliyor...","dialog.server.add.button":"Sunucu ekle","dialog.server.add.name":"Sunucu adı (isteğe bağlı)","dialog.server.add.username":"Kullanıcı adı (isteğe bağlı)","dialog.server.add.password":"Şifre (isteğe bağlı)","dialog.server.edit.title":"Sunucuyu düzenle","dialog.server.default.title":"Varsayılan sunucu","dialog.server.default.description":"Uygulama başlatıldığında yerel sunucu başlatmak yerine bu sunucuya bağlan. Yeniden başlatma gerektirir.","dialog.server.default.none":"Sunucu seçilmedi","dialog.server.default.set":"Mevcut sunucuyu varsayılan olarak ayarla","dialog.server.default.clear":"Temizle","dialog.server.action.remove":"Sunucuyu kaldır","dialog.server.menu.edit":"Düzenle","dialog.server.menu.default":"Varsayılan olarak ayarla","dialog.server.menu.defaultRemove":"Varsayılanı kaldır","dialog.server.menu.delete":"Sil","dialog.server.current":"Mevcut Sunucu","dialog.server.status.default":"Varsayılan","dialog.project.edit.title":"Projeyi düzenle","dialog.project.edit.name":"Ad","dialog.project.edit.icon":"Simge","dialog.project.edit.icon.alt":"Proje simgesi","dialog.project.edit.icon.hint":"Tıkla veya bir görsel sürükle","dialog.project.edit.icon.recommended":"Önerilen: 128x128px","dialog.project.edit.color":"Renk","dialog.project.edit.color.select":"{{color}} rengini seç","dialog.project.edit.worktree.startup":"Çalışma alanı başlatma betiği","dialog.project.edit.worktree.startup.description":"Yeni bir çalışma alanı (worktree) oluşturduktan sonra çalışır.","dialog.project.edit.worktree.startup.placeholder":"örneğin bun install","context.breakdown.title":"Bağlam Dökümü","context.breakdown.note":'Girdi tokenlerinin yaklaşık dökümü. "Diğer" araç tanımları ve ek yükleri içerir.',"context.breakdown.system":"Sistem","context.breakdown.user":"Kullanıcı","context.breakdown.assistant":"Asistan","context.breakdown.tool":"Araç Çağrıları","context.breakdown.other":"Diğer","context.systemPrompt.title":"Sistem Komutu","context.rawMessages.title":"Ham mesajlar","context.stats.session":"Oturum","context.stats.messages":"Mesajlar","context.stats.provider":"Sağlayıcı","context.stats.limit":"Bağlam Limiti","context.stats.totalTokens":"Toplam Token","context.stats.usage":"Kullanım","context.stats.inputTokens":"Girdi Tokenleri","context.stats.outputTokens":"Çıktı Tokenleri","context.stats.reasoningTokens":"Akıl Yürütme Tokenleri","context.stats.cacheTokens":"Önbellek Tokenleri (okuma/yazma)","context.stats.userMessages":"Kullanıcı Mesajları","context.stats.assistantMessages":"Asistan Mesajları","context.stats.totalCost":"Toplam Maliyet","context.stats.sessionCreated":"Oturum Oluşturulma","context.stats.lastActivity":"Son Etkinlik","context.usage.tokens":"Tokenler","context.usage.usage":"Kullanım","context.usage.cost":"Maliyet","context.usage.clickToView":"Bağlamı görüntüle","context.usage.view":"Bağlam kullanımını görüntüle","toast.language.title":"Dil","toast.language.description":"{{language}} diline geçildi","toast.theme.title":"Tema değiştirildi","toast.scheme.title":"Renk şeması","toast.workspace.enabled.title":"Çalışma alanları etkinleştirildi","toast.workspace.enabled.description":"Kenar çubuğunda birden fazla çalışma ağacı gösterilecek","toast.workspace.disabled.title":"Çalışma alanları devre dışı bırakıldı","toast.workspace.disabled.description":"Kenar çubuğunda yalnızca ana çalışma ağacı gösterilecek","toast.permissions.autoaccept.on.title":"Düzenlemeler otomatik kabul ediliyor","toast.permissions.autoaccept.on.description":"Düzenleme ve yazma izinleri otomatik olarak onaylanacak","toast.permissions.autoaccept.off.title":"Otomatik kabul durduruldu","toast.permissions.autoaccept.off.description":"Düzenleme ve yazma izinleri onay gerektirecek","toast.model.none.title":"Model seçilmedi","toast.model.none.description":"Bu oturumu özetlemek için bir sağlayıcı bağlayın","toast.file.loadFailed.title":"Dosya yüklenemedi","toast.file.listFailed.title":"Dosyalar listelenemedi","toast.context.noLineSelection.title":"Satır seçimi yok","toast.context.noLineSelection.description":"Önce bir dosya sekmesinde satır aralığı seçin.","toast.session.share.copyFailed.title":"URL panoya kopyalanamadı","toast.session.share.success.title":"Oturum paylaşıldı","toast.session.share.success.description":"Paylaşım URL'si panoya kopyalandı!","toast.session.share.failed.title":"Oturum paylaşılamadı","toast.session.share.failed.description":"Oturum paylaşılırken bir hata oluştu","toast.session.unshare.success.title":"Oturum paylaşımı kaldırıldı","toast.session.unshare.success.description":"Oturum paylaşımı başarıyla kaldırıldı!","toast.session.unshare.failed.title":"Oturum paylaşımı kaldırılamadı","toast.session.unshare.failed.description":"Oturum paylaşımı kaldırılırken bir hata oluştu","toast.session.listFailed.title":"{{project}} için oturumlar yüklenemedi","error.page.title":"Bir şeyler yanlış gitti","error.page.description":"Uygulama yüklenirken bir hata oluştu.","error.page.details.label":"Hata Detayları","error.page.action.restart":"Yeniden Başlat","error.page.report.prefix":"Lütfen bu hatayı Codeplane ekibine bildirin","error.page.report.issues":"GitHub üzerinden","error.page.version":"Sürüm: {{version}}","error.dev.rootNotFound":"Kök eleman bulunamadı. index.html dosyanıza eklemeyi unuttunuz mu? Ya da id özelliği yanlış mı yazıldı?","error.globalSync.connectFailed":"Sunucuya bağlanılamadı. `{{url}}` adresinde çalışan bir sunucu var mı?","directory.error.invalidUrl":"URL'de geçersiz dizin.","error.chain.unknown":"Bilinmeyen hata","error.chain.causedBy":"Nedeni:","error.chain.apiError":"API hatası","error.chain.status":"Durum: {{status}}","error.chain.retryable":"Yeniden denenebilir: {{retryable}}","error.chain.responseBody":`Yanıt gövdesi:
1
+ import{d as e}from"./index-CaPWFEmi.js";const a={"command.category.suggested":"Önerilen","command.category.view":"Görünüm","command.category.project":"Proje","command.category.provider":"Sağlayıcı","command.category.server":"Sunucu","command.category.session":"Oturum","command.category.theme":"Tema","command.category.language":"Dil","command.category.file":"Dosya","command.category.context":"Bağlam","command.category.agent":"Ajan","command.category.permissions":"İzinler","command.category.workspace":"Çalışma Alanı","command.category.settings":"Ayarlar","theme.scheme.system":"Sistem","theme.scheme.light":"Açık","theme.scheme.dark":"Koyu","command.sidebar.toggle":"Kenar çubuğunu aç/kapat","command.project.open":"Proje aç","command.provider.connect":"Sağlayıcı bağla","command.server.switch":"Sunucu değiştir","command.settings.open":"Ayarları aç","command.session.previous":"Önceki oturum","command.session.next":"Sonraki oturum","command.session.previous.unseen":"Önceki okunmamış oturum","command.session.next.unseen":"Sonraki okunmamış oturum","command.session.archive":"Oturumu arşivle","command.palette":"Komut paleti","command.theme.cycle":"Tema değiştir","command.theme.set":"Tema kullan: {{theme}}","command.theme.scheme.cycle":"Renk şemasını değiştir","command.theme.scheme.set":"Renk şeması kullan: {{scheme}}","command.language.cycle":"Dil değiştir","command.language.set":"Dil kullan: {{language}}","command.session.new":"Yeni oturum","command.file.open":"Dosya aç","command.tab.close":"Sekmeyi kapat","command.context.addSelection":"Seçimi bağlama ekle","command.context.addSelection.description":"Mevcut dosyadan seçili satırları ekle","command.input.focus":"Girişi odakla","command.terminal.toggle":"Terminali aç/kapat","command.fileTree.toggle":"Dosya ağacını aç/kapat","command.review.toggle":"İncelemeyi aç/kapat","command.terminal.new":"Yeni terminal","command.terminal.new.description":"Yeni bir terminal sekmesi oluştur","command.steps.toggle":"Adımları aç/kapat","command.steps.toggle.description":"Mevcut mesaj için adımları göster veya gizle","command.message.previous":"Önceki mesaj","command.message.previous.description":"Önceki kullanıcı mesajına git","command.message.next":"Sonraki mesaj","command.message.next.description":"Sonraki kullanıcı mesajına git","command.model.choose":"Model seç","command.model.choose.description":"Farklı bir model seç","command.mcp.toggle":"MCP'leri aç/kapat","command.mcp.toggle.description":"MCP'leri aç/kapat","command.agent.cycle":"Ajan değiştir","command.agent.cycle.description":"Sonraki ajana geç","command.agent.cycle.reverse":"Ajanı geri değiştir","command.agent.cycle.reverse.description":"Önceki ajana geç","command.model.variant.cycle":"Düşünme eforu değiştir","command.model.variant.cycle.description":"Sonraki efor seviyesine geç","command.prompt.mode.shell":"Kabuk","command.prompt.mode.normal":"Komut","command.permissions.autoaccept.enable":"Düzenlemeleri otomatik kabul et","command.permissions.autoaccept.disable":"Otomatik kabulü durdur","command.workspace.toggle":"Çalışma alanlarını aç/kapat","command.workspace.toggle.description":"Kenar çubuğunda birden fazla çalışma alanını göster veya gizle","command.session.undo":"Geri al","command.session.undo.description":"Son mesajı geri al","command.session.redo":"Yinele","command.session.redo.description":"Son geri alınan mesajı yinele","command.session.compact":"Oturumu sıkıştır","command.session.compact.description":"Bağlam boyutunu azaltmak için oturumu özetle","command.session.fork":"Mesajdan dallandır","command.session.fork.description":"Önceki bir mesajdan yeni oturum oluştur","command.session.share":"Oturumu paylaş","command.session.share.description":"Bu oturumu paylaş ve URL'yi panoya kopyala","command.session.unshare":"Paylaşımı kaldır","command.session.unshare.description":"Bu oturumun paylaşımını durdur","palette.search.placeholder":"Dosya, komut ve oturum ara","palette.empty":"Sonuç bulunamadı","palette.group.commands":"Komutlar","palette.group.files":"Dosyalar","dialog.provider.search.placeholder":"Sağlayıcı ara","dialog.provider.empty":"Sağlayıcı bulunamadı","dialog.provider.group.popular":"Popüler","dialog.provider.group.other":"Diğer","dialog.provider.tag.recommended":"Önerilen","dialog.provider.codeplane.note":"Claude, GPT, Gemini ve daha fazlasını içeren seçilmiş modeller","dialog.provider.codeplane.tagline":"Güvenilir optimize edilmiş modeller","dialog.provider.anthropic.note":"Anthropic API anahtarıyla bağlan","dialog.provider.copilot.note":"GitHub Copilot üzerinden kodlama yardımı için yapay zekâ modelleri","dialog.provider.openai.note":"Hızlı ve yetenekli genel yapay zekâ görevleri için GPT modelleri","dialog.provider.google.note":"Hızlı ve yapılandırılmış yanıtlar için Gemini modelleri","dialog.provider.openrouter.note":"Tek bir sağlayıcıdan tüm desteklenen modellere eriş","dialog.provider.vercel.note":"Akıllı yönlendirme ile yapay zekâ modellerine birleşik erişim","dialog.model.select.title":"Model seç","dialog.model.search.placeholder":"Model ara","dialog.model.empty":"Model sonucu yok","dialog.model.manage":"Modelleri yönet","dialog.model.manage.description":"Model seçicide hangi modellerin görüneceğini özelleştirin.","dialog.model.manage.provider.toggle":"Tüm {{provider}} modellerini aç/kapat","dialog.model.unpaid.freeModels.title":"Codeplane tarafından sunulan ücretsiz modeller","dialog.model.unpaid.addMore.title":"Popüler sağlayıcılardan daha fazla model ekleyin","dialog.provider.viewAll":"Daha fazla sağlayıcı göster","provider.connect.title":"{{provider}} bağla","provider.connect.title.anthropicProMax":"Claude Pro/Max ile giriş yap","provider.connect.selectMethod":"{{provider}} için giriş yöntemini seçin.","provider.connect.method.apiKey":"API anahtarı","provider.connect.status.inProgress":"Yetkilendirme devam ediyor...","provider.connect.status.waiting":"Yetkilendirme bekleniyor...","provider.connect.status.failed":"Yetkilendirme başarısız: {{error}}","provider.connect.apiKey.description":"Hesabınızı bağlamak ve Codeplane'da {{provider}} modellerini kullanmak için {{provider}} API anahtarınızı girin.","provider.connect.apiKey.label":"{{provider}} API anahtarı","provider.connect.apiKey.placeholder":"API anahtarı","provider.connect.apiKey.required":"API anahtarı gerekli","provider.connect.oauth.code.visit.prefix":"Lütfen ","provider.connect.oauth.code.visit.link":"bu bağlantıyı","provider.connect.oauth.code.visit.suffix":" ziyaret edin ve hesabınızı bağlamak, ayrıca Codeplane'da {{provider}} modellerini kullanmak için yetkilendirme kodunuzu alın.","provider.connect.oauth.code.label":"{{method}} yetkilendirme kodu","provider.connect.oauth.code.placeholder":"Yetkilendirme kodu","provider.connect.oauth.code.required":"Yetkilendirme kodu gerekli","provider.connect.oauth.code.invalid":"Geçersiz yetkilendirme kodu","provider.connect.oauth.auto.visit.prefix":"Lütfen ","provider.connect.oauth.auto.visit.link":"bu bağlantıyı","provider.connect.oauth.auto.visit.suffix":" ziyaret edin, ardından hesabınızı bağlamak ve Codeplane'da {{provider}} modellerini kullanmak için aşağıdaki kodu girin.","provider.connect.oauth.auto.confirmationCode":"Onay kodu","provider.connect.toast.connected.title":"{{provider}} bağlandı","provider.connect.toast.connected.description":"{{provider}} modelleri artık kullanımda.","provider.custom.title":"Özel sağlayıcı","provider.custom.description.prefix":"OpenAI uyumlu bir sağlayıcı yapılandırın. ","provider.custom.description.link":"Sağlayıcı yapılandırma dökümanları","provider.custom.description.suffix":" sayfasına bakın.","provider.custom.field.providerID.label":"Sağlayıcı kimlik","provider.custom.field.providerID.placeholder":"saglayicim","provider.custom.field.providerID.description":"Küçük harfler, rakamlar, tire veya alt çizgi","provider.custom.field.name.label":"Görünen ad","provider.custom.field.name.placeholder":"Yapay Zekâ Sağlayıcım","provider.custom.field.baseURL.label":"Temel URL","provider.custom.field.baseURL.placeholder":"https://api.saglayicim.com/v1","provider.custom.field.apiKey.label":"API anahtarı","provider.custom.field.apiKey.placeholder":"API anahtarı","provider.custom.field.apiKey.description":"İsteğe bağlı. Kimlik doğrulamayı başlıklar ile yönetiyorsanız boş bırakın.","provider.custom.models.label":"Modeller","provider.custom.models.id.label":"Kimlik","provider.custom.models.id.placeholder":"model-kimlik","provider.custom.models.name.label":"Ad","provider.custom.models.name.placeholder":"Görünen Ad","provider.custom.models.remove":"Modeli kaldır","provider.custom.models.add":"Model ekle","provider.custom.headers.label":"Başlıklar (isteğe bağlı)","provider.custom.headers.key.label":"Başlık","provider.custom.headers.key.placeholder":"Başlık-Adı","provider.custom.headers.value.label":"Değer","provider.custom.headers.value.placeholder":"değer","provider.custom.headers.remove":"Başlığı kaldır","provider.custom.headers.add":"Başlık ekle","provider.custom.error.providerID.required":"Sağlayıcı kimlik gerekli","provider.custom.error.providerID.format":"Küçük harf, rakam, tire veya alt çizgi kullanın","provider.custom.error.providerID.exists":"Bu sağlayıcı kimlik zaten mevcut","provider.custom.error.name.required":"Görünen ad gerekli","provider.custom.error.baseURL.required":"Temel URL gerekli","provider.custom.error.baseURL.format":"http:// veya https:// ile başlamalı","provider.custom.error.required":"Gerekli","provider.custom.error.duplicate":"Tekrar","provider.disconnect.toast.disconnected.title":"{{provider}} bağlantısı kesildi","provider.disconnect.toast.disconnected.description":"{{provider}} modelleri artık kullanılabilir değil.","model.tag.free":"Ücretsiz","model.tag.latest":"En yeni","model.input.text":"metin","model.input.image":"görsel","model.input.audio":"ses","model.tooltip.allows":"Kabul eder: {{inputs}}","model.tooltip.reasoning.allowed":"Akıl yürütme destekler","model.tooltip.reasoning.none":"Akıl yürütme yok","model.tooltip.context":"Bağlam limiti {{limit}}","common.search.placeholder":"Ara","common.goBack":"Geri git","common.goForward":"İleri git","common.loading":"Yükleniyor","common.cancel":"İptal","common.connect":"Bağlan","common.disconnect":"Bağlantı Kes","common.continue":"Gönder","common.submit":"Gönder","common.save":"Kaydet","common.saving":"Kaydediliyor...","common.default":"Varsayılan","common.attachment":"ek","prompt.placeholder.shell":"Kabuk komutu girin... {{example}}","prompt.placeholder.normal":'Bir şeyler sorun... "{{example}}"',"prompt.placeholder.simple":"Bir şeyler sorun...","prompt.placeholder.summarizeComments":"Yorumları özetle…","prompt.placeholder.summarizeComment":"Yorumu özetle…","prompt.mode.shell":"Kabuk","prompt.mode.normal":"Komut","prompt.mode.shell.exit":"çıkmak için esc","prompt.example.1":"Kod tabanındaki bir TODO'yu düzelt","prompt.example.2":"Bu projenin teknoloji yığını nedir?","prompt.example.3":"Bozuk testleri düzelt","prompt.example.4":"Kimlik doğrulamanın nasıl çalıştığını açıkla","prompt.example.5":"Güvenlik açıkları bul ve düzelt","prompt.example.6":"Kullanıcı servisi için birim testleri ekle","prompt.example.7":"Bu fonksiyonu daha okunabilir hale getir","prompt.example.8":"Bu hata ne anlama geliyor?","prompt.example.9":"Bu sorunu ayıklamama yardım et","prompt.example.10":"API dokümantasyonu oluştur","prompt.example.11":"Veritabanı sorgularını optimize et","prompt.example.12":"Girdi doğrulama ekle","prompt.example.13":"İçin yeni bir bileşen oluştur...","prompt.example.14":"Bu projeyi nasıl dağıtabilirim?","prompt.example.15":"Kodumu en iyi uygulamalar için incele","prompt.example.16":"Bu fonksiyona hata yönetimi ekle","prompt.example.17":"Bu regex kalıbını açıkla","prompt.example.18":"Bunu TypeScript'e dönüştür","prompt.example.19":"Kod tabanı boyunca loglama ekle","prompt.example.20":"Hangi bağımlılıklar güncellenmemiş?","prompt.example.21":"Bir göç betiği yazmama yardım et","prompt.example.22":"Bu uç nokta için önbellekleme uygula","prompt.example.23":"Bu listeye sayfalama ekle","prompt.example.24":"İçin bir CLI komutu oluştur...","prompt.example.25":"Ortam değişkenleri burada nasıl çalışıyor?","prompt.popover.emptyResults":"Eşleşen sonuç yok","prompt.popover.emptyCommands":"Eşleşen komut yok","prompt.dropzone.label":"Resimleri, PDF'leri veya metin dosyalarını buraya bırakın","prompt.dropzone.file.label":"@bahsetmek için dosyayı bırakın","prompt.slash.badge.custom":"özel","prompt.slash.badge.skill":"beceri","prompt.context.active":"aktif","prompt.context.includeActiveFile":"Aktif dosyayı dahil et","prompt.context.removeActiveFile":"Aktif dosyayı bağlamdan çıkar","prompt.context.removeFile":"Dosyayı bağlamdan çıkar","prompt.action.attachFile":"Dosya ekle","prompt.attachment.remove":"Eki kaldır","prompt.action.send":"Gönder","prompt.action.stop":"Durdur","prompt.toast.pasteUnsupported.title":"Desteklenmeyen ek","prompt.toast.pasteUnsupported.description":"Buraya yalnızca resimler, PDF'ler veya metin dosyaları eklenebilir.","prompt.toast.modelAgentRequired.title":"Bir ajan ve model seçin","prompt.toast.modelAgentRequired.description":"Komut göndermeden önce bir ajan ve model seçin.","prompt.toast.worktreeCreateFailed.title":"Çalışma ağacı oluşturulamadı","prompt.toast.sessionCreateFailed.title":"Oturum oluşturulamadı","prompt.toast.shellSendFailed.title":"Kabuk komutu gönderilemedi","prompt.toast.commandSendFailed.title":"Komut gönderilemedi","prompt.toast.promptSendFailed.title":"Komut gönderilemedi","prompt.toast.promptSendFailed.description":"Oturum alınamadı","dialog.mcp.title":"MCP'ler","dialog.mcp.description":"{{total}} içerisinden {{enabled}} etkin","dialog.mcp.empty":"Yapılandırılmış MCP yok","dialog.lsp.empty":"LSP'ler dosya türlerinden otomatik algılanır","dialog.plugins.empty":"Eklentiler codeplane.json içinde yapılandırılır","mcp.status.connected":"bağlı","mcp.status.failed":"başarısız","mcp.status.needs_auth":"kimlik doğrulama gerekli","mcp.status.disabled":"devre dışı","dialog.fork.empty":"Dallandırılacak mesaj yok","dialog.directory.search.placeholder":"Klasör ara","dialog.directory.empty":"Klasör bulunamadı","dialog.server.title":"Sunucular","dialog.server.description":"Bu uygulamanın hangi Codeplane sunucusuna bağlanacağını değiştirin.","dialog.server.search.placeholder":"Sunucu ara","dialog.server.empty":"Henüz sunucu yok","dialog.server.add.title":"Sunucu ekle","dialog.server.add.url":"Sunucu URL'si","dialog.server.add.error":"Sunucuya bağlanılamadı","dialog.server.add.checking":"Kontrol ediliyor...","dialog.server.add.button":"Sunucu ekle","dialog.server.add.name":"Sunucu adı (isteğe bağlı)","dialog.server.add.username":"Kullanıcı adı (isteğe bağlı)","dialog.server.add.password":"Şifre (isteğe bağlı)","dialog.server.edit.title":"Sunucuyu düzenle","dialog.server.default.title":"Varsayılan sunucu","dialog.server.default.description":"Uygulama başlatıldığında yerel sunucu başlatmak yerine bu sunucuya bağlan. Yeniden başlatma gerektirir.","dialog.server.default.none":"Sunucu seçilmedi","dialog.server.default.set":"Mevcut sunucuyu varsayılan olarak ayarla","dialog.server.default.clear":"Temizle","dialog.server.action.remove":"Sunucuyu kaldır","dialog.server.menu.edit":"Düzenle","dialog.server.menu.default":"Varsayılan olarak ayarla","dialog.server.menu.defaultRemove":"Varsayılanı kaldır","dialog.server.menu.delete":"Sil","dialog.server.current":"Mevcut Sunucu","dialog.server.status.default":"Varsayılan","dialog.project.edit.title":"Projeyi düzenle","dialog.project.edit.name":"Ad","dialog.project.edit.icon":"Simge","dialog.project.edit.icon.alt":"Proje simgesi","dialog.project.edit.icon.hint":"Tıkla veya bir görsel sürükle","dialog.project.edit.icon.recommended":"Önerilen: 128x128px","dialog.project.edit.color":"Renk","dialog.project.edit.color.select":"{{color}} rengini seç","dialog.project.edit.worktree.startup":"Çalışma alanı başlatma betiği","dialog.project.edit.worktree.startup.description":"Yeni bir çalışma alanı (worktree) oluşturduktan sonra çalışır.","dialog.project.edit.worktree.startup.placeholder":"örneğin bun install","context.breakdown.title":"Bağlam Dökümü","context.breakdown.note":'Girdi tokenlerinin yaklaşık dökümü. "Diğer" araç tanımları ve ek yükleri içerir.',"context.breakdown.system":"Sistem","context.breakdown.user":"Kullanıcı","context.breakdown.assistant":"Asistan","context.breakdown.tool":"Araç Çağrıları","context.breakdown.other":"Diğer","context.systemPrompt.title":"Sistem Komutu","context.rawMessages.title":"Ham mesajlar","context.stats.session":"Oturum","context.stats.messages":"Mesajlar","context.stats.provider":"Sağlayıcı","context.stats.limit":"Bağlam Limiti","context.stats.totalTokens":"Toplam Token","context.stats.usage":"Kullanım","context.stats.inputTokens":"Girdi Tokenleri","context.stats.outputTokens":"Çıktı Tokenleri","context.stats.reasoningTokens":"Akıl Yürütme Tokenleri","context.stats.cacheTokens":"Önbellek Tokenleri (okuma/yazma)","context.stats.userMessages":"Kullanıcı Mesajları","context.stats.assistantMessages":"Asistan Mesajları","context.stats.totalCost":"Toplam Maliyet","context.stats.sessionCreated":"Oturum Oluşturulma","context.stats.lastActivity":"Son Etkinlik","context.usage.tokens":"Tokenler","context.usage.usage":"Kullanım","context.usage.cost":"Maliyet","context.usage.clickToView":"Bağlamı görüntüle","context.usage.view":"Bağlam kullanımını görüntüle","toast.language.title":"Dil","toast.language.description":"{{language}} diline geçildi","toast.theme.title":"Tema değiştirildi","toast.scheme.title":"Renk şeması","toast.workspace.enabled.title":"Çalışma alanları etkinleştirildi","toast.workspace.enabled.description":"Kenar çubuğunda birden fazla çalışma ağacı gösterilecek","toast.workspace.disabled.title":"Çalışma alanları devre dışı bırakıldı","toast.workspace.disabled.description":"Kenar çubuğunda yalnızca ana çalışma ağacı gösterilecek","toast.permissions.autoaccept.on.title":"Düzenlemeler otomatik kabul ediliyor","toast.permissions.autoaccept.on.description":"Düzenleme ve yazma izinleri otomatik olarak onaylanacak","toast.permissions.autoaccept.off.title":"Otomatik kabul durduruldu","toast.permissions.autoaccept.off.description":"Düzenleme ve yazma izinleri onay gerektirecek","toast.model.none.title":"Model seçilmedi","toast.model.none.description":"Bu oturumu özetlemek için bir sağlayıcı bağlayın","toast.file.loadFailed.title":"Dosya yüklenemedi","toast.file.listFailed.title":"Dosyalar listelenemedi","toast.context.noLineSelection.title":"Satır seçimi yok","toast.context.noLineSelection.description":"Önce bir dosya sekmesinde satır aralığı seçin.","toast.session.share.copyFailed.title":"URL panoya kopyalanamadı","toast.session.share.success.title":"Oturum paylaşıldı","toast.session.share.success.description":"Paylaşım URL'si panoya kopyalandı!","toast.session.share.failed.title":"Oturum paylaşılamadı","toast.session.share.failed.description":"Oturum paylaşılırken bir hata oluştu","toast.session.unshare.success.title":"Oturum paylaşımı kaldırıldı","toast.session.unshare.success.description":"Oturum paylaşımı başarıyla kaldırıldı!","toast.session.unshare.failed.title":"Oturum paylaşımı kaldırılamadı","toast.session.unshare.failed.description":"Oturum paylaşımı kaldırılırken bir hata oluştu","toast.session.listFailed.title":"{{project}} için oturumlar yüklenemedi","error.page.title":"Bir şeyler yanlış gitti","error.page.description":"Uygulama yüklenirken bir hata oluştu.","error.page.details.label":"Hata Detayları","error.page.action.restart":"Yeniden Başlat","error.page.report.prefix":"Lütfen bu hatayı Codeplane ekibine bildirin","error.page.report.issues":"GitHub üzerinden","error.page.version":"Sürüm: {{version}}","error.dev.rootNotFound":"Kök eleman bulunamadı. index.html dosyanıza eklemeyi unuttunuz mu? Ya da id özelliği yanlış mı yazıldı?","error.globalSync.connectFailed":"Sunucuya bağlanılamadı. `{{url}}` adresinde çalışan bir sunucu var mı?","directory.error.invalidUrl":"URL'de geçersiz dizin.","error.chain.unknown":"Bilinmeyen hata","error.chain.causedBy":"Nedeni:","error.chain.apiError":"API hatası","error.chain.status":"Durum: {{status}}","error.chain.retryable":"Yeniden denenebilir: {{retryable}}","error.chain.responseBody":`Yanıt gövdesi:
2
2
  {{body}}`,"error.chain.didYouMean":"Bunu mu demek istediniz: {{suggestions}}","error.chain.modelNotFound":"Model bulunamadı: {{provider}}/{{model}}","error.chain.checkConfig":"Yapılandırma dosyanızı (codeplane.json) sağlayıcı/model adlarını kontrol edin","error.chain.mcpFailed":'MCP sunucusu "{{name}}" başarısız oldu. Not: Codeplane henüz MCP kimlik doğrulamasını desteklemiyor.',"error.chain.providerAuthFailed":"Sağlayıcı kimlik doğrulaması başarısız ({{provider}}): {{message}}","error.chain.providerInitFailed":'"{{provider}}" sağlayıcısı başlatılamadı. Kimlik bilgilerini ve yapılandırmayı kontrol edin.',"error.chain.configJsonInvalid":"{{path}} adresindeki yapılandırma dosyası geçerli JSON(C) değil","error.chain.configJsonInvalidWithMessage":"{{path}} adresindeki yapılandırma dosyası geçerli JSON(C) değil: {{message}}","error.chain.configDirectoryTypo":'"{{dir}}" dizini {{path}} içinde geçerli değil. Dizini "{{suggestion}}" olarak yeniden adlandırın veya kaldırın. Bu yaygın bir yazım hatasıdır.',"error.chain.configFrontmatterError":`{{path}} içindeki ön bilgi ayrıştırılamadı:
3
3
  {{message}}`,"error.chain.configInvalid":"{{path}} adresindeki yapılandırma dosyası geçersiz","error.chain.configInvalidWithMessage":"{{path}} adresindeki yapılandırma dosyası geçersiz: {{message}}","notification.permission.title":"İzin gerekli","notification.permission.description":"{{projectName}} içindeki {{sessionTitle}} izin gerektiriyor","notification.question.title":"Soru","notification.question.description":"{{projectName}} içindeki {{sessionTitle}} bir soru soruyor","notification.action.goToSession":"Oturuma git","notification.session.responseReady.title":"Yanıt hazır","notification.session.error.title":"Oturum hatası","notification.session.error.fallbackDescription":"Bir hata oluştu","home.recentProjects":"Son projeler","home.empty.title":"Son proje yok","home.empty.description":"Yerel bir proje açarak başlayın","session.tab.session":"Oturum","session.tab.review":"İnceleme","session.tab.context":"Bağlam","session.panel.reviewAndFiles":"İnceleme ve dosyalar","session.review.filesChanged":"{{count}} Dosya Değişti","session.review.change.one":"Değişiklik","session.review.change.other":"Değişiklik","session.review.loadingChanges":"Değişiklikler yükleniyor...","session.review.empty":"Bu oturumda henüz değişiklik yok","session.review.noVcs":"Git VCS algılanamadı, oturum değişiklikleri tespit edilemeyecek","session.review.noSnapshot":"Yapılandırmada anlık görüntü takibi devre dışı bırakıldı, bu nedenle oturum değişiklikleri kullanılamıyor","session.review.noChanges":"Değişiklik yok","session.files.selectToOpen":"Açmak için bir dosya seçin","session.files.all":"Tüm dosyalar","session.files.empty":"Dosya yok","session.files.binaryContent":"İkili dosya (içerik görüntülenemiyor)","session.messages.renderEarlier":"Önceki mesajları göster","session.messages.loadingEarlier":"Önceki mesajlar yükleniyor...","session.messages.loadEarlier":"Önceki mesajları yükle","session.messages.loading":"Mesajlar yükleniyor...","session.messages.jumpToLatest":"En sona atla","session.context.addToContext":"{{selection}} bağlama ekle","session.todo.title":"Görevler","session.todo.collapse":"Daralt","session.todo.expand":"Genişlet","session.followupDock.summary.one":"{{count}} sıradaki mesaj","session.followupDock.summary.other":"{{count}} sıradaki mesaj","session.followupDock.sendNow":"Şimdi gönder","session.followupDock.edit":"Düzenle","session.followupDock.collapse":"Sıradaki mesajları daralt","session.followupDock.expand":"Sıradaki mesajları genişlet","session.revertDock.summary.one":"{{count}} geri alınan mesaj","session.revertDock.summary.other":"{{count}} geri alınan mesaj","session.revertDock.collapse":"Geri alınan mesajları daralt","session.revertDock.expand":"Geri alınan mesajları genişlet","session.revertDock.restore":"Mesajı geri yükle","session.new.title":"İstediğini yap","session.new.worktree.main":"Ana dal","session.new.worktree.mainWithBranch":"Ana dal ({{branch}})","session.new.worktree.create":"Yeni çalışma ağacı oluştur","session.new.lastModified":"Son değişiklik","session.header.search.placeholder":"{{project}} ara","session.header.searchFiles":"Dosya ara","session.header.openIn":"Aç","session.header.open.action":"{{app}} ile aç","session.header.open.ariaLabel":"{{app}} ile aç","session.header.open.menu":"Açma seçenekleri","session.header.open.copyPath":"Yolu kopyala","status.popover.trigger":"Durum","status.popover.ariaLabel":"Sunucu yapılandırmaları","status.popover.tab.servers":"Sunucular","status.popover.tab.plugins":"Eklentiler","status.popover.action.manageServers":"Sunucuları yönet","session.share.popover.title":"Web'de yayınla","session.share.popover.description.shared":"Bu oturum web'de herkese açıktır. Bağlantıya sahip herkes erişebilir.","session.share.popover.description.unshared":"Oturumu web'de herkese açık olarak paylaşın. Bağlantıya sahip herkes erişebilecek.","session.share.action.share":"Paylaş","session.share.action.publish":"Yayınla","session.share.action.publishing":"Yayınlanıyor...","session.share.action.unpublish":"Yayından kaldır","session.share.action.unpublishing":"Yayından kaldırılıyor...","session.share.action.view":"Görüntüle","session.share.copy.copied":"Kopyalandı","session.share.copy.copyLink":"Bağlantı kopyala","lsp.tooltip.none":"LSP sunucusu yok","prompt.loading":"Komut yükleniyor...","terminal.loading":"Terminal yükleniyor...","terminal.close":"Terminali kapat","terminal.connectionLost.title":"Bağlantı Kesildi","terminal.connectionLost.description":"Terminal bağlantısı kesildi. Bu durum sunucu yeniden başladığında oluşabilir.","common.closeTab":"Sekmeyi kapat","common.dismiss":"Kapat","common.requestFailed":"İstek başarısız","common.moreOptions":"Daha fazla seçenek","common.learnMore":"Daha fazla bilgi","common.rename":"Yeniden adlandır","common.reset":"Sıfırla","common.archive":"Arşivle","common.delete":"Sil","common.close":"Kapat","common.edit":"Düzenle","common.loadMore":"Daha fazla yükle","sidebar.menu.toggle":"Menüyü aç/kapat","sidebar.nav.projectsAndSessions":"Projeler ve oturumlar","sidebar.settings":"Ayarlar","sidebar.help":"Yardım","sidebar.workspaces.enable":"Çalışma alanlarını etkinleştir","sidebar.workspaces.disable":"Çalışma alanlarını devre dışı bırak","sidebar.gettingStarted.title":"Başlarken","sidebar.gettingStarted.line1":"Codeplane ücretsiz modeller içerir, böylece hemen başlayabilirsiniz.","sidebar.gettingStarted.line2":"Claude, GPT, Gemini vb. modelleri kullanmak için herhangi bir sağlayıcı bağlayın.","sidebar.project.recentSessions":"Son oturumlar","sidebar.project.viewAllSessions":"Tüm oturumları görüntüle","sidebar.project.clearNotifications":"Bildirimleri temizle","settings.section.server":"Sunucu","settings.tab.general":"Genel","settings.tab.shortcuts":"Kısayollar","settings.general.section.appearance":"Görünüm","settings.general.section.notifications":"Sistem bildirimleri","settings.general.section.sounds":"Ses efektleri","settings.general.section.feed":"Akış","settings.general.row.language.title":"Dil","settings.general.row.language.description":"Codeplane'un görünüm dilini değiştirin","settings.general.row.appearance.title":"Görünüm","settings.general.row.appearance.description":"Codeplane'un cihazınızdaki görünümünü özelleştirin","settings.general.row.colorScheme.title":"Renk şeması","settings.general.row.colorScheme.description":"Codeplane'un sistem, açık veya koyu temayı takip etip etmeyeceğini seçin","settings.general.row.theme.title":"Tema","settings.general.row.theme.description":"Codeplane'un temasını özelleştirin.","settings.general.row.font.title":"Kod Yazı Tipi","settings.general.row.font.description":"Kod bloklarında kullanılan yazı tipini özelleştirin","settings.general.row.uiFont.title":"Arayüz Yazı Tipi","settings.general.row.uiFont.description":"Arayüz genelinde kullanılan yazı tipini özelleştirin","settings.general.row.followup.title":"Takip davranışı","settings.general.row.followup.description":"Takip komutlarının hemen yönlendirilmesini mi yoksa sırada beklemesini mi istediğinizi seçin","settings.general.row.followup.option.queue":"Sıra","settings.general.row.followup.option.steer":"Yönlendir","settings.general.row.codeplaneCoauthor.title":"Codeplane ortak yazarı","settings.general.row.codeplaneCoauthor.description":"Codeplane üzerinden yapılan commitlere Co-Authored-By: codeplane-agent[bot] <287208015+codeplane-agent[bot]@users.noreply.github.com> ekle","settings.general.row.reasoningSummaries.title":"Akıl yürütme özetlerini göster","settings.general.row.reasoningSummaries.description":"Zaman çizelgesinde model akıl yürütme özetlerini görüntüle","settings.general.row.shellToolPartsExpanded.title":"Kabuk araç bileşenlerini genişlet","settings.general.row.shellToolPartsExpanded.description":"Zaman çizelgesinde kabuk araç bileşenlerini varsayılan olarak genişletilmiş göster","settings.general.row.editToolPartsExpanded.title":"Düzenleme araç bileşenlerini genişlet","settings.general.row.editToolPartsExpanded.description":"Zaman çizelgesinde düzenleme, yazma ve yama araç bileşenlerini varsayılan olarak genişletilmiş göster","settings.general.row.showSessionProgressBar.title":"Oturum ilerleme çubuğunu göster","settings.general.row.showSessionProgressBar.description":"Ajan çalışırken oturumun üst kısmında animasyonlu ilerleme çubuğunu göster","settings.general.row.releaseNotes.title":"Sürüm notları","settings.general.row.releaseNotes.description":"Güncellemelerden sonra Yenilikler bildirimlerini göster","sound.option.none":"Yok","sound.option.alert01":"Uyarı 01","sound.option.alert02":"Uyarı 02","sound.option.alert03":"Uyarı 03","sound.option.alert04":"Uyarı 04","sound.option.alert05":"Uyarı 05","sound.option.alert06":"Uyarı 06","sound.option.alert07":"Uyarı 07","sound.option.alert08":"Uyarı 08","sound.option.alert09":"Uyarı 09","sound.option.alert10":"Uyarı 10","sound.option.nope01":"Hayır 01","sound.option.nope02":"Hayır 02","sound.option.nope03":"Hayır 03","sound.option.nope04":"Hayır 04","sound.option.nope05":"Hayır 05","sound.option.nope06":"Hayır 06","sound.option.nope07":"Hayır 07","sound.option.nope08":"Hayır 08","sound.option.nope09":"Hayır 09","sound.option.nope10":"Hayır 10","sound.option.nope11":"Hayır 11","sound.option.nope12":"Hayır 12","sound.option.yup01":"Evet 01","sound.option.yup02":"Evet 02","sound.option.yup03":"Evet 03","sound.option.yup04":"Evet 04","sound.option.yup05":"Evet 05","sound.option.yup06":"Evet 06","settings.general.notifications.agent.title":"Ajan","settings.general.notifications.agent.description":"Ajan tamamlandığında veya dikkat gerektirdiğinde sistem bildirimi göster","settings.general.notifications.permissions.title":"İzinler","settings.general.notifications.permissions.description":"İzin gerektiğinde sistem bildirimi göster","settings.general.notifications.errors.title":"Hatalar","settings.general.notifications.errors.description":"Hata oluştuğunda sistem bildirimi göster","settings.general.sounds.agent.title":"Ajan","settings.general.sounds.agent.description":"Ajan tamamlandığında veya dikkat gerektirdiğinde ses çal","settings.general.sounds.permissions.title":"İzinler","settings.general.sounds.permissions.description":"İzin gerektiğinde ses çal","settings.general.sounds.errors.title":"Hatalar","settings.general.sounds.errors.description":"Hata oluştuğunda ses çal","settings.shortcuts.title":"Klavye kısayolları","settings.shortcuts.reset.button":"Varsayılanlara sıfırla","settings.shortcuts.reset.toast.title":"Kısayollar sıfırlandı","settings.shortcuts.reset.toast.description":"Klavye kısayolları varsayılanlara sıfırlandı.","settings.shortcuts.conflict.title":"Kısayol zaten kullanılıyor","settings.shortcuts.conflict.description":"{{keybind}} zaten {{titles}} için atanmış.","settings.shortcuts.unassigned":"Atanmamış","settings.shortcuts.pressKeys":"Tuşlara basın","settings.shortcuts.search.placeholder":"Kısayol ara","settings.shortcuts.search.empty":"Kısayol bulunamadı","settings.shortcuts.group.general":"Genel","settings.shortcuts.group.session":"Oturum","settings.shortcuts.group.navigation":"Gezinme","settings.shortcuts.group.modelAndAgent":"Model ve ajan","settings.shortcuts.group.prompt":"Komut","settings.providers.title":"Sağlayıcılar","settings.providers.description":"Sağlayıcı ayarları burada yapılandırılabilecek.","settings.providers.section.connected":"Bağlı sağlayıcılar","settings.providers.connected.empty":"Bağlı sağlayıcı yok","settings.providers.section.popular":"Popüler sağlayıcılar","settings.providers.tag.environment":"Ortam","settings.providers.tag.config":"Yapılandırma","settings.providers.tag.custom":"Özel","settings.providers.tag.other":"Diğer","settings.models.title":"Modeller","settings.models.description":"Model ayarları burada yapılandırılabilecek.","settings.agents.title":"Ajanlar","settings.agents.description":"Ajan ayarları burada yapılandırılabilecek.","settings.commands.title":"Komutlar","settings.commands.description":"Komut ayarları burada yapılandırılabilecek.","settings.mcp.description":"MCP ayarları burada yapılandırılabilecek.","settings.permissions.title":"İzinler","settings.permissions.description":"Sunucunun varsayılan olarak hangi araçları kullanabileceğini kontrol edin.","settings.permissions.section.tools":"Araçlar","settings.permissions.toast.updateFailed.title":"İzinler güncellenemedi","settings.permissions.action.allow":"İzin Ver","settings.permissions.action.ask":"Sor","settings.permissions.action.deny":"Reddet","settings.permissions.tool.read.title":"Oku","settings.permissions.tool.read.description":"Bir dosyayı okuma (dosya yoluyla eşleşir)","settings.permissions.tool.edit.title":"Düzenle","settings.permissions.tool.edit.description":"Düzenleme, yazma, yama ve çoklu düzenleme dahil dosyaları değiştir","settings.permissions.tool.glob.description":"Glob kalıpları kullanarak dosyaları eşle","settings.permissions.tool.grep.description":"Düzenli ifadeler kullanarak dosya içerikleri ara","settings.permissions.tool.list.title":"Listele","settings.permissions.tool.list.description":"Bir dizindeki dosyaları listele","settings.permissions.tool.bash.description":"Kabuk komutları çalıştır","settings.permissions.tool.task.title":"Görev","settings.permissions.tool.task.description":"Alt ajanlar başlat","settings.permissions.tool.skill.title":"Beceri","settings.permissions.tool.skill.description":"Ada göre bir beceri yükle","settings.permissions.tool.lsp.description":"Dil sunucusu sorguları çalıştır","settings.permissions.tool.todowrite.title":"Görev Yaz","settings.permissions.tool.todowrite.description":"Görev listesini güncelle","settings.permissions.tool.webfetch.title":"Web Getir","settings.permissions.tool.webfetch.description":"Bir URL'den içerik getir","settings.permissions.tool.websearch.title":"Web Ara","settings.permissions.tool.websearch.description":"Web'de ara","settings.permissions.tool.codesearch.title":"Kod Ara","settings.permissions.tool.codesearch.description":"Web'de kod ara","settings.permissions.tool.external_directory.title":"Harici Dizin","settings.permissions.tool.external_directory.description":"Proje dizini dışındaki dosyalara eriş","settings.permissions.tool.doom_loop.title":"Sonsuz Döngü","settings.permissions.tool.doom_loop.description":"Aynı girdiyle tekrarlanan araç çağrılarını algıla","session.copyId":"Oturum ID'sini kopyala","session.delete.failed.title":"Oturum silinemedi","session.delete.title":"Oturumu sil","session.delete.confirm":'"{{name}}" oturumu silinsin mi?',"session.delete.button":"Oturumu sil","workspace.new":"Yeni çalışma alanı","workspace.type.local":"yerel","workspace.create.failed.title":"Çalışma alanı oluşturulamadı","workspace.delete.failed.title":"Çalışma alanı silinemedi","workspace.resetting.title":"Çalışma alanı sıfırlanıyor","workspace.resetting.description":"Bu bir dakika sürebilir.","workspace.reset.failed.title":"Çalışma alanı sıfırlanamadı","workspace.reset.success.title":"Çalışma alanı sıfırlandı","workspace.reset.success.description":"Çalışma alanı artık varsayılan dalla eşleşiyor.","workspace.error.stillPreparing":"Çalışma alanı hâlâ hazırlanıyor","workspace.status.checking":"Birleşmemiş değişiklikler kontrol ediliyor...","workspace.status.error":"Git durumu doğrulanamadı.","workspace.status.clean":"Birleşmemiş değişiklik algılanmadı.","workspace.status.dirty":"Bu çalışma alanında birleşmemiş değişiklikler algılandı.","workspace.delete.title":"Çalışma alanını sil","workspace.delete.confirm":'"{{name}}" çalışma alanı silinsin mi?',"workspace.delete.button":"Çalışma alanını sil","workspace.reset.title":"Çalışma alanını sıfırla","workspace.reset.confirm":'"{{name}}" çalışma alanı sıfırlansın mı?',"workspace.reset.button":"Çalışma alanını sıfırla","workspace.reset.archived.none":"Arşivlenecek aktif oturum yok.","workspace.reset.archived.one":"1 oturum arşivlenecek.","workspace.reset.archived.many":"{{count}} oturum arşivlenecek.","workspace.reset.note":"Bu işlem çalışma alanını varsayılan dalla eşleşecek şekilde sıfırlayacak.","common.open":"Aç","dialog.releaseNotes.action.getStarted":"Başla","dialog.releaseNotes.action.next":"İleri","dialog.releaseNotes.action.hideFuture":"Bunu gelecekte bir daha gösterme","dialog.releaseNotes.media.alt":"Sürüm önizlemesi","toast.project.reloadFailed.title":"{{project}} yeniden yüklenemedi","error.server.invalidConfiguration":"Geçersiz yapılandırma","common.moreCountSuffix":" (+{{count}} daha)","common.time.justNow":"Şimdi","common.time.minutesAgo.short":"{{count}}dk önce","common.time.hoursAgo.short":"{{count}}sa önce","common.time.daysAgo.short":"{{count}}g önce","settings.providers.connected.environmentDescription":"Ortam değişkenlerinizden bağlandı","settings.providers.custom.description":"Temel URL üzerinden OpenAI uyumlu bir sağlayıcı ekleyin.","app.server.unreachable":"{{server}} sunucusuna ulaşılamadı","app.server.retrying":"Otomatik olarak tekrar deneniyor...","app.server.otherServers":"Diğer sunucular","dialog.server.add.usernamePlaceholder":"kullanıcı adı","dialog.server.add.passwordPlaceholder":"parola","server.row.noUsername":"kullanıcı adı yok","session.review.noVcs.createGit.title":"Git deposu oluştur","session.review.noVcs.createGit.description":"Bu projedeki değişiklikleri takip et, incele ve geri al","session.review.noVcs.createGit.actionLoading":"Git deposu oluşturuluyor...","session.review.noVcs.createGit.action":"Git deposu oluştur","session.todo.progress":"{{total}} görevin {{done}} tanesi tamamlandı","session.question.progress":"{{total}} sorunun {{current}} tanesi","session.header.open.fileExplorer":"Dosya Gezgini","session.header.open.fileManager":"Dosya Yöneticisi","debugBar.ariaLabel":"Geliştirme performansı teşhisi","debugBar.na":"yok","debugBar.nav.tip":"Yönlendirici başlangıcından yerleşme sonrası ilk boyamaya kadar ölçülen, bir oturum sayfasına dokunan son tamamlanmış rota geçişi.","debugBar.fps.tip":"Son 5 saniyedeki kayan saniye başına kare sayısı.","debugBar.frame.tip":"Son 5 saniyedeki en kötü kare süresi.","debugBar.jank.tip":"Son 5 saniyede 32ms üzerindeki kareler.","debugBar.long.tip":"Son 5 saniyedeki engellenen süre ve uzun görev sayısı. Maksimum görev: {{max}}.","debugBar.delay.tip":"Son 5 saniyede gözlemlenen en kötü giriş gecikmesi.","debugBar.inp.tip":"Son 5 saniyedeki yaklaşık etkileşim süresi. Bu INP benzeridir, resmi Web Vitals INP değildir.","debugBar.cls.tip":"Mevcut uygulama ömrü için kümülatif düzen kayması.","debugBar.mem.tipUnavailable":"Kullanılan JS yığını vs yığın sınırı. Yalnızca Chromium.","debugBar.mem.tip":"Kullanılan JS yığını vs yığın sınırı. {{limit}} içinde {{used}}.","common.key.space":"Boşluk","common.key.backspace":"Geri","common.unknown":"bilinmiyor","error.page.circular":"[Döngüsel]","error.globalSDK.noServerAvailable":"Sunucu yok","error.globalSDK.serverNotAvailable":"Sunucu mevcut değil","error.childStore.persistedCacheCreateFailed":"Kalıcı önbellek oluşturulamadı","error.childStore.persistedProjectMetadataCreateFailed":"Kalıcı proje meta verileri oluşturulamadı","error.childStore.persistedProjectIconCreateFailed":"Kalıcı proje simgesi oluşturulamadı","error.childStore.storeCreateFailed":"Depo oluşturulamadı","terminal.connectionLost.abnormalClose":"WebSocket anormal şekilde kapandı: {{code}}"},r={...e,...a};export{r as dict};
@@ -1,4 +1,4 @@
1
- import{aC as Gt,s as Wt,g as Kt,t as Ht,q as Yt,a as Xt,b as Zt,_ as w,E as wt,K as Jt,d as ot,ar as Qt,ab as $t,ac as te,ad as ee,e as ne,z as se,G as ie,H as oe}from"./mermaid.core-BYfeCraQ.js";import"./index-CPokXzBk.js";const kt=(t,n)=>Gt(t,"a",-n),_t=1e-10;function st(t,n){const s=ae(t),e=s.filter(c=>re(c,t));let i=0,o=0;const a=[];if(e.length>1){const c=Tt(e);for(let u=0;u<e.length;++u){const r=e[u];r.angle=Math.atan2(r.x-c.x,r.y-c.y)}e.sort((u,r)=>r.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const r=e[u];o+=(h.x+r.x)*(r.y-h.y);const y={x:(r.x+h.x)/2,y:(r.y+h.y)/2};let d=null;for(let b=0;b<r.parentIndex.length;++b)if(h.parentIndex.includes(r.parentIndex[b])){const x=t[r.parentIndex[b]],M=Math.atan2(r.x-x.x,r.y-x.y),A=Math.atan2(h.x-x.x,h.y-x.y);let E=A-M;E<0&&(E+=2*Math.PI);const S=A-E/2;let g=q(y,{x:x.x+x.radius*Math.sin(S),y:x.y+x.radius*Math.cos(S)});g>x.radius*2&&(g=x.radius*2),(d==null||d.width>g)&&(d={circle:x,width:g,p1:r,p2:h,large:g>x.radius,sweep:!0})}d!=null&&(a.push(d),i+=lt(d.circle.radius,d.width),h=r)}}else{let c=t[0];for(let u=1;u<t.length;++u)t[u].radius<c.radius&&(c=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(q(t[u],c)>Math.abs(c.radius-t[u].radius)){h=!0;break}h?i=o=0:(i=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-_t,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0}))}return o/=2,n&&(n.area=i+o,n.arcArea=i,n.polygonArea=o,n.arcs=a,n.innerPoints=e,n.intersectionPoints=s),i+o}function re(t,n){return n.every(s=>q(t,s)<s.radius+_t)}function ae(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Et(t[s],t[e]);for(const o of i)o.parentIndex=[s,e],n.push(o)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function q(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Et(t,n){const s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const o=(e*e-i*i+s*s)/(2*s),a=Math.sqrt(e*e-o*o),c=t.x+o*(n.x-t.x)/s,h=t.y+o*(n.y-t.y)/s,u=-(n.y-t.y)*(a/s),r=-(n.x-t.x)*(a/s);return[{x:c+u,y:h-r},{x:c-u,y:h+r}]}function Tt(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function le(t,n,s,e){e=e||{};const i=e.maxIterations||100,o=e.tolerance||1e-10,a=t(n),c=t(s);let h=s-n;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return n;if(c===0)return s;for(let u=0;u<i;++u){h/=2;const r=n+h,y=t(r);if(y*a>=0&&(n=r),Math.abs(h)<o||y===0)return r}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function $(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt($(t,t))}function ft(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let o=0;o<t.length;++o)t[o]=n*s[o]+e*i[o]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,o=s.zeroDelta||.001,a=s.minErrorDelta||1e-6,c=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,r=s.psi!==void 0?s.psi:-.5,y=s.sigma!==void 0?s.sigma:.5;let d;const b=n.length,x=new Array(b+1);x[0]=n,x[0].fx=t(n),x[0].id=0;for(let v=0;v<b;++v){const l=n.slice();l[v]=l[v]?l[v]*i:o,x[v+1]=l,x[v+1].fx=t(l),x[v+1].id=v+1}function M(v){for(let l=0;l<v.length;l++)x[b][l]=v[l];x[b].fx=v.fx}const A=(v,l)=>v.fx-l.fx,E=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let v=0;v<e;++v){if(x.sort(A),s.history){const p=x.map(f=>{const N=f.slice();return N.fx=f.fx,N.id=f.id,N});p.sort((f,N)=>f.id-N.id),s.history.push({x:x[0].slice(),fx:x[0].fx,simplex:p})}d=0;for(let p=0;p<b;++p)d=Math.max(d,Math.abs(x[0][p]-x[1][p]));if(Math.abs(x[0].fx-x[b].fx)<a&&d<c)break;for(let p=0;p<b;++p){E[p]=0;for(let f=0;f<b;++f)E[p]+=x[f][p];E[p]/=b}const l=x[b];if(J(S,1+h,E,-h,l),S.fx=t(S),S.fx<x[0].fx)J(m,1+u,E,-u,l),m.fx=t(m),m.fx<S.fx?M(m):M(S);else if(S.fx>=x[b-1].fx){let p=!1;if(S.fx>l.fx?(J(g,1+r,E,-r,l),g.fx=t(g),g.fx<l.fx?M(g):p=!0):(J(g,1-r*h,E,r*h,l),g.fx=t(g),g.fx<S.fx?M(g):p=!0),p){if(y>=1)break;for(let f=1;f<x.length;++f)J(x[f],1-y,x[0],y,x[f]),x[f].fx=t(x[f])}}else M(S)}return x.sort(A),{fx:x[0].fx,x:x[0]}}function ce(t,n,s,e,i,o,a){const c=s.fx,h=$(s.fxprime,n);let u=c,r=c,y=h,d=0;i=i||1,o=o||1e-6,a=a||.1;function b(x,M,A){for(let E=0;E<16;++E)if(i=(x+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+o*i*h||u>=A)M=i;else{if(Math.abs(y)<=-a*h)return i;y*(M-x)>=0&&(M=x),x=i,A=u}return 0}for(let x=0;x<10;++x){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+o*i*h||x&&u>=r)return b(d,i,r);if(Math.abs(y)<=-a*h)return i;if(y>=0)return b(i,d,u);r=u,d=i,i*=2}return i}function ue(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const o=n.slice();let a,c,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),a=e.fxprime.slice(),ft(a,e.fxprime,-1);for(let r=0;r<u;++r){if(h=ce(t,a,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ft(a,e.fxprime,-1);else{J(o,1,i.fxprime,-1,e.fxprime);const y=$(e.fxprime,e.fxprime),d=Math.max(0,$(o,i.fxprime)/y);J(a,d,a,-1,i.fxprime),c=e,e=i,i=c}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||ge,e=n.lossFunction||tt,i=fe(t,n),o=s(i,n),a=Object.keys(o),c=[];for(const r of a)c.push(o[r].x),c.push(o[r].y);const u=zt(r=>{const y={};for(let d=0;d<a.length;++d){const b=a[d];y[b]={x:r[2*d],y:r[2*d+1],radius:o[b].radius}}return e(y,i)},c,n).x;for(let r=0;r<a.length;++r){const y=a[r];o[y].x=u[2*r],o[y].y=u[2*r+1]}return o}const Rt=1e-10;function ht(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):le(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(c=>Object.assign({},c));function i(c){return c.join(";")}if(s){const c=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const r=String(h.sets[u]);c.set(r,h.size+(c.get(r)||0));for(let y=u+1;y<h.sets.length;y++){const d=String(h.sets[y]),b=`${r};${d}`,x=`${d};${r}`;c.set(b,h.size+(c.get(b)||0)),c.set(x,h.size+(c.get(x)||0))}}for(const h of e)h.sets.length<3&&(h.size=c.get(i(h.sets)))}const o=[],a=new Set;for(const c of e)if(c.sets.length===1)o.push(c.sets[0]);else if(c.sets.length===2){const h=c.sets[0],u=c.sets[1];a.add(i(c.sets)),a.add(i([u,h]))}o.sort((c,h)=>c===h?0:c<h?-1:1);for(let c=0;c<o.length;++c){const h=o[c];for(let u=c+1;u<o.length;++u){const r=o[u];a.has(i([h,r]))||e.push({sets:[h,r],size:0})}}return e}function he(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(o=>o.sets.length===2).forEach(o=>{const a=s[o.sets[0]],c=s[o.sets[1]],h=Math.sqrt(n[a].size/Math.PI),u=Math.sqrt(n[c].size/Math.PI),r=ht(h,u,o.size);e[a][c]=e[c][a]=r;let y=0;o.size+1e-10>=Math.min(n[a].size,n[c].size)?y=1:o.size<=1e-10&&(y=-1),i[a][c]=i[c][a]=y}),{distances:e,constraints:i}}function de(t,n,s,e){for(let o=0;o<n.length;++o)n[o]=0;let i=0;for(let o=0;o<s.length;++o){const a=t[2*o],c=t[2*o+1];for(let h=o+1;h<s.length;++h){const u=t[2*h],r=t[2*h+1],y=s[o][h],d=e[o][h],b=(u-a)*(u-a)+(r-c)*(r-c),x=Math.sqrt(b),M=b-y*y;d>0&&x<=y||d<0&&x>=y||(i+=2*M*M,n[2*o]+=4*M*(a-u),n[2*o+1]+=4*M*(c-r),n[2*h]+=4*M*(u-a),n[2*h+1]+=4*M*(r-c))}}return i}function ge(t,n={}){let s=ye(t,n);const e=n.lossFunction||tt;if(t.length>=8){const i=xe(t,n),o=e(i,t),a=e(s,t);o+1e-8<a&&(s=i)}return s}function xe(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:o,constraints:a}=he(t,e,i);const c=ut(o.map(ut))/o.length;o=o.map(d=>d.map(b=>b/c));const h=(d,b)=>de(d,b,o,a);let u=null;for(let d=0;d<s;++d){const b=ct(o.length*2).map(Math.random),x=ue(h,b,n);(!u||x.fx<u.fx)&&(u=x)}const r=u.x,y={};for(let d=0;d<e.length;++d){const b=e[d];y[b.sets[0]]={x:r[2*d]*c,y:r[2*d+1]*c,radius:Math.sqrt(b.size/Math.PI)}}if(n.history)for(const d of n.history)ft(d.x,c);return y}function ye(t,n){const s=n&&n.lossFunction?n.lossFunction:tt,e={},i={};for(const y of t)if(y.sets.length===1){const d=y.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:y.size,radius:Math.sqrt(y.size/Math.PI)},i[d]=[]}t=t.filter(y=>y.sets.length===2);for(const y of t){let d=y.weight!=null?y.weight:1;const b=y.sets[0],x=y.sets[1];y.size+Rt>=Math.min(e[b].size,e[x].size)&&(d=0),i[b].push({set:x,size:y.size,weight:d}),i[x].push({set:b,size:y.size,weight:d})}const o=[];Object.keys(i).forEach(y=>{let d=0;for(let b=0;b<i[y].length;++b)d+=i[y][b].size*i[y][b].weight;o.push({set:y,size:d})});function a(y,d){return d.size-y.size}o.sort(a);const c={};function h(y){return y.set in c}function u(y,d){e[d].x=y.x,e[d].y=y.y,c[d]=!0}u({x:0,y:0},o[0].set);for(let y=1;y<o.length;++y){const d=o[y].set,b=i[d].filter(h),x=e[d];if(b.sort(a),b.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var r=0;r<b.length;++r){const S=e[b[r].set],g=ht(x.radius,S.radius,b[r].size);M.push({x:S.x+g,y:S.y}),M.push({x:S.x-g,y:S.y}),M.push({y:S.y+g,x:S.x}),M.push({y:S.y-g,x:S.x});for(let m=r+1;m<b.length;++m){const v=e[b[m].set],l=ht(x.radius,v.radius,b[m].size),p=Et({x:S.x,y:S.y,radius:g},{x:v.x,y:v.y,radius:l});M.push(...p)}}let A=1e50,E=M[0];for(const S of M){e[d].x=S.x,e[d].y=S.y;const g=s(e,t);g<A&&(A=g,E=S)}u(E,d)}return e}function tt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const a=t[e.sets[0]],c=t[e.sets[1]];i=xt(a.radius,c.radius,q(a,c))}else i=st(e.sets.map(a=>t[a]));const o=e.weight!=null?e.weight:1;s+=o*(i-e.size)*(i-e.size)}return s}function Ct(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const c=t[e.sets[0]],h=t[e.sets[1]];i=xt(c.radius,h.radius,q(c,h))}else i=st(e.sets.map(c=>t[c]));const o=e.weight!=null?e.weight:1,a=Math.log((i+1)/(e.size+1));s+=o*a*a}return s}function pe(t,n,s){if(s==null?t.sort((i,o)=>o.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,o=t[0].y;for(const a of t)a.x-=i,a.y-=o}if(t.length===2&&q(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,o=Math.cos(i),a=Math.sin(i);for(const c of t){const h=c.x,u=c.y;c.x=o*h-a*u,c.y=a*h+o*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const o=t[1].y/(1e-10+t[1].x);for(const a of t){var e=(a.x+o*a.y)/(1+o*o);a.x=2*e-a.x,a.y=2*e*o-a.y}}}}function me(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,o){const a=n(i),c=n(o);a.parent=c}for(let i=0;i<t.length;++i)for(let o=i+1;o<t.length;++o){const a=t[i].radius+t[o].radius;q(t[i],t[o])+1e-10<a&&s(t[o],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const o=n(t[i]).parent.setid;e.has(o)||e.set(o,[]),e.get(o).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((o,a)=>Math.max(o,a[s]+a.radius),Number.NEGATIVE_INFINITY),i=t.reduce((o,a)=>Math.min(o,a[s]-a.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=me(e);for(const u of i){pe(u,n,s);const r=dt(u);u.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),u.bounds=r}i.sort((u,r)=>r.size-u.size),e=i[0];let o=e.bounds;const a=(o.xRange.max-o.xRange.min)/50;function c(u,r,y){if(!u)return;const d=u.bounds;let b,x;if(r)b=o.xRange.max-d.xRange.min+a;else{b=o.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;M<0&&(b+=M)}if(y)x=o.yRange.max-d.yRange.min+a;else{x=o.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;M<0&&(x+=M)}for(const M of u)M.x+=b,M.y+=x,e.push(M)}let h=1;for(;h<i.length;)c(i[h],!0,!1),c(i[h+1],!1,!0),c(i[h+2],!0,!0),h+=3,o=dt(e);return Ot(e)}function Nt(t,n,s,e,i){const o=Ft(t);n-=2*e,s-=2*e;const{xRange:a,yRange:c}=dt(o);if(a.max===a.min||c.max===c.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const b=Math.sqrt(i/Math.PI)*2;h=n/b,u=s/b}else h=n/(a.max-a.min),u=s/(c.max-c.min);const r=Math.min(u,h),y=(n-(a.max-a.min)*r)/2,d=(s-(c.max-c.min)*r)/2;return Ot(o.map(b=>({radius:r*b.radius,x:e+y+(b.x-a.min)*r,y:e+d+(b.y-c.min)*r,setid:b.setid})))}function Ot(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function be(t={}){let n=!1,s=600,e=350,i=15,o=1e3,a=Math.PI/2,c=!0,h=null,u=!0,r=!0,y=null,d=null,b=!1,x=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,A={},E=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(p){if(p in A)return A[p];var f=A[p]=E[S];return S+=1,S>=E.length&&(S=0),f},m=At,v=tt;function l(p){let f=p.datum();const N=new Set;f.forEach(k=>{k.size==0&&k.sets.length==1&&N.add(k.sets[0])}),f=f.filter(k=>!k.sets.some(F=>N.has(F)));let I={},C={};if(f.length>0){let k=m(f,{lossFunction:v,distinct:b});c&&(k=Dt(k,a,d)),I=Nt(k,s,e,i,h),C=jt(I,f,M)}const U={};f.forEach(k=>{k.label&&(U[k.sets]=k.label)});function j(k){if(k.sets in U)return U[k.sets];if(k.sets.length==1)return""+k.sets[0]}p.selectAll("svg").data([I]).enter().append("svg");const T=p.select("svg");n?T.attr("viewBox",`0 0 ${s} ${e}`):T.attr("width",s).attr("height",e);const R={};let _=!1;T.selectAll(".venn-area path").each(function(k){const F=this.getAttribute("d");k.sets.length==1&&F&&!b&&(_=!0,R[k.sets[0]]=ke(F))});function P(k){return F=>{const H=k.sets.map(et=>{let Y=R[et],Z=I[et];return Y||(Y={x:s/2,y:e/2,radius:1}),Z||(Z={x:s/2,y:e/2,radius:1}),{x:Y.x*(1-F)+Z.x*F,y:Y.y*(1-F)+Z.y*F,radius:Y.radius*(1-F)+Z.radius*F}});return St(H,x)}}const V=T.selectAll(".venn-area").data(f,k=>k.sets),O=V.enter().append("g").attr("class",k=>`venn-area venn-${k.sets.length==1?"circle":"intersection"}${k.colour||k.color?" venn-coloured":""}`).attr("data-venn-sets",k=>k.sets.join("_")),B=O.append("path"),W=O.append("text").attr("class","label").text(k=>j(k)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);r&&(B.style("fill-opacity","0").filter(k=>k.sets.length==1).style("fill",k=>k.colour?k.colour:k.color?k.color:g(k.sets)).style("fill-opacity",".25"),W.style("fill",k=>k.colour||k.color?"#FFF":t.textFill?t.textFill:k.sets.length==1?g(k.sets):"#444"));function K(k){return typeof k.transition=="function"?k.transition("venn").duration(o):k}let z=p;_&&typeof z.transition=="function"?(z=K(p),z.selectAll("path").attrTween("d",P)):z.selectAll("path").attr("d",k=>St(k.sets.map(F=>I[F])),x);const L=z.selectAll("text").filter(k=>k.sets in C).text(k=>j(k)).attr("x",k=>Math.floor(C[k.sets].x)).attr("y",k=>Math.floor(C[k.sets].y));u&&(_?"on"in L?L.on("end",rt(I,j)):L.each("end",rt(I,j)):L.each(rt(I,j)));const D=K(V.exit()).remove();typeof V.transition=="function"&&D.selectAll("path").attrTween("d",P);const X=D.selectAll("text").attr("x",s/2).attr("y",e/2);return y!==null&&(W.style("font-size","0px"),L.style("font-size",y),X.style("font-size","0px")),{circles:I,textCentres:C,nodes:V,enter:O,update:z,exit:D}}return l.wrap=function(p){return arguments.length?(u=p,l):u},l.useViewBox=function(){return n=!0,l},l.width=function(p){return arguments.length?(s=p,l):s},l.height=function(p){return arguments.length?(e=p,l):e},l.padding=function(p){return arguments.length?(i=p,l):i},l.distinct=function(p){return arguments.length?(b=p,l):b},l.colours=function(p){return arguments.length?(g=p,l):g},l.colors=function(p){return arguments.length?(g=p,l):g},l.fontSize=function(p){return arguments.length?(y=p,l):y},l.round=function(p){return arguments.length?(x=p,l):x},l.duration=function(p){return arguments.length?(o=p,l):o},l.layoutFunction=function(p){return arguments.length?(m=p,l):m},l.normalize=function(p){return arguments.length?(c=p,l):c},l.scaleToFit=function(p){return arguments.length?(h=p,l):h},l.styled=function(p){return arguments.length?(r=p,l):r},l.orientation=function(p){return arguments.length?(a=p,l):a},l.orientationOrder=function(p){return arguments.length?(d=p,l):d},l.lossFunction=function(p){return arguments.length?(v=p==="default"?tt:p==="logRatio"?Ct:p,l):v},l}function rt(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,o=n(s)||"",a=o.split(/\s+/).reverse(),h=(o.length+a.length)/3;let u=a.pop(),r=[u],y=0;const d=1.1;e.textContent=null;const b=[];function x(g){const m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=x(u);for(;u=a.pop(),!!u;){r.push(u);const g=r.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(r.pop(),M.textContent=r.join(" "),r=[u],M=x(u),y++)}const A=.35-y*d/2,E=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",E),g.setAttribute("y",S),g.setAttribute("dy",`${A+m*d}em`)})}}function at(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i<n.length;++i){const o=n[i].radius-q(n[i],t);o<=e&&(e=o)}for(let i=0;i<s.length;++i){const o=q(s[i],t)-s[i].radius;o<=e&&(e=o)}return e}function Lt(t,n,s){const e=[];for(const r of t)e.push({x:r.x,y:r.y}),e.push({x:r.x+r.radius/2,y:r.y}),e.push({x:r.x-r.radius/2,y:r.y}),e.push({x:r.x,y:r.y+r.radius/2}),e.push({x:r.x,y:r.y-r.radius/2});let i=e[0],o=at(e[0],t,n);for(let r=1;r<e.length;++r){const y=at(e[r],t,n);y>=o&&(i=e[r],o=y)}const a=zt(r=>-1*at({x:r[0],y:r[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,c={x:s?0:a[0],y:a[1]};let h=!0;for(const r of t)if(q(c,r)>r.radius){h=!1;break}for(const r of n)if(q(c,r)<r.radius){h=!1;break}if(h)return c;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?Lt(t,[]):Tt(u.arcs.map(r=>r.p1))}function ve(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],o=t[i];for(let a=e+1;a<s.length;++a){const c=s[a],h=t[c],u=q(o,h);u+h.radius<=o.radius+1e-10?n[c].push(i):u+o.radius<=h.radius+1e-10&&n[i].push(c)}}return n}function jt(t,n,s){const e={},i=ve(t);for(let o=0;o<n.length;++o){const a=n[o].sets,c={},h={};for(let d=0;d<a.length;++d){c[a[d]]=!0;const b=i[a[d]];for(let x=0;x<b.length;++x)h[b[x]]=!0}const u=[],r=[];for(let d in t)d in c?u.push(t[d]):d in h||r.push(t[d]);const y=Lt(u,r,s);e[a]=y,y.disjoint&&n[o].size>0&&console.log("WARNING: area "+a+" not represented on screen")}return e}function Ie(t,n,s){const e=[];return e.push(`
1
+ import{aC as Gt,s as Wt,g as Kt,t as Ht,q as Yt,a as Xt,b as Zt,_ as w,E as wt,K as Jt,d as ot,ar as Qt,ab as $t,ac as te,ad as ee,e as ne,z as se,G as ie,H as oe}from"./mermaid.core-B1DAMRyG.js";import"./index-CaPWFEmi.js";const kt=(t,n)=>Gt(t,"a",-n),_t=1e-10;function st(t,n){const s=ae(t),e=s.filter(c=>re(c,t));let i=0,o=0;const a=[];if(e.length>1){const c=Tt(e);for(let u=0;u<e.length;++u){const r=e[u];r.angle=Math.atan2(r.x-c.x,r.y-c.y)}e.sort((u,r)=>r.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const r=e[u];o+=(h.x+r.x)*(r.y-h.y);const y={x:(r.x+h.x)/2,y:(r.y+h.y)/2};let d=null;for(let b=0;b<r.parentIndex.length;++b)if(h.parentIndex.includes(r.parentIndex[b])){const x=t[r.parentIndex[b]],M=Math.atan2(r.x-x.x,r.y-x.y),A=Math.atan2(h.x-x.x,h.y-x.y);let E=A-M;E<0&&(E+=2*Math.PI);const S=A-E/2;let g=q(y,{x:x.x+x.radius*Math.sin(S),y:x.y+x.radius*Math.cos(S)});g>x.radius*2&&(g=x.radius*2),(d==null||d.width>g)&&(d={circle:x,width:g,p1:r,p2:h,large:g>x.radius,sweep:!0})}d!=null&&(a.push(d),i+=lt(d.circle.radius,d.width),h=r)}}else{let c=t[0];for(let u=1;u<t.length;++u)t[u].radius<c.radius&&(c=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(q(t[u],c)>Math.abs(c.radius-t[u].radius)){h=!0;break}h?i=o=0:(i=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-_t,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0}))}return o/=2,n&&(n.area=i+o,n.arcArea=i,n.polygonArea=o,n.arcs=a,n.innerPoints=e,n.intersectionPoints=s),i+o}function re(t,n){return n.every(s=>q(t,s)<s.radius+_t)}function ae(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Et(t[s],t[e]);for(const o of i)o.parentIndex=[s,e],n.push(o)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function q(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Et(t,n){const s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const o=(e*e-i*i+s*s)/(2*s),a=Math.sqrt(e*e-o*o),c=t.x+o*(n.x-t.x)/s,h=t.y+o*(n.y-t.y)/s,u=-(n.y-t.y)*(a/s),r=-(n.x-t.x)*(a/s);return[{x:c+u,y:h-r},{x:c-u,y:h+r}]}function Tt(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function le(t,n,s,e){e=e||{};const i=e.maxIterations||100,o=e.tolerance||1e-10,a=t(n),c=t(s);let h=s-n;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return n;if(c===0)return s;for(let u=0;u<i;++u){h/=2;const r=n+h,y=t(r);if(y*a>=0&&(n=r),Math.abs(h)<o||y===0)return r}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function $(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt($(t,t))}function ft(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let o=0;o<t.length;++o)t[o]=n*s[o]+e*i[o]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,o=s.zeroDelta||.001,a=s.minErrorDelta||1e-6,c=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,r=s.psi!==void 0?s.psi:-.5,y=s.sigma!==void 0?s.sigma:.5;let d;const b=n.length,x=new Array(b+1);x[0]=n,x[0].fx=t(n),x[0].id=0;for(let v=0;v<b;++v){const l=n.slice();l[v]=l[v]?l[v]*i:o,x[v+1]=l,x[v+1].fx=t(l),x[v+1].id=v+1}function M(v){for(let l=0;l<v.length;l++)x[b][l]=v[l];x[b].fx=v.fx}const A=(v,l)=>v.fx-l.fx,E=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let v=0;v<e;++v){if(x.sort(A),s.history){const p=x.map(f=>{const N=f.slice();return N.fx=f.fx,N.id=f.id,N});p.sort((f,N)=>f.id-N.id),s.history.push({x:x[0].slice(),fx:x[0].fx,simplex:p})}d=0;for(let p=0;p<b;++p)d=Math.max(d,Math.abs(x[0][p]-x[1][p]));if(Math.abs(x[0].fx-x[b].fx)<a&&d<c)break;for(let p=0;p<b;++p){E[p]=0;for(let f=0;f<b;++f)E[p]+=x[f][p];E[p]/=b}const l=x[b];if(J(S,1+h,E,-h,l),S.fx=t(S),S.fx<x[0].fx)J(m,1+u,E,-u,l),m.fx=t(m),m.fx<S.fx?M(m):M(S);else if(S.fx>=x[b-1].fx){let p=!1;if(S.fx>l.fx?(J(g,1+r,E,-r,l),g.fx=t(g),g.fx<l.fx?M(g):p=!0):(J(g,1-r*h,E,r*h,l),g.fx=t(g),g.fx<S.fx?M(g):p=!0),p){if(y>=1)break;for(let f=1;f<x.length;++f)J(x[f],1-y,x[0],y,x[f]),x[f].fx=t(x[f])}}else M(S)}return x.sort(A),{fx:x[0].fx,x:x[0]}}function ce(t,n,s,e,i,o,a){const c=s.fx,h=$(s.fxprime,n);let u=c,r=c,y=h,d=0;i=i||1,o=o||1e-6,a=a||.1;function b(x,M,A){for(let E=0;E<16;++E)if(i=(x+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+o*i*h||u>=A)M=i;else{if(Math.abs(y)<=-a*h)return i;y*(M-x)>=0&&(M=x),x=i,A=u}return 0}for(let x=0;x<10;++x){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+o*i*h||x&&u>=r)return b(d,i,r);if(Math.abs(y)<=-a*h)return i;if(y>=0)return b(i,d,u);r=u,d=i,i*=2}return i}function ue(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const o=n.slice();let a,c,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),a=e.fxprime.slice(),ft(a,e.fxprime,-1);for(let r=0;r<u;++r){if(h=ce(t,a,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ft(a,e.fxprime,-1);else{J(o,1,i.fxprime,-1,e.fxprime);const y=$(e.fxprime,e.fxprime),d=Math.max(0,$(o,i.fxprime)/y);J(a,d,a,-1,i.fxprime),c=e,e=i,i=c}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||ge,e=n.lossFunction||tt,i=fe(t,n),o=s(i,n),a=Object.keys(o),c=[];for(const r of a)c.push(o[r].x),c.push(o[r].y);const u=zt(r=>{const y={};for(let d=0;d<a.length;++d){const b=a[d];y[b]={x:r[2*d],y:r[2*d+1],radius:o[b].radius}}return e(y,i)},c,n).x;for(let r=0;r<a.length;++r){const y=a[r];o[y].x=u[2*r],o[y].y=u[2*r+1]}return o}const Rt=1e-10;function ht(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):le(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(c=>Object.assign({},c));function i(c){return c.join(";")}if(s){const c=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const r=String(h.sets[u]);c.set(r,h.size+(c.get(r)||0));for(let y=u+1;y<h.sets.length;y++){const d=String(h.sets[y]),b=`${r};${d}`,x=`${d};${r}`;c.set(b,h.size+(c.get(b)||0)),c.set(x,h.size+(c.get(x)||0))}}for(const h of e)h.sets.length<3&&(h.size=c.get(i(h.sets)))}const o=[],a=new Set;for(const c of e)if(c.sets.length===1)o.push(c.sets[0]);else if(c.sets.length===2){const h=c.sets[0],u=c.sets[1];a.add(i(c.sets)),a.add(i([u,h]))}o.sort((c,h)=>c===h?0:c<h?-1:1);for(let c=0;c<o.length;++c){const h=o[c];for(let u=c+1;u<o.length;++u){const r=o[u];a.has(i([h,r]))||e.push({sets:[h,r],size:0})}}return e}function he(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(o=>o.sets.length===2).forEach(o=>{const a=s[o.sets[0]],c=s[o.sets[1]],h=Math.sqrt(n[a].size/Math.PI),u=Math.sqrt(n[c].size/Math.PI),r=ht(h,u,o.size);e[a][c]=e[c][a]=r;let y=0;o.size+1e-10>=Math.min(n[a].size,n[c].size)?y=1:o.size<=1e-10&&(y=-1),i[a][c]=i[c][a]=y}),{distances:e,constraints:i}}function de(t,n,s,e){for(let o=0;o<n.length;++o)n[o]=0;let i=0;for(let o=0;o<s.length;++o){const a=t[2*o],c=t[2*o+1];for(let h=o+1;h<s.length;++h){const u=t[2*h],r=t[2*h+1],y=s[o][h],d=e[o][h],b=(u-a)*(u-a)+(r-c)*(r-c),x=Math.sqrt(b),M=b-y*y;d>0&&x<=y||d<0&&x>=y||(i+=2*M*M,n[2*o]+=4*M*(a-u),n[2*o+1]+=4*M*(c-r),n[2*h]+=4*M*(u-a),n[2*h+1]+=4*M*(r-c))}}return i}function ge(t,n={}){let s=ye(t,n);const e=n.lossFunction||tt;if(t.length>=8){const i=xe(t,n),o=e(i,t),a=e(s,t);o+1e-8<a&&(s=i)}return s}function xe(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:o,constraints:a}=he(t,e,i);const c=ut(o.map(ut))/o.length;o=o.map(d=>d.map(b=>b/c));const h=(d,b)=>de(d,b,o,a);let u=null;for(let d=0;d<s;++d){const b=ct(o.length*2).map(Math.random),x=ue(h,b,n);(!u||x.fx<u.fx)&&(u=x)}const r=u.x,y={};for(let d=0;d<e.length;++d){const b=e[d];y[b.sets[0]]={x:r[2*d]*c,y:r[2*d+1]*c,radius:Math.sqrt(b.size/Math.PI)}}if(n.history)for(const d of n.history)ft(d.x,c);return y}function ye(t,n){const s=n&&n.lossFunction?n.lossFunction:tt,e={},i={};for(const y of t)if(y.sets.length===1){const d=y.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:y.size,radius:Math.sqrt(y.size/Math.PI)},i[d]=[]}t=t.filter(y=>y.sets.length===2);for(const y of t){let d=y.weight!=null?y.weight:1;const b=y.sets[0],x=y.sets[1];y.size+Rt>=Math.min(e[b].size,e[x].size)&&(d=0),i[b].push({set:x,size:y.size,weight:d}),i[x].push({set:b,size:y.size,weight:d})}const o=[];Object.keys(i).forEach(y=>{let d=0;for(let b=0;b<i[y].length;++b)d+=i[y][b].size*i[y][b].weight;o.push({set:y,size:d})});function a(y,d){return d.size-y.size}o.sort(a);const c={};function h(y){return y.set in c}function u(y,d){e[d].x=y.x,e[d].y=y.y,c[d]=!0}u({x:0,y:0},o[0].set);for(let y=1;y<o.length;++y){const d=o[y].set,b=i[d].filter(h),x=e[d];if(b.sort(a),b.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var r=0;r<b.length;++r){const S=e[b[r].set],g=ht(x.radius,S.radius,b[r].size);M.push({x:S.x+g,y:S.y}),M.push({x:S.x-g,y:S.y}),M.push({y:S.y+g,x:S.x}),M.push({y:S.y-g,x:S.x});for(let m=r+1;m<b.length;++m){const v=e[b[m].set],l=ht(x.radius,v.radius,b[m].size),p=Et({x:S.x,y:S.y,radius:g},{x:v.x,y:v.y,radius:l});M.push(...p)}}let A=1e50,E=M[0];for(const S of M){e[d].x=S.x,e[d].y=S.y;const g=s(e,t);g<A&&(A=g,E=S)}u(E,d)}return e}function tt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const a=t[e.sets[0]],c=t[e.sets[1]];i=xt(a.radius,c.radius,q(a,c))}else i=st(e.sets.map(a=>t[a]));const o=e.weight!=null?e.weight:1;s+=o*(i-e.size)*(i-e.size)}return s}function Ct(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const c=t[e.sets[0]],h=t[e.sets[1]];i=xt(c.radius,h.radius,q(c,h))}else i=st(e.sets.map(c=>t[c]));const o=e.weight!=null?e.weight:1,a=Math.log((i+1)/(e.size+1));s+=o*a*a}return s}function pe(t,n,s){if(s==null?t.sort((i,o)=>o.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,o=t[0].y;for(const a of t)a.x-=i,a.y-=o}if(t.length===2&&q(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,o=Math.cos(i),a=Math.sin(i);for(const c of t){const h=c.x,u=c.y;c.x=o*h-a*u,c.y=a*h+o*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const o=t[1].y/(1e-10+t[1].x);for(const a of t){var e=(a.x+o*a.y)/(1+o*o);a.x=2*e-a.x,a.y=2*e*o-a.y}}}}function me(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,o){const a=n(i),c=n(o);a.parent=c}for(let i=0;i<t.length;++i)for(let o=i+1;o<t.length;++o){const a=t[i].radius+t[o].radius;q(t[i],t[o])+1e-10<a&&s(t[o],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const o=n(t[i]).parent.setid;e.has(o)||e.set(o,[]),e.get(o).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((o,a)=>Math.max(o,a[s]+a.radius),Number.NEGATIVE_INFINITY),i=t.reduce((o,a)=>Math.min(o,a[s]-a.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=me(e);for(const u of i){pe(u,n,s);const r=dt(u);u.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),u.bounds=r}i.sort((u,r)=>r.size-u.size),e=i[0];let o=e.bounds;const a=(o.xRange.max-o.xRange.min)/50;function c(u,r,y){if(!u)return;const d=u.bounds;let b,x;if(r)b=o.xRange.max-d.xRange.min+a;else{b=o.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;M<0&&(b+=M)}if(y)x=o.yRange.max-d.yRange.min+a;else{x=o.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;M<0&&(x+=M)}for(const M of u)M.x+=b,M.y+=x,e.push(M)}let h=1;for(;h<i.length;)c(i[h],!0,!1),c(i[h+1],!1,!0),c(i[h+2],!0,!0),h+=3,o=dt(e);return Ot(e)}function Nt(t,n,s,e,i){const o=Ft(t);n-=2*e,s-=2*e;const{xRange:a,yRange:c}=dt(o);if(a.max===a.min||c.max===c.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const b=Math.sqrt(i/Math.PI)*2;h=n/b,u=s/b}else h=n/(a.max-a.min),u=s/(c.max-c.min);const r=Math.min(u,h),y=(n-(a.max-a.min)*r)/2,d=(s-(c.max-c.min)*r)/2;return Ot(o.map(b=>({radius:r*b.radius,x:e+y+(b.x-a.min)*r,y:e+d+(b.y-c.min)*r,setid:b.setid})))}function Ot(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function be(t={}){let n=!1,s=600,e=350,i=15,o=1e3,a=Math.PI/2,c=!0,h=null,u=!0,r=!0,y=null,d=null,b=!1,x=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,A={},E=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(p){if(p in A)return A[p];var f=A[p]=E[S];return S+=1,S>=E.length&&(S=0),f},m=At,v=tt;function l(p){let f=p.datum();const N=new Set;f.forEach(k=>{k.size==0&&k.sets.length==1&&N.add(k.sets[0])}),f=f.filter(k=>!k.sets.some(F=>N.has(F)));let I={},C={};if(f.length>0){let k=m(f,{lossFunction:v,distinct:b});c&&(k=Dt(k,a,d)),I=Nt(k,s,e,i,h),C=jt(I,f,M)}const U={};f.forEach(k=>{k.label&&(U[k.sets]=k.label)});function j(k){if(k.sets in U)return U[k.sets];if(k.sets.length==1)return""+k.sets[0]}p.selectAll("svg").data([I]).enter().append("svg");const T=p.select("svg");n?T.attr("viewBox",`0 0 ${s} ${e}`):T.attr("width",s).attr("height",e);const R={};let _=!1;T.selectAll(".venn-area path").each(function(k){const F=this.getAttribute("d");k.sets.length==1&&F&&!b&&(_=!0,R[k.sets[0]]=ke(F))});function P(k){return F=>{const H=k.sets.map(et=>{let Y=R[et],Z=I[et];return Y||(Y={x:s/2,y:e/2,radius:1}),Z||(Z={x:s/2,y:e/2,radius:1}),{x:Y.x*(1-F)+Z.x*F,y:Y.y*(1-F)+Z.y*F,radius:Y.radius*(1-F)+Z.radius*F}});return St(H,x)}}const V=T.selectAll(".venn-area").data(f,k=>k.sets),O=V.enter().append("g").attr("class",k=>`venn-area venn-${k.sets.length==1?"circle":"intersection"}${k.colour||k.color?" venn-coloured":""}`).attr("data-venn-sets",k=>k.sets.join("_")),B=O.append("path"),W=O.append("text").attr("class","label").text(k=>j(k)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);r&&(B.style("fill-opacity","0").filter(k=>k.sets.length==1).style("fill",k=>k.colour?k.colour:k.color?k.color:g(k.sets)).style("fill-opacity",".25"),W.style("fill",k=>k.colour||k.color?"#FFF":t.textFill?t.textFill:k.sets.length==1?g(k.sets):"#444"));function K(k){return typeof k.transition=="function"?k.transition("venn").duration(o):k}let z=p;_&&typeof z.transition=="function"?(z=K(p),z.selectAll("path").attrTween("d",P)):z.selectAll("path").attr("d",k=>St(k.sets.map(F=>I[F])),x);const L=z.selectAll("text").filter(k=>k.sets in C).text(k=>j(k)).attr("x",k=>Math.floor(C[k.sets].x)).attr("y",k=>Math.floor(C[k.sets].y));u&&(_?"on"in L?L.on("end",rt(I,j)):L.each("end",rt(I,j)):L.each(rt(I,j)));const D=K(V.exit()).remove();typeof V.transition=="function"&&D.selectAll("path").attrTween("d",P);const X=D.selectAll("text").attr("x",s/2).attr("y",e/2);return y!==null&&(W.style("font-size","0px"),L.style("font-size",y),X.style("font-size","0px")),{circles:I,textCentres:C,nodes:V,enter:O,update:z,exit:D}}return l.wrap=function(p){return arguments.length?(u=p,l):u},l.useViewBox=function(){return n=!0,l},l.width=function(p){return arguments.length?(s=p,l):s},l.height=function(p){return arguments.length?(e=p,l):e},l.padding=function(p){return arguments.length?(i=p,l):i},l.distinct=function(p){return arguments.length?(b=p,l):b},l.colours=function(p){return arguments.length?(g=p,l):g},l.colors=function(p){return arguments.length?(g=p,l):g},l.fontSize=function(p){return arguments.length?(y=p,l):y},l.round=function(p){return arguments.length?(x=p,l):x},l.duration=function(p){return arguments.length?(o=p,l):o},l.layoutFunction=function(p){return arguments.length?(m=p,l):m},l.normalize=function(p){return arguments.length?(c=p,l):c},l.scaleToFit=function(p){return arguments.length?(h=p,l):h},l.styled=function(p){return arguments.length?(r=p,l):r},l.orientation=function(p){return arguments.length?(a=p,l):a},l.orientationOrder=function(p){return arguments.length?(d=p,l):d},l.lossFunction=function(p){return arguments.length?(v=p==="default"?tt:p==="logRatio"?Ct:p,l):v},l}function rt(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,o=n(s)||"",a=o.split(/\s+/).reverse(),h=(o.length+a.length)/3;let u=a.pop(),r=[u],y=0;const d=1.1;e.textContent=null;const b=[];function x(g){const m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=x(u);for(;u=a.pop(),!!u;){r.push(u);const g=r.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(r.pop(),M.textContent=r.join(" "),r=[u],M=x(u),y++)}const A=.35-y*d/2,E=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",E),g.setAttribute("y",S),g.setAttribute("dy",`${A+m*d}em`)})}}function at(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i<n.length;++i){const o=n[i].radius-q(n[i],t);o<=e&&(e=o)}for(let i=0;i<s.length;++i){const o=q(s[i],t)-s[i].radius;o<=e&&(e=o)}return e}function Lt(t,n,s){const e=[];for(const r of t)e.push({x:r.x,y:r.y}),e.push({x:r.x+r.radius/2,y:r.y}),e.push({x:r.x-r.radius/2,y:r.y}),e.push({x:r.x,y:r.y+r.radius/2}),e.push({x:r.x,y:r.y-r.radius/2});let i=e[0],o=at(e[0],t,n);for(let r=1;r<e.length;++r){const y=at(e[r],t,n);y>=o&&(i=e[r],o=y)}const a=zt(r=>-1*at({x:r[0],y:r[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,c={x:s?0:a[0],y:a[1]};let h=!0;for(const r of t)if(q(c,r)>r.radius){h=!1;break}for(const r of n)if(q(c,r)<r.radius){h=!1;break}if(h)return c;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?Lt(t,[]):Tt(u.arcs.map(r=>r.p1))}function ve(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],o=t[i];for(let a=e+1;a<s.length;++a){const c=s[a],h=t[c],u=q(o,h);u+h.radius<=o.radius+1e-10?n[c].push(i):u+o.radius<=h.radius+1e-10&&n[i].push(c)}}return n}function jt(t,n,s){const e={},i=ve(t);for(let o=0;o<n.length;++o){const a=n[o].sets,c={},h={};for(let d=0;d<a.length;++d){c[a[d]]=!0;const b=i[a[d]];for(let x=0;x<b.length;++x)h[b[x]]=!0}const u=[],r=[];for(let d in t)d in c?u.push(t[d]):d in h||r.push(t[d]);const y=Lt(u,r,s);e[a]=y,y.disjoint&&n[o].size>0&&console.log("WARNING: area "+a+" not represented on screen")}return e}function Ie(t,n,s){const e=[];return e.push(`
2
2
  M`,t,n),e.push(`
3
3
  m`,-s,0),e.push(`
4
4
  a`,s,s,0,1,0,s*2,0),e.push(`
@@ -1,4 +1,4 @@
1
- import{cX as fh,ab as kt}from"./index-CPokXzBk.js";import{m as jt,f as dh,d as hh}from"./min-BGmgVSVZ.js";import{b as ph,l as mh,c as gh,m as yh,r as nc,n as ys}from"./_baseUniq-CKZsAae7.js";import{b9 as Th}from"./mermaid.core-BYfeCraQ.js";function Rh(t,e){return ph(jt(t,e))}function vh(t,e){return t&&t.length?mh(t,gh(e)):[]}function Ge(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function ft(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Qt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function Eh(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Pn(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}class cf{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){const r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const n=r.properties[e.property]?.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){const r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return Ge(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const i=n[r];if(i!==void 0)return i;{const a=this.types[e],s=a?a.superTypes.some(o=>this.isSubtype(o,r)):!1;return n[r]=s,s}}getAllSubTypes(e){const r=this.allSubtypes[e];if(r)return r;{const n=this.getAllTypes(),i=[];for(const a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}}function di(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function uf(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function ff(t){return di(t)&&typeof t.fullText=="string"}class De{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){const e=this.iterator();let r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){const e=[],r=this.iterator();let n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){const n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new De(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return Qe})}join(e=","){const r=this.iterator();let n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=Ah(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){const n=this.iterator();let i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new De(this.startFn,r=>{const{done:n,value:i}=this.nextFn(r);return n?Qe:{done:!1,value:e(i)}})}filter(e){return new De(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Qe})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){const n=this.iterator();let i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){const i=e.next();if(i.done)return n;const a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new De(()=>({this:this.startFn()}),r=>{do{if(r.iterator){const a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}const{done:n,value:i}=this.nextFn(r.this);if(!n){const a=e(i);if(xa(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Qe})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const r=e>1?this.flat(e-1):this;return new De(()=>({this:r.startFn()}),n=>{do{if(n.iterator){const s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}const{done:i,value:a}=r.nextFn(n.this);if(!i)if(xa(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Qe})}head(){const r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new De(()=>{const r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new De(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Qe:this.nextFn(r.state)))}distinct(e){return new De(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){const i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return Qe})}exclude(e,r){const n=new Set;for(const i of e){const a=r?r(i):i;n.add(a)}return this.filter(i=>{const a=r?r(i):i;return!n.has(a)})}}function Ah(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function xa(t){return!!t&&typeof t[Symbol.iterator]=="function"}const df=new De(()=>{},()=>Qe),Qe=Object.freeze({done:!0,value:void 0});function fe(...t){if(t.length===1){const e=t[0];if(e instanceof De)return e;if(xa(e))return new De(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new De(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:Qe)}return t.length>1?new De(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){const r=t[e.collIndex++];xa(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return Qe}):df}class Ol extends De{constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Qe})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Ks;(function(t){function e(a){return a.reduce((s,o)=>s+o,0)}t.sum=e;function r(a){return a.reduce((s,o)=>s*o,0)}t.product=r;function n(a){return a.reduce((s,o)=>Math.min(s,o))}t.min=n;function i(a){return a.reduce((s,o)=>Math.max(s,o))}t.max=i})(Ks||(Ks={}));function Hs(t,e={}){for(const[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,a)=>{Ge(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=a,e.deep&&Hs(i,e))}):Ge(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&Hs(n,e)))}function ns(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function zt(t){const r=va(t).$document;if(!r)throw new Error("AST node has no document.");return r}function va(t){for(;t.$container;)t=t.$container;return t}function ic(t){return ft(t)?t.ref?[t.ref]:[]:Qt(t)?t.items.map(e=>e.ref):[]}function Ll(t,e){if(!t)throw new Error("Node must be an AstNode.");const r=e?.range;return new De(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){const i=n.keys[n.keyIndex];if(!i.startsWith("$")){const a=t[i];if(Ge(a)){if(n.keyIndex++,ac(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;n.arrayIndex<a.length;){const s=n.arrayIndex++,o=a[s];if(Ge(o)&&ac(o,r))return{done:!1,value:o}}n.arrayIndex=0}}n.keyIndex++}return Qe})}function Ci(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,r=>Ll(r,e))}function Ut(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,r=>Ll(r,e),{includeRoot:!0})}function ac(t,e){if(!e)return!0;const r=t.$cstNode?.range;return r?Wh(r,e):!1}function Da(t){return new De(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const r=e.keys[e.keyIndex];if(!r.startsWith("$")){const n=t[r];if(ft(n)||Qt(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){const i=e.arrayIndex++,a=n[i];if(ft(a)||Qt(n))return{done:!1,value:{reference:a,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return Qe})}function $h(t,e){const r=t.getTypeMetaData(e.$type),n=e;for(const i of Object.values(r.properties))i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=hf(i.defaultValue))}function hf(t){return Array.isArray(t)?[...t.map(hf)]:t}const Ze={$type:"AbstractElement",cardinality:"cardinality"};function Ch(t){return J.isInstance(t,Ze.$type)}const Ea={$type:"AbstractParserRule"};function Si(t){return J.isInstance(t,Ea.$type)}const Zi={$type:"AbstractRule"},lt={$type:"AbstractType"},Ar={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function is(t){return J.isInstance(t,Ar.$type)}const Aa={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function pf(t){return J.isInstance(t,Aa.$type)}const sc={$type:"ArrayLiteral",elements:"elements"},oc={$type:"ArrayType",elementType:"elementType"},$r={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Nr(t){return J.isInstance(t,$r.$type)}const Xs={$type:"BooleanLiteral",true:"true"};function Sh(t){return J.isInstance(t,Xs.$type)}const Cr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function kh(t){return J.isInstance(t,Cr.$type)}const jr={$type:"Condition"},$a={$type:"Conjunction",left:"left",right:"right"};function wh(t){return J.isInstance(t,$a.$type)}const Sr={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function as(t){return J.isInstance(t,Sr.$type)}const Ca={$type:"Disjunction",left:"left",right:"right"};function bh(t){return J.isInstance(t,Ca.$type)}const Ys={$type:"EndOfFile",cardinality:"cardinality"};function _h(t){return J.isInstance(t,Ys.$type)}const sr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},lc={$type:"GrammarImport",path:"path"},Vr={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function xl(t){return J.isInstance(t,Vr.$type)}const Js={$type:"InferredType",name:"name"};function mf(t){return J.isInstance(t,Js.$type)}const xt={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Ma(t){return J.isInstance(t,xt.$type)}const Ts={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},cc={$type:"InfixRuleOperators",precedences:"precedences"},ri={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function Nh(t){return J.isInstance(t,ri.$type)}const ni={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Ir(t){return J.isInstance(t,ni.$type)}const Qi={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},Kr={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Ih(t){return J.isInstance(t,Kr.$type)}const Zs={$type:"Negation",value:"value"};function Ph(t){return J.isInstance(t,Zs.$type)}const uc={$type:"NumberLiteral",value:"value"},ea={$type:"Parameter",name:"name"},Qs={$type:"ParameterReference",parameter:"parameter"};function Oh(t){return J.isInstance(t,Qs.$type)}const mt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function Wt(t){return J.isInstance(t,mt.$type)}const Rs={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},Hr={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function Lh(t){return J.isInstance(t,Hr.$type)}const eo={$type:"ReturnType",name:"name"};function xh(t){return J.isInstance(t,eo.$type)}const Xr={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Pr(t){return J.isInstance(t,Xr.$type)}const ii={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Dh(t){return J.isInstance(t,ii.$type)}const fc={$type:"StringLiteral",value:"value"},Yr={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Mh(t){return J.isInstance(t,Yr.$type)}const nt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},Jr={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Fh(t){return J.isInstance(t,Jr.$type)}const Zt={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function Vt(t){return J.isInstance(t,Zt.$type)}const Zr={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function Gh(t){return J.isInstance(t,Zr.$type)}const Sa={$type:"Type",name:"name",type:"type"};function jh(t){return J.isInstance(t,Sa.$type)}const On={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},Ln={$type:"TypeDefinition"},dc={$type:"UnionType",types:"types"},ka={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function gf(t){return J.isInstance(t,ka.$type)}const Qr={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function zh(t){return J.isInstance(t,Qr.$type)}const xn={$type:"ValueLiteral"},ai={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Uh(t){return J.isInstance(t,ai.$type)}class yf extends cf{constructor(){super(...arguments),this.types={AbstractElement:{name:Ze.$type,properties:{cardinality:{name:Ze.cardinality}},superTypes:[]},AbstractParserRule:{name:Ea.$type,properties:{},superTypes:[Zi.$type,lt.$type]},AbstractRule:{name:Zi.$type,properties:{},superTypes:[]},AbstractType:{name:lt.$type,properties:{},superTypes:[]},Action:{name:Ar.$type,properties:{cardinality:{name:Ar.cardinality},feature:{name:Ar.feature},inferredType:{name:Ar.inferredType},operator:{name:Ar.operator},type:{name:Ar.type,referenceType:lt.$type}},superTypes:[Ze.$type]},Alternatives:{name:Aa.$type,properties:{cardinality:{name:Aa.cardinality},elements:{name:Aa.elements,defaultValue:[]}},superTypes:[Ze.$type]},ArrayLiteral:{name:sc.$type,properties:{elements:{name:sc.elements,defaultValue:[]}},superTypes:[xn.$type]},ArrayType:{name:oc.$type,properties:{elementType:{name:oc.elementType}},superTypes:[Ln.$type]},Assignment:{name:$r.$type,properties:{cardinality:{name:$r.cardinality},feature:{name:$r.feature},operator:{name:$r.operator},predicate:{name:$r.predicate},terminal:{name:$r.terminal}},superTypes:[Ze.$type]},BooleanLiteral:{name:Xs.$type,properties:{true:{name:Xs.true,defaultValue:!1}},superTypes:[jr.$type,xn.$type]},CharacterRange:{name:Cr.$type,properties:{cardinality:{name:Cr.cardinality},left:{name:Cr.left},lookahead:{name:Cr.lookahead},parenthesized:{name:Cr.parenthesized,defaultValue:!1},right:{name:Cr.right}},superTypes:[nt.$type]},Condition:{name:jr.$type,properties:{},superTypes:[]},Conjunction:{name:$a.$type,properties:{left:{name:$a.left},right:{name:$a.right}},superTypes:[jr.$type]},CrossReference:{name:Sr.$type,properties:{cardinality:{name:Sr.cardinality},deprecatedSyntax:{name:Sr.deprecatedSyntax,defaultValue:!1},isMulti:{name:Sr.isMulti,defaultValue:!1},terminal:{name:Sr.terminal},type:{name:Sr.type,referenceType:lt.$type}},superTypes:[Ze.$type]},Disjunction:{name:Ca.$type,properties:{left:{name:Ca.left},right:{name:Ca.right}},superTypes:[jr.$type]},EndOfFile:{name:Ys.$type,properties:{cardinality:{name:Ys.cardinality}},superTypes:[Ze.$type]},Grammar:{name:sr.$type,properties:{imports:{name:sr.imports,defaultValue:[]},interfaces:{name:sr.interfaces,defaultValue:[]},isDeclared:{name:sr.isDeclared,defaultValue:!1},name:{name:sr.name},rules:{name:sr.rules,defaultValue:[]},types:{name:sr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:lc.$type,properties:{path:{name:lc.path}},superTypes:[]},Group:{name:Vr.$type,properties:{cardinality:{name:Vr.cardinality},elements:{name:Vr.elements,defaultValue:[]},guardCondition:{name:Vr.guardCondition},predicate:{name:Vr.predicate}},superTypes:[Ze.$type]},InferredType:{name:Js.$type,properties:{name:{name:Js.name}},superTypes:[lt.$type]},InfixRule:{name:xt.$type,properties:{call:{name:xt.call},dataType:{name:xt.dataType},inferredType:{name:xt.inferredType},name:{name:xt.name},operators:{name:xt.operators},parameters:{name:xt.parameters,defaultValue:[]},returnType:{name:xt.returnType,referenceType:lt.$type}},superTypes:[Ea.$type]},InfixRuleOperatorList:{name:Ts.$type,properties:{associativity:{name:Ts.associativity},operators:{name:Ts.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:cc.$type,properties:{precedences:{name:cc.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ri.$type,properties:{attributes:{name:ri.attributes,defaultValue:[]},name:{name:ri.name},superTypes:{name:ri.superTypes,defaultValue:[],referenceType:lt.$type}},superTypes:[lt.$type]},Keyword:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},predicate:{name:ni.predicate},value:{name:ni.value}},superTypes:[Ze.$type]},NamedArgument:{name:Qi.$type,properties:{calledByName:{name:Qi.calledByName,defaultValue:!1},parameter:{name:Qi.parameter,referenceType:ea.$type},value:{name:Qi.value}},superTypes:[]},NegatedToken:{name:Kr.$type,properties:{cardinality:{name:Kr.cardinality},lookahead:{name:Kr.lookahead},parenthesized:{name:Kr.parenthesized,defaultValue:!1},terminal:{name:Kr.terminal}},superTypes:[nt.$type]},Negation:{name:Zs.$type,properties:{value:{name:Zs.value}},superTypes:[jr.$type]},NumberLiteral:{name:uc.$type,properties:{value:{name:uc.value}},superTypes:[xn.$type]},Parameter:{name:ea.$type,properties:{name:{name:ea.name}},superTypes:[]},ParameterReference:{name:Qs.$type,properties:{parameter:{name:Qs.parameter,referenceType:ea.$type}},superTypes:[jr.$type]},ParserRule:{name:mt.$type,properties:{dataType:{name:mt.dataType},definition:{name:mt.definition},entry:{name:mt.entry,defaultValue:!1},fragment:{name:mt.fragment,defaultValue:!1},inferredType:{name:mt.inferredType},name:{name:mt.name},parameters:{name:mt.parameters,defaultValue:[]},returnType:{name:mt.returnType,referenceType:lt.$type}},superTypes:[Ea.$type]},ReferenceType:{name:Rs.$type,properties:{isMulti:{name:Rs.isMulti,defaultValue:!1},referenceType:{name:Rs.referenceType}},superTypes:[Ln.$type]},RegexToken:{name:Hr.$type,properties:{cardinality:{name:Hr.cardinality},lookahead:{name:Hr.lookahead},parenthesized:{name:Hr.parenthesized,defaultValue:!1},regex:{name:Hr.regex}},superTypes:[nt.$type]},ReturnType:{name:eo.$type,properties:{name:{name:eo.name}},superTypes:[]},RuleCall:{name:Xr.$type,properties:{arguments:{name:Xr.arguments,defaultValue:[]},cardinality:{name:Xr.cardinality},predicate:{name:Xr.predicate},rule:{name:Xr.rule,referenceType:Zi.$type}},superTypes:[Ze.$type]},SimpleType:{name:ii.$type,properties:{primitiveType:{name:ii.primitiveType},stringType:{name:ii.stringType},typeRef:{name:ii.typeRef,referenceType:lt.$type}},superTypes:[Ln.$type]},StringLiteral:{name:fc.$type,properties:{value:{name:fc.value}},superTypes:[xn.$type]},TerminalAlternatives:{name:Yr.$type,properties:{cardinality:{name:Yr.cardinality},elements:{name:Yr.elements,defaultValue:[]},lookahead:{name:Yr.lookahead},parenthesized:{name:Yr.parenthesized,defaultValue:!1}},superTypes:[nt.$type]},TerminalElement:{name:nt.$type,properties:{cardinality:{name:nt.cardinality},lookahead:{name:nt.lookahead},parenthesized:{name:nt.parenthesized,defaultValue:!1}},superTypes:[Ze.$type]},TerminalGroup:{name:Jr.$type,properties:{cardinality:{name:Jr.cardinality},elements:{name:Jr.elements,defaultValue:[]},lookahead:{name:Jr.lookahead},parenthesized:{name:Jr.parenthesized,defaultValue:!1}},superTypes:[nt.$type]},TerminalRule:{name:Zt.$type,properties:{definition:{name:Zt.definition},fragment:{name:Zt.fragment,defaultValue:!1},hidden:{name:Zt.hidden,defaultValue:!1},name:{name:Zt.name},type:{name:Zt.type}},superTypes:[Zi.$type]},TerminalRuleCall:{name:Zr.$type,properties:{cardinality:{name:Zr.cardinality},lookahead:{name:Zr.lookahead},parenthesized:{name:Zr.parenthesized,defaultValue:!1},rule:{name:Zr.rule,referenceType:Zt.$type}},superTypes:[nt.$type]},Type:{name:Sa.$type,properties:{name:{name:Sa.name},type:{name:Sa.type}},superTypes:[lt.$type]},TypeAttribute:{name:On.$type,properties:{defaultValue:{name:On.defaultValue},isOptional:{name:On.isOptional,defaultValue:!1},name:{name:On.name},type:{name:On.type}},superTypes:[]},TypeDefinition:{name:Ln.$type,properties:{},superTypes:[]},UnionType:{name:dc.$type,properties:{types:{name:dc.types,defaultValue:[]}},superTypes:[Ln.$type]},UnorderedGroup:{name:ka.$type,properties:{cardinality:{name:ka.cardinality},elements:{name:ka.elements,defaultValue:[]}},superTypes:[Ze.$type]},UntilToken:{name:Qr.$type,properties:{cardinality:{name:Qr.cardinality},lookahead:{name:Qr.lookahead},parenthesized:{name:Qr.parenthesized,defaultValue:!1},terminal:{name:Qr.terminal}},superTypes:[nt.$type]},ValueLiteral:{name:xn.$type,properties:{},superTypes:[]},Wildcard:{name:ai.$type,properties:{cardinality:{name:ai.cardinality},lookahead:{name:ai.lookahead},parenthesized:{name:ai.parenthesized,defaultValue:!1}},superTypes:[nt.$type]}}}}const J=new yf;function to(t){return new Ol(t,e=>di(e)?e.content:[],{includeRoot:!0})}function qh(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function ro(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Fa(t){if(!t)return;const{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var Ft;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Ft||(Ft={}));function Bh(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return Ft.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Ft.After;const r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?Ft.Inside:r?Ft.OverlapBack:n?Ft.OverlapFront:Ft.Outside}function Wh(t,e){return Bh(t,e)>Ft.After}const Vh=/^[\w\p{L}]$/u;function Kh(t,e){if(t){const r=Hh(t,!0);if(r&&hc(r,e))return r;if(ff(t)){const n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){const a=t.content[i];if(hc(a,e))return a}}}}function hc(t,e){return uf(t)&&e.includes(t.tokenType.name)}function Hh(t,e=!0){for(;t.container;){const r=t.container;let n=r.content.indexOf(t);for(;n>0;){n--;const i=r.content[n];if(e||!i.hidden)return i}t=r}}class Tf extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}}function ki(t,e="Error: Got unexpected value."){throw new Error(e)}function U(t){return t.charCodeAt(0)}function vs(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function Dn(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function zr(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Xh(){throw Error("Internal Error - Should never get here!")}function pc(t){return t.type==="Character"}const Ga=[];for(let t=U("0");t<=U("9");t++)Ga.push(t);const ja=[U("_")].concat(Ga);for(let t=U("a");t<=U("z");t++)ja.push(t);for(let t=U("A");t<=U("Z");t++)ja.push(t);const mc=[U(" "),U("\f"),U(`
1
+ import{cX as fh,ab as kt}from"./index-CaPWFEmi.js";import{m as jt,f as dh,d as hh}from"./min-BxM1U1Fg.js";import{b as ph,l as mh,c as gh,m as yh,r as nc,n as ys}from"./_baseUniq-CIdKO3dq.js";import{b9 as Th}from"./mermaid.core-B1DAMRyG.js";function Rh(t,e){return ph(jt(t,e))}function vh(t,e){return t&&t.length?mh(t,gh(e)):[]}function Ge(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function ft(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Qt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function Eh(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Pn(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}class cf{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){const r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const n=r.properties[e.property]?.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){const r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return Ge(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const i=n[r];if(i!==void 0)return i;{const a=this.types[e],s=a?a.superTypes.some(o=>this.isSubtype(o,r)):!1;return n[r]=s,s}}getAllSubTypes(e){const r=this.allSubtypes[e];if(r)return r;{const n=this.getAllTypes(),i=[];for(const a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}}function di(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function uf(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function ff(t){return di(t)&&typeof t.fullText=="string"}class De{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){const e=this.iterator();let r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){const e=[],r=this.iterator();let n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){const n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new De(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return Qe})}join(e=","){const r=this.iterator();let n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=Ah(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){const n=this.iterator();let i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new De(this.startFn,r=>{const{done:n,value:i}=this.nextFn(r);return n?Qe:{done:!1,value:e(i)}})}filter(e){return new De(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Qe})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){const n=this.iterator();let i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){const i=e.next();if(i.done)return n;const a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){const r=this.iterator();let n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){const r=this.iterator();let n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new De(()=>({this:this.startFn()}),r=>{do{if(r.iterator){const a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}const{done:n,value:i}=this.nextFn(r.this);if(!n){const a=e(i);if(xa(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Qe})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const r=e>1?this.flat(e-1):this;return new De(()=>({this:r.startFn()}),n=>{do{if(n.iterator){const s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}const{done:i,value:a}=r.nextFn(n.this);if(!i)if(xa(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Qe})}head(){const r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new De(()=>{const r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new De(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Qe:this.nextFn(r.state)))}distinct(e){return new De(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){const i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return Qe})}exclude(e,r){const n=new Set;for(const i of e){const a=r?r(i):i;n.add(a)}return this.filter(i=>{const a=r?r(i):i;return!n.has(a)})}}function Ah(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function xa(t){return!!t&&typeof t[Symbol.iterator]=="function"}const df=new De(()=>{},()=>Qe),Qe=Object.freeze({done:!0,value:void 0});function fe(...t){if(t.length===1){const e=t[0];if(e instanceof De)return e;if(xa(e))return new De(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new De(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:Qe)}return t.length>1?new De(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){const r=t[e.collIndex++];xa(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return Qe}):df}class Ol extends De{constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Qe})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Ks;(function(t){function e(a){return a.reduce((s,o)=>s+o,0)}t.sum=e;function r(a){return a.reduce((s,o)=>s*o,0)}t.product=r;function n(a){return a.reduce((s,o)=>Math.min(s,o))}t.min=n;function i(a){return a.reduce((s,o)=>Math.max(s,o))}t.max=i})(Ks||(Ks={}));function Hs(t,e={}){for(const[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,a)=>{Ge(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=a,e.deep&&Hs(i,e))}):Ge(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&Hs(n,e)))}function ns(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function zt(t){const r=va(t).$document;if(!r)throw new Error("AST node has no document.");return r}function va(t){for(;t.$container;)t=t.$container;return t}function ic(t){return ft(t)?t.ref?[t.ref]:[]:Qt(t)?t.items.map(e=>e.ref):[]}function Ll(t,e){if(!t)throw new Error("Node must be an AstNode.");const r=e?.range;return new De(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){const i=n.keys[n.keyIndex];if(!i.startsWith("$")){const a=t[i];if(Ge(a)){if(n.keyIndex++,ac(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;n.arrayIndex<a.length;){const s=n.arrayIndex++,o=a[s];if(Ge(o)&&ac(o,r))return{done:!1,value:o}}n.arrayIndex=0}}n.keyIndex++}return Qe})}function Ci(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,r=>Ll(r,e))}function Ut(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,r=>Ll(r,e),{includeRoot:!0})}function ac(t,e){if(!e)return!0;const r=t.$cstNode?.range;return r?Wh(r,e):!1}function Da(t){return new De(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const r=e.keys[e.keyIndex];if(!r.startsWith("$")){const n=t[r];if(ft(n)||Qt(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){const i=e.arrayIndex++,a=n[i];if(ft(a)||Qt(n))return{done:!1,value:{reference:a,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return Qe})}function $h(t,e){const r=t.getTypeMetaData(e.$type),n=e;for(const i of Object.values(r.properties))i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=hf(i.defaultValue))}function hf(t){return Array.isArray(t)?[...t.map(hf)]:t}const Ze={$type:"AbstractElement",cardinality:"cardinality"};function Ch(t){return J.isInstance(t,Ze.$type)}const Ea={$type:"AbstractParserRule"};function Si(t){return J.isInstance(t,Ea.$type)}const Zi={$type:"AbstractRule"},lt={$type:"AbstractType"},Ar={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function is(t){return J.isInstance(t,Ar.$type)}const Aa={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function pf(t){return J.isInstance(t,Aa.$type)}const sc={$type:"ArrayLiteral",elements:"elements"},oc={$type:"ArrayType",elementType:"elementType"},$r={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Nr(t){return J.isInstance(t,$r.$type)}const Xs={$type:"BooleanLiteral",true:"true"};function Sh(t){return J.isInstance(t,Xs.$type)}const Cr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function kh(t){return J.isInstance(t,Cr.$type)}const jr={$type:"Condition"},$a={$type:"Conjunction",left:"left",right:"right"};function wh(t){return J.isInstance(t,$a.$type)}const Sr={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function as(t){return J.isInstance(t,Sr.$type)}const Ca={$type:"Disjunction",left:"left",right:"right"};function bh(t){return J.isInstance(t,Ca.$type)}const Ys={$type:"EndOfFile",cardinality:"cardinality"};function _h(t){return J.isInstance(t,Ys.$type)}const sr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},lc={$type:"GrammarImport",path:"path"},Vr={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function xl(t){return J.isInstance(t,Vr.$type)}const Js={$type:"InferredType",name:"name"};function mf(t){return J.isInstance(t,Js.$type)}const xt={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Ma(t){return J.isInstance(t,xt.$type)}const Ts={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},cc={$type:"InfixRuleOperators",precedences:"precedences"},ri={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function Nh(t){return J.isInstance(t,ri.$type)}const ni={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Ir(t){return J.isInstance(t,ni.$type)}const Qi={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},Kr={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Ih(t){return J.isInstance(t,Kr.$type)}const Zs={$type:"Negation",value:"value"};function Ph(t){return J.isInstance(t,Zs.$type)}const uc={$type:"NumberLiteral",value:"value"},ea={$type:"Parameter",name:"name"},Qs={$type:"ParameterReference",parameter:"parameter"};function Oh(t){return J.isInstance(t,Qs.$type)}const mt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function Wt(t){return J.isInstance(t,mt.$type)}const Rs={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},Hr={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function Lh(t){return J.isInstance(t,Hr.$type)}const eo={$type:"ReturnType",name:"name"};function xh(t){return J.isInstance(t,eo.$type)}const Xr={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Pr(t){return J.isInstance(t,Xr.$type)}const ii={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Dh(t){return J.isInstance(t,ii.$type)}const fc={$type:"StringLiteral",value:"value"},Yr={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Mh(t){return J.isInstance(t,Yr.$type)}const nt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},Jr={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Fh(t){return J.isInstance(t,Jr.$type)}const Zt={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function Vt(t){return J.isInstance(t,Zt.$type)}const Zr={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function Gh(t){return J.isInstance(t,Zr.$type)}const Sa={$type:"Type",name:"name",type:"type"};function jh(t){return J.isInstance(t,Sa.$type)}const On={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},Ln={$type:"TypeDefinition"},dc={$type:"UnionType",types:"types"},ka={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function gf(t){return J.isInstance(t,ka.$type)}const Qr={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function zh(t){return J.isInstance(t,Qr.$type)}const xn={$type:"ValueLiteral"},ai={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Uh(t){return J.isInstance(t,ai.$type)}class yf extends cf{constructor(){super(...arguments),this.types={AbstractElement:{name:Ze.$type,properties:{cardinality:{name:Ze.cardinality}},superTypes:[]},AbstractParserRule:{name:Ea.$type,properties:{},superTypes:[Zi.$type,lt.$type]},AbstractRule:{name:Zi.$type,properties:{},superTypes:[]},AbstractType:{name:lt.$type,properties:{},superTypes:[]},Action:{name:Ar.$type,properties:{cardinality:{name:Ar.cardinality},feature:{name:Ar.feature},inferredType:{name:Ar.inferredType},operator:{name:Ar.operator},type:{name:Ar.type,referenceType:lt.$type}},superTypes:[Ze.$type]},Alternatives:{name:Aa.$type,properties:{cardinality:{name:Aa.cardinality},elements:{name:Aa.elements,defaultValue:[]}},superTypes:[Ze.$type]},ArrayLiteral:{name:sc.$type,properties:{elements:{name:sc.elements,defaultValue:[]}},superTypes:[xn.$type]},ArrayType:{name:oc.$type,properties:{elementType:{name:oc.elementType}},superTypes:[Ln.$type]},Assignment:{name:$r.$type,properties:{cardinality:{name:$r.cardinality},feature:{name:$r.feature},operator:{name:$r.operator},predicate:{name:$r.predicate},terminal:{name:$r.terminal}},superTypes:[Ze.$type]},BooleanLiteral:{name:Xs.$type,properties:{true:{name:Xs.true,defaultValue:!1}},superTypes:[jr.$type,xn.$type]},CharacterRange:{name:Cr.$type,properties:{cardinality:{name:Cr.cardinality},left:{name:Cr.left},lookahead:{name:Cr.lookahead},parenthesized:{name:Cr.parenthesized,defaultValue:!1},right:{name:Cr.right}},superTypes:[nt.$type]},Condition:{name:jr.$type,properties:{},superTypes:[]},Conjunction:{name:$a.$type,properties:{left:{name:$a.left},right:{name:$a.right}},superTypes:[jr.$type]},CrossReference:{name:Sr.$type,properties:{cardinality:{name:Sr.cardinality},deprecatedSyntax:{name:Sr.deprecatedSyntax,defaultValue:!1},isMulti:{name:Sr.isMulti,defaultValue:!1},terminal:{name:Sr.terminal},type:{name:Sr.type,referenceType:lt.$type}},superTypes:[Ze.$type]},Disjunction:{name:Ca.$type,properties:{left:{name:Ca.left},right:{name:Ca.right}},superTypes:[jr.$type]},EndOfFile:{name:Ys.$type,properties:{cardinality:{name:Ys.cardinality}},superTypes:[Ze.$type]},Grammar:{name:sr.$type,properties:{imports:{name:sr.imports,defaultValue:[]},interfaces:{name:sr.interfaces,defaultValue:[]},isDeclared:{name:sr.isDeclared,defaultValue:!1},name:{name:sr.name},rules:{name:sr.rules,defaultValue:[]},types:{name:sr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:lc.$type,properties:{path:{name:lc.path}},superTypes:[]},Group:{name:Vr.$type,properties:{cardinality:{name:Vr.cardinality},elements:{name:Vr.elements,defaultValue:[]},guardCondition:{name:Vr.guardCondition},predicate:{name:Vr.predicate}},superTypes:[Ze.$type]},InferredType:{name:Js.$type,properties:{name:{name:Js.name}},superTypes:[lt.$type]},InfixRule:{name:xt.$type,properties:{call:{name:xt.call},dataType:{name:xt.dataType},inferredType:{name:xt.inferredType},name:{name:xt.name},operators:{name:xt.operators},parameters:{name:xt.parameters,defaultValue:[]},returnType:{name:xt.returnType,referenceType:lt.$type}},superTypes:[Ea.$type]},InfixRuleOperatorList:{name:Ts.$type,properties:{associativity:{name:Ts.associativity},operators:{name:Ts.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:cc.$type,properties:{precedences:{name:cc.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ri.$type,properties:{attributes:{name:ri.attributes,defaultValue:[]},name:{name:ri.name},superTypes:{name:ri.superTypes,defaultValue:[],referenceType:lt.$type}},superTypes:[lt.$type]},Keyword:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},predicate:{name:ni.predicate},value:{name:ni.value}},superTypes:[Ze.$type]},NamedArgument:{name:Qi.$type,properties:{calledByName:{name:Qi.calledByName,defaultValue:!1},parameter:{name:Qi.parameter,referenceType:ea.$type},value:{name:Qi.value}},superTypes:[]},NegatedToken:{name:Kr.$type,properties:{cardinality:{name:Kr.cardinality},lookahead:{name:Kr.lookahead},parenthesized:{name:Kr.parenthesized,defaultValue:!1},terminal:{name:Kr.terminal}},superTypes:[nt.$type]},Negation:{name:Zs.$type,properties:{value:{name:Zs.value}},superTypes:[jr.$type]},NumberLiteral:{name:uc.$type,properties:{value:{name:uc.value}},superTypes:[xn.$type]},Parameter:{name:ea.$type,properties:{name:{name:ea.name}},superTypes:[]},ParameterReference:{name:Qs.$type,properties:{parameter:{name:Qs.parameter,referenceType:ea.$type}},superTypes:[jr.$type]},ParserRule:{name:mt.$type,properties:{dataType:{name:mt.dataType},definition:{name:mt.definition},entry:{name:mt.entry,defaultValue:!1},fragment:{name:mt.fragment,defaultValue:!1},inferredType:{name:mt.inferredType},name:{name:mt.name},parameters:{name:mt.parameters,defaultValue:[]},returnType:{name:mt.returnType,referenceType:lt.$type}},superTypes:[Ea.$type]},ReferenceType:{name:Rs.$type,properties:{isMulti:{name:Rs.isMulti,defaultValue:!1},referenceType:{name:Rs.referenceType}},superTypes:[Ln.$type]},RegexToken:{name:Hr.$type,properties:{cardinality:{name:Hr.cardinality},lookahead:{name:Hr.lookahead},parenthesized:{name:Hr.parenthesized,defaultValue:!1},regex:{name:Hr.regex}},superTypes:[nt.$type]},ReturnType:{name:eo.$type,properties:{name:{name:eo.name}},superTypes:[]},RuleCall:{name:Xr.$type,properties:{arguments:{name:Xr.arguments,defaultValue:[]},cardinality:{name:Xr.cardinality},predicate:{name:Xr.predicate},rule:{name:Xr.rule,referenceType:Zi.$type}},superTypes:[Ze.$type]},SimpleType:{name:ii.$type,properties:{primitiveType:{name:ii.primitiveType},stringType:{name:ii.stringType},typeRef:{name:ii.typeRef,referenceType:lt.$type}},superTypes:[Ln.$type]},StringLiteral:{name:fc.$type,properties:{value:{name:fc.value}},superTypes:[xn.$type]},TerminalAlternatives:{name:Yr.$type,properties:{cardinality:{name:Yr.cardinality},elements:{name:Yr.elements,defaultValue:[]},lookahead:{name:Yr.lookahead},parenthesized:{name:Yr.parenthesized,defaultValue:!1}},superTypes:[nt.$type]},TerminalElement:{name:nt.$type,properties:{cardinality:{name:nt.cardinality},lookahead:{name:nt.lookahead},parenthesized:{name:nt.parenthesized,defaultValue:!1}},superTypes:[Ze.$type]},TerminalGroup:{name:Jr.$type,properties:{cardinality:{name:Jr.cardinality},elements:{name:Jr.elements,defaultValue:[]},lookahead:{name:Jr.lookahead},parenthesized:{name:Jr.parenthesized,defaultValue:!1}},superTypes:[nt.$type]},TerminalRule:{name:Zt.$type,properties:{definition:{name:Zt.definition},fragment:{name:Zt.fragment,defaultValue:!1},hidden:{name:Zt.hidden,defaultValue:!1},name:{name:Zt.name},type:{name:Zt.type}},superTypes:[Zi.$type]},TerminalRuleCall:{name:Zr.$type,properties:{cardinality:{name:Zr.cardinality},lookahead:{name:Zr.lookahead},parenthesized:{name:Zr.parenthesized,defaultValue:!1},rule:{name:Zr.rule,referenceType:Zt.$type}},superTypes:[nt.$type]},Type:{name:Sa.$type,properties:{name:{name:Sa.name},type:{name:Sa.type}},superTypes:[lt.$type]},TypeAttribute:{name:On.$type,properties:{defaultValue:{name:On.defaultValue},isOptional:{name:On.isOptional,defaultValue:!1},name:{name:On.name},type:{name:On.type}},superTypes:[]},TypeDefinition:{name:Ln.$type,properties:{},superTypes:[]},UnionType:{name:dc.$type,properties:{types:{name:dc.types,defaultValue:[]}},superTypes:[Ln.$type]},UnorderedGroup:{name:ka.$type,properties:{cardinality:{name:ka.cardinality},elements:{name:ka.elements,defaultValue:[]}},superTypes:[Ze.$type]},UntilToken:{name:Qr.$type,properties:{cardinality:{name:Qr.cardinality},lookahead:{name:Qr.lookahead},parenthesized:{name:Qr.parenthesized,defaultValue:!1},terminal:{name:Qr.terminal}},superTypes:[nt.$type]},ValueLiteral:{name:xn.$type,properties:{},superTypes:[]},Wildcard:{name:ai.$type,properties:{cardinality:{name:ai.cardinality},lookahead:{name:ai.lookahead},parenthesized:{name:ai.parenthesized,defaultValue:!1}},superTypes:[nt.$type]}}}}const J=new yf;function to(t){return new Ol(t,e=>di(e)?e.content:[],{includeRoot:!0})}function qh(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function ro(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Fa(t){if(!t)return;const{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var Ft;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Ft||(Ft={}));function Bh(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return Ft.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Ft.After;const r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?Ft.Inside:r?Ft.OverlapBack:n?Ft.OverlapFront:Ft.Outside}function Wh(t,e){return Bh(t,e)>Ft.After}const Vh=/^[\w\p{L}]$/u;function Kh(t,e){if(t){const r=Hh(t,!0);if(r&&hc(r,e))return r;if(ff(t)){const n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){const a=t.content[i];if(hc(a,e))return a}}}}function hc(t,e){return uf(t)&&e.includes(t.tokenType.name)}function Hh(t,e=!0){for(;t.container;){const r=t.container;let n=r.content.indexOf(t);for(;n>0;){n--;const i=r.content[n];if(e||!i.hidden)return i}t=r}}class Tf extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}}function ki(t,e="Error: Got unexpected value."){throw new Error(e)}function U(t){return t.charCodeAt(0)}function vs(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function Dn(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function zr(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Xh(){throw Error("Internal Error - Should never get here!")}function pc(t){return t.type==="Character"}const Ga=[];for(let t=U("0");t<=U("9");t++)Ga.push(t);const ja=[U("_")].concat(Ga);for(let t=U("a");t<=U("z");t++)ja.push(t);for(let t=U("A");t<=U("Z");t++)ja.push(t);const mc=[U(" "),U("\f"),U(`
2
2
  `),U("\r"),U(" "),U("\v"),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U(" "),U("\u2028"),U("\u2029"),U(" "),U(" "),U(" "),U("\uFEFF")],Yh=/[0-9a-fA-F]/,ta=/[0-9]/,Jh=/[1-9]/;class Rf{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const r=this.disjunction();this.consumeChar("/");const n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Dn(n,"global");break;case"i":Dn(n,"ignoreCase");break;case"m":Dn(n,"multiLine");break;case"u":Dn(n,"unicode");break;case"y":Dn(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){const e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){const e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}zr(r);const n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Xh()}quantifier(e=!1){let r;const n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":const i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;zr(r);break}if(!(e===!0&&r===void 0)&&zr(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e;const r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),zr(e))return e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[U(`
3
3
  `),U("\r"),U("\u2028"),U("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=Ga;break;case"D":e=Ga,r=!0;break;case"s":e=mc;break;case"S":e=mc,r=!0;break;case"w":e=ja;break;case"W":e=ja,r=!0;break}if(zr(e))return{type:"Set",value:e,complement:r}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=U("\f");break;case"n":e=U(`
4
4
  `);break;case"r":e=U("\r");break;case"t":e=U(" ");break;case"v":e=U("\v");break}if(zr(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:U("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:U(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
@@ -1,4 +1,4 @@
1
- import{s as $t,g as Mt,t as Ct,q as Nt,a as zt,b as Lt,_ as y,l as J,K as Xt,e as At,z as Et,c as q,i as Tt}from"./mermaid.core-BYfeCraQ.js";import{p as Yt}from"./chunk-4BX2VUAB-D2vOyEOF.js";import{p as Bt}from"./wardley-RL74JXVD-CXrPLuRI.js";import"./index-CPokXzBk.js";import"./min-BGmgVSVZ.js";import"./_baseUniq-CKZsAae7.js";var G=y((e,s)=>{const a=e<=1?e*100:e;if(a<0||a>100)throw new Error(`${s} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return a},"toPercent"),E=y((e,s,a)=>({x:G(s,`${a} evolution`),y:G(e,`${a} visibility`)}),"toCoordinates"),U=y(e=>{if(e){if(e==="+<>")return"bidirectional";if(e==="+<")return"backward";if(e==="+>")return"forward"}},"getFlowFromPort"),Rt=y(e=>{if(!e?.startsWith("+"))return{};const a=/^\+'([^']*)'/.exec(e)?.[1];return e.includes("<>")?{flow:"bidirectional",label:a}:e.includes("<")?{flow:"backward",label:a}:e.includes(">")?{flow:"forward",label:a}:{label:a}},"extractFlowFromArrow"),Ft=y((e,s)=>{if(Yt(e,s),e.size&&s.setSize(e.size.width,e.size.height),e.evolution){const a=e.evolution.stages.map(o=>o.secondName?`${o.name.trim()} / ${o.secondName.trim()}`:o.name.trim()),x=e.evolution.stages.filter(o=>o.boundary!==void 0).map(o=>o.boundary);s.updateAxes({stages:a,stageBoundaries:x})}if(e.anchors.forEach(a=>{const x=E(a.visibility,a.evolution,`Anchor "${a.name}"`);s.addNode(a.name,a.name,x.x,x.y,"anchor")}),e.components.forEach(a=>{const x=E(a.visibility,a.evolution,`Component "${a.name}"`),o=a.label?(a.label.negX?-1:1)*a.label.offsetX:void 0,d=a.label?(a.label.negY?-1:1)*a.label.offsetY:void 0,m=a.decorator?.strategy;s.addNode(a.name,a.name,x.x,x.y,"component",o,d,a.inertia,m)}),e.notes.forEach(a=>{const x=E(a.visibility,a.evolution,`Note "${a.text}"`);s.addNote(a.text,x.x,x.y)}),e.pipelines.forEach(a=>{const x=s.getNode(a.parent);if(!x||typeof x.y!="number")throw new Error(`Pipeline "${a.parent}" must reference an existing component with coordinates.`);const o=x.y;s.startPipeline(a.parent),a.components.forEach(d=>{const m=`${a.parent}_${d.name}`,M=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,g=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,O=G(d.evolution,`Pipeline component "${d.name}" evolution`);s.addNode(m,d.name,O,o,"pipeline-component",M,g),s.addPipelineComponent(a.parent,m)})}),e.links.forEach(a=>{const x=!!a.arrow&&(a.arrow.includes("-.->")||a.arrow.includes(".-."));let o=U(a.fromPort)??U(a.toPort);const{flow:d,label:m}=Rt(a.arrow);!o&&d&&(o=d);const M=a.linkLabel,g=m??M;s.addLink(a.from,a.to,x,g,o)}),e.evolves.forEach(a=>{const x=s.getNode(a.component);if(x?.y!==void 0){const o=G(a.target,`Evolve target for "${a.component}"`);s.addTrend(a.component,o,x.y)}}),e.annotations.length>0){const a=e.annotations[0],x=E(a.x,a.y,"Annotations box");s.setAnnotationsBox(x.x,x.y)}e.annotation.forEach(a=>{const x=E(a.x,a.y,`Annotation ${a.number}`);s.addAnnotation(a.number,[{x:x.x,y:x.y}],a.text)}),e.accelerators.forEach(a=>{const x=E(a.x,a.y,`Accelerator "${a.name}"`);s.addAccelerator(a.name,x.x,x.y)}),e.deaccelerators.forEach(a=>{const x=E(a.x,a.y,`Deaccelerator "${a.name}"`);s.addDeaccelerator(a.name,x.x,x.y)})},"populateDb"),Q={parser:{yy:void 0},parse:y(async e=>{const s=await Bt("wardley",e);J.debug(s);const a=Q.parser?.yy;if(!a||typeof a.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ft(s,a)},"parse")},Ot=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{y(this,"WardleyBuilder")}addNode(e){const s=this.nodes.get(e.id)??{id:e.id,label:e.label},a={...s,...e,className:e.className??s.className,labelOffsetX:e.labelOffsetX??s.labelOffsetX,labelOffsetY:e.labelOffsetY??s.labelOffsetY};this.nodes.set(e.id,a)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});const s=this.nodes.get(e);s&&(s.isPipelineParent=!0)}addPipelineComponent(e,s){const a=this.pipelines.get(e);a&&a.componentIds.push(s);const x=this.nodes.get(s);x&&(x.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,s){this.annotationsBox={x:e,y:s}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,s){this.size={width:e,height:s}}getNode(e){return this.nodes.get(e)}build(){const e=[];for(const s of this.nodes.values()){if(typeof s.x!="number"||typeof s.y!="number")throw new Error(`Node "${s.label}" is missing coordinates`);e.push(s)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},P=new Ot;function $(e){const s=q();return Tt(e.trim(),s)}y($,"textSanitizer");function tt(){return q()["wardley-beta"]}y(tt,"getConfig");function et(e,s,a,x,o,d,m,M,g){P.addNode({id:e,label:$(s),x:a,y:x,className:o,labelOffsetX:d,labelOffsetY:m,inertia:M,sourceStrategy:g})}y(et,"addNode");function at(e,s,a=!1,x,o){P.addLink({source:e,target:s,dashed:a,label:x,flow:o})}y(at,"addLink");function rt(e,s,a){P.addTrend({nodeId:e,targetX:s,targetY:a})}y(rt,"addTrend");function ot(e,s,a){P.addAnnotation({number:e,coordinates:s,text:a?$(a):void 0})}y(ot,"addAnnotation");function st(e,s,a){P.addNote({text:$(e),x:s,y:a})}y(st,"addNote");function nt(e,s,a){P.addAccelerator({name:$(e),x:s,y:a})}y(nt,"addAccelerator");function it(e,s,a){P.addDeaccelerator({name:$(e),x:s,y:a})}y(it,"addDeaccelerator");function dt(e,s){P.setAnnotationsBox(e,s)}y(dt,"setAnnotationsBox");function lt(e,s){P.setSize(e,s)}y(lt,"setSize");function ct(e){P.startPipeline(e)}y(ct,"startPipeline");function pt(e,s){P.addPipelineComponent(e,s)}y(pt,"addPipelineComponent");function ht(e){const s={};e.xLabel&&(s.xLabel=$(e.xLabel)),e.yLabel&&(s.yLabel=$(e.yLabel)),e.stages&&(s.stages=e.stages.map(a=>$(a))),e.stageBoundaries&&(s.stageBoundaries=e.stageBoundaries),P.setAxes(s)}y(ht,"updateAxes");function ft(e){return P.getNode(e)}y(ft,"getNode");function xt(){return P.build()}y(xt,"getWardleyData");function gt(){P.clear(),Et()}y(gt,"clear");var It={getConfig:tt,addNode:et,addLink:at,addTrend:rt,addAnnotation:ot,addNote:st,addAccelerator:nt,addDeaccelerator:it,setAnnotationsBox:dt,setSize:lt,startPipeline:ct,addPipelineComponent:pt,updateAxes:ht,getNode:ft,getWardleyData:xt,clear:gt,setAccTitle:Lt,getAccTitle:zt,setDiagramTitle:Nt,getDiagramTitle:Ct,getAccDescription:Mt,setAccDescription:$t},Wt=["Genesis","Custom Built","Product","Commodity"],Dt=y(()=>{const{themeVariables:e}=q();return{backgroundColor:e.wardley?.backgroundColor??e.background??"#fff",axisColor:e.wardley?.axisColor??"#000",axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??"#222",gridColor:e.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:e.wardley?.componentFill??"#fff",componentStroke:e.wardley?.componentStroke??"#000",componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??"#222",linkStroke:e.wardley?.linkStroke??"#000",evolutionStroke:e.wardley?.evolutionStroke??"#dc3545",annotationStroke:e.wardley?.annotationStroke??"#000",annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??"#222",annotationFill:e.wardley?.annotationFill??e.background??"#fff"}},"getTheme"),Gt=y(()=>{const e=q()["wardley-beta"];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},"getConfigValues"),qt=y((e,s,a,x)=>{J.debug(`Rendering Wardley map
1
+ import{s as $t,g as Mt,t as Ct,q as Nt,a as zt,b as Lt,_ as y,l as J,K as Xt,e as At,z as Et,c as q,i as Tt}from"./mermaid.core-B1DAMRyG.js";import{p as Yt}from"./chunk-4BX2VUAB-DdU5eMNC.js";import{p as Bt}from"./wardley-RL74JXVD-mp486ivj.js";import"./index-CaPWFEmi.js";import"./min-BxM1U1Fg.js";import"./_baseUniq-CIdKO3dq.js";var G=y((e,s)=>{const a=e<=1?e*100:e;if(a<0||a>100)throw new Error(`${s} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return a},"toPercent"),E=y((e,s,a)=>({x:G(s,`${a} evolution`),y:G(e,`${a} visibility`)}),"toCoordinates"),U=y(e=>{if(e){if(e==="+<>")return"bidirectional";if(e==="+<")return"backward";if(e==="+>")return"forward"}},"getFlowFromPort"),Rt=y(e=>{if(!e?.startsWith("+"))return{};const a=/^\+'([^']*)'/.exec(e)?.[1];return e.includes("<>")?{flow:"bidirectional",label:a}:e.includes("<")?{flow:"backward",label:a}:e.includes(">")?{flow:"forward",label:a}:{label:a}},"extractFlowFromArrow"),Ft=y((e,s)=>{if(Yt(e,s),e.size&&s.setSize(e.size.width,e.size.height),e.evolution){const a=e.evolution.stages.map(o=>o.secondName?`${o.name.trim()} / ${o.secondName.trim()}`:o.name.trim()),x=e.evolution.stages.filter(o=>o.boundary!==void 0).map(o=>o.boundary);s.updateAxes({stages:a,stageBoundaries:x})}if(e.anchors.forEach(a=>{const x=E(a.visibility,a.evolution,`Anchor "${a.name}"`);s.addNode(a.name,a.name,x.x,x.y,"anchor")}),e.components.forEach(a=>{const x=E(a.visibility,a.evolution,`Component "${a.name}"`),o=a.label?(a.label.negX?-1:1)*a.label.offsetX:void 0,d=a.label?(a.label.negY?-1:1)*a.label.offsetY:void 0,m=a.decorator?.strategy;s.addNode(a.name,a.name,x.x,x.y,"component",o,d,a.inertia,m)}),e.notes.forEach(a=>{const x=E(a.visibility,a.evolution,`Note "${a.text}"`);s.addNote(a.text,x.x,x.y)}),e.pipelines.forEach(a=>{const x=s.getNode(a.parent);if(!x||typeof x.y!="number")throw new Error(`Pipeline "${a.parent}" must reference an existing component with coordinates.`);const o=x.y;s.startPipeline(a.parent),a.components.forEach(d=>{const m=`${a.parent}_${d.name}`,M=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,g=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,O=G(d.evolution,`Pipeline component "${d.name}" evolution`);s.addNode(m,d.name,O,o,"pipeline-component",M,g),s.addPipelineComponent(a.parent,m)})}),e.links.forEach(a=>{const x=!!a.arrow&&(a.arrow.includes("-.->")||a.arrow.includes(".-."));let o=U(a.fromPort)??U(a.toPort);const{flow:d,label:m}=Rt(a.arrow);!o&&d&&(o=d);const M=a.linkLabel,g=m??M;s.addLink(a.from,a.to,x,g,o)}),e.evolves.forEach(a=>{const x=s.getNode(a.component);if(x?.y!==void 0){const o=G(a.target,`Evolve target for "${a.component}"`);s.addTrend(a.component,o,x.y)}}),e.annotations.length>0){const a=e.annotations[0],x=E(a.x,a.y,"Annotations box");s.setAnnotationsBox(x.x,x.y)}e.annotation.forEach(a=>{const x=E(a.x,a.y,`Annotation ${a.number}`);s.addAnnotation(a.number,[{x:x.x,y:x.y}],a.text)}),e.accelerators.forEach(a=>{const x=E(a.x,a.y,`Accelerator "${a.name}"`);s.addAccelerator(a.name,x.x,x.y)}),e.deaccelerators.forEach(a=>{const x=E(a.x,a.y,`Deaccelerator "${a.name}"`);s.addDeaccelerator(a.name,x.x,x.y)})},"populateDb"),Q={parser:{yy:void 0},parse:y(async e=>{const s=await Bt("wardley",e);J.debug(s);const a=Q.parser?.yy;if(!a||typeof a.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ft(s,a)},"parse")},Ot=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{y(this,"WardleyBuilder")}addNode(e){const s=this.nodes.get(e.id)??{id:e.id,label:e.label},a={...s,...e,className:e.className??s.className,labelOffsetX:e.labelOffsetX??s.labelOffsetX,labelOffsetY:e.labelOffsetY??s.labelOffsetY};this.nodes.set(e.id,a)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});const s=this.nodes.get(e);s&&(s.isPipelineParent=!0)}addPipelineComponent(e,s){const a=this.pipelines.get(e);a&&a.componentIds.push(s);const x=this.nodes.get(s);x&&(x.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,s){this.annotationsBox={x:e,y:s}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,s){this.size={width:e,height:s}}getNode(e){return this.nodes.get(e)}build(){const e=[];for(const s of this.nodes.values()){if(typeof s.x!="number"||typeof s.y!="number")throw new Error(`Node "${s.label}" is missing coordinates`);e.push(s)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},P=new Ot;function $(e){const s=q();return Tt(e.trim(),s)}y($,"textSanitizer");function tt(){return q()["wardley-beta"]}y(tt,"getConfig");function et(e,s,a,x,o,d,m,M,g){P.addNode({id:e,label:$(s),x:a,y:x,className:o,labelOffsetX:d,labelOffsetY:m,inertia:M,sourceStrategy:g})}y(et,"addNode");function at(e,s,a=!1,x,o){P.addLink({source:e,target:s,dashed:a,label:x,flow:o})}y(at,"addLink");function rt(e,s,a){P.addTrend({nodeId:e,targetX:s,targetY:a})}y(rt,"addTrend");function ot(e,s,a){P.addAnnotation({number:e,coordinates:s,text:a?$(a):void 0})}y(ot,"addAnnotation");function st(e,s,a){P.addNote({text:$(e),x:s,y:a})}y(st,"addNote");function nt(e,s,a){P.addAccelerator({name:$(e),x:s,y:a})}y(nt,"addAccelerator");function it(e,s,a){P.addDeaccelerator({name:$(e),x:s,y:a})}y(it,"addDeaccelerator");function dt(e,s){P.setAnnotationsBox(e,s)}y(dt,"setAnnotationsBox");function lt(e,s){P.setSize(e,s)}y(lt,"setSize");function ct(e){P.startPipeline(e)}y(ct,"startPipeline");function pt(e,s){P.addPipelineComponent(e,s)}y(pt,"addPipelineComponent");function ht(e){const s={};e.xLabel&&(s.xLabel=$(e.xLabel)),e.yLabel&&(s.yLabel=$(e.yLabel)),e.stages&&(s.stages=e.stages.map(a=>$(a))),e.stageBoundaries&&(s.stageBoundaries=e.stageBoundaries),P.setAxes(s)}y(ht,"updateAxes");function ft(e){return P.getNode(e)}y(ft,"getNode");function xt(){return P.build()}y(xt,"getWardleyData");function gt(){P.clear(),Et()}y(gt,"clear");var It={getConfig:tt,addNode:et,addLink:at,addTrend:rt,addAnnotation:ot,addNote:st,addAccelerator:nt,addDeaccelerator:it,setAnnotationsBox:dt,setSize:lt,startPipeline:ct,addPipelineComponent:pt,updateAxes:ht,getNode:ft,getWardleyData:xt,clear:gt,setAccTitle:Lt,getAccTitle:zt,setDiagramTitle:Nt,getDiagramTitle:Ct,getAccDescription:Mt,setAccDescription:$t},Wt=["Genesis","Custom Built","Product","Commodity"],Dt=y(()=>{const{themeVariables:e}=q();return{backgroundColor:e.wardley?.backgroundColor??e.background??"#fff",axisColor:e.wardley?.axisColor??"#000",axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??"#222",gridColor:e.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:e.wardley?.componentFill??"#fff",componentStroke:e.wardley?.componentStroke??"#000",componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??"#222",linkStroke:e.wardley?.linkStroke??"#000",evolutionStroke:e.wardley?.evolutionStroke??"#dc3545",annotationStroke:e.wardley?.annotationStroke??"#000",annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??"#222",annotationFill:e.wardley?.annotationFill??e.background??"#fff"}},"getTheme"),Gt=y(()=>{const e=q()["wardley-beta"];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},"getConfigValues"),qt=y((e,s,a,x)=>{J.debug(`Rendering Wardley map
2
2
  `+e);const o=Gt(),d=Dt(),m=o.nodeRadius*1.6,M=x.db,g=M.getWardleyData(),O=M.getDiagramTitle(),C=g.size?.width??o.width,b=g.size?.height??o.height,Y=Xt(s);Y.selectAll("*").remove(),At(Y,b,C,o.useMaxWidth),Y.attr("viewBox",`0 0 ${C} ${b}`);const v=Y.append("g").attr("class","wardley-map"),H=Y.append("defs");H.append("marker").attr("id",`arrow-${s}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),H.append("marker").attr("id",`link-arrow-end-${s}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),H.append("marker").attr("id",`link-arrow-start-${s}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),v.append("rect").attr("class","wardley-background").attr("width",C).attr("height",b).attr("fill",d.backgroundColor);const B=C-o.padding*2,R=b-o.padding*2;O&&v.append("text").attr("class","wardley-title").attr("x",C/2).attr("y",o.padding/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(O);const L=y(t=>o.padding+t/100*B,"projectX"),X=y(t=>b-o.padding-t/100*R,"projectY"),I=v.append("g").attr("class","wardley-axes");I.append("line").attr("x1",o.padding).attr("x2",C-o.padding).attr("y1",b-o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1),I.append("line").attr("x1",o.padding).attr("x2",o.padding).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1);const ut=g.axes.xLabel??"Evolution",yt=g.axes.yLabel??"Visibility";I.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",o.padding+B/2).attr("y",b-o.padding/4).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(ut),I.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",o.padding/3).attr("y",o.padding+R/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${o.padding/3} ${o.padding+R/2})`).text(yt);const F=g.axes.stages&&g.axes.stages.length>0?g.axes.stages:Wt;if(F.length>0){const t=v.append("g").attr("class","wardley-stages"),n=g.axes.stageBoundaries,r=[];if(n&&n.length===F.length){let i=0;n.forEach(p=>{r.push({start:i,end:p}),i=p})}else{const i=1/F.length;F.forEach((p,l)=>{r.push({start:l*i,end:(l+1)*i})})}F.forEach((i,p)=>{const l=r[p],h=o.padding+l.start*B,f=o.padding+l.end*B,u=(h+f)/2;p>0&&t.append("line").attr("x1",h).attr("x2",h).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",u).attr("y",b-o.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize-2).attr("text-anchor","middle").text(i)})}if(o.showGrid){const t=v.append("g").attr("class","wardley-grid");for(let n=1;n<4;n++){const r=n/4,i=o.padding+B*r;t.append("line").attr("x1",i).attr("x2",i).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",o.padding).attr("x2",C-o.padding).attr("y1",b-o.padding-R*r).attr("y2",b-o.padding-R*r).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}const c=new Map;if(g.nodes.forEach(t=>{c.set(t.id,{x:L(t.x),y:X(t.y),node:t})}),g.pipelines.length>0){const t=v.append("g").attr("class","wardley-pipelines"),n=v.append("g").attr("class","wardley-pipeline-links");g.pipelines.forEach(r=>{if(r.componentIds.length===0)return;const i=r.componentIds.map(f=>({id:f,pos:c.get(f),node:g.nodes.find(u=>u.id===f)})).filter(f=>f.pos&&f.node).sort((f,u)=>f.node.x-u.node.x);for(let f=0;f<i.length-1;f++){const u=i[f],w=i[f+1];n.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",u.pos.x).attr("y1",u.pos.y).attr("x2",w.pos.x).attr("y2",w.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let p=1/0,l=-1/0,h=0;if(r.componentIds.forEach(f=>{const u=c.get(f);u&&(p=Math.min(p,u.x),l=Math.max(l,u.x),h=u.y)}),p!==1/0&&l!==-1/0){const u=o.nodeRadius*4,w=h-u/2,S=c.get(r.nodeId);if(S){const z=(p+l)/2;S.x=z,S.y=w-m/6}t.append("rect").attr("class","wardley-pipeline-box").attr("x",p-15).attr("y",w).attr("width",l-p+30).attr("height",u).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}const V=v.append("g").attr("class","wardley-links"),Z=new Map;g.pipelines.forEach(t=>{Z.set(t.nodeId,new Set(t.componentIds))});const K=g.links.filter(t=>!(!c.has(t.source)||!c.has(t.target)||Z.get(t.target)?.has(t.source)));V.selectAll("line").data(K).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{const n=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=r.x-n.x,h=r.y-n.y,f=Math.sqrt(l*l+h*h);return n.x+l/f*p}).attr("y1",t=>{const n=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=r.x-n.x,h=r.y-n.y,f=Math.sqrt(l*l+h*h);return n.y+h/f*p}).attr("x2",t=>{const n=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=n.x-r.x,h=n.y-r.y,f=Math.sqrt(l*l+h*h);return r.x+l/f*p}).attr("y2",t=>{const n=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=n.x-r.x,h=n.y-r.y,f=Math.sqrt(l*l+h*h);return r.y+h/f*p}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>t.flow==="forward"||t.flow==="bidirectional"?`url(#link-arrow-end-${s})`:null).attr("marker-start",t=>t.flow==="backward"||t.flow==="bidirectional"?`url(#link-arrow-start-${s})`:null),V.selectAll("text").data(K.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{const n=c.get(t.source),r=c.get(t.target),i=(n.x+r.x)/2,p=r.y-n.y,l=r.x-n.x,h=Math.sqrt(l*l+p*p),f=8,u=p/h;return i+u*f}).attr("y",t=>{const n=c.get(t.source),r=c.get(t.target),i=(n.y+r.y)/2,p=r.x-n.x,l=r.y-n.y,h=Math.sqrt(p*p+l*l),f=8,u=-p/h;return i+u*f}).attr("fill",d.axisTextColor).attr("font-size",o.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{const n=c.get(t.source),r=c.get(t.target),i=(n.x+r.x)/2,p=(n.y+r.y)/2,l=r.x-n.x,h=r.y-n.y,f=Math.sqrt(l*l+h*h),u=8,w=h/f,S=-l/f,z=i+w*u,W=p+S*u;let T=Math.atan2(h,l)*180/Math.PI;return(T>90||T<-90)&&(T+=180),`rotate(${T} ${z} ${W})`}).text(t=>t.label);const mt=v.append("g").attr("class","wardley-trends"),wt=g.trends.map(t=>{const n=c.get(t.nodeId);if(!n)return null;const r=L(t.targetX),i=X(t.targetY),p=r-n.x,l=i-n.y,h=Math.sqrt(p*p+l*l),f=o.nodeRadius+2,u=h>f?r-p/h*f:r,w=h>f?i-l/h*f:i;return{origin:n,targetX:r,targetY:i,adjustedX2:u,adjustedY2:w}}).filter(t=>t!==null);mt.selectAll("line").data(wt).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${s})`);const N=v.append("g").attr("class","wardley-nodes").selectAll("g").data(g.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));N.filter(t=>t.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);const A=N.filter(t=>t.sourceStrategy==="market");A.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>!t.isPipelineParent&&t.sourceStrategy!=="market"&&t.className!=="anchor").append("circle").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);const j=o.nodeRadius*.7,k=o.nodeRadius*1.2;if(A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x).attr("y1",t=>c.get(t.id).y-k).attr("x2",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x).attr("y2",t=>c.get(t.id).y-k).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y-k).attr("r",j).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",j).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",j).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),N.filter(t=>t.isPipelineParent===!0).append("rect").attr("x",t=>c.get(t.id).x-m/2).attr("y",t=>c.get(t.id).y-m/2).attr("width",m).attr("height",m).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",t=>{const n=c.get(t.id);let r=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(r+=o.nodeRadius+10),n.x+r}).attr("y1",t=>{const n=c.get(t.id),r=t.isPipelineParent?m:o.nodeRadius*2;return n.y-r/2}).attr("x2",t=>{const n=c.get(t.id);let r=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(r+=o.nodeRadius+10),n.x+r}).attr("y2",t=>{const n=c.get(t.id),r=t.isPipelineParent?m:o.nodeRadius*2;return n.y+r/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),N.append("text").attr("x",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetX!==void 0?n.x+t.labelOffsetX:n.x;let r=o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetX===void 0&&(r+=10);const i=t.labelOffsetX??r;return n.x+i}).attr("y",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetY!==void 0?n.y+t.labelOffsetY:n.y-3;let r=-o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetY===void 0&&(r-=10);const i=t.labelOffsetY??r;return n.y+i}).attr("class","wardley-node-label").attr("fill",t=>t.className==="evolved"?d.evolutionStroke:t.className==="anchor"?"#000":d.componentLabelColor).attr("font-size",o.labelFontSize).attr("font-weight",t=>t.className==="anchor"?"bold":"normal").attr("text-anchor",t=>t.className==="anchor"?"middle":"start").attr("dominant-baseline",t=>t.className==="anchor"?"middle":"auto").text(t=>t.label),g.annotations.length>0){const t=v.append("g").attr("class","wardley-annotations");if(g.annotations.forEach(n=>{const r=n.coordinates.map(i=>({x:L(i.x),y:X(i.y)}));if(r.length>1)for(let i=0;i<r.length-1;i++)t.append("line").attr("class","wardley-annotation-line").attr("x1",r[i].x).attr("y1",r[i].y).attr("x2",r[i+1].x).attr("y2",r[i+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");r.forEach(i=>{const p=t.append("g").attr("class","wardley-annotation");p.append("circle").attr("cx",i.x).attr("cy",i.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),p.append("text").attr("x",i.x).attr("y",i.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.number)})}),g.annotationsBox){let n=L(g.annotationsBox.x),r=X(g.annotationsBox.y);const i=10,p=16,l=11,h=t.append("g").attr("class","wardley-annotations-box"),f=[...g.annotations].filter(w=>w.text).sort((w,S)=>w.number-S.number),u=[];if(f.forEach((w,S)=>{const z=h.append("text").attr("x",n+i).attr("y",r+i+(S+1)*p).attr("font-size",l).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${w.number}. ${w.text}`);u.push(z)}),u.length>0){let w=0,S=0;u.forEach(_=>{const D=_.node(),vt=D.getComputedTextLength();w=Math.max(w,vt);const St=D.getBBox();S=Math.max(S,St.height)});const z=w+i*2+105,W=f.length*p+i*2+S/2,T=o.padding,bt=C-o.padding-z,kt=o.padding,Pt=b-o.padding-W;n=Math.max(T,Math.min(n,bt)),r=Math.max(kt,Math.min(r,Pt)),u.forEach((_,D)=>{_.attr("x",n+i).attr("y",r+i+(D+1)*p)}),h.insert("rect","text").attr("x",n).attr("y",r).attr("width",z).attr("height",W).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(g.notes.length>0){const t=v.append("g").attr("class","wardley-notes");g.notes.forEach(n=>{const r=L(n.x),i=X(n.y);t.append("text").attr("x",r).attr("y",i).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.text)})}if(g.accelerators.length>0){const t=v.append("g").attr("class","wardley-accelerators");g.accelerators.forEach(n=>{const r=L(n.x),i=X(n.y),p=60,l=30,h=20,f=`
3
3
  M ${r} ${i-l/2}
4
4
  L ${r+p-h} ${i-l/2}