diffing 0.10.0 → 0.10.2

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 (152) hide show
  1. package/dist/{cli-agent-CLrK54k2.mjs → cli-agent-CV0k1pXp.mjs} +10 -8
  2. package/dist/cli-gh-C2LAp12S.mjs +313 -0
  3. package/dist/cli.mjs +3 -3
  4. package/dist/client/assets/{angular-html-DdAR2u-k.js → angular-html-CV0Ak818.js} +1 -1
  5. package/dist/client/assets/{angular-ts-Dz_vWKSu.js → angular-ts-2e8zQ7to.js} +1 -1
  6. package/dist/client/assets/{apl-BJ5QXrIk.js → apl-ByVy2dfo.js} +1 -1
  7. package/dist/client/assets/{arc-D9erSW6x.js → arc--R8kldOB.js} +1 -1
  8. package/dist/client/assets/{architectureDiagram-3BPJPVTR-CCQWZLXR.js → architectureDiagram-3BPJPVTR-BWbm1lrV.js} +1 -1
  9. package/dist/client/assets/{astro-BQAej5a5.js → astro-CE7ySGnq.js} +1 -1
  10. package/dist/client/assets/{blade-DkAmuwDx.js → blade-PJJaH6RK.js} +1 -1
  11. package/dist/client/assets/{blockDiagram-GPEHLZMM-vwjxNybI.js → blockDiagram-GPEHLZMM-BdfBhnvZ.js} +1 -1
  12. package/dist/client/assets/{c-DG5p-ChJ.js → c-BhDzEkUq.js} +1 -1
  13. package/dist/client/assets/{c4Diagram-AAUBKEIU-DJ_hVlh4.js → c4Diagram-AAUBKEIU-Bu_tfvPY.js} +1 -1
  14. package/dist/client/assets/channel-DSEnsd3l.js +1 -0
  15. package/dist/client/assets/{chunk-2J33WTMH-CiLowxCo.js → chunk-2J33WTMH-CTGsTtve.js} +1 -1
  16. package/dist/client/assets/{chunk-3OPIFGDE-H3jjMR5Y.js → chunk-3OPIFGDE-BODO_5hx.js} +1 -1
  17. package/dist/client/assets/{chunk-4BX2VUAB-Dk0dk4n5.js → chunk-4BX2VUAB-BTsyFV0Y.js} +1 -1
  18. package/dist/client/assets/{chunk-55IACEB6-nbLiUMJS.js → chunk-55IACEB6-DnrCm6LC.js} +1 -1
  19. package/dist/client/assets/{chunk-5ZQYHXKU-DZ8RgHg8.js → chunk-5ZQYHXKU-DBjF0sdg.js} +1 -1
  20. package/dist/client/assets/{chunk-727SXJPM-DDe5dqJV.js → chunk-727SXJPM-Do27Z5ji.js} +1 -1
  21. package/dist/client/assets/{chunk-AQP2D5EJ-DmpNclOr.js → chunk-AQP2D5EJ-CTnpneGA.js} +1 -1
  22. package/dist/client/assets/{chunk-BSJP7CBP-BKQKvtIj.js → chunk-BSJP7CBP-Kr0_rIcG.js} +1 -1
  23. package/dist/client/assets/{chunk-CSCIHK7Q-D27t4cyv.js → chunk-CSCIHK7Q-vYCYu98G.js} +1 -1
  24. package/dist/client/assets/{chunk-FMBD7UC4-Bu3LA663.js → chunk-FMBD7UC4-D325zkwE.js} +1 -1
  25. package/dist/client/assets/{chunk-KSCS5N6A-Ed5HNXRW.js → chunk-KSCS5N6A-Byf7HmWv.js} +1 -1
  26. package/dist/client/assets/{chunk-L5ZTLDWV-DLjJZgf8.js → chunk-L5ZTLDWV-D6bS5hm3.js} +1 -1
  27. package/dist/client/assets/{chunk-LZXEDZCA-B-cs89SM.js → chunk-LZXEDZCA-BMGYcU-n.js} +2 -2
  28. package/dist/client/assets/{chunk-ND2GUHAM-D_kPSuUA.js → chunk-ND2GUHAM-xfJDzv5I.js} +1 -1
  29. package/dist/client/assets/{chunk-NZK2D7GU-D1u3pjq-.js → chunk-NZK2D7GU-DY1HNoUO.js} +1 -1
  30. package/dist/client/assets/{chunk-O5CBEL6O-Mt0cnPSf.js → chunk-O5CBEL6O-BFgywBQV.js} +1 -1
  31. package/dist/client/assets/chunk-QZHKN3VN-wL51hu-L.js +1 -0
  32. package/dist/client/assets/chunk-WU5MYG2G-DcSuLObv.js +1 -0
  33. package/dist/client/assets/{chunk-XPW4576I-Bt8a8x28.js → chunk-XPW4576I-CCOlY0K5.js} +1 -1
  34. package/dist/client/assets/classDiagram-4FO5ZUOK-Cd9P7jo-.js +1 -0
  35. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-_8XVmWNY.js +1 -0
  36. package/dist/client/assets/{cobol-Daidj_5Y.js → cobol-D5uvQocP.js} +1 -1
  37. package/dist/client/assets/{coffee-DUMdB2Cr.js → coffee-DoE1_DMC.js} +1 -1
  38. package/dist/client/assets/{cose-bilkent-S5V4N54A-DVUDLXie.js → cose-bilkent-S5V4N54A-BffMlb0t.js} +1 -1
  39. package/dist/client/assets/{cpp-C2FeX1Mc.js → cpp-CxMs3g8q.js} +1 -1
  40. package/dist/client/assets/{crystal-D4yb9blJ.js → crystal-Ck_Sab8H.js} +1 -1
  41. package/dist/client/assets/{css-B5cr0U9F.js → css-Bx3zqeyw.js} +1 -1
  42. package/dist/client/assets/{dagre-BM42HDAG-DdZWb-Ee.js → dagre-BM42HDAG-DuK7JkP6.js} +1 -1
  43. package/dist/client/assets/{diagram-2AECGRRQ-C9DOZt92.js → diagram-2AECGRRQ-DW9W2wY6.js} +1 -1
  44. package/dist/client/assets/{diagram-5GNKFQAL-Bbc07UKr.js → diagram-5GNKFQAL-CfmdY-KT.js} +1 -1
  45. package/dist/client/assets/{diagram-KO2AKTUF-C-lUzY3m.js → diagram-KO2AKTUF-C3W0AVns.js} +1 -1
  46. package/dist/client/assets/{diagram-LMA3HP47-D-OjEFhp.js → diagram-LMA3HP47-Jxoj1EBH.js} +1 -1
  47. package/dist/client/assets/{diagram-OG6HWLK6-BjtWGvrf.js → diagram-OG6HWLK6-DKZXYFSu.js} +1 -1
  48. package/dist/client/assets/{dist-BXZygPdX.js → dist-Cxgi_w93.js} +1 -1
  49. package/dist/client/assets/{edge-RCQWcWNp.js → edge-D7XVJcl7.js} +1 -1
  50. package/dist/client/assets/{elixir-DwKyVg2X.js → elixir-DLQjwJ9Q.js} +1 -1
  51. package/dist/client/assets/{elm-DjR33IVs.js → elm-CP5Ox5XO.js} +1 -1
  52. package/dist/client/assets/{erDiagram-TEJ5UH35-C5T4ywLG.js → erDiagram-TEJ5UH35-BGd46oGi.js} +1 -1
  53. package/dist/client/assets/{erb-BnhUH1Hk.js → erb-C97aW-va.js} +1 -1
  54. package/dist/client/assets/{flowDiagram-I6XJVG4X-BJmjm7Kx.js → flowDiagram-I6XJVG4X-D6MFCwKy.js} +1 -1
  55. package/dist/client/assets/{ganttDiagram-6RSMTGT7-DREPnzu5.js → ganttDiagram-6RSMTGT7-i1RH9KFv.js} +1 -1
  56. package/dist/client/assets/{git-rebase-DzXoSDXA.js → git-rebase-B4iN-h71.js} +1 -1
  57. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-DIR4G_-_.js → gitGraphDiagram-PVQCEYII-DiLnrGe6.js} +1 -1
  58. package/dist/client/assets/{glimmer-js-HKnZpCn_.js → glimmer-js-DVkEnHRb.js} +1 -1
  59. package/dist/client/assets/{glimmer-ts-DedV7rWs.js → glimmer-ts-CyUzWW2D.js} +1 -1
  60. package/dist/client/assets/{glsl-Bz-0Alp2.js → glsl-5XFOCOCu.js} +1 -1
  61. package/dist/client/assets/{graphql-DSKkDYCD.js → graphql-IoOZHuWD.js} +1 -1
  62. package/dist/client/assets/{hack-CnaHZm8k.js → hack-BUQ8LqBu.js} +1 -1
  63. package/dist/client/assets/{haml-huGFYKlj.js → haml-BIbv0YDp.js} +1 -1
  64. package/dist/client/assets/{handlebars-CKmgzfWY.js → handlebars-9QihiA8n.js} +1 -1
  65. package/dist/client/assets/{html-B9Ih_dUU.js → html-5bjcBKb2.js} +1 -1
  66. package/dist/client/assets/{html-derivative-YabD-M5d.js → html-derivative-DFAt3hvS.js} +1 -1
  67. package/dist/client/assets/{http-Bdu12JYX.js → http-4_xHs8PR.js} +1 -1
  68. package/dist/client/assets/{hurl-twZzDTNs.js → hurl-B-wi-Gx2.js} +1 -1
  69. package/dist/client/assets/{index-BktdZRWB.js → index-CHvT3DR9.js} +10 -10
  70. package/dist/client/assets/{infoDiagram-5YYISTIA-D2ty2R-i.js → infoDiagram-5YYISTIA-Dy1M2f6k.js} +1 -1
  71. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-Ccnc9xlE.js → ishikawaDiagram-YF4QCWOH-J9qG2PlR.js} +1 -1
  72. package/dist/client/assets/{java-_5trO-p9.js → java-D9isH882.js} +1 -1
  73. package/dist/client/assets/{javascript-BOQn0ikE.js → javascript-Dj8e4yT5.js} +1 -1
  74. package/dist/client/assets/{jinja-BgY-0IBz.js → jinja-Bkare_Hv.js} +1 -1
  75. package/dist/client/assets/{jison-BLNTmT1_.js → jison-DDIUNnOW.js} +1 -1
  76. package/dist/client/assets/{journeyDiagram-JHISSGLW-W7eWXlw0.js → journeyDiagram-JHISSGLW-Do4kGeyR.js} +1 -1
  77. package/dist/client/assets/{json-BLbH8rZf.js → json-Bi84FPdJ.js} +1 -1
  78. package/dist/client/assets/{jsx-CxteptsJ.js → jsx-DI-NKxp6.js} +1 -1
  79. package/dist/client/assets/{julia-B__Ncp_z.js → julia-Yhlqb4JO.js} +1 -1
  80. package/dist/client/assets/{just-DBsHUGW1.js → just-B8KISqsZ.js} +1 -1
  81. package/dist/client/assets/{kanban-definition-UN3LZRKU-Z_AFL-rd.js → kanban-definition-UN3LZRKU-BSeQxfa9.js} +1 -1
  82. package/dist/client/assets/{latex-DFF_0wxo.js → latex-CkYf4HIK.js} +1 -1
  83. package/dist/client/assets/{line-aAv8TyOs.js → line-C2Za_tgK.js} +1 -1
  84. package/dist/client/assets/{linear-BOvEZKH8.js → linear-CRm3pgdR.js} +1 -1
  85. package/dist/client/assets/{liquid-kDWCO6d7.js → liquid-y_Utf1BC.js} +1 -1
  86. package/dist/client/assets/{lua-CYTFayq-.js → lua-C4gbVDKd.js} +1 -1
  87. package/dist/client/assets/{marko-Dpmz3Pdx.js → marko-BlcQZIyX.js} +1 -1
  88. package/dist/client/assets/{mdc-BsxHyM1i.js → mdc-C6KkSPM_.js} +1 -1
  89. package/dist/client/assets/{mermaid-parser.core-D8z_CWL1.js → mermaid-parser.core-B9mHNH7g.js} +1 -1
  90. package/dist/client/assets/{mermaid.core-DNKchnly.js → mermaid.core-pkJSRcFi.js} +3 -3
  91. package/dist/client/assets/{mindmap-definition-RKZ34NQL-xQKMV4Kw.js → mindmap-definition-RKZ34NQL-BAW_jZIg.js} +1 -1
  92. package/dist/client/assets/{nginx-CcdTDme-.js → nginx-BGbv5z-H.js} +1 -1
  93. package/dist/client/assets/{nim-B5wWDskL.js → nim-BtqaozVV.js} +1 -1
  94. package/dist/client/assets/{perl-Ce2_iKLz.js → perl-BaPVFzDG.js} +1 -1
  95. package/dist/client/assets/{php-DuLCFERd.js → php-CUSmmFXP.js} +1 -1
  96. package/dist/client/assets/{pieDiagram-4H26LBE5-CBSCJnUr.js → pieDiagram-4H26LBE5-DHTW5bo3.js} +1 -1
  97. package/dist/client/assets/{pug-BfQJoQj1.js → pug-ComryLhI.js} +1 -1
  98. package/dist/client/assets/{qml-DYeovlVl.js → qml-D4-pUDzN.js} +1 -1
  99. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-uEcgb0Rm.js → quadrantDiagram-W4KKPZXB-oE0LSIIu.js} +1 -1
  100. package/dist/client/assets/{r-DgHSP56L.js → r-IEiS2KmQ.js} +1 -1
  101. package/dist/client/assets/{razor-B00x7W-i.js → razor-A3NOQ-6o.js} +1 -1
  102. package/dist/client/assets/{regexp-CmWVupmd.js → regexp-Dnh3EraB.js} +1 -1
  103. package/dist/client/assets/{requirementDiagram-4Y6WPE33-Q4yY_ALe.js → requirementDiagram-4Y6WPE33-CAnOHDxz.js} +1 -1
  104. package/dist/client/assets/{review-export-pcqDKNqx.js → review-export-D-wScR31.js} +1 -1
  105. package/dist/client/assets/{rst-B3VARbTX.js → rst-DDcT8Cwj.js} +1 -1
  106. package/dist/client/assets/{ruby-CaxKSSbT.js → ruby-BqnC7im3.js} +1 -1
  107. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-B-GLzFGa.js → sankeyDiagram-5OEKKPKP-DARazeui.js} +1 -1
  108. package/dist/client/assets/{sas-Ue0rHUIk.js → sas-BsVPIslL.js} +1 -1
  109. package/dist/client/assets/{scss-BJJ7_L6c.js → scss-Cs-F21hy.js} +1 -1
  110. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DW0em0D_.js → sequenceDiagram-3UESZ5HK-BYAKokia.js} +1 -1
  111. package/dist/client/assets/{shellscript-C6LkZs1u.js → shellscript-CuqRpwp7.js} +1 -1
  112. package/dist/client/assets/{shellsession-CkZu1e84.js → shellsession-BT4CTJst.js} +1 -1
  113. package/dist/client/assets/{soy-CDaZV57J.js → soy-Njc_erP7.js} +1 -1
  114. package/dist/client/assets/{sql-CLfMGH4x.js → sql-C0M8bIzv.js} +1 -1
  115. package/dist/client/assets/{src-C27zxuNO.js → src-B8u-CQt1.js} +1 -1
  116. package/dist/client/assets/{stata-B0kNMHc9.js → stata-DQWLgfGE.js} +1 -1
  117. package/dist/client/assets/{stateDiagram-AJRCARHV-CrO_D3m4.js → stateDiagram-AJRCARHV-CL6IO6Yx.js} +1 -1
  118. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-CXkQIsOM.js +1 -0
  119. package/dist/client/assets/{surrealql-D9os_yZO.js → surrealql-CxnsjSMN.js} +1 -1
  120. package/dist/client/assets/{svelte-2SxVToeO.js → svelte-YiRJWdT-.js} +1 -1
  121. package/dist/client/assets/{templ-DzmZB67T.js → templ-DVHepm0I.js} +1 -1
  122. package/dist/client/assets/{tex-BMPk3nHk.js → tex-CbaeWbjN.js} +1 -1
  123. package/dist/client/assets/{timeline-definition-PNZ67QCA-C9FBevHv.js → timeline-definition-PNZ67QCA-BAKLMRXW.js} +1 -1
  124. package/dist/client/assets/{ts-tags-CG14Bplc.js → ts-tags-KadJLbnQ.js} +1 -1
  125. package/dist/client/assets/{tsx-D6NK461A.js → tsx-DgmkmSe3.js} +1 -1
  126. package/dist/client/assets/{twig-Agh0j5sD.js → twig-BG7aoIMU.js} +1 -1
  127. package/dist/client/assets/{typescript-_AkeziZ2.js → typescript-C_w_yccd.js} +1 -1
  128. package/dist/client/assets/{vennDiagram-CIIHVFJN-2H9HfhhR.js → vennDiagram-CIIHVFJN-CCRx_JXh.js} +1 -1
  129. package/dist/client/assets/{vue-C1z3QGG9.js → vue-DXnUyZR0.js} +1 -1
  130. package/dist/client/assets/{vue-html-C1RMzLZk.js → vue-html-CetUfade.js} +1 -1
  131. package/dist/client/assets/{vue-vine-oOixA6ge.js → vue-vine-CSW5RjCH.js} +1 -1
  132. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-BJxrQhTf.js → wardleyDiagram-YWT4CUSO-Buoffz1N.js} +1 -1
  133. package/dist/client/assets/{xml-okuDZ7vq.js → xml-CJgpX9jH.js} +1 -1
  134. package/dist/client/assets/{xsl-S_n3XrKb.js → xsl-BZk-xhGC.js} +1 -1
  135. package/dist/client/assets/{xychartDiagram-2RQKCTM6-BGdee7KG.js → xychartDiagram-2RQKCTM6-CEKRZKfv.js} +1 -1
  136. package/dist/client/assets/{yaml-BoX-kqX1.js → yaml-DVxl0VLy.js} +1 -1
  137. package/dist/client/index.html +1 -1
  138. package/dist/{completions-ZSKYvW06.mjs → completions-Csvfqctx.mjs} +16 -1
  139. package/dist/{doctor-CmP0u7-d.mjs → doctor-DhuZFVwO.mjs} +1 -1
  140. package/dist/{github-oCZx5aim.mjs → github-CzxbZnhh.mjs} +152 -28
  141. package/dist/github-DL7-BqhD.mjs +2 -0
  142. package/dist/{mcp-CqxXILYL.mjs → mcp-BBDdXGOZ.mjs} +212 -28
  143. package/dist/{server-CczuXSWo.mjs → server-D-gJ7owz.mjs} +947 -54
  144. package/package.json +1 -1
  145. package/dist/cli-gh-8YC1NzyM.mjs +0 -155
  146. package/dist/client/assets/channel-DmZgR6r0.js +0 -1
  147. package/dist/client/assets/chunk-QZHKN3VN-BrYnBs7h.js +0 -1
  148. package/dist/client/assets/chunk-WU5MYG2G-CdBcsQs_.js +0 -1
  149. package/dist/client/assets/classDiagram-4FO5ZUOK-CCpp3t5M.js +0 -1
  150. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-B1aV1sYb.js +0 -1
  151. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-C9KDGD7R.js +0 -1
  152. package/dist/github-BjZZcSKV.mjs +0 -2
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/angular-html-DdAR2u-k.js","assets/html-B9Ih_dUU.js","assets/css-B5cr0U9F.js","assets/javascript-BOQn0ikE.js","assets/angular-ts-Dz_vWKSu.js","assets/scss-BJJ7_L6c.js","assets/apl-BJ5QXrIk.js","assets/json-BLbH8rZf.js","assets/xml-okuDZ7vq.js","assets/java-_5trO-p9.js","assets/astro-BQAej5a5.js","assets/postcss-BHCm7Qae.js","assets/tsx-D6NK461A.js","assets/typescript-_AkeziZ2.js","assets/blade-DkAmuwDx.js","assets/html-derivative-YabD-M5d.js","assets/sql-CLfMGH4x.js","assets/bsl-BrHd4RA2.js","assets/sdbl-AL_m-RO_.js","assets/cairo-BDZ6TRZS.js","assets/python-D1NFioGW.js","assets/cobol-Daidj_5Y.js","assets/coffee-DUMdB2Cr.js","assets/cpp-C2FeX1Mc.js","assets/glsl-Bz-0Alp2.js","assets/c-DG5p-ChJ.js","assets/regexp-CmWVupmd.js","assets/crystal-D4yb9blJ.js","assets/shellscript-C6LkZs1u.js","assets/edge-RCQWcWNp.js","assets/elixir-DwKyVg2X.js","assets/elm-DjR33IVs.js","assets/erb-BnhUH1Hk.js","assets/ruby-CaxKSSbT.js","assets/graphql-DSKkDYCD.js","assets/jsx-CxteptsJ.js","assets/haml-huGFYKlj.js","assets/lua-CYTFayq-.js","assets/yaml-BoX-kqX1.js","assets/erlang-cuhwpmsu.js","assets/markdown-DXxotAxn.js","assets/fortran-fixed-form-DWr0EnJn.js","assets/fortran-free-form-Br4jRtSc.js","assets/fsharp-CQ5iYSPA.js","assets/gdresource-CN-lsNu5.js","assets/gdscript-hSAZM1eh.js","assets/gdshader-D4XNAEs9.js","assets/git-commit-6e79eN7Q.js","assets/diff-CW0RWGd9.js","assets/git-rebase-DzXoSDXA.js","assets/glimmer-js-HKnZpCn_.js","assets/glimmer-ts-DedV7rWs.js","assets/hack-CnaHZm8k.js","assets/handlebars-CKmgzfWY.js","assets/http-Bdu12JYX.js","assets/hurl-twZzDTNs.js","assets/csv-BBwiVr0X.js","assets/hxml-nwJci6H5.js","assets/haxe-DMg0jS3a.js","assets/jinja-BgY-0IBz.js","assets/jison-BLNTmT1_.js","assets/julia-B__Ncp_z.js","assets/r-DgHSP56L.js","assets/just-DBsHUGW1.js","assets/perl-Ce2_iKLz.js","assets/latex-DFF_0wxo.js","assets/tex-BMPk3nHk.js","assets/liquid-kDWCO6d7.js","assets/marko-Dpmz3Pdx.js","assets/less-DyHub3ow.js","assets/mdc-BsxHyM1i.js","assets/nextflow-DSfydIxt.js","assets/nextflow-groovy-DV4H3hok.js","assets/nginx-CcdTDme-.js","assets/nim-B5wWDskL.js","assets/php-DuLCFERd.js","assets/pug-BfQJoQj1.js","assets/qml-DYeovlVl.js","assets/razor-B00x7W-i.js","assets/csharp-C3YlYcLV.js","assets/rst-B3VARbTX.js","assets/cmake-DaqQuj4A.js","assets/sas-Ue0rHUIk.js","assets/shaderlab-CbbQwRPF.js","assets/hlsl-DPe9L0Dt.js","assets/shellsession-CkZu1e84.js","assets/soy-CDaZV57J.js","assets/sparql-DEoxFJ5d.js","assets/turtle-BM-MG8WY.js","assets/stata-B0kNMHc9.js","assets/surrealql-D9os_yZO.js","assets/svelte-2SxVToeO.js","assets/templ-DzmZB67T.js","assets/go-BJpWXZEs.js","assets/ts-tags-CG14Bplc.js","assets/twig-Agh0j5sD.js","assets/vue-C1z3QGG9.js","assets/vue-html-C1RMzLZk.js","assets/vue-vine-oOixA6ge.js","assets/stylus-B_iq45Sj.js","assets/xsl-S_n3XrKb.js","assets/mermaid.core-DNKchnly.js","assets/chunk-O5CBEL6O-Mt0cnPSf.js","assets/src-C27zxuNO.js","assets/chunk-5ZQYHXKU-DZ8RgHg8.js","assets/dist-BXZygPdX.js","assets/chunk-CSCIHK7Q-D27t4cyv.js","assets/chunk-3OPIFGDE-H3jjMR5Y.js","assets/chunk-L5ZTLDWV-DLjJZgf8.js","assets/chunk-NZK2D7GU-D1u3pjq-.js","assets/rough.esm-BBrzuQ0N.js","assets/chunk-BSJP7CBP-BKQKvtIj.js","assets/chunk-KSCS5N6A-Ed5HNXRW.js","assets/line-aAv8TyOs.js","assets/path-g3G46IZB.js","assets/array-CkF66D10.js","assets/chunk-LZXEDZCA-B-cs89SM.js","assets/chunk-WU5MYG2G-CdBcsQs_.js","assets/chunk-XPW4576I-Bt8a8x28.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/angular-html-CV0Ak818.js","assets/html-5bjcBKb2.js","assets/css-Bx3zqeyw.js","assets/javascript-Dj8e4yT5.js","assets/angular-ts-2e8zQ7to.js","assets/scss-Cs-F21hy.js","assets/apl-ByVy2dfo.js","assets/json-Bi84FPdJ.js","assets/xml-CJgpX9jH.js","assets/java-D9isH882.js","assets/astro-CE7ySGnq.js","assets/postcss-BHCm7Qae.js","assets/tsx-DgmkmSe3.js","assets/typescript-C_w_yccd.js","assets/blade-PJJaH6RK.js","assets/html-derivative-DFAt3hvS.js","assets/sql-C0M8bIzv.js","assets/bsl-BrHd4RA2.js","assets/sdbl-AL_m-RO_.js","assets/cairo-BDZ6TRZS.js","assets/python-D1NFioGW.js","assets/cobol-D5uvQocP.js","assets/coffee-DoE1_DMC.js","assets/cpp-CxMs3g8q.js","assets/glsl-5XFOCOCu.js","assets/c-BhDzEkUq.js","assets/regexp-Dnh3EraB.js","assets/crystal-Ck_Sab8H.js","assets/shellscript-CuqRpwp7.js","assets/edge-D7XVJcl7.js","assets/elixir-DLQjwJ9Q.js","assets/elm-CP5Ox5XO.js","assets/erb-C97aW-va.js","assets/ruby-BqnC7im3.js","assets/graphql-IoOZHuWD.js","assets/jsx-DI-NKxp6.js","assets/haml-BIbv0YDp.js","assets/lua-C4gbVDKd.js","assets/yaml-DVxl0VLy.js","assets/erlang-cuhwpmsu.js","assets/markdown-DXxotAxn.js","assets/fortran-fixed-form-DWr0EnJn.js","assets/fortran-free-form-Br4jRtSc.js","assets/fsharp-CQ5iYSPA.js","assets/gdresource-CN-lsNu5.js","assets/gdscript-hSAZM1eh.js","assets/gdshader-D4XNAEs9.js","assets/git-commit-6e79eN7Q.js","assets/diff-CW0RWGd9.js","assets/git-rebase-B4iN-h71.js","assets/glimmer-js-DVkEnHRb.js","assets/glimmer-ts-CyUzWW2D.js","assets/hack-BUQ8LqBu.js","assets/handlebars-9QihiA8n.js","assets/http-4_xHs8PR.js","assets/hurl-B-wi-Gx2.js","assets/csv-BBwiVr0X.js","assets/hxml-nwJci6H5.js","assets/haxe-DMg0jS3a.js","assets/jinja-Bkare_Hv.js","assets/jison-DDIUNnOW.js","assets/julia-Yhlqb4JO.js","assets/r-IEiS2KmQ.js","assets/just-B8KISqsZ.js","assets/perl-BaPVFzDG.js","assets/latex-CkYf4HIK.js","assets/tex-CbaeWbjN.js","assets/liquid-y_Utf1BC.js","assets/marko-BlcQZIyX.js","assets/less-DyHub3ow.js","assets/mdc-C6KkSPM_.js","assets/nextflow-DSfydIxt.js","assets/nextflow-groovy-DV4H3hok.js","assets/nginx-BGbv5z-H.js","assets/nim-BtqaozVV.js","assets/php-CUSmmFXP.js","assets/pug-ComryLhI.js","assets/qml-D4-pUDzN.js","assets/razor-A3NOQ-6o.js","assets/csharp-C3YlYcLV.js","assets/rst-DDcT8Cwj.js","assets/cmake-DaqQuj4A.js","assets/sas-BsVPIslL.js","assets/shaderlab-CbbQwRPF.js","assets/hlsl-DPe9L0Dt.js","assets/shellsession-BT4CTJst.js","assets/soy-Njc_erP7.js","assets/sparql-DEoxFJ5d.js","assets/turtle-BM-MG8WY.js","assets/stata-DQWLgfGE.js","assets/surrealql-CxnsjSMN.js","assets/svelte-YiRJWdT-.js","assets/templ-DVHepm0I.js","assets/go-BJpWXZEs.js","assets/ts-tags-KadJLbnQ.js","assets/twig-BG7aoIMU.js","assets/vue-DXnUyZR0.js","assets/vue-html-CetUfade.js","assets/vue-vine-CSW5RjCH.js","assets/stylus-B_iq45Sj.js","assets/xsl-BZk-xhGC.js","assets/mermaid.core-pkJSRcFi.js","assets/chunk-O5CBEL6O-BFgywBQV.js","assets/src-B8u-CQt1.js","assets/chunk-5ZQYHXKU-DBjF0sdg.js","assets/dist-Cxgi_w93.js","assets/chunk-CSCIHK7Q-vYCYu98G.js","assets/chunk-3OPIFGDE-BODO_5hx.js","assets/chunk-L5ZTLDWV-D6bS5hm3.js","assets/chunk-NZK2D7GU-DY1HNoUO.js","assets/rough.esm-BBrzuQ0N.js","assets/chunk-BSJP7CBP-Kr0_rIcG.js","assets/chunk-KSCS5N6A-Byf7HmWv.js","assets/line-C2Za_tgK.js","assets/path-g3G46IZB.js","assets/array-CkF66D10.js","assets/chunk-LZXEDZCA-BMGYcU-n.js","assets/chunk-WU5MYG2G-DcSuLObv.js","assets/chunk-XPW4576I-CCOlY0K5.js"])))=>i.map(i=>d[i]);
2
2
  var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=N(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(M(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function P(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function F(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var I=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},L={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=L,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:F}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,I)}catch(e){I(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.4`})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{var t=p();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.4`})),h=o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=m()})),g=o((e=>{var t=d(),n=p(),r=h();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function f(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=f(e),t!==null)return t;e=e.sibling}return null}var m=Object.assign,g=Symbol.for(`react.element`),_=Symbol.for(`react.transitional.element`),v=Symbol.for(`react.portal`),y=Symbol.for(`react.fragment`),b=Symbol.for(`react.strict_mode`),x=Symbol.for(`react.profiler`),S=Symbol.for(`react.consumer`),C=Symbol.for(`react.context`),w=Symbol.for(`react.forward_ref`),T=Symbol.for(`react.suspense`),E=Symbol.for(`react.suspense_list`),D=Symbol.for(`react.memo`),O=Symbol.for(`react.lazy`),k=Symbol.for(`react.activity`),A=Symbol.for(`react.memo_cache_sentinel`),j=Symbol.iterator;function M(e){return typeof e!=`object`||!e?null:(e=j&&e[j]||e[`@@iterator`],typeof e==`function`?e:null)}var N=Symbol.for(`react.client.reference`);function P(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===N?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case y:return`Fragment`;case x:return`Profiler`;case b:return`StrictMode`;case T:return`Suspense`;case E:return`SuspenseList`;case k:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case v:return`Portal`;case C:return e.displayName||`Context`;case S:return(e._context.displayName||`Context`)+`.Consumer`;case w:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case D:return t=e.displayName||null,t===null?P(e.type)||`Memo`:t;case O:t=e._payload,e=e._init;try{return P(e(t))}catch{}}return null}var F=Array.isArray,I=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,L=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,R={pending:!1,data:null,method:null,action:null},z=[],ee=-1;function te(e){return{current:e}}function ne(e){0>ee||(e.current=z[ee],z[ee]=null,ee--)}function B(e,t){ee++,z[ee]=e.current,e.current=t}var V=te(null),re=te(null),ie=te(null),ae=te(null);function oe(e,t){switch(B(ie,t),B(re,e),B(V,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Kd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Kd(t),e=qd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ne(V),B(V,e)}function se(){ne(V),ne(re),ne(ie)}function ce(e){e.memoizedState!==null&&B(ae,e);var t=V.current,n=qd(t,e.type);t!==n&&(B(re,e),B(V,n))}function H(e){re.current===e&&(ne(V),ne(re)),ae.current===e&&(ne(ae),rp._currentValue=R)}var le,ue;function U(e){if(le===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);le=t&&t[1]||``,ue=-1<e.stack.indexOf(`
3
3
  at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
4
  `+le+e+ue}var de=!1;function fe(e,t){if(!e||de)return``;de=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
@@ -18,7 +18,7 @@ Error generating stack: `+e.message+`
18
18
  \f\r "&'<=>\``.split(``)],[`\0
19
19
  \f\r "&'<=>\``.split(``),`\0
20
20
  \f\r "&'<=>\``.split(``)]],single:[[`&'`.split(``),`"&'\``.split(``)],[`\0&'`.split(``),`\0"&'\``.split(``)]],double:[[`"&`.split(``),`"&'\``.split(``)],[`\0"&`.split(``),`\0"&'\``.split(``)]]};function Oo(e,t,n,r){let i=r.schema,a=i.space===`svg`?!1:r.settings.omitOptionalTags,o=i.space===`svg`?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),s=[],c;i.space===`html`&&e.tagName===`svg`&&(r.schema=ga);let l=ko(r,e.properties),u=r.all(i.space===`html`&&e.tagName===`template`?e.content:e);return r.schema=i,u&&(o=!1),(l||!a||!xo(e,t,n))&&(s.push(`<`,e.tagName,l?` `+l:``),o&&(i.space===`svg`||r.settings.closeSelfClosing)&&(c=l.charAt(l.length-1),(!r.settings.tightSelfClosing||c===`/`||c&&c!==`"`&&c!==`'`)&&s.push(` `),s.push(`/`)),s.push(`>`)),s.push(u),!o&&(!a||!io(e,t,n))&&s.push(`</`+e.tagName+`>`),s.join(``)}function ko(e,t){let n=[],r=-1,i;if(t){for(i in t)if(t[i]!==null&&t[i]!==void 0){let r=Ao(e,i,t[i]);r&&n.push(r)}}for(;++r<n.length;){let t=e.settings.tightAttributes?n[r].charAt(n[r].length-1):void 0;r!==n.length-1&&t!==`"`&&t!==`'`&&(n[r]+=` `)}return n.join(``)}function Ao(e,t,n){let r=fa(e.schema,t),i=e.settings.allowParseErrors&&e.schema.space===`html`?0:1,a=e.settings.allowDangerousCharacters?0:1,o=e.quote,s;if(r.overloadedBoolean&&(n===r.attribute||n===``)?n=!0:(r.boolean||r.overloadedBoolean)&&(typeof n!=`string`||n===r.attribute||n===``)&&(n=!!n),n==null||n===!1||typeof n==`number`&&Number.isNaN(n))return``;let c=Ba(r.attribute,Object.assign({},e.settings.characterReferences,{subset:Do.name[i][a]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?qa:Ja)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?c:(e.settings.preferUnquoted&&(s=Ba(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Do.unquoted[i][a]}))),s!==n&&(e.settings.quoteSmart&&Ka(n,o)>Ka(n,e.alternative)&&(o=e.alternative),s=o+Ba(n,Object.assign({},e.settings.characterReferences,{subset:(o===`'`?Do.single:Do.double)[i][a],attribute:!0}))+o),c+(s&&`=`+s))}var jo=[`<`,`&`];function Mo(e,t,n,r){return n&&n.type===`element`&&(n.tagName===`script`||n.tagName===`style`)?e.value:Ba(e.value,Object.assign({},r.settings.characterReferences,{subset:jo}))}function No(e,t,n,r){return r.settings.allowDangerousHtml?e.value:Mo(e,t,n,r)}function Po(e,t,n,r){return r.all(e)}var Fo=va(`type`,{invalid:Io,unknown:Lo,handlers:{comment:Wa,doctype:Ga,element:Oo,raw:No,root:Po,text:Mo}});function Io(e){throw Error("Expected node, not `"+e+"`")}function Lo(e){throw Error("Cannot compile unknown node `"+e.type+"`")}var Ro={},zo={},Bo=[];function Vo(e,t){let n=t||Ro,r=n.quote||`"`,i=r===`"`?`'`:`"`;if(r!==`"`&&r!==`'`)throw Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Ho,all:Uo,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||Ii,characterReferences:n.characterReferences||zo,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space===`svg`?ga:ha,quote:r,alternative:i}.one(Array.isArray(e)?{type:`root`,children:e}:e,void 0,void 0)}function Ho(e,t,n){return Fo(e,t,n,this)}function Uo(e){let t=[],n=e&&e.children||Bo,r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join(``)}function Wo(e,t){let n=typeof e==`string`?{}:{...e.colorReplacements},r=typeof e==`string`?e:e.name;for(let[e,i]of Object.entries(t?.colorReplacements||{}))typeof i==`string`?n[e]=i:e===r&&Object.assign(n,i);return n}function Go(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Ko(e){return Array.isArray(e)?e:[e]}async function qo(e){return Promise.resolve(typeof e==`function`?e():e).then(e=>e.default||e)}function Jo(e){return!e||[`plaintext`,`txt`,`text`,`plain`].includes(e)}function Yo(e){return e===`ansi`||Jo(e)}function Xo(e){return e===`none`}function Zo(e){return Xo(e)}function Qo(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class==`string`&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let n=Array.isArray(t)?t:t.split(/\s+/g);for(let t of n)t&&!e.properties.class.includes(t)&&e.properties.class.push(t);return e}function $o(e,t=!1){if(e.length===0)return[[``,0]];let n=e.split(/(\r?\n)/g),r=0,i=[];for(let e=0;e<n.length;e+=2){let a=t?n[e]+(n[e+1]||``):n[e];i.push([a,r]),r+=n[e].length,r+=n[e+1]?.length||0}return i}function es(e){let t=$o(e,!0).map(([e])=>e);function n(n){if(n===e.length)return{line:t.length-1,character:t[t.length-1].length};let r=n,i=0;for(let e of t){if(r<e.length)break;r-=e.length,i++}return{line:i,character:r}}function r(e,n){let r=0;for(let n=0;n<e;n++)r+=t[n].length;return r+=n,r}return{lines:t,indexToPos:n,posToIndex:r}}function ts(e,t,n){let r=new Set;for(let t of e.matchAll(/:?lang=["']([^"']+)["']/g)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(/\\begin\{([\w-]+)\}/g)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let e=t[1].toLowerCase().trim(),n=e.includes(`/`)?e.split(`/`).pop():e;n&&r.add(n)}if(!n)return Array.from(r);let i=n.getBundledLanguages();return Array.from(r).filter(e=>e&&i[e])}var ns=`light-dark()`,rs=[`color`,`background-color`];function is(e,t){let n=0,r=[];for(let i of t)i>n&&r.push({...e,content:e.content.slice(n,i),offset:e.offset+n}),n=i;return n<e.content.length&&r.push({...e,content:e.content.slice(n),offset:e.offset+n}),r}function as(e,t){let n=Array.from(t instanceof Set?t:new Set(t)).sort((e,t)=>e-t);return n.length?e.map(e=>e.flatMap(e=>{let t=n.filter(t=>e.offset<t&&t<e.offset+e.content.length).map(t=>t-e.offset).sort((e,t)=>e-t);return t.length?is(e,t):e})):e}function os(e,t,n,r,i=`css-vars`){let a={content:e.content,explanation:e.explanation,offset:e.offset},o=t.map(t=>ss(e.variants[t])),s=new Set(o.flatMap(e=>Object.keys(e))),c={},l=(e,r)=>{let i=r===`color`?``:r===`background-color`?`-bg`:`-${r}`;return n+t[e]+(r===`color`?``:i)};return o.forEach((e,n)=>{for(let a of s){let s=e[a]||`inherit`;if(n===0&&r&&rs.includes(a))if(r===ns&&o.length>1){let e=t.findIndex(e=>e===`light`),r=t.findIndex(e=>e===`dark`);if(e===-1||r===-1)throw new Qn('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');c[a]=`light-dark(${o[e][a]||`inherit`}, ${o[r][a]||`inherit`})`,i===`css-vars`&&(c[l(n,a)]=s)}else c[a]=s;else i===`css-vars`&&(c[l(n,a)]=s)}}),a.htmlStyle=c,a}function ss(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t[`background-color`]=e.bgColor),e.fontStyle){e.fontStyle&yr.Italic&&(t[`font-style`]=`italic`),e.fontStyle&yr.Bold&&(t[`font-weight`]=`bold`);let n=[];e.fontStyle&yr.Underline&&n.push(`underline`),e.fontStyle&yr.Strikethrough&&n.push(`line-through`),n.length&&(t[`text-decoration`]=n.join(` `))}return t}function cs(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}:${t}`).join(`;`)}var ls=new WeakMap;function us(e,t){ls.set(e,t)}function ds(e){return ls.get(e)}var fs=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new e(Object.fromEntries(Ko(n).map(e=>[e,Fi])),t)}constructor(...e){if(e.length===2){let[t,n]=e;this.lang=n,this._stacks=t}else{let[t,n,r]=e;this.lang=n,this._stacks={[r]:t}}}getInternalStack(e=this.theme){return this._stacks[e]}getScopes(e=this.theme){return ps(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function ps(e){let t=[],n=new Set;function r(e){if(n.has(e))return;n.add(e);let i=e?.nameScopesList?.scopeName;i&&t.push(i),e.parent&&r(e.parent)}return r(e),t}function ms(e,t){if(!(e instanceof fs))throw new Qn(`Invalid grammar state`);return e.getInternalStack(t)}function hs(){let e=new WeakMap;function t(t){if(!e.has(t.meta)){let n=function(e){if(typeof e==`number`){if(e<0||e>t.source.length)throw new Qn(`Invalid decoration offset: ${e}. Code length: ${t.source.length}`);return{...r.indexToPos(e),offset:e}}else{let t=r.lines[e.line];if(t===void 0)throw new Qn(`Invalid decoration position ${JSON.stringify(e)}. Lines length: ${r.lines.length}`);let n=e.character;if(n<0&&(n=t.length+n),n<0||n>t.length)throw new Qn(`Invalid decoration position ${JSON.stringify(e)}. Line ${e.line} length: ${t.length}`);return{...e,character:n,offset:r.posToIndex(e.line,n)}}},r=es(t.source),i=(t.options.decorations||[]).map(e=>({...e,start:n(e.start),end:n(e.end)}));gs(i),e.set(t.meta,{decorations:i,converter:r,source:t.source})}return e.get(t.meta)}return{name:`shiki:decorations`,tokens(e){if(this.options.decorations?.length)return as(e,t(this).decorations.flatMap(e=>[e.start.offset,e.end.offset]))},code(e){if(!this.options.decorations?.length)return;let n=t(this),r=Array.from(e.children).filter(e=>e.type===`element`&&e.tagName===`span`);if(r.length!==n.converter.lines.length)throw new Qn(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${n.converter.lines.length}). Failed to apply decorations.`);function i(e,t,n,i){let a=r[e],s=``,c=-1,l=-1;if(t===0&&(c=0),n===0&&(l=0),n===1/0&&(l=a.children.length),c===-1||l===-1)for(let e=0;e<a.children.length;e++)s+=_s(a.children[e]),c===-1&&s.length===t&&(c=e+1),l===-1&&s.length===n&&(l=e+1);if(c===-1)throw new Qn(`Failed to find start index for decoration ${JSON.stringify(i.start)}`);if(l===-1)throw new Qn(`Failed to find end index for decoration ${JSON.stringify(i.end)}`);let u=a.children.slice(c,l);if(!i.alwaysWrap&&u.length===a.children.length)o(a,i,`line`);else if(!i.alwaysWrap&&u.length===1&&u[0].type===`element`)o(u[0],i,`token`);else{let e={type:`element`,tagName:`span`,properties:{},children:u};o(e,i,`wrapper`),a.children.splice(c,u.length,e)}}function a(e,t){r[e]=o(r[e],t,`line`)}function o(e,t,n){let r=t.properties||{},i=t.transform||(e=>e);return e.tagName=t.tagName||`span`,e.properties={...e.properties,...r,class:e.properties.class},t.properties?.class&&Qo(e,t.properties.class),e=i(e,n)||e,e}let s=[],c=n.decorations.sort((e,t)=>t.start.offset-e.start.offset||e.end.offset-t.end.offset);for(let e of c){let{start:t,end:n}=e;if(t.line===n.line)i(t.line,t.character,n.character,e);else if(t.line<n.line){i(t.line,t.character,1/0,e);for(let r=t.line+1;r<n.line;r++)s.unshift(()=>a(r,e));i(n.line,0,n.character,e)}}s.forEach(e=>e())}}}function gs(e){for(let t=0;t<e.length;t++){let n=e[t];if(n.start.offset>n.end.offset)throw new Qn(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let r=t+1;r<e.length;r++){let t=e[r],i=n.start.offset<=t.start.offset&&t.start.offset<n.end.offset,a=n.start.offset<t.end.offset&&t.end.offset<=n.end.offset,o=t.start.offset<=n.start.offset&&n.start.offset<t.end.offset,s=t.start.offset<n.end.offset&&n.end.offset<=t.end.offset;if(i||a||o||s){if(i&&a||o&&s||o&&n.start.offset===n.end.offset||a&&t.start.offset===t.end.offset)continue;throw new Qn(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(t.start)} intersect.`)}}}}function _s(e){return e.type===`text`?e.value:e.type===`element`?e.children.map(_s).join(``):``}var vs=[hs()];function ys(e){let t=bs(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...vs]}function bs(e){let t=[],n=[],r=[];for(let i of e)switch(i.enforce){case`pre`:t.push(i);break;case`post`:n.push(i);break;default:r.push(i)}return{pre:t,post:n,normal:r}}var xs=[`black`,`red`,`green`,`yellow`,`blue`,`magenta`,`cyan`,`white`,`brightBlack`,`brightRed`,`brightGreen`,`brightYellow`,`brightBlue`,`brightMagenta`,`brightCyan`,`brightWhite`],Ss={1:`bold`,2:`dim`,3:`italic`,4:`underline`,7:`reverse`,8:`hidden`,9:`strikethrough`};function Cs(e,t){let n=e.indexOf(`\x1B`,t);if(n!==-1&&e[n+1]===`[`){let t=e.indexOf(`m`,n);if(t!==-1)return{sequence:e.substring(n+2,t).split(`;`),startPosition:n,position:t+1}}return{position:e.length}}function ws(e){let t=e.shift();if(t===`2`){let t=e.splice(0,3).map(e=>Number.parseInt(e));return t.length!==3||t.some(e=>Number.isNaN(e))?void 0:{type:`rgb`,rgb:t}}else if(t===`5`){let t=e.shift();if(t)return{type:`table`,index:Number(t)}}}function Ts(e){let t=[];for(;e.length>0;){let n=e.shift();if(!n)continue;let r=Number.parseInt(n);if(!Number.isNaN(r))if(r===0)t.push({type:`resetAll`});else if(r<=9)Ss[r]&&t.push({type:`setDecoration`,value:Ss[r]});else if(r<=29){let e=Ss[r-20];e&&(t.push({type:`resetDecoration`,value:e}),e===`dim`&&t.push({type:`resetDecoration`,value:`bold`}))}else if(r<=37)t.push({type:`setForegroundColor`,value:{type:`named`,name:xs[r-30]}});else if(r===38){let n=ws(e);n&&t.push({type:`setForegroundColor`,value:n})}else if(r===39)t.push({type:`resetForegroundColor`});else if(r<=47)t.push({type:`setBackgroundColor`,value:{type:`named`,name:xs[r-40]}});else if(r===48){let n=ws(e);n&&t.push({type:`setBackgroundColor`,value:n})}else r===49?t.push({type:`resetBackgroundColor`}):r===53?t.push({type:`setDecoration`,value:`overline`}):r===55?t.push({type:`resetDecoration`,value:`overline`}):r>=90&&r<=97?t.push({type:`setForegroundColor`,value:{type:`named`,name:xs[r-90+8]}}):r>=100&&r<=107&&t.push({type:`setBackgroundColor`,value:{type:`named`,name:xs[r-100+8]}})}return t}function Es(){let e=null,t=null,n=new Set;return{parse(r){let i=[],a=0;do{let o=Cs(r,a),s=o.sequence?r.substring(a,o.startPosition):r.substring(a);if(s.length>0&&i.push({value:s,foreground:e,background:t,decorations:new Set(n)}),o.sequence){let r=Ts(o.sequence);for(let i of r)i.type===`resetAll`?(e=null,t=null,n.clear()):i.type===`resetForegroundColor`?e=null:i.type===`resetBackgroundColor`?t=null:i.type===`resetDecoration`&&n.delete(i.value);for(let i of r)i.type===`setForegroundColor`?e=i.value:i.type===`setBackgroundColor`?t=i.value:i.type===`setDecoration`&&n.add(i.value)}a=o.position}while(a<r.length);return i}}}var Ds={black:`#000000`,red:`#bb0000`,green:`#00bb00`,yellow:`#bbbb00`,blue:`#0000bb`,magenta:`#ff00ff`,cyan:`#00bbbb`,white:`#eeeeee`,brightBlack:`#555555`,brightRed:`#ff5555`,brightGreen:`#00ff00`,brightYellow:`#ffff55`,brightBlue:`#5555ff`,brightMagenta:`#ff55ff`,brightCyan:`#55ffff`,brightWhite:`#ffffff`};function Os(e=Ds){function t(t){return e[t]}function n(e){return`#${e.map(e=>Math.max(0,Math.min(e,255)).toString(16).padStart(2,`0`)).join(``)}`}let r;function i(){if(r)return r;r=[];for(let e=0;e<xs.length;e++)r.push(t(xs[e]));let e=[0,95,135,175,215,255];for(let t=0;t<6;t++)for(let i=0;i<6;i++)for(let a=0;a<6;a++)r.push(n([e[t],e[i],e[a]]));let i=8;for(let e=0;e<24;e++,i+=10)r.push(n([i,i,i]));return r}function a(e){return i()[e]}function o(e){switch(e.type){case`named`:return t(e.name);case`rgb`:return n(e.rgb);case`table`:return a(e.index)}}return{value:o}}var ks={black:`#000000`,red:`#cd3131`,green:`#0DBC79`,yellow:`#E5E510`,blue:`#2472C8`,magenta:`#BC3FBC`,cyan:`#11A8CD`,white:`#E5E5E5`,brightBlack:`#666666`,brightRed:`#F14C4C`,brightGreen:`#23D18B`,brightYellow:`#F5F543`,brightBlue:`#3B8EEA`,brightMagenta:`#D670D6`,brightCyan:`#29B8DB`,brightWhite:`#FFFFFF`};function As(e,t,n){let r=Wo(e,n),i=$o(t),a=Os(Object.fromEntries(xs.map(t=>{let n=`terminal.ansi${t[0].toUpperCase()}${t.substring(1)}`;return[t,e.colors?.[n]||ks[t]]}))),o=Es();return i.map(t=>o.parse(t[0]).map(n=>{let i,o;n.decorations.has(`reverse`)?(i=n.background?a.value(n.background):e.bg,o=n.foreground?a.value(n.foreground):e.fg):(i=n.foreground?a.value(n.foreground):e.fg,o=n.background?a.value(n.background):void 0),i=Go(i,r),o=Go(o,r),n.decorations.has(`dim`)&&(i=js(i));let s=yr.None;return n.decorations.has(`bold`)&&(s|=yr.Bold),n.decorations.has(`italic`)&&(s|=yr.Italic),n.decorations.has(`underline`)&&(s|=yr.Underline),n.decorations.has(`strikethrough`)&&(s|=yr.Strikethrough),{content:n.value,offset:t[1],color:i,bgColor:o,fontStyle:s}}))}function js(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let e=t[1];if(e.length===8){let t=Math.round(Number.parseInt(e.slice(6,8),16)/2).toString(16).padStart(2,`0`);return`#${e.slice(0,6)}${t}`}else if(e.length===6)return`#${e}80`;else if(e.length===4){let t=e[0],n=e[1],r=e[2],i=e[3];return`#${t}${t}${n}${n}${r}${r}${Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,`0`)}`}else if(e.length===3){let t=e[0],n=e[1],r=e[2];return`#${t}${t}${n}${n}${r}${r}80`}}let n=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return n?`var(${n[1]}-dim)`:e}function Ms(e,t,n={}){let{theme:r=e.getLoadedThemes()[0]}=n,i=e.resolveLangAlias(n.lang||`text`);if(Jo(i)||Xo(r))return $o(t).map(e=>[{content:e[0],offset:e[1]}]);let{theme:a,colorMap:o}=e.setTheme(r);if(i===`ansi`)return As(a,t,n);let s=e.getLanguage(n.lang||`text`);if(n.grammarState){if(n.grammarState.lang!==s.name)throw new Qn(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${s.name}"`);if(!n.grammarState.themes.includes(a.name))throw new Qn(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${a.name}"`)}return Ps(t,s,a,o,n)}function Ns(...e){if(e.length===2)return ds(e[1]);let[t,n,r={}]=e,{lang:i=`text`,theme:a=t.getLoadedThemes()[0]}=r;if(Jo(i)||Xo(a))throw new Qn(`Plain language does not have grammar state`);if(i===`ansi`)throw new Qn(`ANSI language does not have grammar state`);let{theme:o,colorMap:s}=t.setTheme(a),c=t.getLanguage(i);return new fs(Fs(n,c,o,s,r).stateStack,c.name,o.name)}function Ps(e,t,n,r,i){let a=Fs(e,t,n,r,i),o=new fs(a.stateStack,t.name,n.name);return us(a.tokens,o),a.tokens}function Fs(e,t,n,r,i){let a=Wo(n,i),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:s=500}=i,c=$o(e),l=i.grammarState?ms(i.grammarState,n.name)??Fi:i.grammarContextCode==null?Fi:Fs(i.grammarContextCode,t,n,r,{...i,grammarState:void 0,grammarContextCode:void 0}).stateStack,u=[],d=[];for(let e=0,f=c.length;e<f;e++){let[f,p]=c[e];if(f===``){u=[],d.push([]);continue}if(o>0&&f.length>=o){u=[],d.push([{content:f,offset:p,color:``,fontStyle:0}]);continue}let m,h,g;i.includeExplanation&&(m=t.tokenizeLine(f,l,s),h=m.tokens,g=0);let _=t.tokenizeLine2(f,l,s),v=_.tokens.length/2;for(let e=0;e<v;e++){let t=_.tokens[2*e],o=e+1<v?_.tokens[2*e+2]:f.length;if(t===o)continue;let s=_.tokens[2*e+1],c=Go(r[Tr.getForeground(s)],a),l=Tr.getFontStyle(s),d={content:f.substring(t,o),offset:p+t,color:c,fontStyle:l};if(i.includeExplanation){let e=[];if(i.includeExplanation!==`scopeName`)for(let t of n.settings){let n;switch(typeof t.scope){case`string`:n=t.scope.split(/,/).map(e=>e.trim());break;case`object`:n=t.scope;break;default:continue}e.push({settings:t,selectors:n.map(e=>e.split(/ /))})}d.explanation=[];let r=0;for(;t+r<o;){let t=h[g],n=f.substring(t.startIndex,t.endIndex);r+=n.length,d.explanation.push({content:n,scopes:i.includeExplanation===`scopeName`?Is(t.scopes):Ls(e,t.scopes)}),g+=1}}u.push(d)}d.push(u),u=[],l=_.ruleStack}return{tokens:d,stateStack:l}}function Is(e){return e.map(e=>({scopeName:e}))}function Ls(e,t){let n=[];for(let r=0,i=t.length;r<i;r++){let i=t[r];n[r]={scopeName:i,themeMatches:Bs(e,i,t.slice(0,r))}}return n}function Rs(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]===`.`}function zs(e,t,n){if(!Rs(e[e.length-1],t))return!1;let r=e.length-2,i=n.length-1;for(;r>=0&&i>=0;)Rs(e[r],n[i])&&--r,--i;return r===-1}function Bs(e,t,n){let r=[];for(let{selectors:i,settings:a}of e)for(let e of i)if(zs(e,t,n)){r.push(a);break}return r}function Vs(e,t,n){let r=Object.entries(n.themes).filter(e=>e[1]).map(e=>({color:e[0],theme:e[1]})),i=r.map(r=>{let i=Ms(e,t,{...n,theme:r.theme});return{tokens:i,state:ds(i),theme:typeof r.theme==`string`?r.theme:r.theme.name}}),a=Hs(...i.map(e=>e.tokens)),o=a[0].map((e,t)=>e.map((e,i)=>{let o={content:e.content,variants:{},offset:e.offset};return`includeExplanation`in n&&n.includeExplanation&&(o.explanation=e.explanation),a.forEach((e,n)=>{let{content:a,explanation:s,offset:c,...l}=e[t][i];o.variants[r[n].color]=l}),o})),s=i[0].state?new fs(Object.fromEntries(i.map(e=>[e.theme,e.state?.getInternalStack(e.theme)])),i[0].state.lang):void 0;return s&&us(o,s),o}function Hs(...e){let t=e.map(()=>[]),n=e.length;for(let r=0;r<e[0].length;r++){let i=e.map(e=>e[r]),a=t.map(()=>[]);t.forEach((e,t)=>e.push(a[t]));let o=i.map(()=>0),s=i.map(e=>e[0]);for(;s.every(e=>e);){let e=Math.min(...s.map(e=>e.content.length));for(let t=0;t<n;t++){let n=s[t];n.content.length===e?(a[t].push(n),o[t]+=1,s[t]=i[t][o[t]]):(a[t].push({...n,content:n.content.slice(0,e)}),s[t]={...n,content:n.content.slice(e),offset:n.offset+e})}}}return t}function Us(e,t,n){let r,i,a,o,s,c;if(`themes`in n){let{defaultColor:l=`light`,cssVariablePrefix:u=`--shiki-`,colorsRendering:d=`css-vars`}=n,f=Object.entries(n.themes).filter(e=>e[1]).map(e=>({color:e[0],theme:e[1]})).sort((e,t)=>e.color===l?-1:t.color===l?1:0);if(f.length===0)throw new Qn("`themes` option must not be empty");let p=Vs(e,t,n);if(c=ds(p),l&&ns!==l&&!f.find(e=>e.color===l))throw new Qn(`\`themes\` option must contain the defaultColor key \`${l}\``);let m=f.map(t=>e.getTheme(t.theme)),h=f.map(e=>e.color);a=p.map(e=>e.map(e=>os(e,h,u,l,d))),c&&us(a,c);let g=f.map(e=>Wo(e.theme,n));i=Ws(f,m,g,u,l,`fg`,d),r=Ws(f,m,g,u,l,`bg`,d),o=`shiki-themes ${m.map(e=>e.name).join(` `)}`,s=l?void 0:[i,r].join(`;`)}else if(`theme`in n){let s=Wo(n.theme,n);a=Ms(e,t,n);let l=e.getTheme(n.theme);r=Go(l.bg,s),i=Go(l.fg,s),o=l.name,c=ds(a)}else throw new Qn("Invalid options, either `theme` or `themes` must be provided");return{tokens:a,fg:i,bg:r,themeName:o,rootStyle:s,grammarState:c}}function Ws(e,t,n,r,i,a,o){return e.map((s,c)=>{let l=Go(t[c][a],n[c])||`inherit`,u=`${r+s.color}${a===`bg`?`-bg`:``}:${l}`;if(c===0&&i){if(i===ns&&e.length>1){let r=e.findIndex(e=>e.color===`light`),i=e.findIndex(e=>e.color===`dark`);if(r===-1||i===-1)throw new Qn('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${Go(t[r][a],n[r])||`inherit`}, ${Go(t[i][a],n[i])||`inherit`});${u}`}return l}return o===`css-vars`?u:null}).filter(e=>!!e).join(`;`)}function Gs(e,t,n,r={meta:{},options:n,codeToHast:(t,n)=>Gs(e,t,n),codeToTokens:(t,n)=>Us(e,t,n)}){let i=t;for(let e of ys(n))i=e.preprocess?.call(r,i,n)||i;let{tokens:a,fg:o,bg:s,themeName:c,rootStyle:l,grammarState:u}=Us(e,i,n),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=n;d===!0?a=qs(a):d===`never`&&(a=Js(a)),f&&(a=Ys(a));let p={...r,get source(){return i}};for(let e of ys(n))a=e.tokens?.call(p,a)||a;return Ks(a,{...n,fg:o,bg:s,themeName:c,rootStyle:n.rootStyle===!1?!1:n.rootStyle??l},p,u)}function Ks(e,t,n,r=ds(e)){let i=ys(t),a=[],o={type:`root`,children:[]},{structure:s=`classic`,tabindex:c=`0`}=t,l={class:`shiki ${t.themeName||``}`};t.rootStyle!==!1&&(t.rootStyle==null?l.style=`background-color:${t.bg};color:${t.fg}`:l.style=t.rootStyle),c!==!1&&c!=null&&(l.tabindex=c.toString());for(let[e,n]of Object.entries(t.meta||{}))e.startsWith(`_`)||(l[e]=n);let u={type:`element`,tagName:`pre`,properties:l,children:[],data:t.data},d={type:`element`,tagName:`code`,properties:{},children:a},f=[],p={...n,structure:s,addClassToHast:Qo,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return o},get pre(){return u},get code(){return d},get lines(){return f}};if(e.forEach((e,t)=>{t&&(s===`inline`?o.children.push({type:`element`,tagName:`br`,properties:{},children:[]}):s===`classic`&&a.push({type:`text`,value:`
21
- `}));let n={type:`element`,tagName:`span`,properties:{class:`line`},children:[]},r=0;for(let a of e){let e={type:`element`,tagName:`span`,properties:{...a.htmlAttrs},children:[{type:`text`,value:a.content}]},c=cs(a.htmlStyle||ss(a));c&&(e.properties.style=c);for(let o of i)e=o?.span?.call(p,e,t+1,r,n,a)||e;s===`inline`?o.children.push(e):s===`classic`&&n.children.push(e),r+=a.content.length}if(s===`classic`){for(let e of i)n=e?.line?.call(p,n,t+1)||n;f.push(n),a.push(n)}else s===`inline`&&f.push(n)}),s===`classic`){for(let e of i)d=e?.code?.call(p,d)||d;u.children.push(d);for(let e of i)u=e?.pre?.call(p,u)||u;o.children.push(u)}else if(s===`inline`){let e=[],t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]};for(let n of o.children)n.type===`element`&&n.tagName===`br`?(e.push(t),t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]}):(n.type===`element`||n.type===`text`)&&t.children.push(n);e.push(t);let n={type:`element`,tagName:`code`,properties:{},children:e};for(let e of i)n=e?.code?.call(p,n)||n;o.children=[];for(let e=0;e<n.children.length;e++){e>0&&o.children.push({type:`element`,tagName:`br`,properties:{},children:[]});let t=n.children[e];t.type===`element`&&o.children.push(...t.children)}}let m=o;for(let e of i)m=e?.root?.call(p,m)||m;return r&&us(m,r),m}function qs(e){return e.map(e=>{let t=[],n=``,r;return e.forEach((i,a)=>{let o=!(i.fontStyle&&(i.fontStyle&yr.Underline||i.fontStyle&yr.Strikethrough));o&&i.content.match(/^\s+$/)&&e[a+1]?(r===void 0&&(r=i.offset),n+=i.content):n?(o?t.push({...i,offset:r,content:n+i.content}):t.push({content:n,offset:r},i),r=void 0,n=``):t.push(i)}),t})}function Js(e){return e.map(e=>e.flatMap(e=>{if(e.content.match(/^\s+$/))return e;let t=e.content.match(/^(\s*)(.*?)(\s*)$/);if(!t)return e;let[,n,r,i]=t;if(!n&&!i)return e;let a=[{...e,offset:e.offset+n.length,content:r}];return n&&a.unshift({content:n,offset:e.offset}),i&&a.push({content:i,offset:e.offset+n.length+r.length}),a}))}function Ys(e){return e.map(e=>{let t=[];for(let n of e){if(t.length===0){t.push({...n});continue}let e=t[t.length-1],r=cs(e.htmlStyle||ss(e)),i=cs(n.htmlStyle||ss(n)),a=e.fontStyle&&(e.fontStyle&yr.Underline||e.fontStyle&yr.Strikethrough),o=n.fontStyle&&(n.fontStyle&yr.Underline||n.fontStyle&yr.Strikethrough);!a&&!o&&r===i?e.content+=n.content:t.push({...n})}return t})}var Xs=Vo;function Zs(e,t,n){let r={meta:{},options:n,codeToHast:(t,n)=>Gs(e,t,n),codeToTokens:(t,n)=>Us(e,t,n)},i=Xs(Gs(e,t,n,r));for(let e of ys(n))i=e.postprocess?.call(r,i,n)||i;return i}var Qs={light:`#333333`,dark:`#bbbbbb`},$s={light:`#fffffe`,dark:`#1e1e1e`},ec=`__shiki_resolved`;function tc(e){if(e?.[ec])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||=`dark`,t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){let e=t.settings?t.settings.find(e=>!e.name&&!e.scope):void 0;e?.settings?.foreground&&(r=e.settings.foreground),e?.settings?.background&&(n=e.settings.background),!r&&t?.colors?.[`editor.foreground`]&&(r=t.colors[`editor.foreground`]),!n&&t?.colors?.[`editor.background`]&&(n=t.colors[`editor.background`]),r||=t.type===`light`?Qs.light:Qs.dark,n||=t.type===`light`?$s.light:$s.dark,t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let i=0,a=new Map;function o(e){if(a.has(e))return a.get(e);i+=1;let n=`#${i.toString(16).padStart(8,`0`).toLowerCase()}`;return t.colorReplacements?.[`#${n}`]?o(e):(a.set(e,n),n)}t.settings=t.settings.map(e=>{let n=e.settings?.foreground&&!e.settings.foreground.startsWith(`#`),r=e.settings?.background&&!e.settings.background.startsWith(`#`);if(!n&&!r)return e;let i={...e,settings:{...e.settings}};if(n){let n=o(e.settings.foreground);t.colorReplacements[n]=e.settings.foreground,i.settings.foreground=n}if(r){let n=o(e.settings.background);t.colorReplacements[n]=e.settings.background,i.settings.background=n}return i});for(let e of Object.keys(t.colors||{}))if((e===`editor.foreground`||e===`editor.background`||e.startsWith(`terminal.ansi`))&&!t.colors[e]?.startsWith(`#`)){let n=o(t.colors[e]);t.colorReplacements[n]=t.colors[e],t.colors[e]=n}return Object.defineProperty(t,ec,{enumerable:!1,writable:!1,value:!0}),t}async function nc(e){return Array.from(new Set((await Promise.all(e.filter(e=>!Yo(e)).map(async e=>await qo(e).then(e=>Array.isArray(e)?e:[e])))).flat()))}async function rc(e){return(await Promise.all(e.map(async e=>Zo(e)?null:tc(await qo(e))))).filter(e=>!!e)}var ic=3,ac=!1;function oc(e,t=3){if(ic&&!(typeof ic==`number`&&t>ic)){if(ac)throw Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var sc=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function cc(e,t){if(!t)return e;if(t[e]){let n=new Set([e]);for(;t[e];){if(e=t[e],n.has(e))throw new sc(`Circular alias \`${Array.from(n).join(` -> `)} -> ${e}\``);n.add(e)}}return e}var lc=class extends Pi{constructor(e,t,n,r={}){super(e),this._resolver=e,this._themes=t,this._langs=n,this._alias=r,this._themes.map(e=>this.loadTheme(e)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(e){return typeof e==`string`?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){let t=tc(e);return t.name&&(this._resolvedThemes.set(t.name,t),this._loadedThemesCache=null),t}getLoadedThemes(){return this._loadedThemesCache||=[...this._resolvedThemes.keys()],this._loadedThemesCache}setTheme(e){let t=this._textmateThemeCache.get(e);t||(t=fr.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=cc(e,this._alias),this._resolvedGrammars.get(e)}loadLanguage(e){if(this.getGrammar(e.name))return;let t=new Set([...this._langMap.values()].filter(t=>t.embeddedLangsLazy?.includes(e.name)));this._resolver.addLanguage(e);let n={balancedBracketSelectors:e.balancedBracketSelectors||[`*`],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);let r=this.loadGrammarWithConfiguration(e.scopeName,1,n);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(t=>{this._alias[t]=e.name}),this._loadedLanguagesCache=null,t.size)for(let e of t)this._resolvedGrammars.delete(e.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(e.scopeName),this._syncRegistry?._grammars?.delete(e.scopeName),this.loadLanguage(this._langMap.get(e.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(let t of e)this.resolveEmbeddedLanguages(t);let t=Array.from(this._langGraph.entries()),n=t.filter(([e,t])=>!t);if(n.length){let e=t.filter(([e,t])=>t?(t.embeddedLanguages||t.embeddedLangs)?.some(e=>n.map(([e])=>e).includes(e)):!1).filter(e=>!n.includes(e));throw new sc(`Missing languages ${n.map(([e])=>`\`${e}\``).join(`, `)}, required by ${e.map(([e])=>`\`${e}\``).join(`, `)}`)}for(let[e,n]of t)this._resolver.addLanguage(n);for(let[e,n]of t)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])],this._loadedLanguagesCache}resolveEmbeddedLanguages(e){this._langMap.set(e.name,e),this._langGraph.set(e.name,e);let t=e.embeddedLanguages??e.embeddedLangs;if(t)for(let e of t)this._langGraph.set(e,this._langMap.get(e))}},uc=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(e,t){this._onigLib={createOnigScanner:t=>e.createScanner(t),createOnigString:t=>e.createString(t)},t.forEach(e=>this.addLanguage(e))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){let t=e.split(`.`),n=[];for(let e=1;e<=t.length;e++){let r=t.slice(0,e).join(`.`);n=[...n,...this._injections.get(r)||[]]}return n}},dc=0;function fc(e){dc+=1,e.warnings!==!1&&dc>=10&&dc%10==0&&console.warn(`[Shiki] ${dc} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new sc("`engine` option is required for synchronous mode");let n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(tc),i=new lc(new uc(e.engine,n),r,n,e.langAlias),a;function o(t){return cc(t,e.langAlias)}function s(e){g();let t=i.getGrammar(typeof e==`string`?e:e.name);if(!t)throw new sc(`Language \`${e}\` not found, you may need to load it first`);return t}function c(e){if(e===`none`)return{bg:``,fg:``,name:`none`,settings:[],type:`dark`};g();let t=i.getTheme(e);if(!t)throw new sc(`Theme \`${e}\` not found, you may need to load it first`);return t}function l(e){g();let t=c(e);return a!==e&&(i.setTheme(t),a=e),{theme:t,colorMap:i.getColorMap()}}function u(){return g(),i.getLoadedThemes()}function d(){return g(),i.getLoadedLanguages()}function f(...e){g(),i.loadLanguages(e.flat(1))}async function p(...e){return f(await nc(e))}function m(...e){g();for(let t of e.flat(1))i.loadTheme(t)}async function h(...e){return g(),m(await rc(e))}function g(){if(t)throw new sc(`Shiki instance has been disposed`)}function _(){t||(t=!0,i.dispose(),--dc)}return{setTheme:l,getTheme:c,getLanguage:s,getLoadedThemes:u,getLoadedLanguages:d,resolveLangAlias:o,loadLanguage:p,loadLanguageSync:f,loadTheme:h,loadThemeSync:m,dispose:_,[Symbol.dispose]:_}}async function pc(e){e.engine||oc("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,n,r]=await Promise.all([rc(e.themes||[]),nc(e.langs||[]),e.engine]);return fc({...e,themes:t,langs:n,engine:r})}async function mc(e){let t=await pc(e);return{getLastGrammarState:(...e)=>Ns(t,...e),codeToTokensBase:(e,n)=>Ms(t,e,n),codeToTokensWithThemes:(e,n)=>Vs(t,e,n),codeToTokens:(e,n)=>Us(t,e,n),codeToHast:(e,n)=>Gs(t,e,n),codeToHtml:(e,n)=>Zs(t,e,n),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function hc(e){let t=e.langs,n=e.themes,r=e.engine;async function i(e){function i(n){if(typeof n==`string`){if(n=e.langAlias?.[n]||n,Yo(n))return[];let r=t[n];if(!r)throw new Qn(`Language \`${n}\` is not included in this bundle. You may want to load it from external source.`);return r}return n}function a(e){if(Zo(e))return`none`;if(typeof e==`string`){let t=n[e];if(!t)throw new Qn(`Theme \`${e}\` is not included in this bundle. You may want to load it from external source.`);return t}return e}let o=(e.themes??[]).map(e=>a(e)),s=(e.langs??[]).map(e=>i(e)),c=await mc({engine:e.engine??r(),...e,themes:o,langs:s});return{...c,loadLanguage(...e){return c.loadLanguage(...e.map(i))},loadTheme(...e){return c.loadTheme(...e.map(a))},getBundledLanguages(){return t},getBundledThemes(){return n}}}return i}function gc(e){let t;async function n(n={}){if(t){let e=await t;return await Promise.all([e.loadTheme(...n.themes||[]),e.loadLanguage(...n.langs||[])]),e}else{t=e({...n,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...n.themes||[]),r.loadLanguage(...n.langs||[])]),r}}return n}function _c(e,t){let n=gc(e);async function r(e,r){let i=await n({langs:[r.lang],themes:`theme`in r?[r.theme]:Object.values(r.themes)}),a=await t?.guessEmbeddedLanguages?.(e,r.lang,i);return a&&await i.loadLanguage(...a),i}return{getSingletonHighlighter(e){return n(e)},async codeToHtml(e,t){return(await r(e,t)).codeToHtml(e,t)},async codeToHast(e,t){return(await r(e,t)).codeToHast(e,t)},async codeToTokens(e,t){return(await r(e,t)).codeToTokens(e,t)},async codeToTokensBase(e,t){return(await r(e,t)).codeToTokensBase(e,t)},async codeToTokensWithThemes(e,t){return(await r(e,t)).codeToTokensWithThemes(e,t)},async getLastGrammarState(e,t){return(await n({langs:[t.lang],themes:[t.theme]})).getLastGrammarState(e,t)}}}var vc=`modulepreload`,yc=function(e){return`/`+e},bc={},J=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=yc(t,n),t in bc)return;bc[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:vc,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},xc=[{id:`abap`,name:`ABAP`,import:(()=>J(()=>import(`./abap-cWYhO34H.js`),[]))},{id:`actionscript-3`,name:`ActionScript`,import:(()=>J(()=>import(`./actionscript-3-B80ndJsD.js`),[]))},{id:`ada`,name:`Ada`,import:(()=>J(()=>import(`./ada-C0C0SoYB.js`),[]))},{id:`angular-html`,name:`Angular HTML`,import:(()=>J(()=>import(`./angular-html-DdAR2u-k.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3])))},{id:`angular-ts`,name:`Angular TypeScript`,import:(()=>J(()=>import(`./angular-ts-Dz_vWKSu.js`),__vite__mapDeps([4,0,1,2,3,5])))},{id:`apache`,name:`Apache Conf`,import:(()=>J(()=>import(`./apache-DBwBm4bB.js`),[]))},{id:`apex`,name:`Apex`,import:(()=>J(()=>import(`./apex-FcV7UxQi.js`),[]))},{id:`apl`,name:`APL`,import:(()=>J(()=>import(`./apl-BJ5QXrIk.js`),__vite__mapDeps([6,2,1,3,7,8,9])))},{id:`applescript`,name:`AppleScript`,import:(()=>J(()=>import(`./applescript-hQs8VNpS.js`),[]))},{id:`ara`,name:`Ara`,import:(()=>J(()=>import(`./ara-BOadBOZg.js`),[]))},{id:`asciidoc`,name:`AsciiDoc`,aliases:[`adoc`],import:(()=>J(()=>import(`./asciidoc-BsfqiBck.js`),[]))},{id:`asm`,name:`Assembly`,import:(()=>J(()=>import(`./asm-C2vUqzqz.js`),[]))},{id:`astro`,name:`Astro`,import:(()=>J(()=>import(`./astro-BQAej5a5.js`),__vite__mapDeps([10,2,3,7,11,12,13])))},{id:`awk`,name:`AWK`,import:(()=>J(()=>import(`./awk-D4e-eeZT.js`),[]))},{id:`ballerina`,name:`Ballerina`,import:(()=>J(()=>import(`./ballerina-BzvFqbha.js`),[]))},{id:`bat`,name:`Batch File`,aliases:[`batch`],import:(()=>J(()=>import(`./bat-CFyw2ERn.js`),[]))},{id:`beancount`,name:`Beancount`,import:(()=>J(()=>import(`./beancount-a6Gsu5WX.js`),[]))},{id:`berry`,name:`Berry`,aliases:[`be`],import:(()=>J(()=>import(`./berry-C2jyz4Ah.js`),[]))},{id:`bibtex`,name:`BibTeX`,import:(()=>J(()=>import(`./bibtex-Dyet-B83.js`),[]))},{id:`bicep`,name:`Bicep`,import:(()=>J(()=>import(`./bicep-CghvUIvy.js`),[]))},{id:`bird2`,name:`BIRD2 Configuration`,aliases:[`bird`],import:(()=>J(()=>import(`./bird2-nHigvs-R.js`),[]))},{id:`blade`,name:`Blade`,import:(()=>J(()=>import(`./blade-DkAmuwDx.js`),__vite__mapDeps([14,2,15,1,3,7,16,8,9])))},{id:`bsl`,name:`1C (Enterprise)`,aliases:[`1c`],import:(()=>J(()=>import(`./bsl-BrHd4RA2.js`),__vite__mapDeps([17,18])))},{id:`c`,name:`C`,import:(()=>J(()=>import(`./c-DG5p-ChJ.js`).then(e=>e.n),[]))},{id:`c3`,name:`C3`,import:(()=>J(()=>import(`./c3-9ZrcmAmr.js`),[]))},{id:`cadence`,name:`Cadence`,aliases:[`cdc`],import:(()=>J(()=>import(`./cadence-BPDgYNWy.js`),[]))},{id:`cairo`,name:`Cairo`,import:(()=>J(()=>import(`./cairo-BDZ6TRZS.js`),__vite__mapDeps([19,20])))},{id:`clarity`,name:`Clarity`,import:(()=>J(()=>import(`./clarity-Cmao5KSK.js`),[]))},{id:`clojure`,name:`Clojure`,aliases:[`clj`],import:(()=>J(()=>import(`./clojure-D2dPuTkk.js`),[]))},{id:`cmake`,name:`CMake`,import:(()=>J(()=>import(`./cmake-DaqQuj4A.js`),[]))},{id:`cobol`,name:`COBOL`,import:(()=>J(()=>import(`./cobol-Daidj_5Y.js`),__vite__mapDeps([21,1,2,3,9])))},{id:`codeowners`,name:`CODEOWNERS`,import:(()=>J(()=>import(`./codeowners-B748jmvc.js`),[]))},{id:`codeql`,name:`CodeQL`,aliases:[`ql`],import:(()=>J(()=>import(`./codeql-CXb_8gHR.js`),[]))},{id:`coffee`,name:`CoffeeScript`,aliases:[`coffeescript`],import:(()=>J(()=>import(`./coffee-DUMdB2Cr.js`),__vite__mapDeps([22,3])))},{id:`common-lisp`,name:`Common Lisp`,aliases:[`lisp`],import:(()=>J(()=>import(`./common-lisp-UZn9nc_5.js`),[]))},{id:`coq`,name:`Coq`,import:(()=>J(()=>import(`./coq-DtO6yBIf.js`),[]))},{id:`cpp`,name:`C++`,aliases:[`c++`],import:(()=>J(()=>import(`./cpp-C2FeX1Mc.js`).then(e=>e.n),__vite__mapDeps([23,24,25,26,16])))},{id:`crystal`,name:`Crystal`,import:(()=>J(()=>import(`./crystal-D4yb9blJ.js`),__vite__mapDeps([27,25,2,1,3,28,16])))},{id:`csharp`,name:`C#`,aliases:[`c#`,`cs`],import:(()=>J(()=>import(`./csharp-C3YlYcLV.js`),[]))},{id:`css`,name:`CSS`,import:(()=>J(()=>import(`./css-B5cr0U9F.js`).then(e=>e.n),[]))},{id:`csv`,name:`CSV`,import:(()=>J(()=>import(`./csv-BBwiVr0X.js`),[]))},{id:`cue`,name:`CUE`,import:(()=>J(()=>import(`./cue-ScBFXY5f.js`),[]))},{id:`cypher`,name:`Cypher`,aliases:[`cql`],import:(()=>J(()=>import(`./cypher-CGStaC1X.js`),[]))},{id:`d`,name:`D`,import:(()=>J(()=>import(`./d-CuTCIvnX.js`),[]))},{id:`dart`,name:`Dart`,import:(()=>J(()=>import(`./dart-CqEodbm2.js`),[]))},{id:`dax`,name:`DAX`,import:(()=>J(()=>import(`./dax-UdE5S0Dh.js`),[]))},{id:`desktop`,name:`Desktop`,import:(()=>J(()=>import(`./desktop-DfmsfHJA.js`),[]))},{id:`diff`,name:`Diff`,import:(()=>J(()=>import(`./diff-CW0RWGd9.js`),[]))},{id:`docker`,name:`Dockerfile`,aliases:[`dockerfile`],import:(()=>J(()=>import(`./docker-B1qtW4ha.js`),[]))},{id:`dotenv`,name:`dotEnv`,import:(()=>J(()=>import(`./dotenv-BUzOh1k8.js`),[]))},{id:`dream-maker`,name:`Dream Maker`,import:(()=>J(()=>import(`./dream-maker-CBvk18nW.js`),[]))},{id:`edge`,name:`Edge`,import:(()=>J(()=>import(`./edge-RCQWcWNp.js`),__vite__mapDeps([29,15,1,2,3,13])))},{id:`elixir`,name:`Elixir`,import:(()=>J(()=>import(`./elixir-DwKyVg2X.js`),__vite__mapDeps([30,1,2,3])))},{id:`elm`,name:`Elm`,import:(()=>J(()=>import(`./elm-DjR33IVs.js`),__vite__mapDeps([31,24,25])))},{id:`emacs-lisp`,name:`Emacs Lisp`,aliases:[`elisp`],import:(()=>J(()=>import(`./emacs-lisp-DvSgLhDc.js`),[]))},{id:`erb`,name:`ERB`,import:(()=>J(()=>import(`./erb-BnhUH1Hk.js`),__vite__mapDeps([32,1,2,3,33,25,23,24,26,16,34,35,12,13,36,37,28,8,9,38])))},{id:`erlang`,name:`Erlang`,aliases:[`erl`],import:(()=>J(()=>import(`./erlang-cuhwpmsu.js`),__vite__mapDeps([39,40])))},{id:`fennel`,name:`Fennel`,import:(()=>J(()=>import(`./fennel-C-1kWlGf.js`),[]))},{id:`fish`,name:`Fish`,import:(()=>J(()=>import(`./fish-CCpdtwqS.js`),[]))},{id:`fluent`,name:`Fluent`,aliases:[`ftl`],import:(()=>J(()=>import(`./fluent-BLg032oD.js`),[]))},{id:`fortran-fixed-form`,name:`Fortran (Fixed Form)`,aliases:[`f`,`for`,`f77`],import:(()=>J(()=>import(`./fortran-fixed-form-DWr0EnJn.js`),__vite__mapDeps([41,42])))},{id:`fortran-free-form`,name:`Fortran (Free Form)`,aliases:[`f90`,`f95`,`f03`,`f08`,`f18`],import:(()=>J(()=>import(`./fortran-free-form-Br4jRtSc.js`),[]))},{id:`fsharp`,name:`F#`,aliases:[`f#`,`fs`],import:(()=>J(()=>import(`./fsharp-CQ5iYSPA.js`),__vite__mapDeps([43,40])))},{id:`gdresource`,name:`GDResource`,aliases:[`tscn`,`tres`],import:(()=>J(()=>import(`./gdresource-CN-lsNu5.js`),__vite__mapDeps([44,45,46])))},{id:`gdscript`,name:`GDScript`,aliases:[`gd`],import:(()=>J(()=>import(`./gdscript-hSAZM1eh.js`),[]))},{id:`gdshader`,name:`GDShader`,import:(()=>J(()=>import(`./gdshader-D4XNAEs9.js`),[]))},{id:`genie`,name:`Genie`,import:(()=>J(()=>import(`./genie-DmN-ICAN.js`),[]))},{id:`gherkin`,name:`Gherkin`,import:(()=>J(()=>import(`./gherkin-cuHHmRcX.js`),[]))},{id:`git-commit`,name:`Git Commit Message`,import:(()=>J(()=>import(`./git-commit-6e79eN7Q.js`),__vite__mapDeps([47,48])))},{id:`git-rebase`,name:`Git Rebase Message`,import:(()=>J(()=>import(`./git-rebase-DzXoSDXA.js`),__vite__mapDeps([49,28])))},{id:`gleam`,name:`Gleam`,import:(()=>J(()=>import(`./gleam-D8VhqPDN.js`),[]))},{id:`glimmer-js`,name:`Glimmer JS`,aliases:[`gjs`],import:(()=>J(()=>import(`./glimmer-js-HKnZpCn_.js`),__vite__mapDeps([50,2,1,3,13])))},{id:`glimmer-ts`,name:`Glimmer TS`,aliases:[`gts`],import:(()=>J(()=>import(`./glimmer-ts-DedV7rWs.js`),__vite__mapDeps([51,2,1,3,13])))},{id:`glsl`,name:`GLSL`,import:(()=>J(()=>import(`./glsl-Bz-0Alp2.js`).then(e=>e.n),__vite__mapDeps([24,25])))},{id:`gn`,name:`GN`,import:(()=>J(()=>import(`./gn-BjGRlX27.js`),[]))},{id:`gnuplot`,name:`Gnuplot`,import:(()=>J(()=>import(`./gnuplot-BZCXuE4q.js`),[]))},{id:`go`,name:`Go`,import:(()=>J(()=>import(`./go-BJpWXZEs.js`),[]))},{id:`graphql`,name:`GraphQL`,aliases:[`gql`],import:(()=>J(()=>import(`./graphql-DSKkDYCD.js`).then(e=>e.n),__vite__mapDeps([34,3,35,12,13])))},{id:`groovy`,name:`Groovy`,import:(()=>J(()=>import(`./groovy-D9w3Dn-z.js`),[]))},{id:`hack`,name:`Hack`,import:(()=>J(()=>import(`./hack-CnaHZm8k.js`),__vite__mapDeps([52,1,2,3,16])))},{id:`haml`,name:`Ruby Haml`,import:(()=>J(()=>import(`./haml-huGFYKlj.js`).then(e=>e.n),__vite__mapDeps([36,2,3])))},{id:`handlebars`,name:`Handlebars`,aliases:[`hbs`],import:(()=>J(()=>import(`./handlebars-CKmgzfWY.js`),__vite__mapDeps([53,2,1,3,38])))},{id:`haskell`,name:`Haskell`,aliases:[`hs`],import:(()=>J(()=>import(`./haskell-DqDdKEgk.js`),[]))},{id:`haxe`,name:`Haxe`,import:(()=>J(()=>import(`./haxe-DMg0jS3a.js`),[]))},{id:`hcl`,name:`HashiCorp HCL`,import:(()=>J(()=>import(`./hcl-SZIZUK_X.js`),[]))},{id:`hjson`,name:`Hjson`,import:(()=>J(()=>import(`./hjson-DF1VspiE.js`),[]))},{id:`hlsl`,name:`HLSL`,import:(()=>J(()=>import(`./hlsl-DPe9L0Dt.js`),[]))},{id:`html`,name:`HTML`,import:(()=>J(()=>import(`./html-B9Ih_dUU.js`).then(e=>e.n),__vite__mapDeps([1,2,3])))},{id:`html-derivative`,name:`HTML (Derivative)`,import:(()=>J(()=>import(`./html-derivative-YabD-M5d.js`),__vite__mapDeps([15,1,2,3])))},{id:`http`,name:`HTTP`,import:(()=>J(()=>import(`./http-Bdu12JYX.js`),__vite__mapDeps([54,34,3,35,12,13,7,28,8,9])))},{id:`hurl`,name:`Hurl`,import:(()=>J(()=>import(`./hurl-twZzDTNs.js`),__vite__mapDeps([55,56,34,3,35,12,13,8,9])))},{id:`hxml`,name:`HXML`,import:(()=>J(()=>import(`./hxml-nwJci6H5.js`),__vite__mapDeps([57,58])))},{id:`hy`,name:`Hy`,import:(()=>J(()=>import(`./hy-B0f-B1mH.js`),[]))},{id:`imba`,name:`Imba`,import:(()=>J(()=>import(`./imba-Bq3j1cW5.js`),[]))},{id:`ini`,name:`INI`,aliases:[`properties`],import:(()=>J(()=>import(`./ini-BayloP2U.js`),[]))},{id:`java`,name:`Java`,import:(()=>J(()=>import(`./java-_5trO-p9.js`).then(e=>e.n),[]))},{id:`javascript`,name:`JavaScript`,aliases:[`js`,`cjs`,`mjs`],import:(()=>J(()=>import(`./javascript-BOQn0ikE.js`).then(e=>e.n),[]))},{id:`jinja`,name:`Jinja`,import:(()=>J(()=>import(`./jinja-BgY-0IBz.js`),__vite__mapDeps([59,1,2,3])))},{id:`jison`,name:`Jison`,import:(()=>J(()=>import(`./jison-BLNTmT1_.js`),__vite__mapDeps([60,3])))},{id:`json`,name:`JSON`,import:(()=>J(()=>import(`./json-BLbH8rZf.js`).then(e=>e.n),[]))},{id:`json5`,name:`JSON5`,import:(()=>J(()=>import(`./json5-CRSfdIrY.js`),[]))},{id:`jsonc`,name:`JSON with Comments`,import:(()=>J(()=>import(`./jsonc-y4g9DQPx.js`),[]))},{id:`jsonl`,name:`JSON Lines`,import:(()=>J(()=>import(`./jsonl-D2paVn9r.js`),[]))},{id:`jsonnet`,name:`Jsonnet`,import:(()=>J(()=>import(`./jsonnet-CLH27mtz.js`),[]))},{id:`jssm`,name:`JSSM`,aliases:[`fsl`],import:(()=>J(()=>import(`./jssm-CPPYaqX-.js`),[]))},{id:`jsx`,name:`JSX`,import:(()=>J(()=>import(`./jsx-CxteptsJ.js`).then(e=>e.n),[]))},{id:`julia`,name:`Julia`,aliases:[`jl`],import:(()=>J(()=>import(`./julia-B__Ncp_z.js`),__vite__mapDeps([61,23,24,25,26,16,3,20,62])))},{id:`just`,name:`Just`,import:(()=>J(()=>import(`./just-DBsHUGW1.js`),__vite__mapDeps([63,3,64,2,1,16,8,9,20,33,25,23,24,26,34,35,12,13,36,37,28,38])))},{id:`kdl`,name:`KDL`,import:(()=>J(()=>import(`./kdl-D1BQjjnw.js`),[]))},{id:`kotlin`,name:`Kotlin`,aliases:[`kt`,`kts`],import:(()=>J(()=>import(`./kotlin-ndCaDnf0.js`),[]))},{id:`kusto`,name:`Kusto`,aliases:[`kql`],import:(()=>J(()=>import(`./kusto-D-4nbkD3.js`),[]))},{id:`latex`,name:`LaTeX`,import:(()=>J(()=>import(`./latex-DFF_0wxo.js`),__vite__mapDeps([65,66,62])))},{id:`lean`,name:`Lean 4`,aliases:[`lean4`],import:(()=>J(()=>import(`./lean-YmtAsB0p.js`),[]))},{id:`less`,name:`Less`,import:(()=>J(()=>import(`./less-DyHub3ow.js`),[]))},{id:`liquid`,name:`Liquid`,import:(()=>J(()=>import(`./liquid-kDWCO6d7.js`),__vite__mapDeps([67,2,1,3,7])))},{id:`llvm`,name:`LLVM IR`,import:(()=>J(()=>import(`./llvm-DCcqrY0D.js`),[]))},{id:`log`,name:`Log file`,import:(()=>J(()=>import(`./log-DWAAMNbe.js`),[]))},{id:`logo`,name:`Logo`,import:(()=>J(()=>import(`./logo-ClQMGkNL.js`),[]))},{id:`lua`,name:`Lua`,import:(()=>J(()=>import(`./lua-CYTFayq-.js`).then(e=>e.n),__vite__mapDeps([37,25])))},{id:`luau`,name:`Luau`,import:(()=>J(()=>import(`./luau-CmcXFvLt.js`),[]))},{id:`make`,name:`Makefile`,aliases:[`makefile`],import:(()=>J(()=>import(`./make-DcfJyUzm.js`),[]))},{id:`markdown`,name:`Markdown`,aliases:[`md`],import:(()=>J(()=>import(`./markdown-DXxotAxn.js`),[]))},{id:`marko`,name:`Marko`,import:(()=>J(()=>import(`./marko-Dpmz3Pdx.js`),__vite__mapDeps([68,2,69,5,13])))},{id:`matlab`,name:`MATLAB`,import:(()=>J(()=>import(`./matlab-BlfbTznR.js`),[]))},{id:`mdc`,name:`MDC`,import:(()=>J(()=>import(`./mdc-BsxHyM1i.js`),__vite__mapDeps([70,15,1,2,3,40,38])))},{id:`mdx`,name:`MDX`,import:(()=>J(()=>import(`./mdx-H8fyPQd8.js`),[]))},{id:`mermaid`,name:`Mermaid`,aliases:[`mmd`],import:(()=>J(()=>import(`./mermaid-CWAV2dmV.js`),[]))},{id:`mipsasm`,name:`MIPS Assembly`,aliases:[`mips`],import:(()=>J(()=>import(`./mipsasm-BWYFAm2s.js`),[]))},{id:`mojo`,name:`Mojo`,import:(()=>J(()=>import(`./mojo-DZcPJEIN.js`),[]))},{id:`moonbit`,name:`MoonBit`,aliases:[`mbt`,`mbti`],import:(()=>J(()=>import(`./moonbit-6eslNlJL.js`),[]))},{id:`move`,name:`Move`,import:(()=>J(()=>import(`./move-DxFc9-QU.js`),[]))},{id:`narrat`,name:`Narrat Language`,aliases:[`nar`],import:(()=>J(()=>import(`./narrat-gv38dJOT.js`),[]))},{id:`nextflow`,name:`Nextflow`,aliases:[`nf`],import:(()=>J(()=>import(`./nextflow-DSfydIxt.js`),__vite__mapDeps([71,72])))},{id:`nextflow-groovy`,name:`nextflow-groovy`,import:(()=>J(()=>import(`./nextflow-groovy-DV4H3hok.js`),[]))},{id:`nginx`,name:`Nginx`,import:(()=>J(()=>import(`./nginx-CcdTDme-.js`),__vite__mapDeps([73,37,25])))},{id:`nim`,name:`Nim`,import:(()=>J(()=>import(`./nim-B5wWDskL.js`),__vite__mapDeps([74,25,2,24,1,3,40,8,9])))},{id:`nix`,name:`Nix`,import:(()=>J(()=>import(`./nix-NlOz3HGM.js`),[]))},{id:`nushell`,name:`nushell`,aliases:[`nu`],import:(()=>J(()=>import(`./nushell-D86Z8aFF.js`),[]))},{id:`objective-c`,name:`Objective-C`,aliases:[`objc`],import:(()=>J(()=>import(`./objective-c-iuJvUjCv.js`),[]))},{id:`objective-cpp`,name:`Objective-C++`,import:(()=>J(()=>import(`./objective-cpp-C62JvfMT.js`),[]))},{id:`ocaml`,name:`OCaml`,import:(()=>J(()=>import(`./ocaml-Rbryo9lg.js`),[]))},{id:`odin`,name:`Odin`,import:(()=>J(()=>import(`./odin-CfaOVNP_.js`),[]))},{id:`openscad`,name:`OpenSCAD`,aliases:[`scad`],import:(()=>J(()=>import(`./openscad-DCRhgheK.js`),[]))},{id:`pascal`,name:`Pascal`,import:(()=>J(()=>import(`./pascal-CTesTHtV.js`),[]))},{id:`perl`,name:`Perl`,import:(()=>J(()=>import(`./perl-Ce2_iKLz.js`),__vite__mapDeps([64,2,1,3,16,8,9])))},{id:`php`,name:`PHP`,import:(()=>J(()=>import(`./php-DuLCFERd.js`),__vite__mapDeps([75,2,1,3,7,16,8,9])))},{id:`pkl`,name:`Pkl`,import:(()=>J(()=>import(`./pkl-BjUMjQkt.js`),[]))},{id:`plsql`,name:`PL/SQL`,import:(()=>J(()=>import(`./plsql-BgKEZSSo.js`),[]))},{id:`po`,name:`Gettext PO`,aliases:[`pot`,`potx`],import:(()=>J(()=>import(`./po-C5s_CVt8.js`),[]))},{id:`polar`,name:`Polar`,import:(()=>J(()=>import(`./polar-y4hX8qM0.js`),[]))},{id:`postcss`,name:`PostCSS`,import:(()=>J(()=>import(`./postcss-BHCm7Qae.js`),[]))},{id:`powerquery`,name:`PowerQuery`,import:(()=>J(()=>import(`./powerquery-C2vMt8aZ.js`),[]))},{id:`powershell`,name:`PowerShell`,aliases:[`ps`,`ps1`],import:(()=>J(()=>import(`./powershell-DEcjmg1c.js`),[]))},{id:`prisma`,name:`Prisma`,import:(()=>J(()=>import(`./prisma-Ba-Tcxy5.js`),[]))},{id:`prolog`,name:`Prolog`,import:(()=>J(()=>import(`./prolog-B4o261Jv.js`),[]))},{id:`proto`,name:`Protocol Buffer 3`,aliases:[`protobuf`],import:(()=>J(()=>import(`./proto-o3IZKiMR.js`),[]))},{id:`pug`,name:`Pug`,aliases:[`jade`],import:(()=>J(()=>import(`./pug-BfQJoQj1.js`),__vite__mapDeps([76,2,1,3])))},{id:`puppet`,name:`Puppet`,import:(()=>J(()=>import(`./puppet-BC0dqZ31.js`),[]))},{id:`purescript`,name:`PureScript`,import:(()=>J(()=>import(`./purescript-CLDw1y5G.js`),[]))},{id:`python`,name:`Python`,aliases:[`py`],import:(()=>J(()=>import(`./python-D1NFioGW.js`),[]))},{id:`qml`,name:`QML`,import:(()=>J(()=>import(`./qml-DYeovlVl.js`),__vite__mapDeps([77,3])))},{id:`qmldir`,name:`QML Directory`,import:(()=>J(()=>import(`./qmldir-B7i9e9Vn.js`),[]))},{id:`qss`,name:`Qt Style Sheets`,import:(()=>J(()=>import(`./qss-DIe6oKX8.js`),[]))},{id:`r`,name:`R`,import:(()=>J(()=>import(`./r-DgHSP56L.js`).then(e=>e.n),[]))},{id:`racket`,name:`Racket`,import:(()=>J(()=>import(`./racket-CAOC_yyk.js`),[]))},{id:`raku`,name:`Raku`,aliases:[`perl6`],import:(()=>J(()=>import(`./raku-Ccua3vW6.js`),[]))},{id:`razor`,name:`ASP.NET Razor`,import:(()=>J(()=>import(`./razor-B00x7W-i.js`),__vite__mapDeps([78,79,1,2,3])))},{id:`reg`,name:`Windows Registry Script`,import:(()=>J(()=>import(`./reg-CAYZT9kE.js`),[]))},{id:`regexp`,name:`RegExp`,aliases:[`regex`],import:(()=>J(()=>import(`./regexp-CmWVupmd.js`).then(e=>e.n),[]))},{id:`rel`,name:`Rel`,import:(()=>J(()=>import(`./rel-cvB6F5nO.js`),[]))},{id:`riscv`,name:`RISC-V`,import:(()=>J(()=>import(`./riscv-SYGtE4EN.js`),[]))},{id:`ron`,name:`RON`,import:(()=>J(()=>import(`./ron-CRt869SB.js`),[]))},{id:`rosmsg`,name:`ROS Interface`,import:(()=>J(()=>import(`./rosmsg-BwrfJ66Z.js`),[]))},{id:`rst`,name:`reStructuredText`,import:(()=>J(()=>import(`./rst-B3VARbTX.js`),__vite__mapDeps([80,81,23,24,25,26,16,15,1,2,3,20,33,34,35,12,13,36,37,28,8,9,38])))},{id:`ruby`,name:`Ruby`,aliases:[`rb`],import:(()=>J(()=>import(`./ruby-CaxKSSbT.js`),__vite__mapDeps([33,25,23,24,26,16,2,34,3,35,12,13,36,1,37,28,8,9,38])))},{id:`rust`,name:`Rust`,aliases:[`rs`],import:(()=>J(()=>import(`./rust-DCKTTPxN.js`),[]))},{id:`sas`,name:`SAS`,import:(()=>J(()=>import(`./sas-Ue0rHUIk.js`),__vite__mapDeps([82,16])))},{id:`sass`,name:`Sass`,import:(()=>J(()=>import(`./sass-CorcwySt.js`),[]))},{id:`scala`,name:`Scala`,import:(()=>J(()=>import(`./scala-DlI-OmYj.js`),[]))},{id:`scheme`,name:`Scheme`,import:(()=>J(()=>import(`./scheme-CcNEGkZH.js`),[]))},{id:`scss`,name:`SCSS`,import:(()=>J(()=>import(`./scss-BJJ7_L6c.js`).then(e=>e.n),__vite__mapDeps([5,2])))},{id:`sdbl`,name:`1C (Query)`,aliases:[`1c-query`],import:(()=>J(()=>import(`./sdbl-AL_m-RO_.js`),[]))},{id:`shaderlab`,name:`ShaderLab`,aliases:[`shader`],import:(()=>J(()=>import(`./shaderlab-CbbQwRPF.js`),__vite__mapDeps([83,84])))},{id:`shellscript`,name:`Shell`,aliases:[`bash`,`sh`,`shell`,`zsh`],import:(()=>J(()=>import(`./shellscript-C6LkZs1u.js`).then(e=>e.n),[]))},{id:`shellsession`,name:`Shell Session`,aliases:[`console`],import:(()=>J(()=>import(`./shellsession-CkZu1e84.js`),__vite__mapDeps([85,28])))},{id:`smalltalk`,name:`Smalltalk`,import:(()=>J(()=>import(`./smalltalk-Y2ogrfbk.js`),[]))},{id:`solidity`,name:`Solidity`,import:(()=>J(()=>import(`./solidity-Bfbm9QZQ.js`),[]))},{id:`soy`,name:`Closure Templates`,aliases:[`closure-templates`],import:(()=>J(()=>import(`./soy-CDaZV57J.js`),__vite__mapDeps([86,1,2,3])))},{id:`sparql`,name:`SPARQL`,import:(()=>J(()=>import(`./sparql-DEoxFJ5d.js`),__vite__mapDeps([87,88])))},{id:`splunk`,name:`Splunk Query Language`,aliases:[`spl`],import:(()=>J(()=>import(`./splunk-6DJA2XFa.js`),[]))},{id:`sql`,name:`SQL`,import:(()=>J(()=>import(`./sql-CLfMGH4x.js`).then(e=>e.n),[]))},{id:`ssh-config`,name:`SSH Config`,import:(()=>J(()=>import(`./ssh-config-CbQtdF-u.js`),[]))},{id:`stata`,name:`Stata`,import:(()=>J(()=>import(`./stata-B0kNMHc9.js`),__vite__mapDeps([89,16])))},{id:`stylus`,name:`Stylus`,aliases:[`styl`],import:(()=>J(()=>import(`./stylus-B_iq45Sj.js`),[]))},{id:`surrealql`,name:`SurrealQL`,aliases:[`surql`],import:(()=>J(()=>import(`./surrealql-D9os_yZO.js`),__vite__mapDeps([90,3])))},{id:`svelte`,name:`Svelte`,import:(()=>J(()=>import(`./svelte-2SxVToeO.js`),__vite__mapDeps([91,2,3,11,13])))},{id:`swift`,name:`Swift`,import:(()=>J(()=>import(`./swift-C7KIgN-p.js`),[]))},{id:`system-verilog`,name:`SystemVerilog`,import:(()=>J(()=>import(`./system-verilog-C3G9wERd.js`),[]))},{id:`systemd`,name:`Systemd Units`,import:(()=>J(()=>import(`./systemd-CwxGrojj.js`),[]))},{id:`talonscript`,name:`TalonScript`,aliases:[`talon`],import:(()=>J(()=>import(`./talonscript-DqnSo1EO.js`),[]))},{id:`tasl`,name:`Tasl`,import:(()=>J(()=>import(`./tasl-T8ethp86.js`),[]))},{id:`tcl`,name:`Tcl`,import:(()=>J(()=>import(`./tcl-Ccl366o0.js`),[]))},{id:`templ`,name:`Templ`,import:(()=>J(()=>import(`./templ-DzmZB67T.js`),__vite__mapDeps([92,2,93,3])))},{id:`terraform`,name:`Terraform`,aliases:[`tf`,`tfvars`],import:(()=>J(()=>import(`./terraform-BBf6ZI_0.js`),[]))},{id:`tex`,name:`TeX`,import:(()=>J(()=>import(`./tex-BMPk3nHk.js`),__vite__mapDeps([66,62])))},{id:`toml`,name:`TOML`,import:(()=>J(()=>import(`./toml-C5Z_BR4r.js`),[]))},{id:`ts-tags`,name:`TypeScript with Tags`,aliases:[`lit`],import:(()=>J(()=>import(`./ts-tags-CG14Bplc.js`),__vite__mapDeps([94,2,24,25,1,3,16,13,8,9])))},{id:`tsv`,name:`TSV`,import:(()=>J(()=>import(`./tsv-rX8sUJs7.js`),[]))},{id:`tsx`,name:`TSX`,import:(()=>J(()=>import(`./tsx-D6NK461A.js`).then(e=>e.n),[]))},{id:`turtle`,name:`Turtle`,import:(()=>J(()=>import(`./turtle-BM-MG8WY.js`),[]))},{id:`twig`,name:`Twig`,import:(()=>J(()=>import(`./twig-Agh0j5sD.js`),__vite__mapDeps([95,2,3,75,1,7,16,8,9,20,33,25,23,24,26,34,35,12,13,36,37,28,38,5])))},{id:`typescript`,name:`TypeScript`,aliases:[`ts`,`cts`,`mts`],import:(()=>J(()=>import(`./typescript-_AkeziZ2.js`).then(e=>e.n),[]))},{id:`typespec`,name:`TypeSpec`,aliases:[`tsp`],import:(()=>J(()=>import(`./typespec-C5gKydvR.js`),[]))},{id:`typst`,name:`Typst`,aliases:[`typ`],import:(()=>J(()=>import(`./typst--_5VchrY.js`),[]))},{id:`v`,name:`V`,import:(()=>J(()=>import(`./v-C6PwpmTC.js`),[]))},{id:`vala`,name:`Vala`,import:(()=>J(()=>import(`./vala-4pTaceSj.js`),[]))},{id:`vb`,name:`Visual Basic`,aliases:[`cmd`],import:(()=>J(()=>import(`./vb-DhoR5A6S.js`),[]))},{id:`verilog`,name:`Verilog`,import:(()=>J(()=>import(`./verilog-B9f_1lPn.js`),[]))},{id:`vhdl`,name:`VHDL`,import:(()=>J(()=>import(`./vhdl-Cy4RAmOe.js`),[]))},{id:`viml`,name:`Vim Script`,aliases:[`vim`,`vimscript`],import:(()=>J(()=>import(`./viml-CFQW-CcD.js`),[]))},{id:`vue`,name:`Vue`,import:(()=>J(()=>import(`./vue-C1z3QGG9.js`),__vite__mapDeps([96,2,15,1,3,7,13])))},{id:`vue-html`,name:`Vue HTML`,import:(()=>J(()=>import(`./vue-html-C1RMzLZk.js`),__vite__mapDeps([97,3])))},{id:`vue-vine`,name:`Vue Vine`,import:(()=>J(()=>import(`./vue-vine-oOixA6ge.js`),__vite__mapDeps([98,2,3,69,11,5,99])))},{id:`vyper`,name:`Vyper`,aliases:[`vy`],import:(()=>J(()=>import(`./vyper-BW5zj9bE.js`),[]))},{id:`wasm`,name:`WebAssembly`,import:(()=>J(()=>import(`./wasm-BigxSLnm.js`),[]))},{id:`wenyan`,name:`Wenyan`,aliases:[`文言`],import:(()=>J(()=>import(`./wenyan-BZzM1SQT.js`),[]))},{id:`wgsl`,name:`WGSL`,import:(()=>J(()=>import(`./wgsl-xBPHbLlq.js`),[]))},{id:`wikitext`,name:`Wikitext`,aliases:[`mediawiki`,`wiki`],import:(()=>J(()=>import(`./wikitext-BXJWUNJK.js`),[]))},{id:`wit`,name:`WebAssembly Interface Types`,import:(()=>J(()=>import(`./wit-2GnUs67P.js`),[]))},{id:`wolfram`,name:`Wolfram`,aliases:[`wl`],import:(()=>J(()=>import(`./wolfram-DIFDmw-g.js`),[]))},{id:`xml`,name:`XML`,import:(()=>J(()=>import(`./xml-okuDZ7vq.js`).then(e=>e.n),__vite__mapDeps([8,9])))},{id:`xsl`,name:`XSL`,import:(()=>J(()=>import(`./xsl-S_n3XrKb.js`),__vite__mapDeps([100,8,9])))},{id:`yaml`,name:`YAML`,aliases:[`yml`],import:(()=>J(()=>import(`./yaml-BoX-kqX1.js`).then(e=>e.n),[]))},{id:`zenscript`,name:`ZenScript`,import:(()=>J(()=>import(`./zenscript-DQaUUjbx.js`),[]))},{id:`zig`,name:`Zig`,import:(()=>J(()=>import(`./zig-BDepRvBi.js`),[]))}],Sc=Object.fromEntries(xc.map(e=>[e.id,e.import])),Cc=Object.fromEntries(xc.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),wc={...Sc,...Cc},Tc=Object.fromEntries([{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>J(()=>import(`./andromeeda-Ch2kWS7s.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>J(()=>import(`./aurora-x-BHLqzt7j.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>J(()=>import(`./ayu-dark-DCotN_ZT.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>J(()=>import(`./ayu-light-CKB6o_im.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>J(()=>import(`./ayu-mirage-B38lW-C5.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-frappe-BY_2ofjk.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>J(()=>import(`./catppuccin-latte-D6GXPBmA.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-macchiato-BuW8_cyo.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-mocha-znex9DPe.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>J(()=>import(`./dark-plus-BvePH-r3.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>J(()=>import(`./dracula-kJQjC_Gy.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>J(()=>import(`./dracula-soft-B3XhEjCl.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>J(()=>import(`./everforest-dark-u0zLn75q.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>J(()=>import(`./everforest-light-D3syIoAR.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>J(()=>import(`./github-dark-CEBLh0--.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>J(()=>import(`./github-dark-default-Dq0Z4Xai.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>J(()=>import(`./github-dark-dimmed-D90YmS4w.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>J(()=>import(`./github-dark-high-contrast-B6BWv1iC.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>J(()=>import(`./github-light-lXSVSq5T.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>J(()=>import(`./github-light-default-DsPWmj4v.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>J(()=>import(`./github-light-high-contrast-C7aLb3kp.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-hard-_deksD0U.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-medium-CT31284j.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-soft-BZuEUCbj.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-hard-dxv4n_ZS.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-medium-BsW_fVfR.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-soft-BiGy99gD.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>J(()=>import(`./horizon-Ngud75Kn.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`dark`,import:(()=>J(()=>import(`./horizon-bright-Cnljd0XD.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>J(()=>import(`./houston-BenZxlMr.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-dragon-Bt5mhLu1.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>J(()=>import(`./kanagawa-lotus-FGA3pRJk.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-wave-DnLVZPAD.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>J(()=>import(`./laserwave-D2qAZkaG.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>J(()=>import(`./light-plus-CP13QUvm.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>J(()=>import(`./material-theme-JFoPTBSr.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>J(()=>import(`./material-theme-darker-BHaqZ19v.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>J(()=>import(`./material-theme-lighter-CGnnS2bs.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>J(()=>import(`./material-theme-ocean-Drhewjqf.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>J(()=>import(`./material-theme-palenight-DbUypmpb.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>J(()=>import(`./min-dark-BEelvXUB.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>J(()=>import(`./min-light-CTPBOACR.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>J(()=>import(`./monokai-DQlZXbkg.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>J(()=>import(`./night-owl-BLcrYhaC.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>J(()=>import(`./night-owl-light-BG-tBJOz.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>J(()=>import(`./nord-Dm2F5_QB.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>J(()=>import(`./one-dark-pro-DC9SHdX0.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>J(()=>import(`./one-light-Doo39p0H.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>J(()=>import(`./plastic-B3CcSpon.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>J(()=>import(`./poimandres-BsK70ma5.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>J(()=>import(`./red-DtDH206x.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-CjBfSJ5b.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>J(()=>import(`./rose-pine-dawn-C0xwy7iJ.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-moon-BSNy9Ty0.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>J(()=>import(`./slack-dark-rMhrfPm6.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>J(()=>import(`./slack-ochin-9w8X74hU.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>J(()=>import(`./snazzy-light-DHr9ygpP.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>J(()=>import(`./solarized-dark-UPcKev9Q.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>J(()=>import(`./solarized-light-DUsjROvl.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>J(()=>import(`./synthwave-84-lf_Wt0K_.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>J(()=>import(`./tokyo-night-BF5ata25.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>J(()=>import(`./vesper-CmBi_iCT.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>J(()=>import(`./vitesse-black-CE8RoBJP.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>J(()=>import(`./vitesse-dark-BpF142p_.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>J(()=>import(`./vitesse-light-CMwxPBrg.js`),[]))}].map(e=>[e.id,e.import])),Ec=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function Dc(){return 2147483648}function Oc(){return typeof performance<`u`?performance.now():Date.now()}var kc=(e,t)=>e+(t-e%t)%t;async function Ac(e){let t,n,r={};function i(e){n=e,r.HEAPU8=new Uint8Array(e),r.HEAPU32=new Uint32Array(e)}function a(e,t,n){r.HEAPU8.copyWithin(e,t,t+n)}function o(e){try{return t.grow(e-n.byteLength+65535>>>16),i(t.buffer),1}catch{}}function s(e){let t=r.HEAPU8.length;e>>>=0;let n=Dc();if(e>n)return!1;for(let r=1;r<=4;r*=2){let i=t*(1+.2/r);if(i=Math.min(i,e+100663296),o(Math.min(n,kc(Math.max(e,i),65536))))return!0}return!1}let c=typeof TextDecoder<`u`?new TextDecoder(`utf8`):void 0;function l(e,t,n=1024){let r=t+n,i=t;for(;e[i]&&!(i>=r);)++i;if(i-t>16&&e.buffer&&c)return c.decode(e.subarray(t,i));let a=``;for(;t<i;){let n=e[t++];if(!(n&128)){a+=String.fromCharCode(n);continue}let r=e[t++]&63;if((n&224)==192){a+=String.fromCharCode((n&31)<<6|r);continue}let i=e[t++]&63;if(n=(n&240)==224?(n&15)<<12|r<<6|i:(n&7)<<18|r<<12|i<<6|e[t++]&63,n<65536)a+=String.fromCharCode(n);else{let e=n-65536;a+=String.fromCharCode(55296|e>>10,56320|e&1023)}}return a}function u(e,t){return e?l(r.HEAPU8,e,t):``}let d={emscripten_get_now:Oc,emscripten_memcpy_big:a,emscripten_resize_heap:s,fd_write:()=>0};async function f(){let n=await e({env:d,wasi_snapshot_preview1:d});t=n.memory,i(t.buffer),Object.assign(r,n),r.UTF8ToString=u}return await f(),r}var jc=Object.defineProperty,Mc=(e,t,n)=>t in e?jc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Nc=(e,t,n)=>Mc(e,typeof t==`symbol`?t:t+``,n),Pc=null;function Fc(e){throw new Ec(e.UTF8ToString(e.getLastOnigError()))}var Ic=class e{constructor(t){Nc(this,`utf16Length`),Nc(this,`utf8Length`),Nc(this,`utf16Value`),Nc(this,`utf8Value`),Nc(this,`utf16OffsetToUtf8`),Nc(this,`utf8OffsetToUtf16`);let n=t.length,r=e._utf8ByteLength(t),i=r!==n,a=i?new Uint32Array(n+1):null;i&&(a[n]=r);let o=i?new Uint32Array(r+1):null;i&&(o[r]=n);let s=new Uint8Array(r),c=0;for(let e=0;e<n;e++){let r=t.charCodeAt(e),l=r,u=!1;if(r>=55296&&r<=56319&&e+1<n){let n=t.charCodeAt(e+1);n>=56320&&n<=57343&&(l=(r-55296<<10)+65536|n-56320,u=!0)}i&&(a[e]=c,u&&(a[e+1]=c),l<=127?o[c+0]=e:l<=2047?(o[c+0]=e,o[c+1]=e):l<=65535?(o[c+0]=e,o[c+1]=e,o[c+2]=e):(o[c+0]=e,o[c+1]=e,o[c+2]=e,o[c+3]=e)),l<=127?s[c++]=l:l<=2047?(s[c++]=192|(l&1984)>>>6,s[c++]=128|(l&63)>>>0):l<=65535?(s[c++]=224|(l&61440)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0):(s[c++]=240|(l&1835008)>>>18,s[c++]=128|(l&258048)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0),u&&e++}this.utf16Length=n,this.utf8Length=r,this.utf16Value=t,this.utf8Value=s,this.utf16OffsetToUtf8=a,this.utf8OffsetToUtf16=o}static _utf8ByteLength(e){let t=0;for(let n=0,r=e.length;n<r;n++){let i=e.charCodeAt(n),a=i,o=!1;if(i>=55296&&i<=56319&&n+1<r){let t=e.charCodeAt(n+1);t>=56320&&t<=57343&&(a=(i-55296<<10)+65536|t-56320,o=!0)}a<=127?t+=1:a<=2047?t+=2:a<=65535?t+=3:t+=4,o&&n++}return t}createString(e){let t=e.omalloc(this.utf8Length);return e.HEAPU8.set(this.utf8Value,t),t}},Lc=class e{constructor(t){if(Nc(this,`id`,++e.LAST_ID),Nc(this,`_onigBinding`),Nc(this,`content`),Nc(this,`utf16Length`),Nc(this,`utf8Length`),Nc(this,`utf16OffsetToUtf8`),Nc(this,`utf8OffsetToUtf16`),Nc(this,`ptr`),!Pc)throw new Ec(`Must invoke loadWasm first.`);this._onigBinding=Pc,this.content=t;let n=new Ic(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!e._sharedPtrInUse?(e._sharedPtr||=Pc.omalloc(1e4),e._sharedPtrInUse=!0,Pc.HEAPU8.set(n.utf8Value,e._sharedPtr),this.ptr=e._sharedPtr):this.ptr=n.createString(Pc)}convertUtf8OffsetToUtf16(e){return this.utf8OffsetToUtf16?e<0?0:e>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[e]:e}convertUtf16OffsetToUtf8(e){return this.utf16OffsetToUtf8?e<0?0:e>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[e]:e}dispose(){this.ptr===e._sharedPtr?e._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};Nc(Lc,`LAST_ID`,0),Nc(Lc,`_sharedPtr`,0),Nc(Lc,`_sharedPtrInUse`,!1);var Rc=Lc,zc=class{constructor(e){if(Nc(this,`_onigBinding`),Nc(this,`_ptr`),!Pc)throw new Ec(`Must invoke loadWasm first.`);let t=[],n=[];for(let r=0,i=e.length;r<i;r++){let i=new Ic(e[r]);t[r]=i.createString(Pc),n[r]=i.utf8Length}let r=Pc.omalloc(4*e.length);Pc.HEAPU32.set(t,r/4);let i=Pc.omalloc(4*e.length);Pc.HEAPU32.set(n,i/4);let a=Pc.createOnigScanner(r,i,e.length);for(let n=0,r=e.length;n<r;n++)Pc.ofree(t[n]);Pc.ofree(i),Pc.ofree(r),a===0&&Fc(Pc),this._onigBinding=Pc,this._ptr=a}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(e,t,n){let r=0;if(typeof n==`number`&&(r=n),typeof e==`string`){e=new Rc(e);let n=this._findNextMatchSync(e,t,!1,r);return e.dispose(),n}return this._findNextMatchSync(e,t,!1,r)}_findNextMatchSync(e,t,n,r){let i=this._onigBinding,a=i.findNextOnigScannerMatch(this._ptr,e.id,e.ptr,e.utf8Length,e.convertUtf16OffsetToUtf8(t),r);if(a===0)return null;let o=i.HEAPU32,s=a/4,c=o[s++],l=o[s++],u=[];for(let t=0;t<l;t++){let n=e.convertUtf8OffsetToUtf16(o[s++]),r=e.convertUtf8OffsetToUtf16(o[s++]);u[t]={start:n,end:r,length:r-n}}return{index:c,captureIndices:u}}};function Bc(e){return typeof e.instantiator==`function`}function Vc(e){return typeof e.default==`function`}function Hc(e){return e.data!==void 0}function Uc(e){return typeof Response<`u`&&e instanceof Response}function Wc(e){return typeof ArrayBuffer<`u`&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<`u`&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer||typeof Uint32Array<`u`&&e instanceof Uint32Array}var Gc;function Kc(e){if(Gc)return Gc;async function t(){Pc=await Ac(async t=>{let n=e;return n=await n,typeof n==`function`&&(n=await n(t)),typeof n==`function`&&(n=await n(t)),Bc(n)?n=await n.instantiator(t):Vc(n)?n=await n.default(t):(Hc(n)&&(n=n.data),Uc(n)?n=typeof WebAssembly.instantiateStreaming==`function`?await Jc(n)(t):await Yc(n)(t):Wc(n)||n instanceof WebAssembly.Module?n=await qc(n)(t):`default`in n&&n.default instanceof WebAssembly.Module&&(n=await qc(n.default)(t))),`instance`in n&&(n=n.instance),`exports`in n&&(n=n.exports),n})}return Gc=t(),Gc}function qc(e){return t=>WebAssembly.instantiate(e,t)}function Jc(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Yc(e){return async t=>{let n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}async function Xc(e){return e&&await Kc(e),{createScanner(e){return new zc(e.map(e=>typeof e==`string`?e:e.source))},createString(e){return new Rc(e)}}}var Zc=hc({langs:wc,themes:Tc,engine:()=>Xc(J(()=>import(`./wasm-CSccDuAq.js`),[]))}),{codeToHtml:Qc,codeToHast:$c,codeToTokens:el,codeToTokensBase:tl,codeToTokensWithThemes:nl,getSingletonHighlighter:rl,getLastGrammarState:il}=_c(Zc,{guessEmbeddedLanguages:ts});function al(e){if([...e].length!==1)throw Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function ol(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}var sl=new Set([`alnum`,`alpha`,`ascii`,`blank`,`cntrl`,`digit`,`graph`,`lower`,`print`,`punct`,`space`,`upper`,`word`,`xdigit`]),cl=String.raw;function ll(e,t){if(e==null)throw Error(t??`Value expected`);return e}var ul=cl`\[\^?`,dl=`c.? | C(?:-.?)?|${cl`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${cl`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${cl`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${cl`o\{[^\}]*\}?`}|${cl`\d{1,3}`}`,fl=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,pl=new RegExp(cl`
21
+ `}));let n={type:`element`,tagName:`span`,properties:{class:`line`},children:[]},r=0;for(let a of e){let e={type:`element`,tagName:`span`,properties:{...a.htmlAttrs},children:[{type:`text`,value:a.content}]},c=cs(a.htmlStyle||ss(a));c&&(e.properties.style=c);for(let o of i)e=o?.span?.call(p,e,t+1,r,n,a)||e;s===`inline`?o.children.push(e):s===`classic`&&n.children.push(e),r+=a.content.length}if(s===`classic`){for(let e of i)n=e?.line?.call(p,n,t+1)||n;f.push(n),a.push(n)}else s===`inline`&&f.push(n)}),s===`classic`){for(let e of i)d=e?.code?.call(p,d)||d;u.children.push(d);for(let e of i)u=e?.pre?.call(p,u)||u;o.children.push(u)}else if(s===`inline`){let e=[],t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]};for(let n of o.children)n.type===`element`&&n.tagName===`br`?(e.push(t),t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]}):(n.type===`element`||n.type===`text`)&&t.children.push(n);e.push(t);let n={type:`element`,tagName:`code`,properties:{},children:e};for(let e of i)n=e?.code?.call(p,n)||n;o.children=[];for(let e=0;e<n.children.length;e++){e>0&&o.children.push({type:`element`,tagName:`br`,properties:{},children:[]});let t=n.children[e];t.type===`element`&&o.children.push(...t.children)}}let m=o;for(let e of i)m=e?.root?.call(p,m)||m;return r&&us(m,r),m}function qs(e){return e.map(e=>{let t=[],n=``,r;return e.forEach((i,a)=>{let o=!(i.fontStyle&&(i.fontStyle&yr.Underline||i.fontStyle&yr.Strikethrough));o&&i.content.match(/^\s+$/)&&e[a+1]?(r===void 0&&(r=i.offset),n+=i.content):n?(o?t.push({...i,offset:r,content:n+i.content}):t.push({content:n,offset:r},i),r=void 0,n=``):t.push(i)}),t})}function Js(e){return e.map(e=>e.flatMap(e=>{if(e.content.match(/^\s+$/))return e;let t=e.content.match(/^(\s*)(.*?)(\s*)$/);if(!t)return e;let[,n,r,i]=t;if(!n&&!i)return e;let a=[{...e,offset:e.offset+n.length,content:r}];return n&&a.unshift({content:n,offset:e.offset}),i&&a.push({content:i,offset:e.offset+n.length+r.length}),a}))}function Ys(e){return e.map(e=>{let t=[];for(let n of e){if(t.length===0){t.push({...n});continue}let e=t[t.length-1],r=cs(e.htmlStyle||ss(e)),i=cs(n.htmlStyle||ss(n)),a=e.fontStyle&&(e.fontStyle&yr.Underline||e.fontStyle&yr.Strikethrough),o=n.fontStyle&&(n.fontStyle&yr.Underline||n.fontStyle&yr.Strikethrough);!a&&!o&&r===i?e.content+=n.content:t.push({...n})}return t})}var Xs=Vo;function Zs(e,t,n){let r={meta:{},options:n,codeToHast:(t,n)=>Gs(e,t,n),codeToTokens:(t,n)=>Us(e,t,n)},i=Xs(Gs(e,t,n,r));for(let e of ys(n))i=e.postprocess?.call(r,i,n)||i;return i}var Qs={light:`#333333`,dark:`#bbbbbb`},$s={light:`#fffffe`,dark:`#1e1e1e`},ec=`__shiki_resolved`;function tc(e){if(e?.[ec])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||=`dark`,t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){let e=t.settings?t.settings.find(e=>!e.name&&!e.scope):void 0;e?.settings?.foreground&&(r=e.settings.foreground),e?.settings?.background&&(n=e.settings.background),!r&&t?.colors?.[`editor.foreground`]&&(r=t.colors[`editor.foreground`]),!n&&t?.colors?.[`editor.background`]&&(n=t.colors[`editor.background`]),r||=t.type===`light`?Qs.light:Qs.dark,n||=t.type===`light`?$s.light:$s.dark,t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let i=0,a=new Map;function o(e){if(a.has(e))return a.get(e);i+=1;let n=`#${i.toString(16).padStart(8,`0`).toLowerCase()}`;return t.colorReplacements?.[`#${n}`]?o(e):(a.set(e,n),n)}t.settings=t.settings.map(e=>{let n=e.settings?.foreground&&!e.settings.foreground.startsWith(`#`),r=e.settings?.background&&!e.settings.background.startsWith(`#`);if(!n&&!r)return e;let i={...e,settings:{...e.settings}};if(n){let n=o(e.settings.foreground);t.colorReplacements[n]=e.settings.foreground,i.settings.foreground=n}if(r){let n=o(e.settings.background);t.colorReplacements[n]=e.settings.background,i.settings.background=n}return i});for(let e of Object.keys(t.colors||{}))if((e===`editor.foreground`||e===`editor.background`||e.startsWith(`terminal.ansi`))&&!t.colors[e]?.startsWith(`#`)){let n=o(t.colors[e]);t.colorReplacements[n]=t.colors[e],t.colors[e]=n}return Object.defineProperty(t,ec,{enumerable:!1,writable:!1,value:!0}),t}async function nc(e){return Array.from(new Set((await Promise.all(e.filter(e=>!Yo(e)).map(async e=>await qo(e).then(e=>Array.isArray(e)?e:[e])))).flat()))}async function rc(e){return(await Promise.all(e.map(async e=>Zo(e)?null:tc(await qo(e))))).filter(e=>!!e)}var ic=3,ac=!1;function oc(e,t=3){if(ic&&!(typeof ic==`number`&&t>ic)){if(ac)throw Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var sc=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function cc(e,t){if(!t)return e;if(t[e]){let n=new Set([e]);for(;t[e];){if(e=t[e],n.has(e))throw new sc(`Circular alias \`${Array.from(n).join(` -> `)} -> ${e}\``);n.add(e)}}return e}var lc=class extends Pi{constructor(e,t,n,r={}){super(e),this._resolver=e,this._themes=t,this._langs=n,this._alias=r,this._themes.map(e=>this.loadTheme(e)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(e){return typeof e==`string`?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){let t=tc(e);return t.name&&(this._resolvedThemes.set(t.name,t),this._loadedThemesCache=null),t}getLoadedThemes(){return this._loadedThemesCache||=[...this._resolvedThemes.keys()],this._loadedThemesCache}setTheme(e){let t=this._textmateThemeCache.get(e);t||(t=fr.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=cc(e,this._alias),this._resolvedGrammars.get(e)}loadLanguage(e){if(this.getGrammar(e.name))return;let t=new Set([...this._langMap.values()].filter(t=>t.embeddedLangsLazy?.includes(e.name)));this._resolver.addLanguage(e);let n={balancedBracketSelectors:e.balancedBracketSelectors||[`*`],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);let r=this.loadGrammarWithConfiguration(e.scopeName,1,n);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(t=>{this._alias[t]=e.name}),this._loadedLanguagesCache=null,t.size)for(let e of t)this._resolvedGrammars.delete(e.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(e.scopeName),this._syncRegistry?._grammars?.delete(e.scopeName),this.loadLanguage(this._langMap.get(e.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(let t of e)this.resolveEmbeddedLanguages(t);let t=Array.from(this._langGraph.entries()),n=t.filter(([e,t])=>!t);if(n.length){let e=t.filter(([e,t])=>t?(t.embeddedLanguages||t.embeddedLangs)?.some(e=>n.map(([e])=>e).includes(e)):!1).filter(e=>!n.includes(e));throw new sc(`Missing languages ${n.map(([e])=>`\`${e}\``).join(`, `)}, required by ${e.map(([e])=>`\`${e}\``).join(`, `)}`)}for(let[e,n]of t)this._resolver.addLanguage(n);for(let[e,n]of t)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])],this._loadedLanguagesCache}resolveEmbeddedLanguages(e){this._langMap.set(e.name,e),this._langGraph.set(e.name,e);let t=e.embeddedLanguages??e.embeddedLangs;if(t)for(let e of t)this._langGraph.set(e,this._langMap.get(e))}},uc=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(e,t){this._onigLib={createOnigScanner:t=>e.createScanner(t),createOnigString:t=>e.createString(t)},t.forEach(e=>this.addLanguage(e))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){let t=e.split(`.`),n=[];for(let e=1;e<=t.length;e++){let r=t.slice(0,e).join(`.`);n=[...n,...this._injections.get(r)||[]]}return n}},dc=0;function fc(e){dc+=1,e.warnings!==!1&&dc>=10&&dc%10==0&&console.warn(`[Shiki] ${dc} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new sc("`engine` option is required for synchronous mode");let n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(tc),i=new lc(new uc(e.engine,n),r,n,e.langAlias),a;function o(t){return cc(t,e.langAlias)}function s(e){g();let t=i.getGrammar(typeof e==`string`?e:e.name);if(!t)throw new sc(`Language \`${e}\` not found, you may need to load it first`);return t}function c(e){if(e===`none`)return{bg:``,fg:``,name:`none`,settings:[],type:`dark`};g();let t=i.getTheme(e);if(!t)throw new sc(`Theme \`${e}\` not found, you may need to load it first`);return t}function l(e){g();let t=c(e);return a!==e&&(i.setTheme(t),a=e),{theme:t,colorMap:i.getColorMap()}}function u(){return g(),i.getLoadedThemes()}function d(){return g(),i.getLoadedLanguages()}function f(...e){g(),i.loadLanguages(e.flat(1))}async function p(...e){return f(await nc(e))}function m(...e){g();for(let t of e.flat(1))i.loadTheme(t)}async function h(...e){return g(),m(await rc(e))}function g(){if(t)throw new sc(`Shiki instance has been disposed`)}function _(){t||(t=!0,i.dispose(),--dc)}return{setTheme:l,getTheme:c,getLanguage:s,getLoadedThemes:u,getLoadedLanguages:d,resolveLangAlias:o,loadLanguage:p,loadLanguageSync:f,loadTheme:h,loadThemeSync:m,dispose:_,[Symbol.dispose]:_}}async function pc(e){e.engine||oc("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,n,r]=await Promise.all([rc(e.themes||[]),nc(e.langs||[]),e.engine]);return fc({...e,themes:t,langs:n,engine:r})}async function mc(e){let t=await pc(e);return{getLastGrammarState:(...e)=>Ns(t,...e),codeToTokensBase:(e,n)=>Ms(t,e,n),codeToTokensWithThemes:(e,n)=>Vs(t,e,n),codeToTokens:(e,n)=>Us(t,e,n),codeToHast:(e,n)=>Gs(t,e,n),codeToHtml:(e,n)=>Zs(t,e,n),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function hc(e){let t=e.langs,n=e.themes,r=e.engine;async function i(e){function i(n){if(typeof n==`string`){if(n=e.langAlias?.[n]||n,Yo(n))return[];let r=t[n];if(!r)throw new Qn(`Language \`${n}\` is not included in this bundle. You may want to load it from external source.`);return r}return n}function a(e){if(Zo(e))return`none`;if(typeof e==`string`){let t=n[e];if(!t)throw new Qn(`Theme \`${e}\` is not included in this bundle. You may want to load it from external source.`);return t}return e}let o=(e.themes??[]).map(e=>a(e)),s=(e.langs??[]).map(e=>i(e)),c=await mc({engine:e.engine??r(),...e,themes:o,langs:s});return{...c,loadLanguage(...e){return c.loadLanguage(...e.map(i))},loadTheme(...e){return c.loadTheme(...e.map(a))},getBundledLanguages(){return t},getBundledThemes(){return n}}}return i}function gc(e){let t;async function n(n={}){if(t){let e=await t;return await Promise.all([e.loadTheme(...n.themes||[]),e.loadLanguage(...n.langs||[])]),e}else{t=e({...n,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...n.themes||[]),r.loadLanguage(...n.langs||[])]),r}}return n}function _c(e,t){let n=gc(e);async function r(e,r){let i=await n({langs:[r.lang],themes:`theme`in r?[r.theme]:Object.values(r.themes)}),a=await t?.guessEmbeddedLanguages?.(e,r.lang,i);return a&&await i.loadLanguage(...a),i}return{getSingletonHighlighter(e){return n(e)},async codeToHtml(e,t){return(await r(e,t)).codeToHtml(e,t)},async codeToHast(e,t){return(await r(e,t)).codeToHast(e,t)},async codeToTokens(e,t){return(await r(e,t)).codeToTokens(e,t)},async codeToTokensBase(e,t){return(await r(e,t)).codeToTokensBase(e,t)},async codeToTokensWithThemes(e,t){return(await r(e,t)).codeToTokensWithThemes(e,t)},async getLastGrammarState(e,t){return(await n({langs:[t.lang],themes:[t.theme]})).getLastGrammarState(e,t)}}}var vc=`modulepreload`,yc=function(e){return`/`+e},bc={},J=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=yc(t,n),t in bc)return;bc[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:vc,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},xc=[{id:`abap`,name:`ABAP`,import:(()=>J(()=>import(`./abap-cWYhO34H.js`),[]))},{id:`actionscript-3`,name:`ActionScript`,import:(()=>J(()=>import(`./actionscript-3-B80ndJsD.js`),[]))},{id:`ada`,name:`Ada`,import:(()=>J(()=>import(`./ada-C0C0SoYB.js`),[]))},{id:`angular-html`,name:`Angular HTML`,import:(()=>J(()=>import(`./angular-html-CV0Ak818.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3])))},{id:`angular-ts`,name:`Angular TypeScript`,import:(()=>J(()=>import(`./angular-ts-2e8zQ7to.js`),__vite__mapDeps([4,0,1,2,3,5])))},{id:`apache`,name:`Apache Conf`,import:(()=>J(()=>import(`./apache-DBwBm4bB.js`),[]))},{id:`apex`,name:`Apex`,import:(()=>J(()=>import(`./apex-FcV7UxQi.js`),[]))},{id:`apl`,name:`APL`,import:(()=>J(()=>import(`./apl-ByVy2dfo.js`),__vite__mapDeps([6,2,1,3,7,8,9])))},{id:`applescript`,name:`AppleScript`,import:(()=>J(()=>import(`./applescript-hQs8VNpS.js`),[]))},{id:`ara`,name:`Ara`,import:(()=>J(()=>import(`./ara-BOadBOZg.js`),[]))},{id:`asciidoc`,name:`AsciiDoc`,aliases:[`adoc`],import:(()=>J(()=>import(`./asciidoc-BsfqiBck.js`),[]))},{id:`asm`,name:`Assembly`,import:(()=>J(()=>import(`./asm-C2vUqzqz.js`),[]))},{id:`astro`,name:`Astro`,import:(()=>J(()=>import(`./astro-CE7ySGnq.js`),__vite__mapDeps([10,2,3,7,11,12,13])))},{id:`awk`,name:`AWK`,import:(()=>J(()=>import(`./awk-D4e-eeZT.js`),[]))},{id:`ballerina`,name:`Ballerina`,import:(()=>J(()=>import(`./ballerina-BzvFqbha.js`),[]))},{id:`bat`,name:`Batch File`,aliases:[`batch`],import:(()=>J(()=>import(`./bat-CFyw2ERn.js`),[]))},{id:`beancount`,name:`Beancount`,import:(()=>J(()=>import(`./beancount-a6Gsu5WX.js`),[]))},{id:`berry`,name:`Berry`,aliases:[`be`],import:(()=>J(()=>import(`./berry-C2jyz4Ah.js`),[]))},{id:`bibtex`,name:`BibTeX`,import:(()=>J(()=>import(`./bibtex-Dyet-B83.js`),[]))},{id:`bicep`,name:`Bicep`,import:(()=>J(()=>import(`./bicep-CghvUIvy.js`),[]))},{id:`bird2`,name:`BIRD2 Configuration`,aliases:[`bird`],import:(()=>J(()=>import(`./bird2-nHigvs-R.js`),[]))},{id:`blade`,name:`Blade`,import:(()=>J(()=>import(`./blade-PJJaH6RK.js`),__vite__mapDeps([14,2,15,1,3,7,16,8,9])))},{id:`bsl`,name:`1C (Enterprise)`,aliases:[`1c`],import:(()=>J(()=>import(`./bsl-BrHd4RA2.js`),__vite__mapDeps([17,18])))},{id:`c`,name:`C`,import:(()=>J(()=>import(`./c-BhDzEkUq.js`).then(e=>e.n),[]))},{id:`c3`,name:`C3`,import:(()=>J(()=>import(`./c3-9ZrcmAmr.js`),[]))},{id:`cadence`,name:`Cadence`,aliases:[`cdc`],import:(()=>J(()=>import(`./cadence-BPDgYNWy.js`),[]))},{id:`cairo`,name:`Cairo`,import:(()=>J(()=>import(`./cairo-BDZ6TRZS.js`),__vite__mapDeps([19,20])))},{id:`clarity`,name:`Clarity`,import:(()=>J(()=>import(`./clarity-Cmao5KSK.js`),[]))},{id:`clojure`,name:`Clojure`,aliases:[`clj`],import:(()=>J(()=>import(`./clojure-D2dPuTkk.js`),[]))},{id:`cmake`,name:`CMake`,import:(()=>J(()=>import(`./cmake-DaqQuj4A.js`),[]))},{id:`cobol`,name:`COBOL`,import:(()=>J(()=>import(`./cobol-D5uvQocP.js`),__vite__mapDeps([21,1,2,3,9])))},{id:`codeowners`,name:`CODEOWNERS`,import:(()=>J(()=>import(`./codeowners-B748jmvc.js`),[]))},{id:`codeql`,name:`CodeQL`,aliases:[`ql`],import:(()=>J(()=>import(`./codeql-CXb_8gHR.js`),[]))},{id:`coffee`,name:`CoffeeScript`,aliases:[`coffeescript`],import:(()=>J(()=>import(`./coffee-DoE1_DMC.js`),__vite__mapDeps([22,3])))},{id:`common-lisp`,name:`Common Lisp`,aliases:[`lisp`],import:(()=>J(()=>import(`./common-lisp-UZn9nc_5.js`),[]))},{id:`coq`,name:`Coq`,import:(()=>J(()=>import(`./coq-DtO6yBIf.js`),[]))},{id:`cpp`,name:`C++`,aliases:[`c++`],import:(()=>J(()=>import(`./cpp-CxMs3g8q.js`).then(e=>e.n),__vite__mapDeps([23,24,25,26,16])))},{id:`crystal`,name:`Crystal`,import:(()=>J(()=>import(`./crystal-Ck_Sab8H.js`),__vite__mapDeps([27,25,2,1,3,28,16])))},{id:`csharp`,name:`C#`,aliases:[`c#`,`cs`],import:(()=>J(()=>import(`./csharp-C3YlYcLV.js`),[]))},{id:`css`,name:`CSS`,import:(()=>J(()=>import(`./css-Bx3zqeyw.js`).then(e=>e.n),[]))},{id:`csv`,name:`CSV`,import:(()=>J(()=>import(`./csv-BBwiVr0X.js`),[]))},{id:`cue`,name:`CUE`,import:(()=>J(()=>import(`./cue-ScBFXY5f.js`),[]))},{id:`cypher`,name:`Cypher`,aliases:[`cql`],import:(()=>J(()=>import(`./cypher-CGStaC1X.js`),[]))},{id:`d`,name:`D`,import:(()=>J(()=>import(`./d-CuTCIvnX.js`),[]))},{id:`dart`,name:`Dart`,import:(()=>J(()=>import(`./dart-CqEodbm2.js`),[]))},{id:`dax`,name:`DAX`,import:(()=>J(()=>import(`./dax-UdE5S0Dh.js`),[]))},{id:`desktop`,name:`Desktop`,import:(()=>J(()=>import(`./desktop-DfmsfHJA.js`),[]))},{id:`diff`,name:`Diff`,import:(()=>J(()=>import(`./diff-CW0RWGd9.js`),[]))},{id:`docker`,name:`Dockerfile`,aliases:[`dockerfile`],import:(()=>J(()=>import(`./docker-B1qtW4ha.js`),[]))},{id:`dotenv`,name:`dotEnv`,import:(()=>J(()=>import(`./dotenv-BUzOh1k8.js`),[]))},{id:`dream-maker`,name:`Dream Maker`,import:(()=>J(()=>import(`./dream-maker-CBvk18nW.js`),[]))},{id:`edge`,name:`Edge`,import:(()=>J(()=>import(`./edge-D7XVJcl7.js`),__vite__mapDeps([29,15,1,2,3,13])))},{id:`elixir`,name:`Elixir`,import:(()=>J(()=>import(`./elixir-DLQjwJ9Q.js`),__vite__mapDeps([30,1,2,3])))},{id:`elm`,name:`Elm`,import:(()=>J(()=>import(`./elm-CP5Ox5XO.js`),__vite__mapDeps([31,24,25])))},{id:`emacs-lisp`,name:`Emacs Lisp`,aliases:[`elisp`],import:(()=>J(()=>import(`./emacs-lisp-DvSgLhDc.js`),[]))},{id:`erb`,name:`ERB`,import:(()=>J(()=>import(`./erb-C97aW-va.js`),__vite__mapDeps([32,1,2,3,33,25,23,24,26,16,34,35,12,13,36,37,28,8,9,38])))},{id:`erlang`,name:`Erlang`,aliases:[`erl`],import:(()=>J(()=>import(`./erlang-cuhwpmsu.js`),__vite__mapDeps([39,40])))},{id:`fennel`,name:`Fennel`,import:(()=>J(()=>import(`./fennel-C-1kWlGf.js`),[]))},{id:`fish`,name:`Fish`,import:(()=>J(()=>import(`./fish-CCpdtwqS.js`),[]))},{id:`fluent`,name:`Fluent`,aliases:[`ftl`],import:(()=>J(()=>import(`./fluent-BLg032oD.js`),[]))},{id:`fortran-fixed-form`,name:`Fortran (Fixed Form)`,aliases:[`f`,`for`,`f77`],import:(()=>J(()=>import(`./fortran-fixed-form-DWr0EnJn.js`),__vite__mapDeps([41,42])))},{id:`fortran-free-form`,name:`Fortran (Free Form)`,aliases:[`f90`,`f95`,`f03`,`f08`,`f18`],import:(()=>J(()=>import(`./fortran-free-form-Br4jRtSc.js`),[]))},{id:`fsharp`,name:`F#`,aliases:[`f#`,`fs`],import:(()=>J(()=>import(`./fsharp-CQ5iYSPA.js`),__vite__mapDeps([43,40])))},{id:`gdresource`,name:`GDResource`,aliases:[`tscn`,`tres`],import:(()=>J(()=>import(`./gdresource-CN-lsNu5.js`),__vite__mapDeps([44,45,46])))},{id:`gdscript`,name:`GDScript`,aliases:[`gd`],import:(()=>J(()=>import(`./gdscript-hSAZM1eh.js`),[]))},{id:`gdshader`,name:`GDShader`,import:(()=>J(()=>import(`./gdshader-D4XNAEs9.js`),[]))},{id:`genie`,name:`Genie`,import:(()=>J(()=>import(`./genie-DmN-ICAN.js`),[]))},{id:`gherkin`,name:`Gherkin`,import:(()=>J(()=>import(`./gherkin-cuHHmRcX.js`),[]))},{id:`git-commit`,name:`Git Commit Message`,import:(()=>J(()=>import(`./git-commit-6e79eN7Q.js`),__vite__mapDeps([47,48])))},{id:`git-rebase`,name:`Git Rebase Message`,import:(()=>J(()=>import(`./git-rebase-B4iN-h71.js`),__vite__mapDeps([49,28])))},{id:`gleam`,name:`Gleam`,import:(()=>J(()=>import(`./gleam-D8VhqPDN.js`),[]))},{id:`glimmer-js`,name:`Glimmer JS`,aliases:[`gjs`],import:(()=>J(()=>import(`./glimmer-js-DVkEnHRb.js`),__vite__mapDeps([50,2,1,3,13])))},{id:`glimmer-ts`,name:`Glimmer TS`,aliases:[`gts`],import:(()=>J(()=>import(`./glimmer-ts-CyUzWW2D.js`),__vite__mapDeps([51,2,1,3,13])))},{id:`glsl`,name:`GLSL`,import:(()=>J(()=>import(`./glsl-5XFOCOCu.js`).then(e=>e.n),__vite__mapDeps([24,25])))},{id:`gn`,name:`GN`,import:(()=>J(()=>import(`./gn-BjGRlX27.js`),[]))},{id:`gnuplot`,name:`Gnuplot`,import:(()=>J(()=>import(`./gnuplot-BZCXuE4q.js`),[]))},{id:`go`,name:`Go`,import:(()=>J(()=>import(`./go-BJpWXZEs.js`),[]))},{id:`graphql`,name:`GraphQL`,aliases:[`gql`],import:(()=>J(()=>import(`./graphql-IoOZHuWD.js`).then(e=>e.n),__vite__mapDeps([34,3,35,12,13])))},{id:`groovy`,name:`Groovy`,import:(()=>J(()=>import(`./groovy-D9w3Dn-z.js`),[]))},{id:`hack`,name:`Hack`,import:(()=>J(()=>import(`./hack-BUQ8LqBu.js`),__vite__mapDeps([52,1,2,3,16])))},{id:`haml`,name:`Ruby Haml`,import:(()=>J(()=>import(`./haml-BIbv0YDp.js`).then(e=>e.n),__vite__mapDeps([36,2,3])))},{id:`handlebars`,name:`Handlebars`,aliases:[`hbs`],import:(()=>J(()=>import(`./handlebars-9QihiA8n.js`),__vite__mapDeps([53,2,1,3,38])))},{id:`haskell`,name:`Haskell`,aliases:[`hs`],import:(()=>J(()=>import(`./haskell-DqDdKEgk.js`),[]))},{id:`haxe`,name:`Haxe`,import:(()=>J(()=>import(`./haxe-DMg0jS3a.js`),[]))},{id:`hcl`,name:`HashiCorp HCL`,import:(()=>J(()=>import(`./hcl-SZIZUK_X.js`),[]))},{id:`hjson`,name:`Hjson`,import:(()=>J(()=>import(`./hjson-DF1VspiE.js`),[]))},{id:`hlsl`,name:`HLSL`,import:(()=>J(()=>import(`./hlsl-DPe9L0Dt.js`),[]))},{id:`html`,name:`HTML`,import:(()=>J(()=>import(`./html-5bjcBKb2.js`).then(e=>e.n),__vite__mapDeps([1,2,3])))},{id:`html-derivative`,name:`HTML (Derivative)`,import:(()=>J(()=>import(`./html-derivative-DFAt3hvS.js`),__vite__mapDeps([15,1,2,3])))},{id:`http`,name:`HTTP`,import:(()=>J(()=>import(`./http-4_xHs8PR.js`),__vite__mapDeps([54,34,3,35,12,13,7,28,8,9])))},{id:`hurl`,name:`Hurl`,import:(()=>J(()=>import(`./hurl-B-wi-Gx2.js`),__vite__mapDeps([55,56,34,3,35,12,13,8,9])))},{id:`hxml`,name:`HXML`,import:(()=>J(()=>import(`./hxml-nwJci6H5.js`),__vite__mapDeps([57,58])))},{id:`hy`,name:`Hy`,import:(()=>J(()=>import(`./hy-B0f-B1mH.js`),[]))},{id:`imba`,name:`Imba`,import:(()=>J(()=>import(`./imba-Bq3j1cW5.js`),[]))},{id:`ini`,name:`INI`,aliases:[`properties`],import:(()=>J(()=>import(`./ini-BayloP2U.js`),[]))},{id:`java`,name:`Java`,import:(()=>J(()=>import(`./java-D9isH882.js`).then(e=>e.n),[]))},{id:`javascript`,name:`JavaScript`,aliases:[`js`,`cjs`,`mjs`],import:(()=>J(()=>import(`./javascript-Dj8e4yT5.js`).then(e=>e.n),[]))},{id:`jinja`,name:`Jinja`,import:(()=>J(()=>import(`./jinja-Bkare_Hv.js`),__vite__mapDeps([59,1,2,3])))},{id:`jison`,name:`Jison`,import:(()=>J(()=>import(`./jison-DDIUNnOW.js`),__vite__mapDeps([60,3])))},{id:`json`,name:`JSON`,import:(()=>J(()=>import(`./json-Bi84FPdJ.js`).then(e=>e.n),[]))},{id:`json5`,name:`JSON5`,import:(()=>J(()=>import(`./json5-CRSfdIrY.js`),[]))},{id:`jsonc`,name:`JSON with Comments`,import:(()=>J(()=>import(`./jsonc-y4g9DQPx.js`),[]))},{id:`jsonl`,name:`JSON Lines`,import:(()=>J(()=>import(`./jsonl-D2paVn9r.js`),[]))},{id:`jsonnet`,name:`Jsonnet`,import:(()=>J(()=>import(`./jsonnet-CLH27mtz.js`),[]))},{id:`jssm`,name:`JSSM`,aliases:[`fsl`],import:(()=>J(()=>import(`./jssm-CPPYaqX-.js`),[]))},{id:`jsx`,name:`JSX`,import:(()=>J(()=>import(`./jsx-DI-NKxp6.js`).then(e=>e.n),[]))},{id:`julia`,name:`Julia`,aliases:[`jl`],import:(()=>J(()=>import(`./julia-Yhlqb4JO.js`),__vite__mapDeps([61,23,24,25,26,16,3,20,62])))},{id:`just`,name:`Just`,import:(()=>J(()=>import(`./just-B8KISqsZ.js`),__vite__mapDeps([63,3,64,2,1,16,8,9,20,33,25,23,24,26,34,35,12,13,36,37,28,38])))},{id:`kdl`,name:`KDL`,import:(()=>J(()=>import(`./kdl-D1BQjjnw.js`),[]))},{id:`kotlin`,name:`Kotlin`,aliases:[`kt`,`kts`],import:(()=>J(()=>import(`./kotlin-ndCaDnf0.js`),[]))},{id:`kusto`,name:`Kusto`,aliases:[`kql`],import:(()=>J(()=>import(`./kusto-D-4nbkD3.js`),[]))},{id:`latex`,name:`LaTeX`,import:(()=>J(()=>import(`./latex-CkYf4HIK.js`),__vite__mapDeps([65,66,62])))},{id:`lean`,name:`Lean 4`,aliases:[`lean4`],import:(()=>J(()=>import(`./lean-YmtAsB0p.js`),[]))},{id:`less`,name:`Less`,import:(()=>J(()=>import(`./less-DyHub3ow.js`),[]))},{id:`liquid`,name:`Liquid`,import:(()=>J(()=>import(`./liquid-y_Utf1BC.js`),__vite__mapDeps([67,2,1,3,7])))},{id:`llvm`,name:`LLVM IR`,import:(()=>J(()=>import(`./llvm-DCcqrY0D.js`),[]))},{id:`log`,name:`Log file`,import:(()=>J(()=>import(`./log-DWAAMNbe.js`),[]))},{id:`logo`,name:`Logo`,import:(()=>J(()=>import(`./logo-ClQMGkNL.js`),[]))},{id:`lua`,name:`Lua`,import:(()=>J(()=>import(`./lua-C4gbVDKd.js`).then(e=>e.n),__vite__mapDeps([37,25])))},{id:`luau`,name:`Luau`,import:(()=>J(()=>import(`./luau-CmcXFvLt.js`),[]))},{id:`make`,name:`Makefile`,aliases:[`makefile`],import:(()=>J(()=>import(`./make-DcfJyUzm.js`),[]))},{id:`markdown`,name:`Markdown`,aliases:[`md`],import:(()=>J(()=>import(`./markdown-DXxotAxn.js`),[]))},{id:`marko`,name:`Marko`,import:(()=>J(()=>import(`./marko-BlcQZIyX.js`),__vite__mapDeps([68,2,69,5,13])))},{id:`matlab`,name:`MATLAB`,import:(()=>J(()=>import(`./matlab-BlfbTznR.js`),[]))},{id:`mdc`,name:`MDC`,import:(()=>J(()=>import(`./mdc-C6KkSPM_.js`),__vite__mapDeps([70,15,1,2,3,40,38])))},{id:`mdx`,name:`MDX`,import:(()=>J(()=>import(`./mdx-H8fyPQd8.js`),[]))},{id:`mermaid`,name:`Mermaid`,aliases:[`mmd`],import:(()=>J(()=>import(`./mermaid-CWAV2dmV.js`),[]))},{id:`mipsasm`,name:`MIPS Assembly`,aliases:[`mips`],import:(()=>J(()=>import(`./mipsasm-BWYFAm2s.js`),[]))},{id:`mojo`,name:`Mojo`,import:(()=>J(()=>import(`./mojo-DZcPJEIN.js`),[]))},{id:`moonbit`,name:`MoonBit`,aliases:[`mbt`,`mbti`],import:(()=>J(()=>import(`./moonbit-6eslNlJL.js`),[]))},{id:`move`,name:`Move`,import:(()=>J(()=>import(`./move-DxFc9-QU.js`),[]))},{id:`narrat`,name:`Narrat Language`,aliases:[`nar`],import:(()=>J(()=>import(`./narrat-gv38dJOT.js`),[]))},{id:`nextflow`,name:`Nextflow`,aliases:[`nf`],import:(()=>J(()=>import(`./nextflow-DSfydIxt.js`),__vite__mapDeps([71,72])))},{id:`nextflow-groovy`,name:`nextflow-groovy`,import:(()=>J(()=>import(`./nextflow-groovy-DV4H3hok.js`),[]))},{id:`nginx`,name:`Nginx`,import:(()=>J(()=>import(`./nginx-BGbv5z-H.js`),__vite__mapDeps([73,37,25])))},{id:`nim`,name:`Nim`,import:(()=>J(()=>import(`./nim-BtqaozVV.js`),__vite__mapDeps([74,25,2,24,1,3,40,8,9])))},{id:`nix`,name:`Nix`,import:(()=>J(()=>import(`./nix-NlOz3HGM.js`),[]))},{id:`nushell`,name:`nushell`,aliases:[`nu`],import:(()=>J(()=>import(`./nushell-D86Z8aFF.js`),[]))},{id:`objective-c`,name:`Objective-C`,aliases:[`objc`],import:(()=>J(()=>import(`./objective-c-iuJvUjCv.js`),[]))},{id:`objective-cpp`,name:`Objective-C++`,import:(()=>J(()=>import(`./objective-cpp-C62JvfMT.js`),[]))},{id:`ocaml`,name:`OCaml`,import:(()=>J(()=>import(`./ocaml-Rbryo9lg.js`),[]))},{id:`odin`,name:`Odin`,import:(()=>J(()=>import(`./odin-CfaOVNP_.js`),[]))},{id:`openscad`,name:`OpenSCAD`,aliases:[`scad`],import:(()=>J(()=>import(`./openscad-DCRhgheK.js`),[]))},{id:`pascal`,name:`Pascal`,import:(()=>J(()=>import(`./pascal-CTesTHtV.js`),[]))},{id:`perl`,name:`Perl`,import:(()=>J(()=>import(`./perl-BaPVFzDG.js`),__vite__mapDeps([64,2,1,3,16,8,9])))},{id:`php`,name:`PHP`,import:(()=>J(()=>import(`./php-CUSmmFXP.js`),__vite__mapDeps([75,2,1,3,7,16,8,9])))},{id:`pkl`,name:`Pkl`,import:(()=>J(()=>import(`./pkl-BjUMjQkt.js`),[]))},{id:`plsql`,name:`PL/SQL`,import:(()=>J(()=>import(`./plsql-BgKEZSSo.js`),[]))},{id:`po`,name:`Gettext PO`,aliases:[`pot`,`potx`],import:(()=>J(()=>import(`./po-C5s_CVt8.js`),[]))},{id:`polar`,name:`Polar`,import:(()=>J(()=>import(`./polar-y4hX8qM0.js`),[]))},{id:`postcss`,name:`PostCSS`,import:(()=>J(()=>import(`./postcss-BHCm7Qae.js`),[]))},{id:`powerquery`,name:`PowerQuery`,import:(()=>J(()=>import(`./powerquery-C2vMt8aZ.js`),[]))},{id:`powershell`,name:`PowerShell`,aliases:[`ps`,`ps1`],import:(()=>J(()=>import(`./powershell-DEcjmg1c.js`),[]))},{id:`prisma`,name:`Prisma`,import:(()=>J(()=>import(`./prisma-Ba-Tcxy5.js`),[]))},{id:`prolog`,name:`Prolog`,import:(()=>J(()=>import(`./prolog-B4o261Jv.js`),[]))},{id:`proto`,name:`Protocol Buffer 3`,aliases:[`protobuf`],import:(()=>J(()=>import(`./proto-o3IZKiMR.js`),[]))},{id:`pug`,name:`Pug`,aliases:[`jade`],import:(()=>J(()=>import(`./pug-ComryLhI.js`),__vite__mapDeps([76,2,1,3])))},{id:`puppet`,name:`Puppet`,import:(()=>J(()=>import(`./puppet-BC0dqZ31.js`),[]))},{id:`purescript`,name:`PureScript`,import:(()=>J(()=>import(`./purescript-CLDw1y5G.js`),[]))},{id:`python`,name:`Python`,aliases:[`py`],import:(()=>J(()=>import(`./python-D1NFioGW.js`),[]))},{id:`qml`,name:`QML`,import:(()=>J(()=>import(`./qml-D4-pUDzN.js`),__vite__mapDeps([77,3])))},{id:`qmldir`,name:`QML Directory`,import:(()=>J(()=>import(`./qmldir-B7i9e9Vn.js`),[]))},{id:`qss`,name:`Qt Style Sheets`,import:(()=>J(()=>import(`./qss-DIe6oKX8.js`),[]))},{id:`r`,name:`R`,import:(()=>J(()=>import(`./r-IEiS2KmQ.js`).then(e=>e.n),[]))},{id:`racket`,name:`Racket`,import:(()=>J(()=>import(`./racket-CAOC_yyk.js`),[]))},{id:`raku`,name:`Raku`,aliases:[`perl6`],import:(()=>J(()=>import(`./raku-Ccua3vW6.js`),[]))},{id:`razor`,name:`ASP.NET Razor`,import:(()=>J(()=>import(`./razor-A3NOQ-6o.js`),__vite__mapDeps([78,79,1,2,3])))},{id:`reg`,name:`Windows Registry Script`,import:(()=>J(()=>import(`./reg-CAYZT9kE.js`),[]))},{id:`regexp`,name:`RegExp`,aliases:[`regex`],import:(()=>J(()=>import(`./regexp-Dnh3EraB.js`).then(e=>e.n),[]))},{id:`rel`,name:`Rel`,import:(()=>J(()=>import(`./rel-cvB6F5nO.js`),[]))},{id:`riscv`,name:`RISC-V`,import:(()=>J(()=>import(`./riscv-SYGtE4EN.js`),[]))},{id:`ron`,name:`RON`,import:(()=>J(()=>import(`./ron-CRt869SB.js`),[]))},{id:`rosmsg`,name:`ROS Interface`,import:(()=>J(()=>import(`./rosmsg-BwrfJ66Z.js`),[]))},{id:`rst`,name:`reStructuredText`,import:(()=>J(()=>import(`./rst-DDcT8Cwj.js`),__vite__mapDeps([80,81,23,24,25,26,16,15,1,2,3,20,33,34,35,12,13,36,37,28,8,9,38])))},{id:`ruby`,name:`Ruby`,aliases:[`rb`],import:(()=>J(()=>import(`./ruby-BqnC7im3.js`),__vite__mapDeps([33,25,23,24,26,16,2,34,3,35,12,13,36,1,37,28,8,9,38])))},{id:`rust`,name:`Rust`,aliases:[`rs`],import:(()=>J(()=>import(`./rust-DCKTTPxN.js`),[]))},{id:`sas`,name:`SAS`,import:(()=>J(()=>import(`./sas-BsVPIslL.js`),__vite__mapDeps([82,16])))},{id:`sass`,name:`Sass`,import:(()=>J(()=>import(`./sass-CorcwySt.js`),[]))},{id:`scala`,name:`Scala`,import:(()=>J(()=>import(`./scala-DlI-OmYj.js`),[]))},{id:`scheme`,name:`Scheme`,import:(()=>J(()=>import(`./scheme-CcNEGkZH.js`),[]))},{id:`scss`,name:`SCSS`,import:(()=>J(()=>import(`./scss-Cs-F21hy.js`).then(e=>e.n),__vite__mapDeps([5,2])))},{id:`sdbl`,name:`1C (Query)`,aliases:[`1c-query`],import:(()=>J(()=>import(`./sdbl-AL_m-RO_.js`),[]))},{id:`shaderlab`,name:`ShaderLab`,aliases:[`shader`],import:(()=>J(()=>import(`./shaderlab-CbbQwRPF.js`),__vite__mapDeps([83,84])))},{id:`shellscript`,name:`Shell`,aliases:[`bash`,`sh`,`shell`,`zsh`],import:(()=>J(()=>import(`./shellscript-CuqRpwp7.js`).then(e=>e.n),[]))},{id:`shellsession`,name:`Shell Session`,aliases:[`console`],import:(()=>J(()=>import(`./shellsession-BT4CTJst.js`),__vite__mapDeps([85,28])))},{id:`smalltalk`,name:`Smalltalk`,import:(()=>J(()=>import(`./smalltalk-Y2ogrfbk.js`),[]))},{id:`solidity`,name:`Solidity`,import:(()=>J(()=>import(`./solidity-Bfbm9QZQ.js`),[]))},{id:`soy`,name:`Closure Templates`,aliases:[`closure-templates`],import:(()=>J(()=>import(`./soy-Njc_erP7.js`),__vite__mapDeps([86,1,2,3])))},{id:`sparql`,name:`SPARQL`,import:(()=>J(()=>import(`./sparql-DEoxFJ5d.js`),__vite__mapDeps([87,88])))},{id:`splunk`,name:`Splunk Query Language`,aliases:[`spl`],import:(()=>J(()=>import(`./splunk-6DJA2XFa.js`),[]))},{id:`sql`,name:`SQL`,import:(()=>J(()=>import(`./sql-C0M8bIzv.js`).then(e=>e.n),[]))},{id:`ssh-config`,name:`SSH Config`,import:(()=>J(()=>import(`./ssh-config-CbQtdF-u.js`),[]))},{id:`stata`,name:`Stata`,import:(()=>J(()=>import(`./stata-DQWLgfGE.js`),__vite__mapDeps([89,16])))},{id:`stylus`,name:`Stylus`,aliases:[`styl`],import:(()=>J(()=>import(`./stylus-B_iq45Sj.js`),[]))},{id:`surrealql`,name:`SurrealQL`,aliases:[`surql`],import:(()=>J(()=>import(`./surrealql-CxnsjSMN.js`),__vite__mapDeps([90,3])))},{id:`svelte`,name:`Svelte`,import:(()=>J(()=>import(`./svelte-YiRJWdT-.js`),__vite__mapDeps([91,2,3,11,13])))},{id:`swift`,name:`Swift`,import:(()=>J(()=>import(`./swift-C7KIgN-p.js`),[]))},{id:`system-verilog`,name:`SystemVerilog`,import:(()=>J(()=>import(`./system-verilog-C3G9wERd.js`),[]))},{id:`systemd`,name:`Systemd Units`,import:(()=>J(()=>import(`./systemd-CwxGrojj.js`),[]))},{id:`talonscript`,name:`TalonScript`,aliases:[`talon`],import:(()=>J(()=>import(`./talonscript-DqnSo1EO.js`),[]))},{id:`tasl`,name:`Tasl`,import:(()=>J(()=>import(`./tasl-T8ethp86.js`),[]))},{id:`tcl`,name:`Tcl`,import:(()=>J(()=>import(`./tcl-Ccl366o0.js`),[]))},{id:`templ`,name:`Templ`,import:(()=>J(()=>import(`./templ-DVHepm0I.js`),__vite__mapDeps([92,2,93,3])))},{id:`terraform`,name:`Terraform`,aliases:[`tf`,`tfvars`],import:(()=>J(()=>import(`./terraform-BBf6ZI_0.js`),[]))},{id:`tex`,name:`TeX`,import:(()=>J(()=>import(`./tex-CbaeWbjN.js`),__vite__mapDeps([66,62])))},{id:`toml`,name:`TOML`,import:(()=>J(()=>import(`./toml-C5Z_BR4r.js`),[]))},{id:`ts-tags`,name:`TypeScript with Tags`,aliases:[`lit`],import:(()=>J(()=>import(`./ts-tags-KadJLbnQ.js`),__vite__mapDeps([94,2,24,25,1,3,16,13,8,9])))},{id:`tsv`,name:`TSV`,import:(()=>J(()=>import(`./tsv-rX8sUJs7.js`),[]))},{id:`tsx`,name:`TSX`,import:(()=>J(()=>import(`./tsx-DgmkmSe3.js`).then(e=>e.n),[]))},{id:`turtle`,name:`Turtle`,import:(()=>J(()=>import(`./turtle-BM-MG8WY.js`),[]))},{id:`twig`,name:`Twig`,import:(()=>J(()=>import(`./twig-BG7aoIMU.js`),__vite__mapDeps([95,2,3,75,1,7,16,8,9,20,33,25,23,24,26,34,35,12,13,36,37,28,38,5])))},{id:`typescript`,name:`TypeScript`,aliases:[`ts`,`cts`,`mts`],import:(()=>J(()=>import(`./typescript-C_w_yccd.js`).then(e=>e.n),[]))},{id:`typespec`,name:`TypeSpec`,aliases:[`tsp`],import:(()=>J(()=>import(`./typespec-C5gKydvR.js`),[]))},{id:`typst`,name:`Typst`,aliases:[`typ`],import:(()=>J(()=>import(`./typst--_5VchrY.js`),[]))},{id:`v`,name:`V`,import:(()=>J(()=>import(`./v-C6PwpmTC.js`),[]))},{id:`vala`,name:`Vala`,import:(()=>J(()=>import(`./vala-4pTaceSj.js`),[]))},{id:`vb`,name:`Visual Basic`,aliases:[`cmd`],import:(()=>J(()=>import(`./vb-DhoR5A6S.js`),[]))},{id:`verilog`,name:`Verilog`,import:(()=>J(()=>import(`./verilog-B9f_1lPn.js`),[]))},{id:`vhdl`,name:`VHDL`,import:(()=>J(()=>import(`./vhdl-Cy4RAmOe.js`),[]))},{id:`viml`,name:`Vim Script`,aliases:[`vim`,`vimscript`],import:(()=>J(()=>import(`./viml-CFQW-CcD.js`),[]))},{id:`vue`,name:`Vue`,import:(()=>J(()=>import(`./vue-DXnUyZR0.js`),__vite__mapDeps([96,2,15,1,3,7,13])))},{id:`vue-html`,name:`Vue HTML`,import:(()=>J(()=>import(`./vue-html-CetUfade.js`),__vite__mapDeps([97,3])))},{id:`vue-vine`,name:`Vue Vine`,import:(()=>J(()=>import(`./vue-vine-CSW5RjCH.js`),__vite__mapDeps([98,2,3,69,11,5,99])))},{id:`vyper`,name:`Vyper`,aliases:[`vy`],import:(()=>J(()=>import(`./vyper-BW5zj9bE.js`),[]))},{id:`wasm`,name:`WebAssembly`,import:(()=>J(()=>import(`./wasm-BigxSLnm.js`),[]))},{id:`wenyan`,name:`Wenyan`,aliases:[`文言`],import:(()=>J(()=>import(`./wenyan-BZzM1SQT.js`),[]))},{id:`wgsl`,name:`WGSL`,import:(()=>J(()=>import(`./wgsl-xBPHbLlq.js`),[]))},{id:`wikitext`,name:`Wikitext`,aliases:[`mediawiki`,`wiki`],import:(()=>J(()=>import(`./wikitext-BXJWUNJK.js`),[]))},{id:`wit`,name:`WebAssembly Interface Types`,import:(()=>J(()=>import(`./wit-2GnUs67P.js`),[]))},{id:`wolfram`,name:`Wolfram`,aliases:[`wl`],import:(()=>J(()=>import(`./wolfram-DIFDmw-g.js`),[]))},{id:`xml`,name:`XML`,import:(()=>J(()=>import(`./xml-CJgpX9jH.js`).then(e=>e.n),__vite__mapDeps([8,9])))},{id:`xsl`,name:`XSL`,import:(()=>J(()=>import(`./xsl-BZk-xhGC.js`),__vite__mapDeps([100,8,9])))},{id:`yaml`,name:`YAML`,aliases:[`yml`],import:(()=>J(()=>import(`./yaml-DVxl0VLy.js`).then(e=>e.n),[]))},{id:`zenscript`,name:`ZenScript`,import:(()=>J(()=>import(`./zenscript-DQaUUjbx.js`),[]))},{id:`zig`,name:`Zig`,import:(()=>J(()=>import(`./zig-BDepRvBi.js`),[]))}],Sc=Object.fromEntries(xc.map(e=>[e.id,e.import])),Cc=Object.fromEntries(xc.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),wc={...Sc,...Cc},Tc=Object.fromEntries([{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>J(()=>import(`./andromeeda-Ch2kWS7s.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>J(()=>import(`./aurora-x-BHLqzt7j.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>J(()=>import(`./ayu-dark-DCotN_ZT.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>J(()=>import(`./ayu-light-CKB6o_im.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>J(()=>import(`./ayu-mirage-B38lW-C5.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-frappe-BY_2ofjk.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>J(()=>import(`./catppuccin-latte-D6GXPBmA.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-macchiato-BuW8_cyo.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-mocha-znex9DPe.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>J(()=>import(`./dark-plus-BvePH-r3.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>J(()=>import(`./dracula-kJQjC_Gy.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>J(()=>import(`./dracula-soft-B3XhEjCl.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>J(()=>import(`./everforest-dark-u0zLn75q.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>J(()=>import(`./everforest-light-D3syIoAR.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>J(()=>import(`./github-dark-CEBLh0--.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>J(()=>import(`./github-dark-default-Dq0Z4Xai.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>J(()=>import(`./github-dark-dimmed-D90YmS4w.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>J(()=>import(`./github-dark-high-contrast-B6BWv1iC.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>J(()=>import(`./github-light-lXSVSq5T.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>J(()=>import(`./github-light-default-DsPWmj4v.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>J(()=>import(`./github-light-high-contrast-C7aLb3kp.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-hard-_deksD0U.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-medium-CT31284j.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-soft-BZuEUCbj.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-hard-dxv4n_ZS.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-medium-BsW_fVfR.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-soft-BiGy99gD.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>J(()=>import(`./horizon-Ngud75Kn.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`dark`,import:(()=>J(()=>import(`./horizon-bright-Cnljd0XD.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>J(()=>import(`./houston-BenZxlMr.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-dragon-Bt5mhLu1.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>J(()=>import(`./kanagawa-lotus-FGA3pRJk.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-wave-DnLVZPAD.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>J(()=>import(`./laserwave-D2qAZkaG.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>J(()=>import(`./light-plus-CP13QUvm.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>J(()=>import(`./material-theme-JFoPTBSr.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>J(()=>import(`./material-theme-darker-BHaqZ19v.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>J(()=>import(`./material-theme-lighter-CGnnS2bs.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>J(()=>import(`./material-theme-ocean-Drhewjqf.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>J(()=>import(`./material-theme-palenight-DbUypmpb.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>J(()=>import(`./min-dark-BEelvXUB.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>J(()=>import(`./min-light-CTPBOACR.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>J(()=>import(`./monokai-DQlZXbkg.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>J(()=>import(`./night-owl-BLcrYhaC.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>J(()=>import(`./night-owl-light-BG-tBJOz.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>J(()=>import(`./nord-Dm2F5_QB.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>J(()=>import(`./one-dark-pro-DC9SHdX0.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>J(()=>import(`./one-light-Doo39p0H.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>J(()=>import(`./plastic-B3CcSpon.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>J(()=>import(`./poimandres-BsK70ma5.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>J(()=>import(`./red-DtDH206x.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-CjBfSJ5b.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>J(()=>import(`./rose-pine-dawn-C0xwy7iJ.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-moon-BSNy9Ty0.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>J(()=>import(`./slack-dark-rMhrfPm6.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>J(()=>import(`./slack-ochin-9w8X74hU.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>J(()=>import(`./snazzy-light-DHr9ygpP.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>J(()=>import(`./solarized-dark-UPcKev9Q.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>J(()=>import(`./solarized-light-DUsjROvl.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>J(()=>import(`./synthwave-84-lf_Wt0K_.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>J(()=>import(`./tokyo-night-BF5ata25.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>J(()=>import(`./vesper-CmBi_iCT.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>J(()=>import(`./vitesse-black-CE8RoBJP.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>J(()=>import(`./vitesse-dark-BpF142p_.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>J(()=>import(`./vitesse-light-CMwxPBrg.js`),[]))}].map(e=>[e.id,e.import])),Ec=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function Dc(){return 2147483648}function Oc(){return typeof performance<`u`?performance.now():Date.now()}var kc=(e,t)=>e+(t-e%t)%t;async function Ac(e){let t,n,r={};function i(e){n=e,r.HEAPU8=new Uint8Array(e),r.HEAPU32=new Uint32Array(e)}function a(e,t,n){r.HEAPU8.copyWithin(e,t,t+n)}function o(e){try{return t.grow(e-n.byteLength+65535>>>16),i(t.buffer),1}catch{}}function s(e){let t=r.HEAPU8.length;e>>>=0;let n=Dc();if(e>n)return!1;for(let r=1;r<=4;r*=2){let i=t*(1+.2/r);if(i=Math.min(i,e+100663296),o(Math.min(n,kc(Math.max(e,i),65536))))return!0}return!1}let c=typeof TextDecoder<`u`?new TextDecoder(`utf8`):void 0;function l(e,t,n=1024){let r=t+n,i=t;for(;e[i]&&!(i>=r);)++i;if(i-t>16&&e.buffer&&c)return c.decode(e.subarray(t,i));let a=``;for(;t<i;){let n=e[t++];if(!(n&128)){a+=String.fromCharCode(n);continue}let r=e[t++]&63;if((n&224)==192){a+=String.fromCharCode((n&31)<<6|r);continue}let i=e[t++]&63;if(n=(n&240)==224?(n&15)<<12|r<<6|i:(n&7)<<18|r<<12|i<<6|e[t++]&63,n<65536)a+=String.fromCharCode(n);else{let e=n-65536;a+=String.fromCharCode(55296|e>>10,56320|e&1023)}}return a}function u(e,t){return e?l(r.HEAPU8,e,t):``}let d={emscripten_get_now:Oc,emscripten_memcpy_big:a,emscripten_resize_heap:s,fd_write:()=>0};async function f(){let n=await e({env:d,wasi_snapshot_preview1:d});t=n.memory,i(t.buffer),Object.assign(r,n),r.UTF8ToString=u}return await f(),r}var jc=Object.defineProperty,Mc=(e,t,n)=>t in e?jc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Nc=(e,t,n)=>Mc(e,typeof t==`symbol`?t:t+``,n),Pc=null;function Fc(e){throw new Ec(e.UTF8ToString(e.getLastOnigError()))}var Ic=class e{constructor(t){Nc(this,`utf16Length`),Nc(this,`utf8Length`),Nc(this,`utf16Value`),Nc(this,`utf8Value`),Nc(this,`utf16OffsetToUtf8`),Nc(this,`utf8OffsetToUtf16`);let n=t.length,r=e._utf8ByteLength(t),i=r!==n,a=i?new Uint32Array(n+1):null;i&&(a[n]=r);let o=i?new Uint32Array(r+1):null;i&&(o[r]=n);let s=new Uint8Array(r),c=0;for(let e=0;e<n;e++){let r=t.charCodeAt(e),l=r,u=!1;if(r>=55296&&r<=56319&&e+1<n){let n=t.charCodeAt(e+1);n>=56320&&n<=57343&&(l=(r-55296<<10)+65536|n-56320,u=!0)}i&&(a[e]=c,u&&(a[e+1]=c),l<=127?o[c+0]=e:l<=2047?(o[c+0]=e,o[c+1]=e):l<=65535?(o[c+0]=e,o[c+1]=e,o[c+2]=e):(o[c+0]=e,o[c+1]=e,o[c+2]=e,o[c+3]=e)),l<=127?s[c++]=l:l<=2047?(s[c++]=192|(l&1984)>>>6,s[c++]=128|(l&63)>>>0):l<=65535?(s[c++]=224|(l&61440)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0):(s[c++]=240|(l&1835008)>>>18,s[c++]=128|(l&258048)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0),u&&e++}this.utf16Length=n,this.utf8Length=r,this.utf16Value=t,this.utf8Value=s,this.utf16OffsetToUtf8=a,this.utf8OffsetToUtf16=o}static _utf8ByteLength(e){let t=0;for(let n=0,r=e.length;n<r;n++){let i=e.charCodeAt(n),a=i,o=!1;if(i>=55296&&i<=56319&&n+1<r){let t=e.charCodeAt(n+1);t>=56320&&t<=57343&&(a=(i-55296<<10)+65536|t-56320,o=!0)}a<=127?t+=1:a<=2047?t+=2:a<=65535?t+=3:t+=4,o&&n++}return t}createString(e){let t=e.omalloc(this.utf8Length);return e.HEAPU8.set(this.utf8Value,t),t}},Lc=class e{constructor(t){if(Nc(this,`id`,++e.LAST_ID),Nc(this,`_onigBinding`),Nc(this,`content`),Nc(this,`utf16Length`),Nc(this,`utf8Length`),Nc(this,`utf16OffsetToUtf8`),Nc(this,`utf8OffsetToUtf16`),Nc(this,`ptr`),!Pc)throw new Ec(`Must invoke loadWasm first.`);this._onigBinding=Pc,this.content=t;let n=new Ic(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!e._sharedPtrInUse?(e._sharedPtr||=Pc.omalloc(1e4),e._sharedPtrInUse=!0,Pc.HEAPU8.set(n.utf8Value,e._sharedPtr),this.ptr=e._sharedPtr):this.ptr=n.createString(Pc)}convertUtf8OffsetToUtf16(e){return this.utf8OffsetToUtf16?e<0?0:e>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[e]:e}convertUtf16OffsetToUtf8(e){return this.utf16OffsetToUtf8?e<0?0:e>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[e]:e}dispose(){this.ptr===e._sharedPtr?e._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};Nc(Lc,`LAST_ID`,0),Nc(Lc,`_sharedPtr`,0),Nc(Lc,`_sharedPtrInUse`,!1);var Rc=Lc,zc=class{constructor(e){if(Nc(this,`_onigBinding`),Nc(this,`_ptr`),!Pc)throw new Ec(`Must invoke loadWasm first.`);let t=[],n=[];for(let r=0,i=e.length;r<i;r++){let i=new Ic(e[r]);t[r]=i.createString(Pc),n[r]=i.utf8Length}let r=Pc.omalloc(4*e.length);Pc.HEAPU32.set(t,r/4);let i=Pc.omalloc(4*e.length);Pc.HEAPU32.set(n,i/4);let a=Pc.createOnigScanner(r,i,e.length);for(let n=0,r=e.length;n<r;n++)Pc.ofree(t[n]);Pc.ofree(i),Pc.ofree(r),a===0&&Fc(Pc),this._onigBinding=Pc,this._ptr=a}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(e,t,n){let r=0;if(typeof n==`number`&&(r=n),typeof e==`string`){e=new Rc(e);let n=this._findNextMatchSync(e,t,!1,r);return e.dispose(),n}return this._findNextMatchSync(e,t,!1,r)}_findNextMatchSync(e,t,n,r){let i=this._onigBinding,a=i.findNextOnigScannerMatch(this._ptr,e.id,e.ptr,e.utf8Length,e.convertUtf16OffsetToUtf8(t),r);if(a===0)return null;let o=i.HEAPU32,s=a/4,c=o[s++],l=o[s++],u=[];for(let t=0;t<l;t++){let n=e.convertUtf8OffsetToUtf16(o[s++]),r=e.convertUtf8OffsetToUtf16(o[s++]);u[t]={start:n,end:r,length:r-n}}return{index:c,captureIndices:u}}};function Bc(e){return typeof e.instantiator==`function`}function Vc(e){return typeof e.default==`function`}function Hc(e){return e.data!==void 0}function Uc(e){return typeof Response<`u`&&e instanceof Response}function Wc(e){return typeof ArrayBuffer<`u`&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<`u`&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer||typeof Uint32Array<`u`&&e instanceof Uint32Array}var Gc;function Kc(e){if(Gc)return Gc;async function t(){Pc=await Ac(async t=>{let n=e;return n=await n,typeof n==`function`&&(n=await n(t)),typeof n==`function`&&(n=await n(t)),Bc(n)?n=await n.instantiator(t):Vc(n)?n=await n.default(t):(Hc(n)&&(n=n.data),Uc(n)?n=typeof WebAssembly.instantiateStreaming==`function`?await Jc(n)(t):await Yc(n)(t):Wc(n)||n instanceof WebAssembly.Module?n=await qc(n)(t):`default`in n&&n.default instanceof WebAssembly.Module&&(n=await qc(n.default)(t))),`instance`in n&&(n=n.instance),`exports`in n&&(n=n.exports),n})}return Gc=t(),Gc}function qc(e){return t=>WebAssembly.instantiate(e,t)}function Jc(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Yc(e){return async t=>{let n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}async function Xc(e){return e&&await Kc(e),{createScanner(e){return new zc(e.map(e=>typeof e==`string`?e:e.source))},createString(e){return new Rc(e)}}}var Zc=hc({langs:wc,themes:Tc,engine:()=>Xc(J(()=>import(`./wasm-CSccDuAq.js`),[]))}),{codeToHtml:Qc,codeToHast:$c,codeToTokens:el,codeToTokensBase:tl,codeToTokensWithThemes:nl,getSingletonHighlighter:rl,getLastGrammarState:il}=_c(Zc,{guessEmbeddedLanguages:ts});function al(e){if([...e].length!==1)throw Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function ol(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}var sl=new Set([`alnum`,`alpha`,`ascii`,`blank`,`cntrl`,`digit`,`graph`,`lower`,`print`,`punct`,`space`,`upper`,`word`,`xdigit`]),cl=String.raw;function ll(e,t){if(e==null)throw Error(t??`Value expected`);return e}var ul=cl`\[\^?`,dl=`c.? | C(?:-.?)?|${cl`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${cl`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${cl`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${cl`o\{[^\}]*\}?`}|${cl`\d{1,3}`}`,fl=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,pl=new RegExp(cl`
22
22
  \\ (?:
23
23
  ${dl}
24
24
  | [gk]<[^>]*>?
@@ -1879,7 +1879,7 @@ XID_Start XIDS`.split(/\s/).map(e=>[Nu(e),e])),Dd=new Map([[`s`,dd(383)],[dd(383
1879
1879
  `),r=``;r=n?`\n${e.lineContent.split(`
1880
1880
  `).map(e=>`${t} ${e}`).join(`
1881
1881
  `)}\n`:`${t} ${e.lineContent}`,c.push(` <code><![CDATA[${r}]]></code>`)}if(c.push(` <body><![CDATA[${e.body}]]></body>`),e.replies&&e.replies.length>0){c.push(` <replies>`);for(let t of e.replies){let e=new Date(t.createdAt).toISOString(),n=t.role?` role="${t.role}"`:` role="agent"`,r=t.model?` model="${t.model}"`:``;c.push(` <reply id="${t.id}" created-at="${e}"${n}${r}>`),c.push(` <![CDATA[${t.body}]]>`),c.push(` </reply>`)}c.push(` </replies>`)}c.push(` </comment>`)}c.push(` </file>`)}return c.push(`</code-review-comments>`),c.join(`
1882
- `)}var yE=[`comments`];async function bE(){return(await fetch(`/api/comments`)).json()}function xE(){let e=Ve(),{data:t=[],isLoading:n}=nt({queryKey:yE,queryFn:bE});(0,W.useEffect)(()=>fE(`comments`,()=>{e.invalidateQueries({queryKey:yE})}),[e]);let[r,i]=(0,W.useState)({round:0,waiters:0,lastSentAt:null,lastDecision:void 0,lastOpenCount:void 0});(0,W.useEffect)(()=>{let e=!1;fetch(`/api/review/status`).then(e=>e.json()).then(t=>{e||i(t)}).catch(()=>{});let t=fE(`agent-status`,e=>{try{i(JSON.parse(e))}catch{}});return()=>{e=!0,t()}},[]);let a=(0,W.useRef)(null),[o,s]=(0,W.useState)(null);(0,W.useEffect)(()=>{if(n)return;let e=a.current===null;a.current===null&&(a.current=new Set);let r=a.current,i=null;for(let n of t)for(let t of n.replies??[])r.has(t.id)||(r.add(t.id),!e&&n.status!==`resolved`&&(t.role===`agent`||t.role==null&&t.model)&&(!i||t.createdAt>i.at)&&(i={at:t.createdAt,commentId:n.id,filePath:n.filePath,model:t.model,body:t.body}));i&&s(i)},[t,n]);let c=rt({mutationFn:async e=>(await fetch(`/api/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>[...e,t])}}),l=rt({mutationFn:async e=>(await fetch(`/api/comments/${e}`,{method:`DELETE`}),e),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.filter(e=>e.id!==t))}}),u=rt({mutationFn:async({id:e,body:t,status:n})=>(await fetch(`/api/comments/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,status:n})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),d=rt({mutationFn:async({id:e,body:t})=>(await fetch(`/api/comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,role:`user`})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),f=rt({mutationFn:async({commentId:e,replyId:t})=>(await fetch(`/api/comments/${e}/replies/${t}`,{method:`DELETE`})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),p=rt({mutationFn:async({commentId:e,replyId:t,body:n})=>(await fetch(`/api/comments/${e}/replies/${t}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),m=rt({mutationFn:async({decision:e,generalComment:t,mode:n,force:r})=>{let i=await fetch(`/api/review/send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({decision:e,generalComment:t?.trim()||void 0,mode:n,force:!!r})});if(i.status===400){let e=await i.json().catch(()=>null);if(e?.error===`secrets-detected`){let t=Error(`Secrets detected`);throw t.kind=`secrets`,t.findings=e.findings??[],t}}if(!i.ok)throw Error(`Failed to send to agent`);return i.json()}}),h=rt({mutationFn:async e=>{let t=await fetch(`/api/comments/${e}/apply-suggestion`,{method:`POST`});if(!t.ok){let e=await t.json();throw Error(e.error||`Failed to apply suggestion`)}return t.json()},onSuccess:()=>{e.invalidateQueries({queryKey:yE})}}),g=(0,W.useCallback)((e,t,n,r,i,a,o)=>{c.mutate({filePath:e,side:t,lineNumber:n,startLineNumber:a,lineContent:r,body:i,severity:o&&o!==`none`?o:void 0})},[c.mutate]),_=(0,W.useCallback)(e=>{l.mutate(e)},[l.mutate]),v=(0,W.useCallback)((e,t)=>{u.mutate({id:e,body:t})},[u.mutate]),y=(0,W.useCallback)(e=>{u.mutate({id:e,status:`resolved`})},[u.mutate]),b=(0,W.useCallback)(e=>{u.mutate({id:e,status:`open`})},[u.mutate]),x=(0,W.useCallback)((e,t)=>{d.mutate({id:e,body:t})},[d.mutate]),S=(0,W.useCallback)((e,t)=>{f.mutate({commentId:e,replyId:t})},[f.mutate]),C=(0,W.useCallback)((e,t,n)=>{p.mutate({commentId:e,replyId:t,body:n})},[p.mutate]),w=(0,W.useCallback)(async e=>{await h.mutateAsync(e)},[h.mutateAsync]),T=(0,W.useCallback)(()=>vE(t),[t]),E=(0,W.useCallback)(e=>t.filter(t=>t.filePath===e).map(e=>({side:e.side,lineNumber:e.lineNumber,metadata:e})),[t]),D=(0,W.useCallback)(async()=>{let e=T();await navigator.clipboard.writeText(e)},[T]),O=(0,W.useCallback)(async()=>{let{formatCommentsMarkdown:e}=await J(async()=>{let{formatCommentsMarkdown:e}=await import(`./review-export-pcqDKNqx.js`);return{formatCommentsMarkdown:e}},[]),n=e(t);n&&await navigator.clipboard.writeText(n)},[t]),k=(0,W.useCallback)((e,t,n,r)=>m.mutateAsync({decision:e,generalComment:t,mode:n,force:r}),[m.mutateAsync]),A=rt({mutationFn:async()=>{let e=await fetch(`/api/comments/resolve-all`,{method:`POST`});if(!e.ok)throw Error(`Failed to resolve all comments`);return await e.json()},onSuccess:()=>{e.invalidateQueries({queryKey:yE})}}),j=(0,W.useCallback)(()=>A.mutateAsync(),[A]);return{comments:t,addComment:g,removeComment:_,editComment:v,resolveComment:y,unresolveComment:b,addReply:x,removeReply:S,editReply:C,applySuggestion:w,getAnnotationsForFile:E,formatAllComments:T,copyAllComments:D,copyAllCommentsMarkdown:O,agentActivity:o,clearAgentActivity:(0,W.useCallback)(()=>s(null),[]),sendToAgent:k,sending:m.isPending,agentWaiting:r.waiters>0||(r.agents?.length??0)>0,waitingAgents:r.agents??[],lastSend:r.lastSentAt==null?null:{round:r.round,sentAt:r.lastSentAt,decision:r.lastDecision,openCount:r.lastOpenCount??null},resolveAllOpen:j,resolvingAll:A.isPending}}var SE=[`plans`];async function CE(){return(await fetch(`/api/plans`)).json()}function wE(){let e=Ve(),{data:t=[],isLoading:n}=nt({queryKey:SE,queryFn:CE});(0,W.useEffect)(()=>fE(`plans`,()=>{e.invalidateQueries({queryKey:SE})}),[e]);let[r,i]=(0,W.useState)({round:0,waiters:0,lastDecidedAt:null});(0,W.useEffect)(()=>{let e=!1;fetch(`/api/plan-review/status`).then(e=>e.json()).then(t=>{e||i(t)}).catch(()=>{});let t=fE(`plan-review-status`,e=>{try{i(JSON.parse(e))}catch{}});return()=>{e=!0,t()}},[]);let a=(0,W.useRef)(null),[o,s]=(0,W.useState)(null);(0,W.useEffect)(()=>{if(n)return;let e=a.current===null;a.current===null&&(a.current=new Set);let r=a.current,i=null;for(let n of t)for(let t of n.comments??[])for(let a of t.replies??[])r.has(a.id)||(r.add(a.id),!e&&t.status!==`resolved`&&(a.role===`agent`||a.role==null&&a.model)&&(!i||a.createdAt>i.at)&&(i={at:a.createdAt,planId:n.id,commentId:t.id,model:a.model,body:a.body}));i&&s(i)},[t,n]);let c=(0,W.useCallback)(t=>{e.setQueryData(SE,(e=[])=>e.some(e=>e.id===t.id)?e.map(e=>e.id===t.id?t:e):[...e,t])},[e]),l=rt({mutationFn:async({planId:e,...t})=>(await fetch(`/api/plans/${e}/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)})).json(),onSuccess:c}),u=rt({mutationFn:async({planId:e,commentId:t,body:n,status:r})=>(await fetch(`/api/plans/${e}/comments/${t}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n,status:r})})).json(),onSuccess:c}),d=rt({mutationFn:async({planId:e,commentId:t})=>(await fetch(`/api/plans/${e}/comments/${t}`,{method:`DELETE`})).json(),onSuccess:c}),f=rt({mutationFn:async({planId:e,commentId:t,body:n})=>(await fetch(`/api/plans/${e}/comments/${t}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n,role:`user`})})).json(),onSuccess:c}),p=rt({mutationFn:async({planId:e,commentId:t,replyId:n,body:r})=>(await fetch(`/api/plans/${e}/comments/${t}/replies/${n}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:r})})).json(),onSuccess:c}),m=rt({mutationFn:async({planId:e,commentId:t,replyId:n})=>(await fetch(`/api/plans/${e}/comments/${t}/replies/${n}`,{method:`DELETE`})).json(),onSuccess:c}),h=rt({mutationFn:async({planId:e,decision:t,decisionComment:n,mode:r})=>{let i=await fetch(`/api/plans/${e}/decision`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({decision:t,decisionComment:n?.trim()||void 0,mode:r})});if(!i.ok)throw Error(`Failed to submit plan decision`);return i.json()},onSuccess:()=>e.invalidateQueries({queryKey:SE})}),g=rt({mutationFn:async e=>(await fetch(`/api/plans/${e}`,{method:`DELETE`}),e),onSuccess:t=>{e.setQueryData(SE,(e=[])=>e.filter(e=>e.id!==t))}}),_=rt({mutationFn:async({planId:e,title:t,body:n,source:r,model:i})=>{let a=await fetch(`/api/plans/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({title:t,body:n,source:r,model:i})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(typeof e.error==`string`?e.error:`Failed to update plan (${a.status})`)}return a.json()},onSuccess:c}),v=rt({mutationFn:async({planId:e,title:t,body:n,source:r,model:i})=>{let a=await fetch(`/api/plans`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({id:e,title:t,body:n,source:r,model:i})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(typeof e.error==`string`?e.error:`Failed to save plan version (${a.status})`)}return a.json()},onSuccess:c});return{plans:t,getPlan:(0,W.useCallback)(e=>t.find(t=>t.id===e)??null,[t]),addPlanComment:(0,W.useCallback)(e=>l.mutate(e),[l.mutate]),editPlanComment:(0,W.useCallback)((e,t,n)=>u.mutate({planId:e,commentId:t,body:n}),[u.mutate]),resolvePlanComment:(0,W.useCallback)((e,t)=>u.mutate({planId:e,commentId:t,status:`resolved`}),[u.mutate]),unresolvePlanComment:(0,W.useCallback)((e,t)=>u.mutate({planId:e,commentId:t,status:`open`}),[u.mutate]),removePlanComment:(0,W.useCallback)((e,t)=>d.mutate({planId:e,commentId:t}),[d.mutate]),addPlanReply:(0,W.useCallback)((e,t,n)=>f.mutate({planId:e,commentId:t,body:n}),[f.mutate]),editPlanReply:(0,W.useCallback)((e,t,n,r)=>p.mutate({planId:e,commentId:t,replyId:n,body:r}),[p.mutate]),removePlanReply:(0,W.useCallback)((e,t,n)=>m.mutate({planId:e,commentId:t,replyId:n}),[m.mutate]),removePlan:(0,W.useCallback)(e=>g.mutate(e),[g.mutate]),updatePlan:(0,W.useCallback)((e,t)=>_.mutateAsync({planId:e,...t}),[_.mutateAsync]),submitPlanVersion:(0,W.useCallback)((e,t)=>v.mutateAsync({planId:e,...t}),[v.mutateAsync]),updatingPlan:_.isPending,submittingPlanVersion:v.isPending,submitDecision:(0,W.useCallback)((e,t,n,r)=>h.mutateAsync({planId:e,decision:t,decisionComment:n,mode:r}),[h.mutateAsync]),submitting:h.isPending,agentWaiting:r.waiters>0,agentActivity:o,clearAgentActivity:(0,W.useCallback)(()=>s(null),[]),isLoading:n}}var TE=new Set;function EE(){for(let e of TE)e()}function DE(e,t={}){e!==window.location.pathname+window.location.search&&(t.replace?window.history.replaceState(null,``,e):window.history.pushState(null,``,e),EE())}function OE(e){return TE.add(e),window.addEventListener(`popstate`,e),()=>{TE.delete(e),window.removeEventListener(`popstate`,e)}}function kE(){return window.location.pathname}function AE(){return`/`}function jE(){return(0,W.useSyncExternalStore)(OE,kE,AE)}function ME(e){let[t,n]=(0,W.useState)({inMerge:!1,conflicts:[]}),r=(0,W.useCallback)(()=>{fetch(`/api/merge-status`).then(e=>e.ok?e.json():{inMerge:!1,conflicts:[]}).then(n).catch(()=>n({inMerge:!1,conflicts:[]}))},[]);return(0,W.useEffect)(()=>{r()},[r,e]),{status:t,refresh:r}}var NE={staged:!0,untracked:!0,diffStyle:`split`,defaultTabSize:4,theme:`nord`,editorIDE:`default`,lineDiffType:`word`,lineWrap:!1,diffIndicators:`classic`,showLineNumbers:!0,hunkSeparators:`line-info`,lineHoverHighlight:`both`,fontSize:13,expandContextByDefault:!1,collapsedContextThreshold:10,expansionLineCount:20,haptics:!0,sounds:!0,uiFont:null,monoFont:null,density:`comfortable`,autoCollapseLineThreshold:400,requireViewAllBeforeSend:!1,showStatusBar:!0,savedReplies:[],ignoreSpaceChange:!1,ignoreAllSpace:!1},PE=`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;function FE(e){return e?`"${e}", ${PE}`:`"JetBrains Mono", ${PE}`}function IE(){let[e,t]=(0,W.useState)(NE),[n,r]=(0,W.useState)(!1),i=(0,W.useRef)(!0);return(0,W.useEffect)(()=>{fetch(`/api/settings`).then(e=>e.json()).then(e=>{i.current=!0,t({...NE,...e}),r(!0)}).catch(()=>r(!0))},[]),(0,W.useEffect)(()=>{if(i.current){i.current=!1;return}let t=setTimeout(()=>{fetch(`/api/settings`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}).catch(()=>{})},300);return()=>clearTimeout(t)},[e]),{settings:e,loaded:n,updateSettings:(0,W.useCallback)(e=>{t(t=>({...t,...e}))},[])}}function LE(e,t,n){(0,W.useEffect)(()=>{let r=`, ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;if(!e)return;let i=`gfonts-preconnect`,a=`gfonts-preconnect-static`,o=`gfonts-link`,s=`diffing-fonts-override`,c=()=>{if(!document.getElementById(i)){let e=document.createElement(`link`);e.id=i,e.rel=`preconnect`,e.href=`https://fonts.googleapis.com`,document.head.appendChild(e)}if(!document.getElementById(a)){let e=document.createElement(`link`);e.id=a,e.rel=`preconnect`,e.href=`https://fonts.gstatic.com`,e.crossOrigin=`anonymous`,document.head.appendChild(e)}},l=e=>encodeURIComponent(e.trim()).replace(/%20/g,`+`),u=t?.trim()?l(t):`Geist+Mono:ital,wght@0,100..900;1,100..900`,d=n?.trim()?l(n):`JetBrains+Mono:ital,wght@0,100..800;1,100..800`,f=[...new Set([u,d].filter(Boolean))];c();let p=`https://fonts.googleapis.com/css2?family=${f.join(`&family=`)}&display=swap`,m=document.getElementById(o);m||(m=document.createElement(`link`),m.id=o,m.rel=`stylesheet`,document.head.appendChild(m)),m.getAttribute(`href`)!==p&&m.setAttribute(`href`,p);let h=document.getElementById(s);h||(h=document.createElement(`style`),h.id=s,document.head.appendChild(h));let g=t?`"${t}"`:`"Geist Mono"`,_=n?`"${n}"`:`"JetBrains Mono"`;return h.innerHTML=`
1882
+ `)}var yE=[`comments`];async function bE(){return(await fetch(`/api/comments`)).json()}function xE(){let e=Ve(),{data:t=[],isLoading:n}=nt({queryKey:yE,queryFn:bE});(0,W.useEffect)(()=>fE(`comments`,()=>{e.invalidateQueries({queryKey:yE})}),[e]);let[r,i]=(0,W.useState)({round:0,waiters:0,lastSentAt:null,lastDecision:void 0,lastOpenCount:void 0});(0,W.useEffect)(()=>{let e=!1;fetch(`/api/review/status`).then(e=>e.json()).then(t=>{e||i(t)}).catch(()=>{});let t=fE(`agent-status`,e=>{try{i(JSON.parse(e))}catch{}});return()=>{e=!0,t()}},[]);let a=(0,W.useRef)(null),[o,s]=(0,W.useState)(null);(0,W.useEffect)(()=>{if(n)return;let e=a.current===null;a.current===null&&(a.current=new Set);let r=a.current,i=null;for(let n of t)for(let t of n.replies??[])r.has(t.id)||(r.add(t.id),!e&&n.status!==`resolved`&&(t.role===`agent`||t.role==null&&t.model)&&(!i||t.createdAt>i.at)&&(i={at:t.createdAt,commentId:n.id,filePath:n.filePath,model:t.model,body:t.body}));i&&s(i)},[t,n]);let c=rt({mutationFn:async e=>(await fetch(`/api/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>[...e,t])}}),l=rt({mutationFn:async e=>(await fetch(`/api/comments/${e}`,{method:`DELETE`}),e),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.filter(e=>e.id!==t))}}),u=rt({mutationFn:async({id:e,body:t,status:n})=>(await fetch(`/api/comments/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,status:n})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),d=rt({mutationFn:async({id:e,body:t})=>(await fetch(`/api/comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,role:`user`})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),f=rt({mutationFn:async({commentId:e,replyId:t})=>(await fetch(`/api/comments/${e}/replies/${t}`,{method:`DELETE`})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),p=rt({mutationFn:async({commentId:e,replyId:t,body:n})=>(await fetch(`/api/comments/${e}/replies/${t}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n})})).json(),onSuccess:t=>{e.setQueryData(yE,(e=[])=>e.map(e=>e.id===t.id?t:e))}}),m=rt({mutationFn:async({decision:e,generalComment:t,mode:n,force:r})=>{let i=await fetch(`/api/review/send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({decision:e,generalComment:t?.trim()||void 0,mode:n,force:!!r})});if(i.status===400){let e=await i.json().catch(()=>null);if(e?.error===`secrets-detected`){let t=Error(`Secrets detected`);throw t.kind=`secrets`,t.findings=e.findings??[],t}}if(!i.ok)throw Error(`Failed to send to agent`);return i.json()}}),h=rt({mutationFn:async e=>{let t=await fetch(`/api/comments/${e}/apply-suggestion`,{method:`POST`});if(!t.ok){let e=await t.json();throw Error(e.error||`Failed to apply suggestion`)}return t.json()},onSuccess:()=>{e.invalidateQueries({queryKey:yE})}}),g=(0,W.useCallback)((e,t,n,r,i,a,o)=>{c.mutate({filePath:e,side:t,lineNumber:n,startLineNumber:a,lineContent:r,body:i,severity:o&&o!==`none`?o:void 0})},[c.mutate]),_=(0,W.useCallback)(e=>{l.mutate(e)},[l.mutate]),v=(0,W.useCallback)((e,t)=>{u.mutate({id:e,body:t})},[u.mutate]),y=(0,W.useCallback)(e=>{u.mutate({id:e,status:`resolved`})},[u.mutate]),b=(0,W.useCallback)(e=>{u.mutate({id:e,status:`open`})},[u.mutate]),x=(0,W.useCallback)((e,t)=>{d.mutate({id:e,body:t})},[d.mutate]),S=(0,W.useCallback)((e,t)=>{f.mutate({commentId:e,replyId:t})},[f.mutate]),C=(0,W.useCallback)((e,t,n)=>{p.mutate({commentId:e,replyId:t,body:n})},[p.mutate]),w=(0,W.useCallback)(async e=>{await h.mutateAsync(e)},[h.mutateAsync]),T=(0,W.useCallback)(()=>vE(t),[t]),E=(0,W.useCallback)(e=>t.filter(t=>t.filePath===e).map(e=>({side:e.side,lineNumber:e.lineNumber,metadata:e})),[t]),D=(0,W.useCallback)(async()=>{let e=T();await navigator.clipboard.writeText(e)},[T]),O=(0,W.useCallback)(async()=>{let{formatCommentsMarkdown:e}=await J(async()=>{let{formatCommentsMarkdown:e}=await import(`./review-export-D-wScR31.js`);return{formatCommentsMarkdown:e}},[]),n=e(t);n&&await navigator.clipboard.writeText(n)},[t]),k=(0,W.useCallback)((e,t,n,r)=>m.mutateAsync({decision:e,generalComment:t,mode:n,force:r}),[m.mutateAsync]),A=rt({mutationFn:async()=>{let e=await fetch(`/api/comments/resolve-all`,{method:`POST`});if(!e.ok)throw Error(`Failed to resolve all comments`);return await e.json()},onSuccess:()=>{e.invalidateQueries({queryKey:yE})}}),j=(0,W.useCallback)(()=>A.mutateAsync(),[A]);return{comments:t,addComment:g,removeComment:_,editComment:v,resolveComment:y,unresolveComment:b,addReply:x,removeReply:S,editReply:C,applySuggestion:w,getAnnotationsForFile:E,formatAllComments:T,copyAllComments:D,copyAllCommentsMarkdown:O,agentActivity:o,clearAgentActivity:(0,W.useCallback)(()=>s(null),[]),sendToAgent:k,sending:m.isPending,agentWaiting:r.waiters>0||(r.agents?.length??0)>0,waitingAgents:r.agents??[],lastSend:r.lastSentAt==null?null:{round:r.round,sentAt:r.lastSentAt,decision:r.lastDecision,openCount:r.lastOpenCount??null},resolveAllOpen:j,resolvingAll:A.isPending}}var SE=[`plans`];async function CE(){return(await fetch(`/api/plans`)).json()}function wE(){let e=Ve(),{data:t=[],isLoading:n}=nt({queryKey:SE,queryFn:CE});(0,W.useEffect)(()=>fE(`plans`,()=>{e.invalidateQueries({queryKey:SE})}),[e]);let[r,i]=(0,W.useState)({round:0,waiters:0,lastDecidedAt:null});(0,W.useEffect)(()=>{let e=!1;fetch(`/api/plan-review/status`).then(e=>e.json()).then(t=>{e||i(t)}).catch(()=>{});let t=fE(`plan-review-status`,e=>{try{i(JSON.parse(e))}catch{}});return()=>{e=!0,t()}},[]);let a=(0,W.useRef)(null),[o,s]=(0,W.useState)(null);(0,W.useEffect)(()=>{if(n)return;let e=a.current===null;a.current===null&&(a.current=new Set);let r=a.current,i=null;for(let n of t)for(let t of n.comments??[])for(let a of t.replies??[])r.has(a.id)||(r.add(a.id),!e&&t.status!==`resolved`&&(a.role===`agent`||a.role==null&&a.model)&&(!i||a.createdAt>i.at)&&(i={at:a.createdAt,planId:n.id,commentId:t.id,model:a.model,body:a.body}));i&&s(i)},[t,n]);let c=(0,W.useCallback)(t=>{e.setQueryData(SE,(e=[])=>e.some(e=>e.id===t.id)?e.map(e=>e.id===t.id?t:e):[...e,t])},[e]),l=rt({mutationFn:async({planId:e,...t})=>(await fetch(`/api/plans/${e}/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)})).json(),onSuccess:c}),u=rt({mutationFn:async({planId:e,commentId:t,body:n,status:r})=>(await fetch(`/api/plans/${e}/comments/${t}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n,status:r})})).json(),onSuccess:c}),d=rt({mutationFn:async({planId:e,commentId:t})=>(await fetch(`/api/plans/${e}/comments/${t}`,{method:`DELETE`})).json(),onSuccess:c}),f=rt({mutationFn:async({planId:e,commentId:t,body:n})=>(await fetch(`/api/plans/${e}/comments/${t}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n,role:`user`})})).json(),onSuccess:c}),p=rt({mutationFn:async({planId:e,commentId:t,replyId:n,body:r})=>(await fetch(`/api/plans/${e}/comments/${t}/replies/${n}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:r})})).json(),onSuccess:c}),m=rt({mutationFn:async({planId:e,commentId:t,replyId:n})=>(await fetch(`/api/plans/${e}/comments/${t}/replies/${n}`,{method:`DELETE`})).json(),onSuccess:c}),h=rt({mutationFn:async({planId:e,decision:t,decisionComment:n,mode:r})=>{let i=await fetch(`/api/plans/${e}/decision`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({decision:t,decisionComment:n?.trim()||void 0,mode:r})});if(!i.ok)throw Error(`Failed to submit plan decision`);return i.json()},onSuccess:()=>e.invalidateQueries({queryKey:SE})}),g=rt({mutationFn:async e=>(await fetch(`/api/plans/${e}`,{method:`DELETE`}),e),onSuccess:t=>{e.setQueryData(SE,(e=[])=>e.filter(e=>e.id!==t))}}),_=rt({mutationFn:async({planId:e,title:t,body:n,source:r,model:i})=>{let a=await fetch(`/api/plans/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({title:t,body:n,source:r,model:i})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(typeof e.error==`string`?e.error:`Failed to update plan (${a.status})`)}return a.json()},onSuccess:c}),v=rt({mutationFn:async({planId:e,title:t,body:n,source:r,model:i})=>{let a=await fetch(`/api/plans`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({id:e,title:t,body:n,source:r,model:i})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(typeof e.error==`string`?e.error:`Failed to save plan version (${a.status})`)}return a.json()},onSuccess:c});return{plans:t,getPlan:(0,W.useCallback)(e=>t.find(t=>t.id===e)??null,[t]),addPlanComment:(0,W.useCallback)(e=>l.mutate(e),[l.mutate]),editPlanComment:(0,W.useCallback)((e,t,n)=>u.mutate({planId:e,commentId:t,body:n}),[u.mutate]),resolvePlanComment:(0,W.useCallback)((e,t)=>u.mutate({planId:e,commentId:t,status:`resolved`}),[u.mutate]),unresolvePlanComment:(0,W.useCallback)((e,t)=>u.mutate({planId:e,commentId:t,status:`open`}),[u.mutate]),removePlanComment:(0,W.useCallback)((e,t)=>d.mutate({planId:e,commentId:t}),[d.mutate]),addPlanReply:(0,W.useCallback)((e,t,n)=>f.mutate({planId:e,commentId:t,body:n}),[f.mutate]),editPlanReply:(0,W.useCallback)((e,t,n,r)=>p.mutate({planId:e,commentId:t,replyId:n,body:r}),[p.mutate]),removePlanReply:(0,W.useCallback)((e,t,n)=>m.mutate({planId:e,commentId:t,replyId:n}),[m.mutate]),removePlan:(0,W.useCallback)(e=>g.mutate(e),[g.mutate]),updatePlan:(0,W.useCallback)((e,t)=>_.mutateAsync({planId:e,...t}),[_.mutateAsync]),submitPlanVersion:(0,W.useCallback)((e,t)=>v.mutateAsync({planId:e,...t}),[v.mutateAsync]),updatingPlan:_.isPending,submittingPlanVersion:v.isPending,submitDecision:(0,W.useCallback)((e,t,n,r)=>h.mutateAsync({planId:e,decision:t,decisionComment:n,mode:r}),[h.mutateAsync]),submitting:h.isPending,agentWaiting:r.waiters>0,agentActivity:o,clearAgentActivity:(0,W.useCallback)(()=>s(null),[]),isLoading:n}}var TE=new Set;function EE(){for(let e of TE)e()}function DE(e,t={}){e!==window.location.pathname+window.location.search&&(t.replace?window.history.replaceState(null,``,e):window.history.pushState(null,``,e),EE())}function OE(e){return TE.add(e),window.addEventListener(`popstate`,e),()=>{TE.delete(e),window.removeEventListener(`popstate`,e)}}function kE(){return window.location.pathname}function AE(){return`/`}function jE(){return(0,W.useSyncExternalStore)(OE,kE,AE)}function ME(e){let[t,n]=(0,W.useState)({inMerge:!1,conflicts:[]}),r=(0,W.useCallback)(()=>{fetch(`/api/merge-status`).then(e=>e.ok?e.json():{inMerge:!1,conflicts:[]}).then(n).catch(()=>n({inMerge:!1,conflicts:[]}))},[]);return(0,W.useEffect)(()=>{r()},[r,e]),{status:t,refresh:r}}var NE={staged:!0,untracked:!0,diffStyle:`split`,defaultTabSize:4,theme:`nord`,editorIDE:`default`,lineDiffType:`word`,lineWrap:!1,diffIndicators:`classic`,showLineNumbers:!0,hunkSeparators:`line-info`,lineHoverHighlight:`both`,fontSize:13,expandContextByDefault:!1,collapsedContextThreshold:10,expansionLineCount:20,haptics:!0,sounds:!0,uiFont:null,monoFont:null,density:`comfortable`,autoCollapseLineThreshold:400,requireViewAllBeforeSend:!1,showStatusBar:!0,savedReplies:[],ignoreSpaceChange:!1,ignoreAllSpace:!1},PE=`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;function FE(e){return e?`"${e}", ${PE}`:`"JetBrains Mono", ${PE}`}function IE(){let[e,t]=(0,W.useState)(NE),[n,r]=(0,W.useState)(!1),i=(0,W.useRef)(!0);return(0,W.useEffect)(()=>{fetch(`/api/settings`).then(e=>e.json()).then(e=>{i.current=!0,t({...NE,...e}),r(!0)}).catch(()=>r(!0))},[]),(0,W.useEffect)(()=>{if(i.current){i.current=!1;return}let t=setTimeout(()=>{fetch(`/api/settings`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}).catch(()=>{})},300);return()=>clearTimeout(t)},[e]),{settings:e,loaded:n,updateSettings:(0,W.useCallback)(e=>{t(t=>({...t,...e}))},[])}}function LE(e,t,n){(0,W.useEffect)(()=>{let r=`, ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;if(!e)return;let i=`gfonts-preconnect`,a=`gfonts-preconnect-static`,o=`gfonts-link`,s=`diffing-fonts-override`,c=()=>{if(!document.getElementById(i)){let e=document.createElement(`link`);e.id=i,e.rel=`preconnect`,e.href=`https://fonts.googleapis.com`,document.head.appendChild(e)}if(!document.getElementById(a)){let e=document.createElement(`link`);e.id=a,e.rel=`preconnect`,e.href=`https://fonts.gstatic.com`,e.crossOrigin=`anonymous`,document.head.appendChild(e)}},l=e=>encodeURIComponent(e.trim()).replace(/%20/g,`+`),u=t?.trim()?l(t):`Geist+Mono:ital,wght@0,100..900;1,100..900`,d=n?.trim()?l(n):`JetBrains+Mono:ital,wght@0,100..800;1,100..800`,f=[...new Set([u,d].filter(Boolean))];c();let p=`https://fonts.googleapis.com/css2?family=${f.join(`&family=`)}&display=swap`,m=document.getElementById(o);m||(m=document.createElement(`link`),m.id=o,m.rel=`stylesheet`,document.head.appendChild(m)),m.getAttribute(`href`)!==p&&m.setAttribute(`href`,p);let h=document.getElementById(s);h||(h=document.createElement(`style`),h.id=s,document.head.appendChild(h));let g=t?`"${t}"`:`"Geist Mono"`,_=n?`"${n}"`:`"JetBrains Mono"`;return h.innerHTML=`
1883
1883
  :root {
1884
1884
  --font-sans: ${g}${r} !important;
1885
1885
  --font-mono: ${_}${r} !important;
@@ -1929,17 +1929,17 @@ XID_Start XIDS`.split(/\s/).map(e=>[Nu(e),e])),Dd=new Map([[`s`,dd(383)],[dd(383
1929
1929
  `},l]}}var fB=e=>({IMPORTANT:{scope:`meta`,begin:`!important`},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:`number`,begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:`built_in`,begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:`selector-attr`,begin:/\[/,end:/\]/,illegal:`$`,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:`number`,begin:e.NUMBER_RE+`(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?`,relevance:0},CSS_VARIABLE:{className:`attr`,begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),pB=`a.abbr.address.article.aside.audio.b.blockquote.body.button.canvas.caption.cite.code.dd.del.details.dfn.div.dl.dt.em.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.header.hgroup.html.i.iframe.img.input.ins.kbd.label.legend.li.main.mark.menu.nav.object.ol.optgroup.option.p.picture.q.quote.samp.section.select.source.span.strong.summary.sup.table.tbody.td.textarea.tfoot.th.thead.time.tr.ul.var.video`.split(`.`),mB=`defs.g.marker.mask.pattern.svg.switch.symbol.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feFlood.feGaussianBlur.feImage.feMerge.feMorphology.feOffset.feSpecularLighting.feTile.feTurbulence.linearGradient.radialGradient.stop.circle.ellipse.image.line.path.polygon.polyline.rect.text.use.textPath.tspan.foreignObject.clipPath`.split(`.`),hB=[...pB,...mB],gB=`any-hover.any-pointer.aspect-ratio.color.color-gamut.color-index.device-aspect-ratio.device-height.device-width.display-mode.forced-colors.grid.height.hover.inverted-colors.monochrome.orientation.overflow-block.overflow-inline.pointer.prefers-color-scheme.prefers-contrast.prefers-reduced-motion.prefers-reduced-transparency.resolution.scan.scripting.update.width.min-width.max-width.min-height.max-height`.split(`.`).sort().reverse(),_B=`active.any-link.blank.checked.current.default.defined.dir.disabled.drop.empty.enabled.first.first-child.first-of-type.fullscreen.future.focus.focus-visible.focus-within.has.host.host-context.hover.indeterminate.in-range.invalid.is.lang.last-child.last-of-type.left.link.local-link.not.nth-child.nth-col.nth-last-child.nth-last-col.nth-last-of-type.nth-of-type.only-child.only-of-type.optional.out-of-range.past.placeholder-shown.read-only.read-write.required.right.root.scope.target.target-within.user-invalid.valid.visited.where`.split(`.`).sort().reverse(),vB=[`after`,`backdrop`,`before`,`cue`,`cue-region`,`first-letter`,`first-line`,`grammar-error`,`marker`,`part`,`placeholder`,`selection`,`slotted`,`spelling-error`].sort().reverse(),yB=`accent-color.align-content.align-items.align-self.alignment-baseline.all.anchor-name.animation.animation-composition.animation-delay.animation-direction.animation-duration.animation-fill-mode.animation-iteration-count.animation-name.animation-play-state.animation-range.animation-range-end.animation-range-start.animation-timeline.animation-timing-function.appearance.aspect-ratio.backdrop-filter.backface-visibility.background.background-attachment.background-blend-mode.background-clip.background-color.background-image.background-origin.background-position.background-position-x.background-position-y.background-repeat.background-size.baseline-shift.block-size.border.border-block.border-block-color.border-block-end.border-block-end-color.border-block-end-style.border-block-end-width.border-block-start.border-block-start-color.border-block-start-style.border-block-start-width.border-block-style.border-block-width.border-bottom.border-bottom-color.border-bottom-left-radius.border-bottom-right-radius.border-bottom-style.border-bottom-width.border-collapse.border-color.border-end-end-radius.border-end-start-radius.border-image.border-image-outset.border-image-repeat.border-image-slice.border-image-source.border-image-width.border-inline.border-inline-color.border-inline-end.border-inline-end-color.border-inline-end-style.border-inline-end-width.border-inline-start.border-inline-start-color.border-inline-start-style.border-inline-start-width.border-inline-style.border-inline-width.border-left.border-left-color.border-left-style.border-left-width.border-radius.border-right.border-right-color.border-right-style.border-right-width.border-spacing.border-start-end-radius.border-start-start-radius.border-style.border-top.border-top-color.border-top-left-radius.border-top-right-radius.border-top-style.border-top-width.border-width.bottom.box-align.box-decoration-break.box-direction.box-flex.box-flex-group.box-lines.box-ordinal-group.box-orient.box-pack.box-shadow.box-sizing.break-after.break-before.break-inside.caption-side.caret-color.clear.clip.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.color-scheme.column-count.column-fill.column-gap.column-rule.column-rule-color.column-rule-style.column-rule-width.column-span.column-width.columns.contain.contain-intrinsic-block-size.contain-intrinsic-height.contain-intrinsic-inline-size.contain-intrinsic-size.contain-intrinsic-width.container.container-name.container-type.content.content-visibility.counter-increment.counter-reset.counter-set.cue.cue-after.cue-before.cursor.cx.cy.direction.display.dominant-baseline.empty-cells.enable-background.field-sizing.fill.fill-opacity.fill-rule.filter.flex.flex-basis.flex-direction.flex-flow.flex-grow.flex-shrink.flex-wrap.float.flood-color.flood-opacity.flow.font.font-display.font-family.font-feature-settings.font-kerning.font-language-override.font-optical-sizing.font-palette.font-size.font-size-adjust.font-smooth.font-smoothing.font-stretch.font-style.font-synthesis.font-synthesis-position.font-synthesis-small-caps.font-synthesis-style.font-synthesis-weight.font-variant.font-variant-alternates.font-variant-caps.font-variant-east-asian.font-variant-emoji.font-variant-ligatures.font-variant-numeric.font-variant-position.font-variation-settings.font-weight.forced-color-adjust.gap.glyph-orientation-horizontal.glyph-orientation-vertical.grid.grid-area.grid-auto-columns.grid-auto-flow.grid-auto-rows.grid-column.grid-column-end.grid-column-start.grid-gap.grid-row.grid-row-end.grid-row-start.grid-template.grid-template-areas.grid-template-columns.grid-template-rows.hanging-punctuation.height.hyphenate-character.hyphenate-limit-chars.hyphens.icon.image-orientation.image-rendering.image-resolution.ime-mode.initial-letter.initial-letter-align.inline-size.inset.inset-area.inset-block.inset-block-end.inset-block-start.inset-inline.inset-inline-end.inset-inline-start.isolation.justify-content.justify-items.justify-self.kerning.left.letter-spacing.lighting-color.line-break.line-height.line-height-step.list-style.list-style-image.list-style-position.list-style-type.margin.margin-block.margin-block-end.margin-block-start.margin-bottom.margin-inline.margin-inline-end.margin-inline-start.margin-left.margin-right.margin-top.margin-trim.marker.marker-end.marker-mid.marker-start.marks.mask.mask-border.mask-border-mode.mask-border-outset.mask-border-repeat.mask-border-slice.mask-border-source.mask-border-width.mask-clip.mask-composite.mask-image.mask-mode.mask-origin.mask-position.mask-repeat.mask-size.mask-type.masonry-auto-flow.math-depth.math-shift.math-style.max-block-size.max-height.max-inline-size.max-width.min-block-size.min-height.min-inline-size.min-width.mix-blend-mode.nav-down.nav-index.nav-left.nav-right.nav-up.none.normal.object-fit.object-position.offset.offset-anchor.offset-distance.offset-path.offset-position.offset-rotate.opacity.order.orphans.outline.outline-color.outline-offset.outline-style.outline-width.overflow.overflow-anchor.overflow-block.overflow-clip-margin.overflow-inline.overflow-wrap.overflow-x.overflow-y.overlay.overscroll-behavior.overscroll-behavior-block.overscroll-behavior-inline.overscroll-behavior-x.overscroll-behavior-y.padding.padding-block.padding-block-end.padding-block-start.padding-bottom.padding-inline.padding-inline-end.padding-inline-start.padding-left.padding-right.padding-top.page.page-break-after.page-break-before.page-break-inside.paint-order.pause.pause-after.pause-before.perspective.perspective-origin.place-content.place-items.place-self.pointer-events.position.position-anchor.position-visibility.print-color-adjust.quotes.r.resize.rest.rest-after.rest-before.right.rotate.row-gap.ruby-align.ruby-position.scale.scroll-behavior.scroll-margin.scroll-margin-block.scroll-margin-block-end.scroll-margin-block-start.scroll-margin-bottom.scroll-margin-inline.scroll-margin-inline-end.scroll-margin-inline-start.scroll-margin-left.scroll-margin-right.scroll-margin-top.scroll-padding.scroll-padding-block.scroll-padding-block-end.scroll-padding-block-start.scroll-padding-bottom.scroll-padding-inline.scroll-padding-inline-end.scroll-padding-inline-start.scroll-padding-left.scroll-padding-right.scroll-padding-top.scroll-snap-align.scroll-snap-stop.scroll-snap-type.scroll-timeline.scroll-timeline-axis.scroll-timeline-name.scrollbar-color.scrollbar-gutter.scrollbar-width.shape-image-threshold.shape-margin.shape-outside.shape-rendering.speak.speak-as.src.stop-color.stop-opacity.stroke.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.table-layout.text-align.text-align-all.text-align-last.text-anchor.text-combine-upright.text-decoration.text-decoration-color.text-decoration-line.text-decoration-skip.text-decoration-skip-ink.text-decoration-style.text-decoration-thickness.text-emphasis.text-emphasis-color.text-emphasis-position.text-emphasis-style.text-indent.text-justify.text-orientation.text-overflow.text-rendering.text-shadow.text-size-adjust.text-transform.text-underline-offset.text-underline-position.text-wrap.text-wrap-mode.text-wrap-style.timeline-scope.top.touch-action.transform.transform-box.transform-origin.transform-style.transition.transition-behavior.transition-delay.transition-duration.transition-property.transition-timing-function.translate.unicode-bidi.user-modify.user-select.vector-effect.vertical-align.view-timeline.view-timeline-axis.view-timeline-inset.view-timeline-name.view-transition-name.visibility.voice-balance.voice-duration.voice-family.voice-pitch.voice-range.voice-rate.voice-stress.voice-volume.white-space.white-space-collapse.widows.width.will-change.word-break.word-spacing.word-wrap.writing-mode.x.y.z-index.zoom`.split(`.`).sort().reverse(),bB=_B.concat(vB).sort().reverse();function xB(e){let t=fB(e),n=bB,r=`[\\w-]+`,i=`(`+r+`|@\\{[\\w-]+\\})`,a=[],o=[],s=function(e){return{className:`string`,begin:`~?`+e+`.*?`+e}},c=function(e,t,n){return{className:e,begin:t,relevance:n}},l={$pattern:/[a-z-]+/,keyword:`and or not only`,attribute:gB.join(` `)},u={begin:`\\(`,end:`\\)`,contains:o,keywords:l,relevance:0};o.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s(`'`),s(`"`),t.CSS_NUMBER_MODE,{begin:`(url|data-uri)\\(`,starts:{className:`string`,end:`[\\)\\n]`,excludeEnd:!0}},t.HEXCOLOR,u,c(`variable`,`@@?`+r,10),c(`variable`,`@\\{`+r+`\\}`),c(`built_in`,"~?`[^`]*?`"),{className:`attribute`,begin:r+`\\s*:`,end:`:`,returnBegin:!0,excludeEnd:!0},t.IMPORTANT,{beginKeywords:`and not`},t.FUNCTION_DISPATCH);let d=o.concat({begin:/\{/,end:/\}/,contains:a}),f={beginKeywords:`when`,endsWithParent:!0,contains:[{beginKeywords:`and not`}].concat(o)},p={begin:i+`\\s*:`,returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},t.CSS_VARIABLE,{className:`attribute`,begin:`\\b(`+yB.join(`|`)+`)\\b`,end:/(?=:)/,starts:{endsWithParent:!0,illegal:`[<=$]`,relevance:0,contains:o}}]},m={className:`keyword`,begin:`@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b`,starts:{end:`[;{}]`,keywords:l,returnEnd:!0,contains:o,relevance:0}},h={className:`variable`,variants:[{begin:`@`+r+`\\s*:`,relevance:15},{begin:`@`+r}],starts:{end:`[;}]`,returnEnd:!0,contains:d}},g={variants:[{begin:`[\\.#:&\\[>]`,end:`[;{}]`},{begin:i,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,f,c(`keyword`,`all\\b`),c(`variable`,`@\\{`+r+`\\}`),{begin:`\\b(`+hB.join(`|`)+`)\\b`,className:`selector-tag`},t.CSS_NUMBER_MODE,c(`selector-tag`,i,0),c(`selector-id`,`#`+i),c(`selector-class`,`\\.`+i,0),c(`selector-tag`,`&`,0),t.ATTRIBUTE_SELECTOR_MODE,{className:`selector-pseudo`,begin:`:(`+_B.join(`|`)+`)`},{className:`selector-pseudo`,begin:`:(:)?(`+vB.join(`|`)+`)`},{begin:/\(/,end:/\)/,relevance:0,contains:d},{begin:`!important`},t.FUNCTION_DISPATCH]},_={begin:`[\\w-]+:(:)?(${n.join(`|`)})`,returnBegin:!0,contains:[g]};return a.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m,h,_,p,g,f,t.FUNCTION_DISPATCH),{name:`Less`,case_insensitive:!0,illegal:`[=>'/<($"]`,contains:a}}function SB(e){let t=`\\[=*\\[`,n=`\\]=*\\]`,r={begin:t,end:n,contains:[`self`]},i=[e.COMMENT(`--(?!`+t+`)`,`$`),e.COMMENT(`--`+t,n,{contains:[r],relevance:10})];return{name:`Lua`,aliases:[`pluto`],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:`true false nil`,keyword:`and break do else elseif end for goto if in local not or repeat return then until while`,built_in:`_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove`},contains:i.concat([{className:`function`,beginKeywords:`function`,end:`\\)`,contains:[e.inherit(e.TITLE_MODE,{begin:`([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*`}),{className:`params`,begin:`\\(`,endsWithParent:!0,contains:i}].concat(i)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:`string`,begin:t,end:n,contains:[r],relevance:5}])}}function CB(e){let t={className:`variable`,variants:[{begin:`\\$\\(`+e.UNDERSCORE_IDENT_RE+`\\)`,contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:`string`,begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},r={className:`variable`,begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:`subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value`},contains:[t,n]},i={begin:`^`+e.UNDERSCORE_IDENT_RE+`\\s*(?=[:+?]?=)`},a={className:`meta`,begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:`.PHONY`}},o={className:`section`,begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:`Makefile`,aliases:[`mk`,`mak`,`make`],keywords:{$pattern:/[\w-]+/,keyword:`define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath`},contains:[e.HASH_COMMENT_MODE,t,n,r,i,a,o]}}function wB(e){let t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:`>`,subLanguage:`xml`,relevance:0},r={begin:`^[-\\*]{3,}`,end:`$`},i={className:`code`,variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:`(~{3,})[^~](.|\\n)*?\\1~*[ ]*`},{begin:"```",end:"```+[ ]*$"},{begin:`~~~`,end:`~~~+[ ]*$`},{begin:"`.+?`"},{begin:`(?=^( {4}|\\t))`,contains:[{begin:`^( {4}|\\t)`,end:`(\\n)$`}],relevance:0}]},a={className:`bullet`,begin:`^[ ]*([*+-]|(\\d+\\.))(?=\\s+)`,end:`\\s+`,excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:`symbol`,begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:`link`,begin:/:\s*/,end:/$/,excludeBegin:!0}]},s={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:`string`,relevance:0,begin:`\\[`,end:`\\]`,excludeBegin:!0,returnEnd:!0},{className:`link`,relevance:0,begin:`\\]\\(`,end:`\\)`,excludeBegin:!0,excludeEnd:!0},{className:`symbol`,relevance:0,begin:`\\]\\[`,end:`\\]`,excludeBegin:!0,excludeEnd:!0}]},c={className:`strong`,contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},l={className:`emphasis`,contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},u=e.inherit(c,{contains:[]}),d=e.inherit(l,{contains:[]});c.contains.push(d),l.contains.push(u);let f=[n,s];return[c,l,u,d].forEach(e=>{e.contains=e.contains.concat(f)}),f=f.concat(c,l),{name:`Markdown`,aliases:[`md`,`mkdown`,`mkd`],contains:[{className:`section`,variants:[{begin:`^#{1,6}`,end:`$`,contains:f},{begin:`(?=^.+?\\n[=-]{2,}$)`,contains:[{begin:`^[=-]*$`},{begin:`^`,end:`\\n`,contains:f}]}]},n,a,c,l,{className:`quote`,begin:`^>\\s+`,contains:f,end:`$`},i,r,s,o,{scope:`literal`,match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function TB(e){let t={className:`built_in`,begin:`\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+`},n=/[a-zA-Z@][a-zA-Z0-9_]*/,r=[`int`,`float`,`char`,`unsigned`,`signed`,`short`,`long`,`double`,`wchar_t`,`unichar`,`void`,`bool`,`BOOL`,`id|0`,`_Bool`],i=`while.export.sizeof.typedef.const.struct.for.union.volatile.static.mutable.if.do.return.goto.enum.else.break.extern.asm.case.default.register.explicit.typename.switch.continue.inline.readonly.assign.readwrite.self.@synchronized.id.typeof.nonatomic.IBOutlet.IBAction.strong.weak.copy.in.out.inout.bycopy.byref.oneway.__strong.__weak.__block.__autoreleasing.@private.@protected.@public.@try.@property.@end.@throw.@catch.@finally.@autoreleasepool.@synthesize.@dynamic.@selector.@optional.@required.@encode.@package.@import.@defs.@compatibility_alias.__bridge.__bridge_transfer.__bridge_retained.__bridge_retain.__covariant.__contravariant.__kindof._Nonnull._Nullable._Null_unspecified.__FUNCTION__.__PRETTY_FUNCTION__.__attribute__.getter.setter.retain.unsafe_unretained.nonnull.nullable.null_unspecified.null_resettable.class.instancetype.NS_DESIGNATED_INITIALIZER.NS_UNAVAILABLE.NS_REQUIRES_SUPER.NS_RETURNS_INNER_POINTER.NS_INLINE.NS_AVAILABLE.NS_DEPRECATED.NS_ENUM.NS_OPTIONS.NS_SWIFT_UNAVAILABLE.NS_ASSUME_NONNULL_BEGIN.NS_ASSUME_NONNULL_END.NS_REFINED_FOR_SWIFT.NS_SWIFT_NAME.NS_SWIFT_NOTHROW.NS_DURING.NS_HANDLER.NS_ENDHANDLER.NS_VALUERETURN.NS_VOIDRETURN`.split(`.`),a=[`false`,`true`,`FALSE`,`TRUE`,`nil`,`YES`,`NO`,`NULL`],o=[`dispatch_once_t`,`dispatch_queue_t`,`dispatch_sync`,`dispatch_async`,`dispatch_once`],s={"variable.language":[`this`,`super`],$pattern:n,keyword:i,literal:a,built_in:o,type:r},c={$pattern:n,keyword:[`@interface`,`@class`,`@protocol`,`@implementation`]};return{name:`Objective-C`,aliases:[`mm`,`objc`,`obj-c`,`obj-c++`,`objective-c++`],keywords:s,illegal:`</`,contains:[t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:`string`,variants:[{begin:`@"`,end:`"`,illegal:`\\n`,contains:[e.BACKSLASH_ESCAPE]}]},{className:`meta`,begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:`if else elif endif define undef warning error line pragma ifdef ifndef include`},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:`string`}),{className:`string`,begin:/<.*?>/,end:/$/,illegal:`\\n`},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:`class`,begin:`(`+c.keyword.join(`|`)+`)\\b`,end:/(\{|$)/,excludeEnd:!0,keywords:c,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:`\\.`+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function EB(e){let t=e.regex,n=`abs.accept.alarm.and.atan2.bind.binmode.bless.break.caller.chdir.chmod.chomp.chop.chown.chr.chroot.class.close.closedir.connect.continue.cos.crypt.dbmclose.dbmopen.defined.delete.die.do.dump.each.else.elsif.endgrent.endhostent.endnetent.endprotoent.endpwent.endservent.eof.eval.exec.exists.exit.exp.fcntl.field.fileno.flock.for.foreach.fork.format.formline.getc.getgrent.getgrgid.getgrnam.gethostbyaddr.gethostbyname.gethostent.getlogin.getnetbyaddr.getnetbyname.getnetent.getpeername.getpgrp.getpriority.getprotobyname.getprotobynumber.getprotoent.getpwent.getpwnam.getpwuid.getservbyname.getservbyport.getservent.getsockname.getsockopt.given.glob.gmtime.goto.grep.gt.hex.if.index.int.ioctl.join.keys.kill.last.lc.lcfirst.length.link.listen.local.localtime.log.lstat.lt.ma.map.method.mkdir.msgctl.msgget.msgrcv.msgsnd.my.ne.next.no.not.oct.open.opendir.or.ord.our.pack.package.pipe.pop.pos.print.printf.prototype.push.q|0.qq.quotemeta.qw.qx.rand.read.readdir.readline.readlink.readpipe.recv.redo.ref.rename.require.reset.return.reverse.rewinddir.rindex.rmdir.say.scalar.seek.seekdir.select.semctl.semget.semop.send.setgrent.sethostent.setnetent.setpgrp.setpriority.setprotoent.setpwent.setservent.setsockopt.shift.shmctl.shmget.shmread.shmwrite.shutdown.sin.sleep.socket.socketpair.sort.splice.split.sprintf.sqrt.srand.stat.state.study.sub.substr.symlink.syscall.sysopen.sysread.sysseek.system.syswrite.tell.telldir.tie.tied.time.times.tr.truncate.uc.ucfirst.umask.undef.unless.unlink.unpack.unshift.untie.until.use.utime.values.vec.wait.waitpid.wantarray.warn.when.while.write.x|0.xor.y|0`.split(`.`),r=/[dualxmsipngr]{0,12}/,i={$pattern:/[\w.]+/,keyword:n.join(` `)},a={className:`subst`,begin:`[$@]\\{`,end:`\\}`,keywords:i},o={begin:/->\{/,end:/\}/},s={scope:`attr`,match:/\s+:\s*\w+(\s*\(.*?\))?/},c={scope:`variable`,variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,`(?![A-Za-z])(?![@$%])`)},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[s]},l={className:`number`,variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},u=[e.BACKSLASH_ESCAPE,a,c],d=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],f=(e,n,i=`\\1`)=>{let a=i===`\\1`?i:t.concat(i,n);return t.concat(t.concat(`(?:`,e,`)`),n,/(?:\\.|[^\\\/])*?/,a,/(?:\\.|[^\\\/])*?/,i,r)},p=(e,n,i)=>t.concat(t.concat(`(?:`,e,`)`),n,/(?:\\.|[^\\\/])*?/,i,r),m=[c,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),o,{className:`string`,contains:u,variants:[{begin:`q[qwxr]?\\s*\\(`,end:`\\)`,relevance:5},{begin:`q[qwxr]?\\s*\\[`,end:`\\]`,relevance:5},{begin:`q[qwxr]?\\s*\\{`,end:`\\}`,relevance:5},{begin:`q[qwxr]?\\s*\\|`,end:`\\|`,relevance:5},{begin:`q[qwxr]?\\s*<`,end:`>`,relevance:5},{begin:`qw\\s+q`,end:`q`,relevance:5},{begin:`'`,end:`'`,contains:[e.BACKSLASH_ESCAPE]},{begin:`"`,end:`"`},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:`-?\\w+\\s*=>`,relevance:0}]},l,{begin:`(\\/\\/|`+e.RE_STARTERS_RE+`|\\b(split|return|print|reverse|grep)\\b)\\s*`,keywords:`split return print reverse grep`,relevance:0,contains:[e.HASH_COMMENT_MODE,{className:`regexp`,variants:[{begin:f(`s|tr|y`,t.either(...d,{capture:!0}))},{begin:f(`s|tr|y`,`\\(`,`\\)`)},{begin:f(`s|tr|y`,`\\[`,`\\]`)},{begin:f(`s|tr|y`,`\\{`,`\\}`)}],relevance:2},{className:`regexp`,variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:p(`(?:m|qr)?`,/\//,/\//)},{begin:p(`m|qr`,t.either(...d,{capture:!0}),/\1/)},{begin:p(`m|qr`,/\(/,/\)/)},{begin:p(`m|qr`,/\[/,/\]/)},{begin:p(`m|qr`,/\{/,/\}/)}]}]},{className:`function`,beginKeywords:`sub method`,end:`(\\s*\\(.*?\\))?[;{]`,excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,s]},{className:`class`,beginKeywords:`class`,end:`[;{]`,excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,s,l]},{begin:`-\\w\\b`,relevance:0},{begin:`^__DATA__$`,end:`^__END__$`,subLanguage:`mojolicious`,contains:[{begin:`^@@.*`,end:`$`,className:`comment`}]}];return a.contains=m,o.contains=m,{name:`Perl`,aliases:[`pl`,`pm`],keywords:i,contains:m}}function DB(e){let t=e.regex,n=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),i=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),a=t.concat(/[A-Z]+/,n),o={scope:`variable`,match:`\\$+`+r},s={scope:`meta`,variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},c={scope:`subst`,variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},l=e.inherit(e.APOS_STRING_MODE,{illegal:null}),u=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(c)}),d={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(c),"on:begin":(e,t)=>{t.data._beginMatch=e[1]||e[2]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}},f=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),p=`[
1930
1930
  ]`,m={scope:`string`,variants:[u,l,d,f]},h={scope:`number`,variants:[{begin:`\\b0[bB][01]+(?:_[01]+)*\\b`},{begin:`\\b0[oO][0-7]+(?:_[0-7]+)*\\b`},{begin:`\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b`},{begin:`(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?`}],relevance:0},g=[`false`,`null`,`true`],_=`__CLASS__.__DIR__.__FILE__.__FUNCTION__.__COMPILER_HALT_OFFSET__.__LINE__.__METHOD__.__NAMESPACE__.__TRAIT__.die.echo.exit.include.include_once.print.require.require_once.array.abstract.and.as.binary.bool.boolean.break.callable.case.catch.class.clone.const.continue.declare.default.do.double.else.elseif.empty.enddeclare.endfor.endforeach.endif.endswitch.endwhile.enum.eval.extends.final.finally.float.for.foreach.from.global.goto.if.implements.instanceof.insteadof.int.integer.interface.isset.iterable.list.match|0.mixed.new.never.object.or.private.protected.public.readonly.real.return.string.switch.throw.trait.try.unset.use.var.void.while.xor.yield`.split(`.`),v=`Error|0.AppendIterator.ArgumentCountError.ArithmeticError.ArrayIterator.ArrayObject.AssertionError.BadFunctionCallException.BadMethodCallException.CachingIterator.CallbackFilterIterator.CompileError.Countable.DirectoryIterator.DivisionByZeroError.DomainException.EmptyIterator.ErrorException.Exception.FilesystemIterator.FilterIterator.GlobIterator.InfiniteIterator.InvalidArgumentException.IteratorIterator.LengthException.LimitIterator.LogicException.MultipleIterator.NoRewindIterator.OutOfBoundsException.OutOfRangeException.OuterIterator.OverflowException.ParentIterator.ParseError.RangeException.RecursiveArrayIterator.RecursiveCachingIterator.RecursiveCallbackFilterIterator.RecursiveDirectoryIterator.RecursiveFilterIterator.RecursiveIterator.RecursiveIteratorIterator.RecursiveRegexIterator.RecursiveTreeIterator.RegexIterator.RuntimeException.SeekableIterator.SplDoublyLinkedList.SplFileInfo.SplFileObject.SplFixedArray.SplHeap.SplMaxHeap.SplMinHeap.SplObjectStorage.SplObserver.SplPriorityQueue.SplQueue.SplStack.SplSubject.SplTempFileObject.TypeError.UnderflowException.UnexpectedValueException.UnhandledMatchError.ArrayAccess.BackedEnum.Closure.Fiber.Generator.Iterator.IteratorAggregate.Serializable.Stringable.Throwable.Traversable.UnitEnum.WeakReference.WeakMap.Directory.__PHP_Incomplete_Class.parent.php_user_filter.self.static.stdClass`.split(`.`),y={keyword:_,literal:(e=>{let t=[];return e.forEach(e=>{t.push(e),e.toLowerCase()===e?t.push(e.toUpperCase()):t.push(e.toLowerCase())}),t})(g),built_in:v},b=e=>e.map(e=>e.replace(/\|\d+$/,``)),x={variants:[{match:[/new/,t.concat(p,`+`),t.concat(`(?!`,b(v).join(`\\b|`),`\\b)`),i],scope:{1:`keyword`,4:`title.class`}}]},S=t.concat(r,`\\b(?!\\()`),C={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),S],scope:{2:`variable.constant`}},{match:[/::/,/class/],scope:{2:`variable.language`}},{match:[i,t.concat(/::/,t.lookahead(/(?!class\b)/)),S],scope:{1:`title.class`,3:`variable.constant`}},{match:[i,t.concat(`::`,t.lookahead(/(?!class\b)/))],scope:{1:`title.class`}},{match:[i,/::/,/class/],scope:{1:`title.class`,3:`variable.language`}}]},w={scope:`attr`,match:t.concat(r,t.lookahead(`:`),t.lookahead(/(?!::)/))},T={relevance:0,begin:/\(/,end:/\)/,keywords:y,contains:[w,o,C,e.C_BLOCK_COMMENT_MODE,m,h,x]},E={relevance:0,match:[/\b/,t.concat(`(?!fn\\b|function\\b|`,b(_).join(`\\b|`),`|`,b(v).join(`\\b|`),`\\b)`),r,t.concat(p,`*`),t.lookahead(/(?=\()/)],scope:{3:`title.function.invoke`},contains:[T]};T.contains.push(E);let D=[w,C,e.C_BLOCK_COMMENT_MODE,m,h,x],O={begin:t.concat(/#\[\s*\\?/,t.either(i,a)),beginScope:`meta`,end:/]/,endScope:`meta`,keywords:{literal:g,keyword:[`new`,`array`]},contains:[{begin:/\[/,end:/]/,keywords:{literal:g,keyword:[`new`,`array`]},contains:[`self`,...D]},...D,{scope:`meta`,variants:[{match:i},{match:a}]}]};return{case_insensitive:!1,keywords:y,contains:[O,e.HASH_COMMENT_MODE,e.COMMENT(`//`,`$`),e.COMMENT(`/\\*`,`\\*/`,{contains:[{scope:`doctag`,match:`@[A-Za-z]+`}]}),{match:/__halt_compiler\(\);/,keywords:`__halt_compiler`,starts:{scope:`comment`,end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:`meta`,endsParent:!0}]}},s,{scope:`variable.language`,match:/\$this\b/},o,E,C,{match:[/const/,/\s/,r],scope:{1:`keyword`,3:`variable.constant`}},x,{scope:`function`,relevance:0,beginKeywords:`fn function`,end:/[;{]/,excludeEnd:!0,illegal:`[$%\\[]`,contains:[{beginKeywords:`use`},e.UNDERSCORE_TITLE_MODE,{begin:`=>`,endsParent:!0},{scope:`params`,begin:`\\(`,end:`\\)`,excludeBegin:!0,excludeEnd:!0,keywords:y,contains:[`self`,O,o,C,e.C_BLOCK_COMMENT_MODE,m,h]}]},{scope:`class`,variants:[{beginKeywords:`enum`,illegal:/[($"]/},{beginKeywords:`class interface trait`,illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:`extends implements`},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:`namespace`,relevance:0,end:`;`,illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:`title.class`})]},{beginKeywords:`use`,relevance:0,end:`;`,contains:[{match:/\b(as|const|function)\b/,scope:`keyword`},e.UNDERSCORE_TITLE_MODE]},m,h]}}function OB(e){return{name:`PHP template`,subLanguage:`xml`,contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:`php`,contains:[{begin:`/\\*`,end:`\\*/`,skip:!0},{begin:`b"`,end:`"`,skip:!0},{begin:`b'`,end:`'`,skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function kB(e){return{name:`Plain text`,aliases:[`text`,`txt`],disableAutodetect:!0}}function AB(e){let t=e.regex,n=/[\p{XID_Start}_]\p{XID_Continue}*/u,r=`and.as.assert.async.await.break.case.class.continue.def.del.elif.else.except.finally.for.from.global.if.import.in.is.lambda.match.nonlocal|10.not.or.pass.raise.return.try.while.with.yield`.split(`.`),i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:`__import__.abs.all.any.ascii.bin.bool.breakpoint.bytearray.bytes.callable.chr.classmethod.compile.complex.delattr.dict.dir.divmod.enumerate.eval.exec.filter.float.format.frozenset.getattr.globals.hasattr.hash.help.hex.id.input.int.isinstance.issubclass.iter.len.list.locals.map.max.memoryview.min.next.object.oct.open.ord.pow.print.property.range.repr.reversed.round.set.setattr.slice.sorted.staticmethod.str.sum.super.tuple.type.vars.zip`.split(`.`),literal:[`__debug__`,`Ellipsis`,`False`,`None`,`NotImplemented`,`True`],type:[`Any`,`Callable`,`Coroutine`,`Dict`,`List`,`Literal`,`Generic`,`Optional`,`Sequence`,`Set`,`Tuple`,`Type`,`Union`]},a={className:`meta`,begin:/^(>>>|\.\.\.) /},o={className:`subst`,begin:/\{/,end:/\}/,keywords:i,illegal:/#/},s={begin:/\{\{/,relevance:0},c={className:`string`,contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,o]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},l=`[0-9](_?[0-9])*`,u=`(\\b(${l}))?\\.(${l})|\\b(${l})\\.`,d=`\\b|${r.join(`|`)}`,f={className:`number`,relevance:0,variants:[{begin:`(\\b(${l})|(${u}))[eE][+-]?(${l})[jJ]?(?=${d})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${l})[jJ](?=${d})`}]},p={className:`comment`,begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:`params`,variants:[{className:``,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:[`self`,a,f,c,e.HASH_COMMENT_MODE]}]};return o.contains=[c,f,a],{name:`Python`,aliases:[`py`,`gyp`,`ipython`],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[a,f,{scope:`variable.language`,match:/\bself\b/},{beginKeywords:`if`,relevance:0},{match:/\bor\b/,scope:`keyword`},c,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:`keyword`,3:`title.function`},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:`keyword`,3:`title.class`,6:`title.class.inherited`}},{className:`meta`,begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[f,m,c]}]}}function jB(e){return{aliases:[`pycon`],contains:[{className:`meta.prompt`,starts:{end:/ |$/,starts:{end:`$`,subLanguage:`python`}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function MB(e){let t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),i=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,a=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:`R`,keywords:{$pattern:n,keyword:`function if in break next repeat else for while`,literal:`NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10`,built_in:`LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm`},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:`doctag`,match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:`doctag`,begin:`@param`,end:/$/,contains:[{scope:`variable`,variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:`doctag`,match:/@[a-zA-Z]+/},{scope:`keyword`,match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:`string`,contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:`"`,end:`"`,relevance:0},{begin:`'`,end:`'`,relevance:0}]},{relevance:0,variants:[{scope:{1:`operator`,2:`number`},match:[i,r]},{scope:{1:`operator`,2:`number`},match:[/%[^%]*%/,r]},{scope:{1:`punctuation`,2:`number`},match:[a,r]},{scope:{2:`number`},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:`operator`},match:[n,/\s+/,/<-/,/\s+/]},{scope:`operator`,relevance:0,variants:[{match:i},{match:/%[^%]*%/}]},{scope:`punctuation`,relevance:0,match:a},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function NB(e){let t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=t.concat(r,/(::\w+)*/),a=[`include`,`extend`,`prepend`,`public`,`private`,`protected`,`raise`,`throw`],o={"variable.constant":[`__FILE__`,`__LINE__`,`__ENCODING__`],"variable.language":[`self`,`super`],keyword:[`alias`,`and`,`begin`,`BEGIN`,`break`,`case`,`class`,`defined`,`do`,`else`,`elsif`,`end`,`END`,`ensure`,`for`,`if`,`in`,`module`,`next`,`not`,`or`,`redo`,`require`,`rescue`,`retry`,`return`,`then`,`undef`,`unless`,`until`,`when`,`while`,`yield`,...a],built_in:[`proc`,`lambda`,`attr_accessor`,`attr_reader`,`attr_writer`,`define_method`,`private_constant`,`module_function`],literal:[`true`,`false`,`nil`]},s={className:`doctag`,begin:`@[A-Za-z]+`},c={begin:`#<`,end:`>`},l=[e.COMMENT(`#`,`$`,{contains:[s]}),e.COMMENT(`^=begin`,`^=end`,{contains:[s],relevance:10}),e.COMMENT(`^__END__`,e.MATCH_NOTHING_RE)],u={className:`subst`,begin:/#\{/,end:/\}/,keywords:o},d={className:`string`,contains:[e.BACKSLASH_ESCAPE,u],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,u]})]}]},f=`[0-9](_?[0-9])*`,p={className:`number`,relevance:0,variants:[{begin:`\\b([1-9](_?[0-9])*|0)(\\.(${f}))?([eE][+-]?(${f})|r)?i?\\b`},{begin:`\\b0[dD][0-9](_?[0-9])*r?i?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*r?i?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*r?i?\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b`},{begin:`\\b0(_?[0-7])+r?i?\\b`}]},m={variants:[{match:/\(\)/},{className:`params`,begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:o}]},h={match:[/(include|extend)\s+/,i],scope:{2:`title.class`},keywords:o},g={variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{match:[/\b(class|module)\s+/,i]}],scope:{2:`title.class`,4:`title.class.inherited`},keywords:o},_={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`},v={match:[/def/,/\s+/,n],scope:{1:`keyword`,3:`title.function`},contains:[m]},y=[d,g,h,{relevance:0,match:[i,/\.new[. (]/],scope:{1:`title.class`}},_,{relevance:0,match:r,scope:`title.class`},v,{begin:e.IDENT_RE+`::`},{className:`symbol`,begin:e.UNDERSCORE_IDENT_RE+`(!|\\?)?:`,relevance:0},{className:`symbol`,begin:`:(?!\\s)`,contains:[d,{begin:n}],relevance:0},p,{className:`variable`,begin:`(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])`},{className:`params`,begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:o},{begin:`(`+e.RE_STARTERS_RE+`|unless)\\s*`,keywords:`unless`,contains:[{className:`regexp`,contains:[e.BACKSLASH_ESCAPE,u],illegal:/\n/,variants:[{begin:`/`,end:`/[a-z]*`},{begin:/%r\{/,end:/\}[a-z]*/},{begin:`%r\\(`,end:`\\)[a-z]*`},{begin:`%r!`,end:`![a-z]*`},{begin:`%r\\[`,end:`\\][a-z]*`}]}].concat(c,l),relevance:0}].concat(c,l);u.contains=y,m.contains=y;let b=[{begin:/^\s*=>/,starts:{end:`$`,contains:y}},{className:`meta.prompt`,begin:`^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])`,starts:{end:`$`,keywords:o,contains:y}}];return l.unshift(c),{name:`Ruby`,aliases:[`rb`,`gemspec`,`podspec`,`thor`,`irb`],keywords:o,illegal:/\/\*/,contains:[e.SHEBANG({binary:`ruby`})].concat(b,l,y)}}function PB(e){let t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),i=t.concat(n,e.IDENT_RE),a={className:`title.function.invoke`,relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,i,t.lookahead(/\s*\(/))},o=`([ui](8|16|32|64|128|size)|f(32|64))?`,s=`abstract.as.async.await.become.box.break.const.continue.crate.do.dyn.else.enum.extern.false.final.fn.for.if.impl.in.let.loop.macro.match.mod.move.mut.override.priv.pub.ref.return.self.Self.static.struct.super.trait.true.try.type.typeof.union.unsafe.unsized.use.virtual.where.while.yield`.split(`.`),c=[`true`,`false`,`Some`,`None`,`Ok`,`Err`],l=`drop .Copy.Send.Sized.Sync.Drop.Fn.FnMut.FnOnce.ToOwned.Clone.Debug.PartialEq.PartialOrd.Eq.Ord.AsRef.AsMut.Into.From.Default.Iterator.Extend.IntoIterator.DoubleEndedIterator.ExactSizeIterator.SliceConcatExt.ToString.assert!.assert_eq!.bitflags!.bytes!.cfg!.col!.concat!.concat_idents!.debug_assert!.debug_assert_eq!.env!.eprintln!.panic!.file!.format!.format_args!.include_bytes!.include_str!.line!.local_data_key!.module_path!.option_env!.print!.println!.select!.stringify!.try!.unimplemented!.unreachable!.vec!.write!.writeln!.macro_rules!.assert_ne!.debug_assert_ne!`.split(`.`),u=[`i8`,`i16`,`i32`,`i64`,`i128`,`isize`,`u8`,`u16`,`u32`,`u64`,`u128`,`usize`,`f32`,`f64`,`str`,`char`,`bool`,`Box`,`Option`,`Result`,`String`,`Vec`];return{name:`Rust`,aliases:[`rs`],keywords:{$pattern:e.IDENT_RE+`!?`,type:u,keyword:s,literal:c,built_in:l},illegal:`</`,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(`/\\*`,`\\*/`,{contains:[`self`]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:`symbol`,begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:`string`,variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:`char.escape`,match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:`number`,variants:[{begin:`\\b0b([01_]+)`+o},{begin:`\\b0o([0-7_]+)`+o},{begin:`\\b0x([A-Fa-f0-9_]+)`+o},{begin:`\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)`+o}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:`keyword`,3:`title.function`}},{className:`meta`,begin:`#!?\\[`,end:`\\]`,contains:[{className:`string`,begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:`keyword`,3:`keyword`,4:`variable`}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:`keyword`,3:`variable`,5:`keyword`}},{begin:[/type/,/\s+/,r],className:{1:`keyword`,3:`title.class`}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:`keyword`,3:`title.class`}},{begin:e.IDENT_RE+`::`,keywords:{keyword:`Self`,built_in:l,type:u}},{className:`punctuation`,begin:`->`},a]}}var FB=e=>({IMPORTANT:{scope:`meta`,begin:`!important`},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:`number`,begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:`built_in`,begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:`selector-attr`,begin:/\[/,end:/\]/,illegal:`$`,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:`number`,begin:e.NUMBER_RE+`(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?`,relevance:0},CSS_VARIABLE:{className:`attr`,begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),IB=`a.abbr.address.article.aside.audio.b.blockquote.body.button.canvas.caption.cite.code.dd.del.details.dfn.div.dl.dt.em.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.header.hgroup.html.i.iframe.img.input.ins.kbd.label.legend.li.main.mark.menu.nav.object.ol.optgroup.option.p.picture.q.quote.samp.section.select.source.span.strong.summary.sup.table.tbody.td.textarea.tfoot.th.thead.time.tr.ul.var.video`.split(`.`),LB=`defs.g.marker.mask.pattern.svg.switch.symbol.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feFlood.feGaussianBlur.feImage.feMerge.feMorphology.feOffset.feSpecularLighting.feTile.feTurbulence.linearGradient.radialGradient.stop.circle.ellipse.image.line.path.polygon.polyline.rect.text.use.textPath.tspan.foreignObject.clipPath`.split(`.`),RB=[...IB,...LB],zB=`any-hover.any-pointer.aspect-ratio.color.color-gamut.color-index.device-aspect-ratio.device-height.device-width.display-mode.forced-colors.grid.height.hover.inverted-colors.monochrome.orientation.overflow-block.overflow-inline.pointer.prefers-color-scheme.prefers-contrast.prefers-reduced-motion.prefers-reduced-transparency.resolution.scan.scripting.update.width.min-width.max-width.min-height.max-height`.split(`.`).sort().reverse(),BB=`active.any-link.blank.checked.current.default.defined.dir.disabled.drop.empty.enabled.first.first-child.first-of-type.fullscreen.future.focus.focus-visible.focus-within.has.host.host-context.hover.indeterminate.in-range.invalid.is.lang.last-child.last-of-type.left.link.local-link.not.nth-child.nth-col.nth-last-child.nth-last-col.nth-last-of-type.nth-of-type.only-child.only-of-type.optional.out-of-range.past.placeholder-shown.read-only.read-write.required.right.root.scope.target.target-within.user-invalid.valid.visited.where`.split(`.`).sort().reverse(),VB=[`after`,`backdrop`,`before`,`cue`,`cue-region`,`first-letter`,`first-line`,`grammar-error`,`marker`,`part`,`placeholder`,`selection`,`slotted`,`spelling-error`].sort().reverse(),HB=`accent-color.align-content.align-items.align-self.alignment-baseline.all.anchor-name.animation.animation-composition.animation-delay.animation-direction.animation-duration.animation-fill-mode.animation-iteration-count.animation-name.animation-play-state.animation-range.animation-range-end.animation-range-start.animation-timeline.animation-timing-function.appearance.aspect-ratio.backdrop-filter.backface-visibility.background.background-attachment.background-blend-mode.background-clip.background-color.background-image.background-origin.background-position.background-position-x.background-position-y.background-repeat.background-size.baseline-shift.block-size.border.border-block.border-block-color.border-block-end.border-block-end-color.border-block-end-style.border-block-end-width.border-block-start.border-block-start-color.border-block-start-style.border-block-start-width.border-block-style.border-block-width.border-bottom.border-bottom-color.border-bottom-left-radius.border-bottom-right-radius.border-bottom-style.border-bottom-width.border-collapse.border-color.border-end-end-radius.border-end-start-radius.border-image.border-image-outset.border-image-repeat.border-image-slice.border-image-source.border-image-width.border-inline.border-inline-color.border-inline-end.border-inline-end-color.border-inline-end-style.border-inline-end-width.border-inline-start.border-inline-start-color.border-inline-start-style.border-inline-start-width.border-inline-style.border-inline-width.border-left.border-left-color.border-left-style.border-left-width.border-radius.border-right.border-right-color.border-right-style.border-right-width.border-spacing.border-start-end-radius.border-start-start-radius.border-style.border-top.border-top-color.border-top-left-radius.border-top-right-radius.border-top-style.border-top-width.border-width.bottom.box-align.box-decoration-break.box-direction.box-flex.box-flex-group.box-lines.box-ordinal-group.box-orient.box-pack.box-shadow.box-sizing.break-after.break-before.break-inside.caption-side.caret-color.clear.clip.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.color-scheme.column-count.column-fill.column-gap.column-rule.column-rule-color.column-rule-style.column-rule-width.column-span.column-width.columns.contain.contain-intrinsic-block-size.contain-intrinsic-height.contain-intrinsic-inline-size.contain-intrinsic-size.contain-intrinsic-width.container.container-name.container-type.content.content-visibility.counter-increment.counter-reset.counter-set.cue.cue-after.cue-before.cursor.cx.cy.direction.display.dominant-baseline.empty-cells.enable-background.field-sizing.fill.fill-opacity.fill-rule.filter.flex.flex-basis.flex-direction.flex-flow.flex-grow.flex-shrink.flex-wrap.float.flood-color.flood-opacity.flow.font.font-display.font-family.font-feature-settings.font-kerning.font-language-override.font-optical-sizing.font-palette.font-size.font-size-adjust.font-smooth.font-smoothing.font-stretch.font-style.font-synthesis.font-synthesis-position.font-synthesis-small-caps.font-synthesis-style.font-synthesis-weight.font-variant.font-variant-alternates.font-variant-caps.font-variant-east-asian.font-variant-emoji.font-variant-ligatures.font-variant-numeric.font-variant-position.font-variation-settings.font-weight.forced-color-adjust.gap.glyph-orientation-horizontal.glyph-orientation-vertical.grid.grid-area.grid-auto-columns.grid-auto-flow.grid-auto-rows.grid-column.grid-column-end.grid-column-start.grid-gap.grid-row.grid-row-end.grid-row-start.grid-template.grid-template-areas.grid-template-columns.grid-template-rows.hanging-punctuation.height.hyphenate-character.hyphenate-limit-chars.hyphens.icon.image-orientation.image-rendering.image-resolution.ime-mode.initial-letter.initial-letter-align.inline-size.inset.inset-area.inset-block.inset-block-end.inset-block-start.inset-inline.inset-inline-end.inset-inline-start.isolation.justify-content.justify-items.justify-self.kerning.left.letter-spacing.lighting-color.line-break.line-height.line-height-step.list-style.list-style-image.list-style-position.list-style-type.margin.margin-block.margin-block-end.margin-block-start.margin-bottom.margin-inline.margin-inline-end.margin-inline-start.margin-left.margin-right.margin-top.margin-trim.marker.marker-end.marker-mid.marker-start.marks.mask.mask-border.mask-border-mode.mask-border-outset.mask-border-repeat.mask-border-slice.mask-border-source.mask-border-width.mask-clip.mask-composite.mask-image.mask-mode.mask-origin.mask-position.mask-repeat.mask-size.mask-type.masonry-auto-flow.math-depth.math-shift.math-style.max-block-size.max-height.max-inline-size.max-width.min-block-size.min-height.min-inline-size.min-width.mix-blend-mode.nav-down.nav-index.nav-left.nav-right.nav-up.none.normal.object-fit.object-position.offset.offset-anchor.offset-distance.offset-path.offset-position.offset-rotate.opacity.order.orphans.outline.outline-color.outline-offset.outline-style.outline-width.overflow.overflow-anchor.overflow-block.overflow-clip-margin.overflow-inline.overflow-wrap.overflow-x.overflow-y.overlay.overscroll-behavior.overscroll-behavior-block.overscroll-behavior-inline.overscroll-behavior-x.overscroll-behavior-y.padding.padding-block.padding-block-end.padding-block-start.padding-bottom.padding-inline.padding-inline-end.padding-inline-start.padding-left.padding-right.padding-top.page.page-break-after.page-break-before.page-break-inside.paint-order.pause.pause-after.pause-before.perspective.perspective-origin.place-content.place-items.place-self.pointer-events.position.position-anchor.position-visibility.print-color-adjust.quotes.r.resize.rest.rest-after.rest-before.right.rotate.row-gap.ruby-align.ruby-position.scale.scroll-behavior.scroll-margin.scroll-margin-block.scroll-margin-block-end.scroll-margin-block-start.scroll-margin-bottom.scroll-margin-inline.scroll-margin-inline-end.scroll-margin-inline-start.scroll-margin-left.scroll-margin-right.scroll-margin-top.scroll-padding.scroll-padding-block.scroll-padding-block-end.scroll-padding-block-start.scroll-padding-bottom.scroll-padding-inline.scroll-padding-inline-end.scroll-padding-inline-start.scroll-padding-left.scroll-padding-right.scroll-padding-top.scroll-snap-align.scroll-snap-stop.scroll-snap-type.scroll-timeline.scroll-timeline-axis.scroll-timeline-name.scrollbar-color.scrollbar-gutter.scrollbar-width.shape-image-threshold.shape-margin.shape-outside.shape-rendering.speak.speak-as.src.stop-color.stop-opacity.stroke.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.table-layout.text-align.text-align-all.text-align-last.text-anchor.text-combine-upright.text-decoration.text-decoration-color.text-decoration-line.text-decoration-skip.text-decoration-skip-ink.text-decoration-style.text-decoration-thickness.text-emphasis.text-emphasis-color.text-emphasis-position.text-emphasis-style.text-indent.text-justify.text-orientation.text-overflow.text-rendering.text-shadow.text-size-adjust.text-transform.text-underline-offset.text-underline-position.text-wrap.text-wrap-mode.text-wrap-style.timeline-scope.top.touch-action.transform.transform-box.transform-origin.transform-style.transition.transition-behavior.transition-delay.transition-duration.transition-property.transition-timing-function.translate.unicode-bidi.user-modify.user-select.vector-effect.vertical-align.view-timeline.view-timeline-axis.view-timeline-inset.view-timeline-name.view-transition-name.visibility.voice-balance.voice-duration.voice-family.voice-pitch.voice-range.voice-rate.voice-stress.voice-volume.white-space.white-space-collapse.widows.width.will-change.word-break.word-spacing.word-wrap.writing-mode.x.y.z-index.zoom`.split(`.`).sort().reverse();function UB(e){let t=FB(e),n=VB,r=BB,i=`@[a-z-]+`,a={className:`variable`,begin:`(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b`,relevance:0};return{name:`SCSS`,case_insensitive:!0,illegal:`[=/|']`,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.CSS_NUMBER_MODE,{className:`selector-id`,begin:`#[A-Za-z0-9_-]+`,relevance:0},{className:`selector-class`,begin:`\\.[A-Za-z0-9_-]+`,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:`selector-tag`,begin:`\\b(`+RB.join(`|`)+`)\\b`,relevance:0},{className:`selector-pseudo`,begin:`:(`+r.join(`|`)+`)`},{className:`selector-pseudo`,begin:`:(:)?(`+n.join(`|`)+`)`},a,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:`attribute`,begin:`\\b(`+HB.join(`|`)+`)\\b`},{begin:`\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b`},{begin:/:/,end:/[;}{]/,relevance:0,contains:[t.BLOCK_COMMENT,a,t.HEXCOLOR,t.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT,t.FUNCTION_DISPATCH]},{begin:`@(page|font-face)`,keywords:{$pattern:i,keyword:`@page @font-face`}},{begin:`@`,end:`[{;]`,returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:`and or not only`,attribute:zB.join(` `)},contains:[{begin:i,className:`keyword`},{begin:/[a-z-]+(?=:)/,className:`attribute`},a,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function WB(e){return{name:`Shell Session`,aliases:[`console`,`shellsession`],contains:[{className:`meta.prompt`,begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:`bash`}}]}}function GB(e){let t=e.regex,n=e.COMMENT(`--`,`$`),r={scope:`string`,variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},a=[`true`,`false`,`unknown`],o=[`double precision`,`large object`,`with timezone`,`without timezone`],s=`bigint.binary.blob.boolean.char.character.clob.date.dec.decfloat.decimal.float.int.integer.interval.nchar.nclob.national.numeric.real.row.smallint.time.timestamp.varchar.varying.varbinary`.split(`.`),c=[`add`,`asc`,`collation`,`desc`,`final`,`first`,`last`,`view`],l=`abs.acos.all.allocate.alter.and.any.are.array.array_agg.array_max_cardinality.as.asensitive.asin.asymmetric.at.atan.atomic.authorization.avg.begin.begin_frame.begin_partition.between.bigint.binary.blob.boolean.both.by.call.called.cardinality.cascaded.case.cast.ceil.ceiling.char.char_length.character.character_length.check.classifier.clob.close.coalesce.collate.collect.column.commit.condition.connect.constraint.contains.convert.copy.corr.corresponding.cos.cosh.count.covar_pop.covar_samp.create.cross.cube.cume_dist.current.current_catalog.current_date.current_default_transform_group.current_path.current_role.current_row.current_schema.current_time.current_timestamp.current_path.current_role.current_transform_group_for_type.current_user.cursor.cycle.date.day.deallocate.dec.decimal.decfloat.declare.default.define.delete.dense_rank.deref.describe.deterministic.disconnect.distinct.double.drop.dynamic.each.element.else.empty.end.end_frame.end_partition.end-exec.equals.escape.every.except.exec.execute.exists.exp.external.extract.false.fetch.filter.first_value.float.floor.for.foreign.frame_row.free.from.full.function.fusion.get.global.grant.group.grouping.groups.having.hold.hour.identity.in.indicator.initial.inner.inout.insensitive.insert.int.integer.intersect.intersection.interval.into.is.join.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.language.large.last_value.lateral.lead.leading.left.like.like_regex.listagg.ln.local.localtime.localtimestamp.log.log10.lower.match.match_number.match_recognize.matches.max.member.merge.method.min.minute.mod.modifies.module.month.multiset.national.natural.nchar.nclob.new.no.none.normalize.not.nth_value.ntile.null.nullif.numeric.octet_length.occurrences_regex.of.offset.old.omit.on.one.only.open.or.order.out.outer.over.overlaps.overlay.parameter.partition.pattern.per.percent.percent_rank.percentile_cont.percentile_disc.period.portion.position.position_regex.power.precedes.precision.prepare.primary.procedure.ptf.range.rank.reads.real.recursive.ref.references.referencing.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.release.result.return.returns.revoke.right.rollback.rollup.row.row_number.rows.running.savepoint.scope.scroll.search.second.seek.select.sensitive.session_user.set.show.similar.sin.sinh.skip.smallint.some.specific.specifictype.sql.sqlexception.sqlstate.sqlwarning.sqrt.start.static.stddev_pop.stddev_samp.submultiset.subset.substring.substring_regex.succeeds.sum.symmetric.system.system_time.system_user.table.tablesample.tan.tanh.then.time.timestamp.timezone_hour.timezone_minute.to.trailing.translate.translate_regex.translation.treat.trigger.trim.trim_array.true.truncate.uescape.union.unique.unknown.unnest.update.upper.user.using.value.values.value_of.var_pop.var_samp.varbinary.varchar.varying.versioning.when.whenever.where.width_bucket.window.with.within.without.year`.split(`.`),u=`abs.acos.array_agg.asin.atan.avg.cast.ceil.ceiling.coalesce.corr.cos.cosh.count.covar_pop.covar_samp.cume_dist.dense_rank.deref.element.exp.extract.first_value.floor.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.last_value.lead.listagg.ln.log.log10.lower.max.min.mod.nth_value.ntile.nullif.percent_rank.percentile_cont.percentile_disc.position.position_regex.power.rank.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.row_number.sin.sinh.sqrt.stddev_pop.stddev_samp.substring.substring_regex.sum.tan.tanh.translate.translate_regex.treat.trim.trim_array.unnest.upper.value_of.var_pop.var_samp.width_bucket`.split(`.`),d=[`current_catalog`,`current_date`,`current_default_transform_group`,`current_path`,`current_role`,`current_schema`,`current_transform_group_for_type`,`current_user`,`session_user`,`system_time`,`system_user`,`current_time`,`localtime`,`current_timestamp`,`localtimestamp`],f=[`create table`,`insert into`,`primary key`,`foreign key`,`not null`,`alter table`,`add constraint`,`grouping sets`,`on overflow`,`character set`,`respect nulls`,`ignore nulls`,`nulls first`,`nulls last`,`depth first`,`breadth first`],p=u,m=[...l,...c].filter(e=>!u.includes(e)),h={scope:`variable`,match:/@[a-z0-9][a-z0-9_]*/},g={scope:`operator`,match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},_={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function v(e){return t.concat(/\b/,t.either(...e.map(e=>e.replace(/\s+/,`\\s+`))),/\b/)}let y={scope:`keyword`,match:v(f),relevance:0};function b(e,{exceptions:t,when:n}={}){let r=n;return t||=[],e.map(e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e)}return{name:`SQL`,case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:b(m,{when:e=>e.length<3}),literal:a,type:s,built_in:d},contains:[{scope:`type`,match:v(o)},y,_,h,r,i,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,g]}}function KB(e){return e?typeof e==`string`?e:e.source:null}function qB(e){return JB(`(?=`,e,`)`)}function JB(...e){return e.map(e=>KB(e)).join(``)}function YB(e){let t=e[e.length-1];return typeof t==`object`&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function XB(...e){return`(`+(YB(e).capture?``:`?:`)+e.map(e=>KB(e)).join(`|`)+`)`}var ZB=e=>JB(/\b/,e,/\w$/.test(e)?/\b/:/\B/),QB=[`Protocol`,`Type`].map(ZB),$B=[`init`,`self`].map(ZB),eV=[`Any`,`Self`],tV=[`actor`,`any`,`associatedtype`,`async`,`await`,/as\?/,/as!/,`as`,`borrowing`,`break`,`case`,`catch`,`class`,`consume`,`consuming`,`continue`,`convenience`,`copy`,`default`,`defer`,`deinit`,`didSet`,`distributed`,`do`,`dynamic`,`each`,`else`,`enum`,`extension`,`fallthrough`,/fileprivate\(set\)/,`fileprivate`,`final`,`for`,`func`,`get`,`guard`,`if`,`import`,`indirect`,`infix`,/init\?/,/init!/,`inout`,/internal\(set\)/,`internal`,`in`,`is`,`isolated`,`nonisolated`,`lazy`,`let`,`macro`,`mutating`,`nonmutating`,/open\(set\)/,`open`,`operator`,`optional`,`override`,`package`,`postfix`,`precedencegroup`,`prefix`,/private\(set\)/,`private`,`protocol`,/public\(set\)/,`public`,`repeat`,`required`,`rethrows`,`return`,`set`,`some`,`static`,`struct`,`subscript`,`super`,`switch`,`throws`,`throw`,/try\?/,/try!/,`try`,`typealias`,/unowned\(safe\)/,/unowned\(unsafe\)/,`unowned`,`var`,`weak`,`where`,`while`,`willSet`],nV=[`false`,`nil`,`true`],rV=[`assignment`,`associativity`,`higherThan`,`left`,`lowerThan`,`none`,`right`],iV=[`#colorLiteral`,`#column`,`#dsohandle`,`#else`,`#elseif`,`#endif`,`#error`,`#file`,`#fileID`,`#fileLiteral`,`#filePath`,`#function`,`#if`,`#imageLiteral`,`#keyPath`,`#line`,`#selector`,`#sourceLocation`,`#warning`],aV=`abs.all.any.assert.assertionFailure.debugPrint.dump.fatalError.getVaList.isKnownUniquelyReferenced.max.min.numericCast.pointwiseMax.pointwiseMin.precondition.preconditionFailure.print.readLine.repeatElement.sequence.stride.swap.swift_unboxFromSwiftValueWithType.transcode.type.unsafeBitCast.unsafeDowncast.withExtendedLifetime.withUnsafeMutablePointer.withUnsafePointer.withVaList.withoutActuallyEscaping.zip`.split(`.`),oV=XB(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),sV=XB(oV,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),cV=JB(oV,sV,`*`),lV=XB(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),uV=XB(lV,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),dV=JB(lV,uV,`*`),fV=JB(/[A-Z]/,uV,`*`),pV=[`attached`,`autoclosure`,JB(/convention\(/,XB(`swift`,`block`,`c`),/\)/),`discardableResult`,`dynamicCallable`,`dynamicMemberLookup`,`escaping`,`freestanding`,`frozen`,`GKInspectable`,`IBAction`,`IBDesignable`,`IBInspectable`,`IBOutlet`,`IBSegueAction`,`inlinable`,`main`,`nonobjc`,`NSApplicationMain`,`NSCopying`,`NSManaged`,JB(/objc\(/,dV,/\)/),`objc`,`objcMembers`,`propertyWrapper`,`requires_stored_property_inits`,`resultBuilder`,`Sendable`,`testable`,`UIApplicationMain`,`unchecked`,`unknown`,`usableFromInline`,`warn_unqualified_access`],mV=[`iOS`,`iOSApplicationExtension`,`macOS`,`macOSApplicationExtension`,`macCatalyst`,`macCatalystApplicationExtension`,`watchOS`,`watchOSApplicationExtension`,`tvOS`,`tvOSApplicationExtension`,`swift`];function hV(e){let t={match:/\s+/,relevance:0},n=e.COMMENT(`/\\*`,`\\*/`,{contains:[`self`]}),r=[e.C_LINE_COMMENT_MODE,n],i={match:[/\./,XB(...QB,...$B)],className:{2:`keyword`}},a={match:JB(/\./,XB(...tV)),relevance:0},o=tV.filter(e=>typeof e==`string`).concat([`_|0`]),s={variants:[{className:`keyword`,match:XB(...tV.filter(e=>typeof e!=`string`).concat(eV).map(ZB),...$B)}]},c={$pattern:XB(/\b\w+/,/#\w+/),keyword:o.concat(iV),literal:nV},l=[i,a,s],u=[{match:JB(/\./,XB(...aV)),relevance:0},{className:`built_in`,match:JB(/\b/,XB(...aV),/(?=\()/)}],d={match:/->/,relevance:0},f=[d,{className:`operator`,relevance:0,variants:[{match:cV},{match:`\\.(\\.|${sV})+`}]}],p=`([0-9]_*)+`,m=`([0-9a-fA-F]_*)+`,h={className:`number`,relevance:0,variants:[{match:`\\b(${p})(\\.(${p}))?([eE][+-]?(${p}))?\\b`},{match:`\\b0x(${m})(\\.(${m}))?([pP][+-]?(${p}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},g=(e=``)=>({className:`subst`,variants:[{match:JB(/\\/,e,/[0\\tnr"']/)},{match:JB(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),_=(e=``)=>({className:`subst`,match:JB(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),v=(e=``)=>({className:`subst`,label:`interpol`,begin:JB(/\\/,e,/\(/),end:/\)/}),y=(e=``)=>({begin:JB(e,/"""/),end:JB(/"""/,e),contains:[g(e),_(e),v(e)]}),b=(e=``)=>({begin:JB(e,/"/),end:JB(/"/,e),contains:[g(e),v(e)]}),x={className:`string`,variants:[y(),y(`#`),y(`##`),y(`###`),b(),b(`#`),b(`##`),b(`###`)]},S=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],C={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:S},w=e=>{let t=JB(e,/\//),n=JB(/\//,e);return{begin:t,end:n,contains:[...S,{scope:`comment`,begin:`#(?!.*${n})`,end:/$/}]}},T={scope:`regexp`,variants:[w(`###`),w(`##`),w(`#`),C]},E={match:JB(/`/,dV,/`/)},D=[E,{className:`variable`,match:/\$\d+/},{className:`variable`,match:`\\$${uV}+`}],O=[{match:/(@|#(un)?)available/,scope:`keyword`,starts:{contains:[{begin:/\(/,end:/\)/,keywords:mV,contains:[...f,h,x]}]}},{scope:`keyword`,match:JB(/@/,XB(...pV),qB(XB(/\(/,/\s+/)))},{scope:`meta`,match:JB(/@/,dV)}],k={match:qB(/\b[A-Z]/),relevance:0,contains:[{className:`type`,match:JB(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,uV,`+`)},{className:`type`,match:fV,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:JB(/\s+&\s+/,qB(fV)),relevance:0}]},A={begin:/</,end:/>/,keywords:c,contains:[...r,...l,...O,d,k]};k.contains.push(A);let j={begin:/\(/,end:/\)/,relevance:0,keywords:c,contains:[`self`,{match:JB(dV,/\s*:/),keywords:`_|0`,relevance:0},...r,T,...l,...u,...f,h,x,...D,...O,k]},M={begin:/</,end:/>/,keywords:`repeat each`,contains:[...r,k]},N={begin:/\(/,end:/\)/,keywords:c,contains:[{begin:XB(qB(JB(dV,/\s*:/)),qB(JB(dV,/\s+/,dV,/\s*:/))),end:/:/,relevance:0,contains:[{className:`keyword`,match:/\b_\b/},{className:`params`,match:dV}]},...r,...l,...f,h,x,...O,k,j],endsParent:!0,illegal:/["']/},P={match:[/(func|macro)/,/\s+/,XB(E.match,dV,cV)],className:{1:`keyword`,3:`title.function`},contains:[M,N,t],illegal:[/\[/,/%/]},F={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:`keyword`},contains:[M,N,t],illegal:/\[|%/},I={match:[/operator/,/\s+/,cV],className:{1:`keyword`,3:`title`}},L={begin:[/precedencegroup/,/\s+/,fV],className:{1:`keyword`,3:`title`},contains:[k],keywords:[...rV,...nV],end:/}/},R={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:`keyword`,3:`keyword`,5:`title.function`}},z={match:[/class\b/,/\s+/,/var\b/],scope:{1:`keyword`,3:`keyword`}},ee={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,dV,/\s*/],beginScope:{1:`keyword`,3:`title.class`},keywords:c,contains:[M,...l,{begin:/:/,end:/\{/,keywords:c,contains:[{scope:`title.class.inherited`,match:fV},...l],relevance:0}]};for(let e of x.variants){let t=e.contains.find(e=>e.label===`interpol`);t.keywords=c;let n=[...l,...u,...f,h,x,...D];t.contains=[...n,{begin:/\(/,end:/\)/,contains:[`self`,...n]}]}return{name:`Swift`,keywords:c,contains:[...r,P,F,R,z,ee,I,L,{beginKeywords:`import`,end:/$/,contains:[...r],relevance:0},T,...l,...u,...f,h,x,...D,...O,k,j]}}var gV=`[A-Za-z$_][0-9A-Za-z$_]*`,_V=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),vV=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],yV=`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),bV=[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],xV=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`],SV=[`arguments`,`this`,`super`,`console`,`window`,`document`,`localStorage`,`sessionStorage`,`module`,`global`],CV=[].concat(xV,yV,bV);function wV(e){let t=e.regex,n=(e,{after:t})=>{let n=`</`+e[0].slice(1);return e.input.indexOf(n,t)!==-1},r=gV,i={begin:`<>`,end:`</>`},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{let r=e[0].length+e.index,i=e.input[r];if(i===`<`||i===`,`){t.ignoreMatch();return}i===`>`&&(n(e,{after:r})||t.ignoreMatch());let a,o=e.input.substring(r);if(a=o.match(/^\s*=/)){t.ignoreMatch();return}if((a=o.match(/^\s+extends\s+/))&&a.index===0){t.ignoreMatch();return}}},s={$pattern:gV,keyword:_V,literal:vV,built_in:CV,"variable.language":SV},c=`[0-9](_?[0-9])*`,l=`\\.(${c})`,u=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,d={className:`number`,variants:[{begin:`(\\b(${u})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${u})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*n?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*n?\\b`},{begin:`\\b0[0-7]+n?\\b`}],relevance:0},f={className:`subst`,begin:`\\$\\{`,end:`\\}`,keywords:s,contains:[]},p={begin:".?html`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`xml`}},m={begin:".?css`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`css`}},h={begin:".?gql`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`graphql`}},g={className:`string`,begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},_={className:`comment`,variants:[e.COMMENT(/\/\*\*(?!\/)/,`\\*/`,{relevance:0,contains:[{begin:`(?=@[A-Za-z]+)`,relevance:0,contains:[{className:`doctag`,begin:`@[A-Za-z]+`},{className:`type`,begin:`\\{`,end:`\\}`,excludeEnd:!0,excludeBegin:!0,relevance:0},{className:`variable`,begin:r+`(?=\\s*(-)|$)`,endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,{match:/\$\d+/},d];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:s,contains:[`self`].concat(v)});let y=[].concat(_,f.contains),b=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:[`self`].concat(y)}]),x={className:`params`,begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b},S={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,`(`,t.concat(/\./,r),`)*`)],scope:{1:`keyword`,3:`title.class`,5:`keyword`,7:`title.class.inherited`}},{match:[/class/,/\s+/,r],scope:{1:`keyword`,3:`title.class`}}]},C={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:`title.class`,keywords:{_:[...yV,...bV]}},w={label:`use_strict`,className:`meta`,relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},T={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:`keyword`,3:`title.function`},label:`func.def`,contains:[x],illegal:/%/},E={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`};function D(e){return t.concat(`(?!`,e.join(`|`),`)`)}let O={match:t.concat(/\b/,D([...xV,`super`,`import`].map(e=>`${e}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:`title.function`,relevance:0},k={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:`prototype`,className:`property`,relevance:0},A={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:`keyword`,3:`title.function`},contains:[{begin:/\(\)/},x]},j=`(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|`+e.UNDERSCORE_IDENT_RE+`)\\s*=>`,M={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(j)],keywords:`async`,className:{1:`keyword`,3:`title.function`},contains:[x]};return{name:`JavaScript`,aliases:[`js`,`jsx`,`mjs`,`cjs`],keywords:s,exports:{PARAMS_CONTAINS:b,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:`shebang`,binary:`node`,relevance:5}),w,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,_,{match:/\$\d+/},d,C,{scope:`attr`,match:r+t.lookahead(`:`),relevance:0},M,{begin:`(`+e.RE_STARTERS_RE+`|\\b(case|return|throw)\\b)\\s*`,keywords:`return throw case`,relevance:0,contains:[_,e.REGEXP_MODE,{className:`function`,begin:j,returnBegin:!0,end:`\\s*=>`,contains:[{className:`params`,variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:a},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:`xml`,contains:[{begin:o.begin,end:o.end,skip:!0,contains:[`self`]}]}]},T,{beginKeywords:`while if switch catch for`},{begin:`\\b(?!function)`+e.UNDERSCORE_IDENT_RE+`\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{`,returnBegin:!0,label:`func.def`,contains:[x,e.inherit(e.TITLE_MODE,{begin:r,className:`title.function`})]},{match:/\.\.\./,relevance:0},k,{match:`\\$`+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:`title.function`},contains:[x]},O,E,S,A,{match:/\$[(.]/}]}}function TV(e){let t=e.regex,n=wV(e),r=gV,i=[`any`,`void`,`number`,`boolean`,`string`,`object`,`never`,`symbol`,`bigint`,`unknown`],a={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:`keyword`,3:`title.class`}},o={beginKeywords:`interface`,end:/\{/,excludeEnd:!0,keywords:{keyword:`interface extends`,built_in:i},contains:[n.exports.CLASS_REFERENCE]},s={className:`meta`,relevance:10,begin:/^\s*['"]use strict['"]/},c={$pattern:gV,keyword:_V.concat([`type`,`interface`,`public`,`private`,`protected`,`implements`,`declare`,`abstract`,`readonly`,`enum`,`override`,`satisfies`]),literal:vV,built_in:CV.concat(i),"variable.language":SV},l={className:`meta`,begin:`@`+r},u=(e,t,n)=>{let r=e.contains.findIndex(e=>e.label===t);if(r===-1)throw Error(`can not find mode to replace`);e.contains.splice(r,1,n)};Object.assign(n.keywords,c),n.exports.PARAMS_CONTAINS.push(l);let d=n.contains.find(e=>e.scope===`attr`),f=Object.assign({},d,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,d,f]),n.contains=n.contains.concat([l,a,o,f]),u(n,`shebang`,e.SHEBANG()),u(n,`use_strict`,s);let p=n.contains.find(e=>e.label===`func.def`);return p.relevance=0,Object.assign(n,{name:`TypeScript`,aliases:[`ts`,`tsx`,`mts`,`cts`]}),n}function EV(e){let t=e.regex,n={className:`string`,begin:/"(""|[^/n])"C\b/},r={className:`string`,begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i=/\d{1,2}\/\d{1,2}\/\d{4}/,a=/\d{4}-\d{1,2}-\d{1,2}/,o=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,s=/\d{1,2}(:\d{1,2}){1,2}/,c={className:`literal`,variants:[{begin:t.concat(/# */,t.either(a,i),/ *#/)},{begin:t.concat(/# */,s,/ *#/)},{begin:t.concat(/# */,o,/ *#/)},{begin:t.concat(/# */,t.either(a,i),/ +/,t.either(o,s),/ *#/)}]},l={className:`number`,relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},u={className:`label`,begin:/^\w+:/},d=e.COMMENT(/'''/,/$/,{contains:[{className:`doctag`,begin:/<\/?/,end:/>/}]}),f=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:`Visual Basic .NET`,aliases:[`vb`],case_insensitive:!0,classNameAliases:{label:`symbol`},keywords:{keyword:`addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield`,built_in:`addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort`,type:`boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort`,literal:`true false nothing`},illegal:`//|\\{|\\}|endif|gosub|variant|wend|^\\$ `,contains:[n,r,c,l,u,d,f,{className:`meta`,begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:`const disable else elseif enable end externalsource if region then`},contains:[f]}]}}function DV(e){e.regex;let t=e.COMMENT(/\(;/,/;\)/);t.contains.push(`self`);let n=e.COMMENT(/;;/,/$/),r=`anyfunc,block,br,br_if,br_table,call,call_indirect,data,drop,elem,else,end,export,func,global.get,global.set,local.get,local.set,local.tee,get_global,get_local,global,if,import,local,loop,memory,memory.grow,memory.size,module,mut,nop,offset,param,result,return,select,set_global,set_local,start,table,tee_local,then,type,unreachable`.split(`,`),i={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:`keyword`,3:`title.function`}},a={className:`variable`,begin:/\$[\w_]+/},o={match:/(\((?!;)|\))+/,className:`punctuation`,relevance:0},s={className:`number`,relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},c={match:/(i32|i64|f32|f64)(?!\.)/,className:`type`},l={className:`keyword`,match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:`WebAssembly`,keywords:{$pattern:/[\w.]+/,keyword:r},contains:[n,t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:`keyword`,3:`operator`}},a,o,i,e.QUOTE_STRING_MODE,c,l,s]}}function OV(e){let t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,i={className:`symbol`,begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:`keyword`,begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(a,{begin:/\(/,end:/\)/}),s=e.inherit(e.APOS_STRING_MODE,{className:`string`}),c=e.inherit(e.QUOTE_STRING_MODE,{className:`string`}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:`attr`,begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:`string`,endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[i]},{begin:/'/,end:/'/,contains:[i]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:`HTML, XML`,aliases:[`html`,`xhtml`,`rss`,`atom`,`xjb`,`xsd`,`xsl`,`plist`,`wsf`,`svg`],case_insensitive:!0,unicodeRegex:!0,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,c,s,o,{begin:/\[/,end:/\]/,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,contains:[a,o,c,s]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},i,{className:`meta`,end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:`tag`,begin:/<style(?=\s|>)/,end:/>/,keywords:{name:`style`},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:[`css`,`xml`]}},{className:`tag`,begin:/<script(?=\s|>)/,end:/>/,keywords:{name:`script`},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:[`javascript`,`handlebars`,`xml`]}},{className:`tag`,begin:/<>|<\/>/},{className:`tag`,begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:`name`,begin:n,relevance:0,starts:l}]},{className:`tag`,begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:`name`,begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function kV(e){let t=`true false yes no null`,n=`[\\w#;/?:@&=+$,.~*'()[\\]]+`,r={className:`attr`,variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},i={className:`template-variable`,variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},a={className:`string`,relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:`char.escape`,relevance:0}]},o={className:`string`,relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,i]},s=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),c={className:`number`,begin:`\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b`},l={end:`,`,endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},u={begin:/\{/,end:/\}/,contains:[l],illegal:`\\n`,relevance:0},d={begin:`\\[`,end:`\\]`,contains:[l],illegal:`\\n`,relevance:0},f=[r,{className:`meta`,begin:`^---\\s*$`,relevance:10},{className:`string`,begin:`[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*`},{begin:`<%[%=-]?`,end:`[%-]?%>`,subLanguage:`ruby`,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:`type`,begin:`!\\w+!`+n},{className:`type`,begin:`!<`+n+`>`},{className:`type`,begin:`!`+n},{className:`type`,begin:`!!`+n},{className:`meta`,begin:`&`+e.UNDERSCORE_IDENT_RE+`$`},{className:`meta`,begin:`\\*`+e.UNDERSCORE_IDENT_RE+`$`},{className:`bullet`,begin:`-(?=[ ]|$)`,relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},c,{className:`number`,begin:e.C_NUMBER_RE+`\\b`,relevance:0},u,d,a,o],p=[...f];return p.pop(),p.push(s),l.contains=p,{name:`YAML`,case_insensitive:!0,aliases:[`yml`],contains:f}}var AV={arduino:Dz,bash:Oz,c:kz,cpp:Az,csharp:jz,css:Bz,diff:Vz,go:Hz,graphql:Uz,ini:Wz,java:Xz,javascript:aB,json:oB,kotlin:dB,less:xB,lua:SB,makefile:CB,markdown:wB,objectivec:TB,perl:EB,php:DB,"php-template":OB,plaintext:kB,python:AB,"python-repl":jB,r:MB,ruby:NB,rust:PB,scss:UB,shell:WB,sql:GB,swift:hV,typescript:TV,vbnet:EV,wasm:DV,xml:OV,yaml:kV},jV=l(o(((e,t)=>{function n(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw Error(`map is read-only`)}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw Error(`set is read-only`)}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{let r=e[t],i=typeof r;(i===`object`||i===`function`)&&!Object.isFrozen(r)&&n(r)}),e}var r=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function i(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#x27;`)}function a(e,...t){let n=Object.create(null);for(let t in e)n[t]=e[t];return t.forEach(function(e){for(let t in e)n[t]=e[t]}),n}var o=`</span>`,s=e=>!!e.scope,c=(e,{prefix:t})=>{if(e.startsWith(`language:`))return e.replace(`language:`,`language-`);if(e.includes(`.`)){let n=e.split(`.`);return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${`_`.repeat(t+1)}`)].join(` `)}return`${t}${e}`},l=class{constructor(e,t){this.buffer=``,this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=i(e)}openNode(e){if(!s(e))return;let t=c(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){s(e)&&(this.buffer+=o)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}},u=(e={})=>{let t={children:[]};return Object.assign(t,e),t},d=class e{constructor(){this.rootNode=u(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=u({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t==`string`?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(t){typeof t!=`string`&&t.children&&(t.children.every(e=>typeof e==`string`)?t.children=[t.children.join(``)]:t.children.forEach(t=>{e._collapse(t)}))}},f=class extends d{constructor(e){super(),this.options=e}addText(e){e!==``&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new l(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function p(e){return e?typeof e==`string`?e:e.source:null}function m(e){return _(`(?=`,e,`)`)}function h(e){return _(`(?:`,e,`)*`)}function g(e){return _(`(?:`,e,`)?`)}function _(...e){return e.map(e=>p(e)).join(``)}function v(e){let t=e[e.length-1];return typeof t==`object`&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function y(...e){return`(`+(v(e).capture?``:`?:`)+e.map(e=>p(e)).join(`|`)+`)`}function b(e){return RegExp(e.toString()+`|`).exec(``).length-1}function x(e,t){let n=e&&e.exec(t);return n&&n.index===0}var S=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function C(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;let t=n,r=p(e),i=``;for(;r.length>0;){let e=S.exec(r);if(!e){i+=r;break}i+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),e[0][0]===`\\`&&e[1]?i+=`\\`+String(Number(e[1])+t):(i+=e[0],e[0]===`(`&&n++)}return i}).map(e=>`(${e})`).join(t)}var w=/\b\B/,T=`[a-zA-Z]\\w*`,E=`[a-zA-Z_]\\w*`,D=`\\b\\d+(\\.\\d+)?`,O=`(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)`,k=`\\b(0b[01]+)`,A=`!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~`,j=(e={})=>{let t=/^#![ ]*\//;return e.binary&&(e.begin=_(t,/.*\b/,e.binary,/\b.*/)),a({scope:`meta`,begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{e.index!==0&&t.ignoreMatch()}},e)},M={begin:`\\\\[\\s\\S]`,relevance:0},N={scope:`string`,begin:`'`,end:`'`,illegal:`\\n`,contains:[M]},P={scope:`string`,begin:`"`,end:`"`,illegal:`\\n`,contains:[M]},F={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},I=function(e,t,n={}){let r=a({scope:`comment`,begin:e,end:t,contains:[]},n);r.contains.push({scope:`doctag`,begin:`[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)`,end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let i=y(`I`,`a`,`is`,`so`,`us`,`to`,`at`,`if`,`in`,`it`,`on`,/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:_(/[ ]+/,`(`,i,/[.]?[:]?([.][ ]|[ ])/,`){3}`)}),r},L=I(`//`,`$`),R=I(`/\\*`,`\\*/`),z=I(`#`,`$`),ee={scope:`number`,begin:D,relevance:0},te={scope:`number`,begin:O,relevance:0},ne={scope:`number`,begin:k,relevance:0},B={scope:`regexp`,begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[M,{begin:/\[/,end:/\]/,relevance:0,contains:[M]}]},V={scope:`title`,begin:T,relevance:0},re={scope:`title`,begin:E,relevance:0},ie={begin:`\\.\\s*`+E,relevance:0},ae=Object.freeze({__proto__:null,APOS_STRING_MODE:N,BACKSLASH_ESCAPE:M,BINARY_NUMBER_MODE:ne,BINARY_NUMBER_RE:k,COMMENT:I,C_BLOCK_COMMENT_MODE:R,C_LINE_COMMENT_MODE:L,C_NUMBER_MODE:te,C_NUMBER_RE:O,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:z,IDENT_RE:T,MATCH_NOTHING_RE:w,METHOD_GUARD:ie,NUMBER_MODE:ee,NUMBER_RE:D,PHRASAL_WORDS_MODE:F,QUOTE_STRING_MODE:P,REGEXP_MODE:B,RE_STARTERS_RE:A,SHEBANG:j,TITLE_MODE:V,UNDERSCORE_IDENT_RE:E,UNDERSCORE_TITLE_MODE:re});function oe(e,t){e.input[e.index-1]===`.`&&t.ignoreMatch()}function se(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function ce(e,t){t&&e.beginKeywords&&(e.begin=`\\b(`+e.beginKeywords.split(` `).join(`|`)+`)(?!\\.)(?=\\b|\\s)`,e.__beforeBegin=oe,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function H(e,t){Array.isArray(e.illegal)&&(e.illegal=y(...e.illegal))}function le(e,t){if(e.match){if(e.begin||e.end)throw Error(`begin & end are not supported with match`);e.begin=e.match,delete e.match}}function ue(e,t){e.relevance===void 0&&(e.relevance=1)}var U=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw Error(`beforeMatch cannot be used with starts`);let n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=_(n.beforeMatch,m(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},de=[`of`,`and`,`for`,`in`,`not`,`or`,`if`,`then`,`parent`,`list`,`value`],fe=`keyword`;function pe(e,t,n=fe){let r=Object.create(null);return typeof e==`string`?i(n,e.split(` `)):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(n){Object.assign(r,pe(e[n],t,n))}),r;function i(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){let n=t.split(`|`);r[n[0]]=[e,me(n[0],n[1])]})}}function me(e,t){return t?Number(t):he(e)?0:1}function he(e){return de.includes(e.toLowerCase())}var ge={},_e=e=>{console.error(e)},ve=(e,...t)=>{console.log(`WARN: ${e}`,...t)},ye=(e,t)=>{ge[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),ge[`${e}/${t}`]=!0)},be=Error();function xe(e,t,{key:n}){let r=0,i=e[n],a={},o={};for(let e=1;e<=t.length;e++)o[e+r]=i[e],a[e+r]=!0,r+=b(t[e-1]);e[n]=o,e[n]._emit=a,e[n]._multi=!0}function Se(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw _e(`skip, excludeBegin, returnBegin not compatible with beginScope: {}`),be;if(typeof e.beginScope!=`object`||e.beginScope===null)throw _e(`beginScope must be object`),be;xe(e,e.begin,{key:`beginScope`}),e.begin=C(e.begin,{joinWith:``})}}function Ce(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw _e(`skip, excludeEnd, returnEnd not compatible with endScope: {}`),be;if(typeof e.endScope!=`object`||e.endScope===null)throw _e(`endScope must be object`),be;xe(e,e.end,{key:`endScope`}),e.end=C(e.end,{joinWith:``})}}function we(e){e.scope&&typeof e.scope==`object`&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Te(e){we(e),typeof e.beginScope==`string`&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope==`string`&&(e.endScope={_wrap:e.endScope}),Se(e),Ce(e)}function Ee(e){function t(t,n){return new RegExp(p(t),`m`+(e.case_insensitive?`i`:``)+(e.unicodeRegex?`u`:``)+(n?`g`:``))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=b(e)+1}compile(){this.regexes.length===0&&(this.exec=()=>null),this.matcherRe=t(C(this.regexes.map(e=>e[1]),{joinWith:`|`}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;let t=this.matcherRe.exec(e);if(!t)return null;let n=t.findIndex((e,t)=>t>0&&e!==void 0),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];let t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),t.type===`begin`&&this.count++}exec(e){let t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition()&&!(n&&n.index===this.lastIndex)){let t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}function i(e){let t=new r;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:`begin`})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:`end`}),e.illegal&&t.addRule(e.illegal,{type:`illegal`}),t}function o(n,r){let a=n;if(n.isCompiled)return a;[se,le,Te,U].forEach(e=>e(n,r)),e.compilerExtensions.forEach(e=>e(n,r)),n.__beforeBegin=null,[ce,H,ue].forEach(e=>e(n,r)),n.isCompiled=!0;let s=null;return typeof n.keywords==`object`&&n.keywords.$pattern&&(n.keywords=Object.assign({},n.keywords),s=n.keywords.$pattern,delete n.keywords.$pattern),s||=/\w+/,n.keywords&&=pe(n.keywords,e.case_insensitive),a.keywordPatternRe=t(s,!0),r&&(n.begin||=/\B|\b/,a.beginRe=t(a.begin),!n.end&&!n.endsWithParent&&(n.end=/\B|\b/),n.end&&(a.endRe=t(a.end)),a.terminatorEnd=p(a.end)||``,n.endsWithParent&&r.terminatorEnd&&(a.terminatorEnd+=(n.end?`|`:``)+r.terminatorEnd)),n.illegal&&(a.illegalRe=t(n.illegal)),n.contains||=[],n.contains=[].concat(...n.contains.map(function(e){return Oe(e===`self`?n:e)})),n.contains.forEach(function(e){o(e,a)}),n.starts&&o(n.starts,r),a.matcher=i(a),a}if(e.compilerExtensions||=[],e.contains&&e.contains.includes(`self`))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=a(e.classNameAliases||{}),o(e)}function De(e){return e?e.endsWithParent||De(e.starts):!1}function Oe(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return a(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:De(e)?a(e,{starts:e.starts?a(e.starts):null}):Object.isFrozen(e)?a(e):e}var ke=`11.11.1`,Ae=class extends Error{constructor(e,t){super(e),this.name=`HTMLInjectionError`,this.html=t}},je=i,Me=a,Ne=Symbol(`nomatch`),Pe=7,Fe=function(e){let t=Object.create(null),i=Object.create(null),a=[],o=!0,s=`Could not find the language '{}', did you forget to load/include a language module?`,c={disableAutodetect:!0,name:`Plain text`,contains:[]},l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:`hljs-`,cssSelector:`pre code`,languages:null,__emitter:f};function u(e){return l.noHighlightRe.test(e)}function d(e){let t=e.className+` `;t+=e.parentNode?e.parentNode.className:``;let n=l.languageDetectRe.exec(t);if(n){let t=N(n[1]);return t||(ve(s.replace(`{}`,n[1])),ve(`Falling back to no-highlight mode for this block.`,e)),t?n[1]:`no-highlight`}return t.split(/\s+/).find(e=>u(e)||N(e))}function p(e,t,n){let r=``,i=``;typeof t==`object`?(r=e,n=t.ignoreIllegals,i=t.language):(ye(`10.7.0`,`highlight(lang, code, ...args) has been deprecated.`),ye(`10.7.0`,`Please use highlight(code, options) instead.
1931
1931
  https://github.com/highlightjs/highlight.js/issues/2277`),i=e,r=t),n===void 0&&(n=!0);let a={code:r,language:i};z(`before:highlight`,a);let o=a.result?a.result:v(a.language,a.code,n);return o.code=a.code,z(`after:highlight`,o),o}function v(e,n,i,a){let c=Object.create(null);function u(e,t){return e.keywords[t]}function d(){if(!A.keywords){M.addText(P);return}let e=0;A.keywordPatternRe.lastIndex=0;let t=A.keywordPatternRe.exec(P),n=``;for(;t;){n+=P.substring(e,t.index);let r=D.case_insensitive?t[0].toLowerCase():t[0],i=u(A,r);if(i){let[e,a]=i;if(M.addText(n),n=``,c[r]=(c[r]||0)+1,c[r]<=Pe&&(F+=a),e.startsWith(`_`))n+=t[0];else{let n=D.classNameAliases[e]||e;m(t[0],n)}}else n+=t[0];e=A.keywordPatternRe.lastIndex,t=A.keywordPatternRe.exec(P)}n+=P.substring(e),M.addText(n)}function f(){if(P===``)return;let e=null;if(typeof A.subLanguage==`string`){if(!t[A.subLanguage]){M.addText(P);return}e=v(A.subLanguage,P,!0,j[A.subLanguage]),j[A.subLanguage]=e._top}else e=S(P,A.subLanguage.length?A.subLanguage:null);A.relevance>0&&(F+=e.relevance),M.__addSublanguage(e._emitter,e.language)}function p(){A.subLanguage==null?d():f(),P=``}function m(e,t){e!==``&&(M.startScope(t),M.addText(e),M.endScope())}function h(e,t){let n=1,r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}let r=D.classNameAliases[e[n]]||e[n],i=t[n];r?m(i,r):(P=i,d(),P=``),n++}}function g(e,t){return e.scope&&typeof e.scope==`string`&&M.openNode(D.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(m(P,D.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),P=``):e.beginScope._multi&&(h(e.beginScope,t),P=``)),A=Object.create(e,{parent:{value:A}}),A}function _(e,t,n){let i=x(e.endRe,n);if(i){if(e[`on:end`]){let n=new r(e);e[`on:end`](t,n),n.isMatchIgnored&&(i=!1)}if(i){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return _(e.parent,t,n)}function y(e){return A.matcher.regexIndex===0?(P+=e[0],1):(R=!0,0)}function b(e){let t=e[0],n=e.rule,i=new r(n),a=[n.__beforeBegin,n[`on:begin`]];for(let n of a)if(n&&(n(e,i),i.isMatchIgnored))return y(t);return n.skip?P+=t:(n.excludeBegin&&(P+=t),p(),!n.returnBegin&&!n.excludeBegin&&(P=t)),g(n,e),n.returnBegin?0:t.length}function C(e){let t=e[0],r=n.substring(e.index),i=_(A,e,r);if(!i)return Ne;let a=A;A.endScope&&A.endScope._wrap?(p(),m(t,A.endScope._wrap)):A.endScope&&A.endScope._multi?(p(),h(A.endScope,e)):a.skip?P+=t:(a.returnEnd||a.excludeEnd||(P+=t),p(),a.excludeEnd&&(P=t));do A.scope&&M.closeNode(),!A.skip&&!A.subLanguage&&(F+=A.relevance),A=A.parent;while(A!==i.parent);return i.starts&&g(i.starts,e),a.returnEnd?0:t.length}function w(){let e=[];for(let t=A;t!==D;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>M.openNode(e))}let T={};function E(t,r){let a=r&&r[0];if(P+=t,a==null)return p(),0;if(T.type===`begin`&&r.type===`end`&&T.index===r.index&&a===``){if(P+=n.slice(r.index,r.index+1),!o){let t=Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=T.rule,t}return 1}if(T=r,r.type===`begin`)return b(r);if(r.type===`illegal`&&!i){let e=Error(`Illegal lexeme "`+a+`" for mode "`+(A.scope||`<unnamed>`)+`"`);throw e.mode=A,e}else if(r.type===`end`){let e=C(r);if(e!==Ne)return e}if(r.type===`illegal`&&a===``)return P+=`
1932
- `,1;if(L>1e5&&L>r.index*3)throw Error(`potential infinite loop, way more iterations than matches`);return P+=a,a.length}let D=N(e);if(!D)throw _e(s.replace(`{}`,e)),Error(`Unknown language: "`+e+`"`);let O=Ee(D),k=``,A=a||O,j={},M=new l.__emitter(l);w();let P=``,F=0,I=0,L=0,R=!1;try{if(D.__emitTokens)D.__emitTokens(n,M);else{for(A.matcher.considerAll();;){L++,R?R=!1:A.matcher.considerAll(),A.matcher.lastIndex=I;let e=A.matcher.exec(n);if(!e)break;let t=E(n.substring(I,e.index),e);I=e.index+t}E(n.substring(I))}return M.finalize(),k=M.toHTML(),{language:e,value:k,relevance:F,illegal:!1,_emitter:M,_top:A}}catch(t){if(t.message&&t.message.includes(`Illegal`))return{language:e,value:je(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:I,context:n.slice(I-100,I+100),mode:t.mode,resultSoFar:k},_emitter:M};if(o)return{language:e,value:je(n),illegal:!1,relevance:0,errorRaised:t,_emitter:M,_top:A};throw t}}function b(e){let t={value:je(e),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return t._emitter.addText(e),t}function S(e,n){n=n||l.languages||Object.keys(t);let r=b(e),i=n.filter(N).filter(F).map(t=>v(t,e,!1));i.unshift(r);let[a,o]=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(N(e.language).supersetOf===t.language)return 1;if(N(t.language).supersetOf===e.language)return-1}return 0}),s=a;return s.secondBest=o,s}function C(e,t,n){let r=t&&i[t]||n;e.classList.add(`hljs`),e.classList.add(`language-${r}`)}function w(e){let t=null,n=d(e);if(u(n))return;if(z(`before:highlightElement`,{el:e,language:n}),e.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);return}if(e.children.length>0&&(l.ignoreUnescapedHTML||(console.warn(`One of your code blocks includes unescaped HTML. This is a potentially serious security risk.`),console.warn(`https://github.com/highlightjs/highlight.js/wiki/security`),console.warn(`The element with unescaped HTML:`),console.warn(e)),l.throwUnescapedHTML))throw new Ae(`One of your code blocks includes unescaped HTML.`,e.innerHTML);t=e;let r=t.textContent,i=n?p(r,{language:n,ignoreIllegals:!0}):S(r);e.innerHTML=i.value,e.dataset.highlighted=`yes`,C(e,n,i.language),e.result={language:i.language,re:i.relevance,relevance:i.relevance},i.secondBest&&(e.secondBest={language:i.secondBest.language,relevance:i.secondBest.relevance}),z(`after:highlightElement`,{el:e,result:i,text:r})}function T(e){l=Me(l,e)}let E=()=>{k(),ye(`10.6.0`,`initHighlighting() deprecated. Use highlightAll() now.`)};function D(){k(),ye(`10.6.0`,`initHighlightingOnLoad() deprecated. Use highlightAll() now.`)}let O=!1;function k(){function e(){k()}if(document.readyState===`loading`){O||window.addEventListener(`DOMContentLoaded`,e,!1),O=!0;return}document.querySelectorAll(l.cssSelector).forEach(w)}function A(n,r){let i=null;try{i=r(e)}catch(e){if(_e(`Language definition for '{}' could not be registered.`.replace(`{}`,n)),o)_e(e);else throw e;i=c}i.name||=n,t[n]=i,i.rawDefinition=r.bind(null,e),i.aliases&&P(i.aliases,{languageName:n})}function j(e){delete t[e];for(let t of Object.keys(i))i[t]===e&&delete i[t]}function M(){return Object.keys(t)}function N(e){return e=(e||``).toLowerCase(),t[e]||t[i[e]]}function P(e,{languageName:t}){typeof e==`string`&&(e=[e]),e.forEach(e=>{i[e.toLowerCase()]=t})}function F(e){let t=N(e);return t&&!t.disableAutodetect}function I(e){e[`before:highlightBlock`]&&!e[`before:highlightElement`]&&(e[`before:highlightElement`]=t=>{e[`before:highlightBlock`](Object.assign({block:t.el},t))}),e[`after:highlightBlock`]&&!e[`after:highlightElement`]&&(e[`after:highlightElement`]=t=>{e[`after:highlightBlock`](Object.assign({block:t.el},t))})}function L(e){I(e),a.push(e)}function R(e){let t=a.indexOf(e);t!==-1&&a.splice(t,1)}function z(e,t){let n=e;a.forEach(function(e){e[n]&&e[n](t)})}function ee(e){return ye(`10.7.0`,`highlightBlock will be removed entirely in v12.0`),ye(`10.7.0`,`Please use highlightElement now.`),w(e)}Object.assign(e,{highlight:p,highlightAuto:S,highlightAll:k,highlightElement:w,highlightBlock:ee,configure:T,initHighlighting:E,initHighlightingOnLoad:D,registerLanguage:A,unregisterLanguage:j,listLanguages:M,getLanguage:N,registerAliases:P,autoDetection:F,inherit:Me,addPlugin:L,removePlugin:R}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=ke,e.regex={concat:_,lookahead:m,either:y,optional:g,anyNumberOfTimes:h};for(let e in ae)typeof ae[e]==`object`&&n(ae[e]);return Object.assign(e,ae),e},Ie=Fe({});Ie.newInstance=()=>Fe({}),t.exports=Ie,Ie.HighlightJS=Ie,Ie.default=Ie}))()).default,MV={},NV=`hljs-`;function PV(e){let t=jV.newInstance();return e&&a(e),{highlight:n,highlightAuto:r,listLanguages:i,register:a,registerAlias:o,registered:s};function n(e,n,r){let i=r||MV,a=typeof i.prefix==`string`?i.prefix:NV;if(!t.getLanguage(e))throw Error("Unknown language: `"+e+"` is not registered");t.configure({__emitter:FV,classPrefix:a});let o=t.highlight(n,{ignoreIllegals:!0,language:e});if(o.errorRaised)throw Error("Could not highlight with `Highlight.js`",{cause:o.errorRaised});let s=o._emitter.root,c=s.data;return c.language=o.language,c.relevance=o.relevance,s}function r(e,r){let a=(r||MV).subset||i(),o=-1,s=0,c;for(;++o<a.length;){let i=a[o];if(!t.getLanguage(i))continue;let l=n(i,e,r);l.data&&l.data.relevance!==void 0&&l.data.relevance>s&&(s=l.data.relevance,c=l)}return c||{type:`root`,children:[],data:{language:void 0,relevance:s}}}function i(){return t.listLanguages()}function a(e,n){if(typeof e==`string`)t.registerLanguage(e,n);else{let n;for(n in e)Object.hasOwn(e,n)&&t.registerLanguage(n,e[n])}}function o(e,n){if(typeof e==`string`)t.registerAliases(typeof n==`string`?n:[...n],{languageName:e});else{let n;for(n in e)if(Object.hasOwn(e,n)){let r=e[n];t.registerAliases(typeof r==`string`?r:[...r],{languageName:n})}}}function s(e){return!!t.getLanguage(e)}}var FV=class{constructor(e){this.options=e,this.root={type:`root`,children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(e){if(e===``)return;let t=this.stack[this.stack.length-1],n=t.children[t.children.length-1];n&&n.type===`text`?n.value+=e:t.children.push({type:`text`,value:e})}startScope(e){this.openNode(String(e))}endScope(){this.closeNode()}__addSublanguage(e,t){let n=this.stack[this.stack.length-1],r=e.root.children;t?n.children.push({type:`element`,tagName:`span`,properties:{className:[t]},children:r}):n.children.push(...r)}openNode(e){let t=this,n=e.split(`.`).map(function(e,n){return n?e+`_`.repeat(n):t.options.classPrefix+e}),r=this.stack[this.stack.length-1],i={type:`element`,tagName:`span`,properties:{className:n},children:[]};r.children.push(i),this.stack.push(i)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return``}},IV={};function LV(e){let t=e||IV,n=t.aliases,r=t.detect||!1,i=t.languages||AV,a=t.plainText,o=t.prefix,s=t.subset,c=`hljs`,l=PV(i);if(n&&l.registerAlias(n),o){let e=o.indexOf(`-`);c=e===-1?o:o.slice(0,e)}return function(e,t){XP(e,`element`,function(e,n,i){if(e.tagName!==`code`||!i||i.type!==`element`||i.tagName!==`pre`)return;let u=RV(e);if(u===!1||!u&&!r||u&&a&&a.includes(u))return;Array.isArray(e.properties.className)||(e.properties.className=[]),e.properties.className.includes(c)||e.properties.className.unshift(c);let d=gz(e,{whitespace:`pre`}),f;try{f=u?l.highlight(u,d,{prefix:o}):l.highlightAuto(d,{prefix:o,subset:s})}catch(n){let r=n;if(u&&/Unknown language/.test(r.message)){t.message("Cannot highlight as `"+u+"`, it’s not registered",{ancestors:[i,e],cause:r,place:e.position,ruleId:`missing-language`,source:`rehype-highlight`});return}throw r}!u&&f.data&&f.data.language&&e.properties.className.push(`language-`+f.data.language),f.children.length>0&&(e.children=f.children)})}}function RV(e){let t=e.properties.className,n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){let e=String(t[n]);if(e===`no-highlight`||e===`nohighlight`)return!1;!r&&e.slice(0,5)===`lang-`&&(r=e.slice(5)),!r&&e.slice(0,9)===`language-`&&(r=e.slice(9))}return r}var zV=[`ariaDescribedBy`,`ariaLabel`,`ariaLabelledBy`],BV={ancestors:{tbody:[`table`],td:[`table`],th:[`table`],thead:[`table`],tfoot:[`table`],tr:[`table`]},attributes:{a:[...zV,`dataFootnoteBackref`,`dataFootnoteRef`,[`className`,`data-footnote-backref`],`href`],blockquote:[`cite`],code:[[`className`,/^language-./]],del:[`cite`],div:[`itemScope`,`itemType`],dl:[...zV],h2:[[`className`,`sr-only`]],img:[...zV,`longDesc`,`src`],input:[[`disabled`,!0],[`type`,`checkbox`]],ins:[`cite`],li:[[`className`,`task-list-item`]],ol:[...zV,[`className`,`contains-task-list`]],q:[`cite`],section:[`dataFootnotes`,[`className`,`footnotes`]],source:[`srcSet`],summary:[...zV],table:[...zV],ul:[...zV,[`className`,`contains-task-list`]],"*":`abbr.accept.acceptCharset.accessKey.action.align.alt.axis.border.cellPadding.cellSpacing.char.charOff.charSet.checked.clear.colSpan.color.cols.compact.coords.dateTime.dir.encType.frame.hSpace.headers.height.hrefLang.htmlFor.id.isMap.itemProp.label.lang.maxLength.media.method.multiple.name.noHref.noShade.noWrap.open.prompt.readOnly.rev.rowSpan.rows.rules.scope.selected.shape.size.span.start.summary.tabIndex.title.useMap.vAlign.value.width`.split(`.`)},clobber:[`ariaDescribedBy`,`ariaLabelledBy`,`id`,`name`],clobberPrefix:`user-content-`,protocols:{cite:[`http`,`https`],href:[`http`,`https`,`irc`,`ircs`,`mailto`,`xmpp`],longDesc:[`http`,`https`],src:[`http`,`https`]},required:{input:{disabled:!0,type:`checkbox`}},strip:[`script`],tagNames:`a.b.blockquote.br.code.dd.del.details.div.dl.dt.em.h1.h2.h3.h4.h5.h6.hr.i.img.input.ins.kbd.li.ol.p.picture.pre.q.rp.rt.ruby.s.samp.section.source.span.strike.strong.sub.summary.sup.table.tbody.td.tfoot.th.thead.tr.tt.ul.var`.split(`.`)},VV={}.hasOwnProperty;function HV(e,t){let n={type:`root`,children:[]},r=UV({schema:t?{...BV,...t}:BV,stack:[]},e);return r&&(Array.isArray(r)?r.length===1?n=r[0]:n.children=r:n=r),n}function UV(e,t){if(t&&typeof t==`object`){let n=t;switch(typeof n.type==`string`?n.type:``){case`comment`:return WV(e,n);case`doctype`:return GV(e,n);case`element`:return KV(e,n);case`root`:return qV(e,n);case`text`:return JV(e,n);default:}}}function WV(e,t){if(e.schema.allowComments){let e=typeof t.value==`string`?t.value:``,n=e.indexOf(`-->`),r={type:`comment`,value:n<0?e:e.slice(0,n)};return tH(r,t),r}}function GV(e,t){if(e.schema.allowDoctypes){let e={type:`doctype`};return tH(e,t),e}}function KV(e,t){let n=typeof t.tagName==`string`?t.tagName:``;e.stack.push(n);let r=YV(e,t.children),i=XV(e,t.properties);e.stack.pop();let a=!1;if(n&&n!==`*`&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&VV.call(e.schema.ancestors,n))){let t=e.schema.ancestors[n],r=-1;for(a=!1;++r<t.length;)e.stack.includes(t[r])&&(a=!0)}if(!a)return e.schema.strip&&!e.schema.strip.includes(n)?r:void 0;let o={type:`element`,tagName:n,properties:i,children:r};return tH(o,t),o}function qV(e,t){let n={type:`root`,children:YV(e,t.children)};return tH(n,t),n}function JV(e,t){let n={type:`text`,value:typeof t.value==`string`?t.value:``};return tH(n,t),n}function YV(e,t){let n=[];if(Array.isArray(t)){let r=t,i=-1;for(;++i<r.length;){let t=UV(e,r[i]);t&&(Array.isArray(t)?n.push(...t):n.push(t))}}return n}function XV(e,t){let n=e.stack[e.stack.length-1],r=e.schema.attributes,i=e.schema.required,a=r&&VV.call(r,n)?r[n]:void 0,o=r&&VV.call(r,`*`)?r[`*`]:void 0,s=t&&typeof t==`object`?t:{},c={},l;for(l in s)if(VV.call(s,l)){let t=s[l],n=ZV(e,nH(a,l),l,t);n??=ZV(e,nH(o,l),l,t),n!=null&&(c[l]=n)}if(i&&VV.call(i,n)){let e=i[n];for(l in e)VV.call(e,l)&&!VV.call(c,l)&&(c[l]=e[l])}return c}function ZV(e,t,n,r){return t?Array.isArray(r)?QV(e,t,n,r):$V(e,t,n,r):void 0}function QV(e,t,n,r){let i=-1,a=[];for(;++i<r.length;){let o=$V(e,t,n,r[i]);(typeof o==`number`||typeof o==`string`)&&a.push(o)}return a}function $V(e,t,n,r){if(!(typeof r!=`boolean`&&typeof r!=`number`&&typeof r!=`string`)&&eH(e,n,r)){if(typeof t==`object`&&t.length>1){let e=!1,n=0;for(;++n<t.length;){let i=t[n];if(i&&typeof i==`object`&&`flags`in i){if(i.test(String(r))){e=!0;break}}else if(i===r){e=!0;break}}if(!e)return}return e.schema.clobber&&e.schema.clobberPrefix&&e.schema.clobber.includes(n)?e.schema.clobberPrefix+r:r}}function eH(e,t,n){let r=e.schema.protocols&&VV.call(e.schema.protocols,t)?e.schema.protocols[t]:void 0;if(!r||r.length===0)return!0;let i=String(n),a=i.indexOf(`:`),o=i.indexOf(`?`),s=i.indexOf(`#`),c=i.indexOf(`/`);if(a<0||c>-1&&a>c||o>-1&&a>o||s>-1&&a>s)return!0;let l=-1;for(;++l<r.length;){let e=r[l];if(a===e.length&&i.slice(0,e.length)===e)return!0}return!1}function tH(e,t){let n=lA(t);t.data&&(e.data=FP(t.data)),n&&(e.position=n)}function nH(e,t){let n,r=-1;if(e)for(;++r<e.length;){let i=e[r],a=typeof i==`string`?i:i[0];if(a===t)return i;a===`data*`&&(n=i)}if(t.length>4&&t.slice(0,4).toLowerCase()===`data`)return n}function rH(e){return function(t){return HV(t,e)}}function iH(){return typeof document>`u`?`dark`:(nE[document.documentElement.getAttribute(`data-theme`)||`nord`]?.type??`dark`)===`light`?`default`:`dark`}function aH({chart:e}){let t=(0,W.useRef)(null),n=`mermaid-${(0,W.useId)().replace(/[^a-zA-Z0-9]/g,``)}`,[r,i]=(0,W.useState)(null);return(0,W.useEffect)(()=>{let r=!1;if(t.current)return(async()=>{try{let a=(await J(async()=>{let{default:e}=await import(`./mermaid.core-DNKchnly.js`);return{default:e}},__vite__mapDeps([101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118]))).default;a.initialize({startOnLoad:!1,securityLevel:`strict`,theme:iH()});let{svg:o,bindFunctions:s}=await a.render(n,e);if(r||!t.current)return;t.current.innerHTML=o,s?.(t.current),i(null)}catch(e){r||i(e instanceof Error?e.message:String(e))}})(),()=>{r=!0}},[e,n]),r?(0,G.jsxs)(`div`,{className:`mermaid-error`,children:[(0,G.jsxs)(`div`,{className:`mermaid-error-note`,children:[`Failed to render diagram: `,r]}),(0,G.jsx)(`pre`,{children:(0,G.jsx)(`code`,{children:e})})]}):(0,G.jsx)(`div`,{className:`mermaid`,ref:t,role:`img`,"aria-label":`Mermaid diagram`})}var oH=[ZR,ez],sH=[[rH,{...BV,protocols:{...BV.protocols,href:[...BV.protocols?.href??[],`file`,`file-mention`]},attributes:{...BV.attributes,h1:[...BV.attributes?.h1??[],`id`],h2:[...BV.attributes?.h2??[],`id`],h3:[...BV.attributes?.h3??[],`id`],h4:[...BV.attributes?.h4??[],`id`],h5:[...BV.attributes?.h5??[],`id`],h6:[...BV.attributes?.h6??[],`id`]}}],[LV,{ignoreMissing:!0,plainText:[`mermaid`,`suggestion`]}]];function cH(e){return e.startsWith(`file://`)||e.startsWith(`file-mention://`)?e:QF(e)}function lH(e){return e==null||e===!1||e===!0?``:typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(lH).join(``):(0,W.isValidElement)(e)?lH(e.props.children):``}function uH(e){return typeof e==`string`?/language-([\w-]+)/.exec(e)?.[1]??null:null}function dH(e){return e.toLowerCase().trim().replace(/[`*_~[\]()#.!?,:'"]/g,``).replace(/[^\w\s-]/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``).slice(0,80)||`section`}function fH({language:e,codeText:t,children:n}){let[r,i]=(0,W.useState)(!1),a=(0,W.useCallback)(()=>{typeof navigator>`u`||!navigator.clipboard||navigator.clipboard.writeText(t).then(()=>{i(!0),window.setTimeout(()=>i(!1),1400)},()=>{})},[t]);return(0,G.jsxs)(`div`,{className:`md-code-block`,children:[(0,G.jsxs)(`div`,{className:`md-code-toolbar`,children:[(0,G.jsx)(`span`,{className:`md-code-lang`,children:e||`code`}),(0,G.jsx)(`button`,{type:`button`,className:`md-code-copy`,onClick:a,"aria-label":`Copy code`,children:r?`Copied`:`Copy`})]}),(0,G.jsx)(`pre`,{children:n})]})}function pH(e){return{pre({children:e}){let t=uH((0,W.isValidElement)(e)?e.props.className:void 0);return t===`mermaid`?(0,G.jsx)(aH,{chart:lH(e).replace(/\n$/,``)}):t===`suggestion`?null:(0,G.jsx)(fH,{language:t,codeText:lH(e).replace(/\n$/,``),children:e})},a({href:e,children:t}){return typeof e==`string`&&e.startsWith(`file-mention://`)?(0,G.jsx)(`span`,{className:`mention-file`,title:e.slice(15),children:t}):(0,G.jsx)(`a`,{href:e,...typeof e==`string`&&/^https?:\/\//.test(e)?{target:`_blank`,rel:`noopener noreferrer`}:{},children:t})},h1:mH(`h1`,e),h2:mH(`h2`,e),h3:mH(`h3`,e),h4:mH(`h4`,e),h5:mH(`h5`,e),h6:mH(`h6`,e)}}function mH(e,t){return function({children:n,...r}){let i=lH(n),a=dH(i),o=t.get(a)??0;return t.set(a,o+1),o>0&&(a=`${a}-${o+1}`),(0,G.jsxs)(e,{id:a,className:`md-heading`,...r,children:[(0,G.jsx)(`a`,{href:`#${a}`,className:`md-heading-anchor`,"aria-label":`Link to ${i}`,children:`#`}),n]})}}function hH({content:e,className:t}){return(0,G.jsx)(`div`,{className:t,children:(0,G.jsx)(JF,{remarkPlugins:oH,rehypePlugins:sH,urlTransform:cH,components:pH(new Map),children:e})})}function gH(e,t){let n=e.slice(0,t);for(let e=t-1;e>=0;e--){let t=n[e];if(t===`@`){if(e===0||/\s/.test(n[e-1])){let t=n.slice(e+1);if(!/\s/.test(t))return{atStart:e,query:t}}return null}if(t===`
1933
- `)return null}return null}function _H(e,t){let n=(0,W.useRef)(null),[r,i]=(0,W.useState)(null),[a,o]=(0,W.useState)(0),[s,c]=(0,W.useState)(0),l=(0,W.useRef)(0),u=(0,W.useCallback)(e=>{n.current=e},[]);(0,W.useEffect)(()=>{let t=n.current;if(!t)return;let r=t.selectionStart;l.current=r;let a=gH(e,r);if(i(a),a){o(0);let n=parseFloat(getComputedStyle(t).lineHeight)||20,i=(e.slice(0,r).match(/\n/g)||[]).length;c((parseFloat(getComputedStyle(t).paddingTop)||0)+(i+1)*n+4)}},[e]);let d=r?.query??``,f=nt({queryKey:[`file-mention`,d],enabled:r!==null,placeholderData:B,staleTime:5e3,queryFn:async({signal:e})=>{let t=await fetch(`/api/search`,{method:`POST`,headers:{"content-type":`application/json`},signal:e,body:JSON.stringify({scope:`files`,query:d})});if(!t.ok)throw Error(`Search failed (${t.status})`);return await t.json()}}),p=f.data?.items??[],m=r!==null&&(p.length>0||f.isFetching),h=(0,W.useCallback)(a=>{if(!r)return;let o=n.current;if(!o)return;let s=e.slice(0,r.atStart),c=e.slice(l.current),u=`@${a} `;t(s+u+c),i(null),requestAnimationFrame(()=>{o.selectionStart=o.selectionEnd=(s+u).length,o.focus()})},[r,e,t]),g=(0,W.useCallback)(e=>{if(!m)return!1;if(e.key===`ArrowDown`){e.preventDefault();let t=p.length;return t>0&&o(e=>(e+1)%t),!0}if(e.key===`ArrowUp`){e.preventDefault();let t=p.length;return t>0&&o(e=>e===0?t-1:e-1),!0}return(e.key===`Enter`||e.key===`Tab`)&&p[a]?(e.preventDefault(),h(p[a].path),!0):e.key===`Escape`?(e.preventDefault(),i(null),!0):!1},[m,p,a,h]),_=(0,W.useCallback)(e=>h(e),[h]);return{isOpen:m,results:p,focusedIndex:a,query:d,isFetching:f.isFetching,cursorTop:s,handleKeyDown:g,onSelect:_,setFocusedIndex:o,setTextareaRef:u}}function vH(e,t){let n=t.trim().toLowerCase();if(!n)return[];let r=e.toLowerCase(),i=[],a=0;for(let e=0;e<r.length&&a<n.length;e++)if(r[e]===n[a]){let t=i[i.length-1];t&&t[1]===e?t[1]=e+1:i.push([e,e+1]),a++}return a===n.length?i:[]}function yH({text:e,ranges:t}){if(!t.length)return(0,G.jsx)(G.Fragment,{children:e});let n=[],r=0;return t.forEach(([t,i],a)=>{t>r&&n.push(e.slice(r,t)),n.push((0,G.jsx)(`mark`,{className:`mention-highlight`,children:e.slice(t,i)},a)),r=i}),r<e.length&&n.push(e.slice(r)),(0,G.jsx)(G.Fragment,{children:n})}var bH=e=>{let t=e.lastIndexOf(`/`);return t===-1?``:e.slice(0,t+1)},xH=e=>{let t=e.lastIndexOf(`/`);return t===-1?e:e.slice(t+1)};function SH({results:e,focusedIndex:t,query:n,cursorTop:r,onSelect:i,onHover:a}){let o=(0,W.useRef)(null);return(0,W.useEffect)(()=>{(o.current?.querySelector(`[data-focused="true"]`))?.scrollIntoView({block:`nearest`})},[t]),e.length===0?null:(0,G.jsx)(`div`,{className:`mention-dropdown`,ref:o,role:`listbox`,"aria-label":`File suggestions`,style:{top:r},children:e.map((e,r)=>{let o=xH(e.path),s=vH(o,n),c=r===t;return(0,G.jsxs)(`div`,{role:`option`,"aria-selected":c,"data-focused":c,className:`mention-item ${c?`mention-item-focused`:``}`,onMouseDown:t=>{t.preventDefault(),i(e.path)},onMouseEnter:()=>a(r),children:[(0,G.jsx)(`span`,{className:`mention-icon`,children:(0,G.jsx)(dO,{size:13})}),(0,G.jsxs)(`div`,{className:`mention-info`,children:[(0,G.jsx)(`span`,{className:`mention-name`,children:(0,G.jsx)(yH,{text:o,ranges:s})}),(0,G.jsx)(`span`,{className:`mention-dir`,children:bH(e.path)||`./`})]})]},e.path)})})}function CH(e){return e.replace(/@([^\s@]+)/g,(e,t)=>`[${t.split(`/`).pop()||t}](file-mention://${t})`)}function wH({id:e,value:t,onChange:n,placeholder:r,rows:i=3,ariaLabel:a,textareaClassName:o,onSubmitShortcut:s}){let[c,l]=(0,W.useState)(`write`),u=(0,W.useRef)(null),d=(0,W.useRef)(null),f=_H(t,n),p=(0,W.useRef)(t);(0,W.useEffect)(()=>{p.current=t},[t]),(0,W.useEffect)(()=>{c===`preview`&&d.current?.focus()},[c]);let m=async e=>{let r=e.clipboardData.items,i=null;for(let e=0;e<r.length;e++){let t=r[e];if(t.kind===`file`&&t.type.startsWith(`image/`)){i=t.getAsFile();break}}if(!i)return;e.preventDefault();let a=u.current;if(!a)return;let o=a.selectionStart,s=a.selectionEnd,c=Math.random().toString(36).slice(2,8),l=`![Uploading image… ${c}]()`,d=t.slice(0,o)+l+t.slice(s);n(d),p.current=d;try{let e=new FormData;e.append(`file`,i,i.name||`pasted-${c}.png`);let t=await fetch(`/api/attachments`,{method:`POST`,body:e});if(!t.ok)throw Error(`HTTP ${t.status}`);let r=await t.json();if(!r.url)throw Error(r.error||`Upload failed`);n(p.current.replace(l,`![pasted image](${r.url})`))}catch(e){console.error(`Image upload failed:`,e),n(p.current.replace(l,`![upload failed]()`))}};return(0,G.jsxs)(`div`,{className:`md-field`,children:[(0,G.jsxs)(`div`,{className:`comment-form-tabs`,role:`tablist`,"aria-label":`Markdown editor mode`,children:[(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":c===`write`,onClick:()=>l(`write`),onKeyDown:e=>{e.key===`ArrowRight`&&(e.preventDefault(),l(`preview`))},className:`comment-form-tab-btn ${c===`write`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Write`}),(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":c===`preview`,onClick:()=>l(`preview`),onKeyDown:e=>{e.key===`ArrowLeft`&&(e.preventDefault(),l(`write`))},className:`comment-form-tab-btn ${c===`preview`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Preview`})]}),c===`write`?(0,G.jsxs)(`div`,{style:{position:`relative`},children:[(0,G.jsx)(`textarea`,{id:e,ref:e=>{u.current=e,f.setTextareaRef(e)},className:o,value:t,rows:i,placeholder:r,"aria-label":a,onChange:e=>n(e.target.value),onPaste:m,onKeyDown:e=>{f.handleKeyDown(e)||(e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),s?.()),e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),l(e=>e===`write`?`preview`:`write`)))}}),f.isOpen&&(0,G.jsx)(SH,{results:f.results,focusedIndex:f.focusedIndex,query:f.query,cursorTop:f.cursorTop,onSelect:f.onSelect,onHover:f.setFocusedIndex})]}):(0,G.jsx)(`div`,{ref:d,className:`md-field-preview markdown-body`,role:`tabpanel`,"aria-label":`Markdown preview`,tabIndex:0,onKeyDown:e=>{e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),l(`write`))},children:t.trim()?(0,G.jsx)(hH,{content:CH(t)}):(0,G.jsx)(`span`,{className:`md-field-empty`,children:`Nothing to preview`})})]})}var TH=`diffing-submit-panel-height`,EH=`diffing-submit-panel-width`,DH=[{label:`S`,width:420,height:340},{label:`M`,width:480,height:440},{label:`L`,width:560,height:560},{label:`XL`,width:640,height:760}],OH=480,kH=520;function AH(e){return Number.isFinite(e)?Math.max(280,Math.min(760,e)):OH}function jH(e){return Number.isFinite(e)?Math.max(360,Math.min(720,e)):kH}function MH(){let e=CD(TH);if(e==null)return OH;let t=Number(e);return Number.isFinite(t)?AH(t):OH}function NH(){let e=CD(EH);if(e==null)return kH;let t=Number(e);return Number.isFinite(t)?jH(t):kH}function PH(e,t){if(!(!e||typeof e.setPointerCapture!=`function`))try{e.setPointerCapture(t)}catch{}}function FH(e,t){if(!(!e||typeof e.releasePointerCapture!=`function`))try{e.hasPointerCapture?.(t)&&e.releasePointerCapture(t)}catch{}}function IH(){let[e,t]=(0,W.useState)(()=>MH()),[n,r]=(0,W.useState)(()=>NH()),i=(0,W.useRef)(null),a=(0,W.useRef)(e);a.current=e;let o=(0,W.useRef)(n);o.current=n;let s=(0,W.useRef)(!1),c=(0,W.useRef)(0),l=(0,W.useCallback)(()=>{s.current=!0,c.current=1/0},[]),u=(0,W.useCallback)(()=>{s.current=!1,c.current=Date.now()+200},[]),d=(0,W.useCallback)(()=>s.current||Date.now()<c.current,[]),f=(0,W.useCallback)((e,t,n)=>{if(!e&&d()){t?.cancel?.();return}n(e)},[d]),p=(0,W.useCallback)(e=>{let n=AH(e);t(n),DD(TH,String(n))},[]),m=(0,W.useCallback)(e=>{let t=jH(e);r(t),DD(EH,String(t))},[]),h=(0,W.useCallback)(e=>{m(e.width),p(e.height)},[m,p]),g=(()=>{for(let t=0;t<DH.length;t++){let r=DH[t];if(Math.abs(e-r.height)<1&&Math.abs(n-r.width)<1)return t}return-1})(),_=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let n=i.current;if(!n)return;let r=e.currentTarget,o=e.pointerId;PH(r,o),l();let s=e.clientY,c=a.current,d=c,f=0,p=()=>{f=0,n.style.setProperty(`--submit-panel-height`,`${d}px`)},m=e=>{e.pointerId===o&&(d=AH(c+(e.clientY-s)),f||=requestAnimationFrame(p))},h=e=>{e.pointerId===o&&(f&&cancelAnimationFrame(f),t(d),DD(TH,String(d)),FH(r,o),u(),document.removeEventListener(`pointermove`,m),document.removeEventListener(`pointerup`,h),document.removeEventListener(`pointercancel`,h),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,m),document.addEventListener(`pointerup`,h),document.addEventListener(`pointercancel`,h),document.body.style.cursor=`row-resize`,document.body.style.userSelect=`none`},[l,u]),v=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let t=i.current;if(!t)return;let n=e.currentTarget,a=e.pointerId;PH(n,a),l();let s=e.clientX,c=o.current,d=c,f=0,p=()=>{f=0,t.style.setProperty(`--submit-panel-width`,`${d}px`)},m=e=>{e.pointerId===a&&(d=jH(c+(s-e.clientX)),f||=requestAnimationFrame(p))},h=e=>{e.pointerId===a&&(f&&cancelAnimationFrame(f),r(d),DD(EH,String(d)),FH(n,a),u(),document.removeEventListener(`pointermove`,m),document.removeEventListener(`pointerup`,h),document.removeEventListener(`pointercancel`,h),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,m),document.addEventListener(`pointerup`,h),document.addEventListener(`pointercancel`,h),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[l,u]),y=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let n=i.current;if(!n)return;let s=e.currentTarget,c=e.pointerId;PH(s,c),l();let d=e.clientX,f=e.clientY,p=o.current,m=a.current,h=p,g=m,_=0,v=()=>{_=0,n.style.setProperty(`--submit-panel-width`,`${h}px`),n.style.setProperty(`--submit-panel-height`,`${g}px`)},y=e=>{if(e.pointerId!==c)return;let t=d-e.clientX,n=e.clientY-f;h=jH(p+t),g=AH(m+n),_||=requestAnimationFrame(v)},b=e=>{e.pointerId===c&&(_&&cancelAnimationFrame(_),r(h),t(g),DD(EH,String(h)),DD(TH,String(g)),FH(s,c),u(),document.removeEventListener(`pointermove`,y),document.removeEventListener(`pointerup`,b),document.removeEventListener(`pointercancel`,b),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,y),document.addEventListener(`pointerup`,b),document.addEventListener(`pointercancel`,b),document.body.style.cursor=`nesw-resize`,document.body.style.userSelect=`none`},[l,u]);return(0,W.useEffect)(()=>()=>{document.body.style.cursor=``,document.body.style.userSelect=``},[]),{height:e,width:n,setHeight:p,setWidth:m,applyPreset:h,activePreset:g,startResize:_,startLeftResize:v,startCornerResize:y,handleOpenChange:f,popoverStyle:{"--submit-panel-height":`${e}px`,"--submit-panel-width":`${n}px`},panelRef:i}}var LH=[{value:`approved`,label:`Approve`,description:`The changes look good — the agent can proceed.`,icon:HD,className:`plan-verdict-approve`},{value:`changes-requested`,label:`Request edits`,description:`The agent should address the comments and apply edits.`,icon:MO,className:`plan-verdict-changes`},{value:`rejected`,label:`Reject`,description:`Don't keep building on this — the approach needs rethinking.`,icon:sk,className:`plan-verdict-reject`},{value:`comment-only`,label:`Comment only`,description:`Agent must NOT edit files — only reply to comments. General note goes to chat.`,icon:NO,className:`plan-verdict-comment-only`}];function RH({comments:e,totalFileCount:t,viewedFileCount:n,requireViewAllBeforeSend:r,onEditComment:i,onDeleteComment:a,onSend:o,sending:s,agentWaiting:c,waitingAgents:l=[],onCopyComments:u,onCopyMarkdown:d}){let{haptic:f,sound:p}=pD(),[m,h]=(0,W.useState)(!1),[g,_]=(0,W.useState)(``),[v,y]=(0,W.useState)(null),[b,x]=(0,W.useState)(!1),[S,C]=(0,W.useState)(null),[w,T]=(0,W.useState)(!1),{popoverStyle:E,activePreset:D,applyPreset:O,startResize:k,startLeftResize:A,startCornerResize:j,handleOpenChange:M,panelRef:N}=IH(),P=async()=>{u&&(await u(),x(!0),setTimeout(()=>x(!1),2e3))},F=e.length,I=(0,W.useMemo)(()=>[...e].sort((e,t)=>e.createdAt-t.createdAt),[e]),L=Math.max(0,t-n),R=async()=>{if(!v)return;if(r&&L>0&&!w){if(f(`medium`),!(!(typeof window>`u`)&&window.confirm(`${L} file${L===1?``:`s`} ${L===1?`is`:`are`} still unviewed. Send the review to the agent anyway?`))){T(!1),h(!0);return}T(!0)}f(`heavy`),p(`send`);let e=v===`comment-only`?`comment-only`:`standard`;try{await o(v,g,e,w),_(``),y(null),h(!1),C(null),T(!1)}catch(e){if(e?.kind===`secrets`){C(e.findings),T(!1);return}throw e}};return(0,G.jsx)(Zk,{open:m,onOpenChange:(e,t)=>M(e,t,h),ariaLabel:`Submit your review to the agent`,className:`send-review-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:s,title:l.length>0?`Waiting: ${l.map(e=>e.label||e.model||e.id.slice(0,8)).join(`, `)}`:c?`Agent waiting for your review`:`Submit review to agent`,"aria-label":s?`Sending review`:F>0?`Send review with ${F} comment${F===1?``:`s`}`:`Send review to agent`,children:[c&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(BD,{size:14,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`btn-label`,children:s?`Sending…`:l.length>1?`Send (${l.length})`:F>0?`Send (${F})`:`Send review`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:N,style:E,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:A,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[(0,G.jsx)(BD,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:`Submit review`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":D===t,"aria-pressed":D===t,onClick:()=>O(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),F>0&&(0,G.jsxs)(`span`,{className:`srp-count`,children:[F,` comment`,F===1?``:`s`]})]}),l.length>0&&(0,G.jsxs)(`div`,{className:`srp-agents`,"aria-label":`Waiting agents`,children:[(0,G.jsx)(`span`,{className:`srp-agents-label`,children:l.length===1?`Agent waiting`:`${l.length} agents waiting`}),(0,G.jsx)(`ul`,{className:`srp-agents-list`,children:l.map(e=>(0,G.jsxs)(`li`,{className:`srp-agent-chip`,title:e.id,children:[(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-agent-name`,children:e.label||e.model||e.id.slice(0,8)}),e.model&&e.label&&(0,G.jsx)(`span`,{className:`srp-agent-model`,children:e.model})]},e.id))})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:LH.map(e=>{let t=e.icon,n=v===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>y(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),F>0?(0,G.jsx)(`ul`,{className:`srp-list`,"aria-label":`Comments to send`,children:I.map(e=>(0,G.jsx)(zH,{comment:e,onEdit:i,onDelete:a},e.id))}):(0,G.jsx)(`p`,{className:`srp-empty`,children:`No inline comments — your verdict and overall note will be sent on their own.`}),L>0&&(0,G.jsx)(`div`,{className:`srp-warning`,role:`note`,"data-tone":`muted`,children:(0,G.jsxs)(`span`,{children:[(0,G.jsx)(`strong`,{children:L}),` of `,(0,G.jsx)(`strong`,{children:t}),` file`,t===1?``:`s`,` still unviewed.`,r&&(0,G.jsx)(G.Fragment,{children:` Sending will require an extra confirmation.`})]})}),S&&(0,G.jsxs)(`div`,{className:`srp-warning srp-warning-danger`,role:`alert`,"data-tone":`danger`,children:[(0,G.jsxs)(`div`,{className:`srp-warning-head`,children:[(0,G.jsx)(QO,{size:14,"aria-hidden":`true`}),(0,G.jsxs)(`strong`,{children:[S.length,` possible secret`,S.length===1?``:`s`,` detected`]})]}),(0,G.jsx)(`ul`,{className:`srp-warning-list`,children:S.map((e,t)=>(0,G.jsxs)(`li`,{children:[(0,G.jsx)(`code`,{children:e.rule}),`: `,(0,G.jsx)(`code`,{children:e.snippet}),` `,(0,G.jsxs)(`span`,{className:`srp-warning-source`,children:[`in `,e.source]})]},t))}),(0,G.jsxs)(`div`,{className:`srp-warning-actions`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>C(null),disabled:s,children:`Cancel & edit`}),(0,G.jsx)(`button`,{className:`btn btn-sm btn-danger`,onClick:()=>{T(!0),C(null),R()},disabled:s,children:`Send anyway`})]})]}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`srp-general-input`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`srp-general-input`,value:g,onChange:_,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the agent that applies to the whole review…`,rows:3,ariaLabel:`Overall review comment`,onSubmitShortcut:R})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[u&&(0,G.jsxs)(`div`,{style:{marginRight:`auto`,display:`flex`,gap:6},children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:P,disabled:F===0,children:b?`Copied!`:`Copy XML`}),d&&(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:async()=>{try{await d(),x(!0),setTimeout(()=>x(!1),1500)}catch{}},disabled:F===0,title:`Copy review as Markdown`,children:`Copy MD`})]}),(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>h(!1),disabled:s,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:R,disabled:!v||s,children:s?`Sending…`:`Send review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:k,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:j,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}function zH({comment:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),s=(0,W.useRef)(null);(0,W.useEffect)(()=>{r&&(s.current?.focus(),s.current?.select())},[r]);let c=e.lineNumber>0?e.startLineNumber&&e.startLineNumber!==e.lineNumber?`:${e.startLineNumber}-${e.lineNumber}`:`:${e.lineNumber}`:` · file`,l=()=>{let n=a.trim();n&&n!==e.body&&t(e.id,n),i(!1)};return(0,G.jsxs)(`li`,{className:`srp-item`,children:[(0,G.jsxs)(`div`,{className:`srp-item-top`,children:[(0,G.jsxs)(`span`,{className:`srp-item-loc`,children:[(0,G.jsx)(`span`,{className:`srp-item-file`,children:tE(e.filePath)}),(0,G.jsx)(`span`,{className:`srp-item-line`,children:c})]}),e.status===`resolved`&&(0,G.jsx)(`span`,{className:`srp-item-resolved`,children:`resolved`}),(0,G.jsxs)(`span`,{className:`srp-item-actions`,children:[r?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:l,title:`Save edit`,children:(0,G.jsx)(HD,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>{o(e.body),i(!1)},title:`Cancel edit`,children:(0,G.jsx)(sk,{size:13,"aria-hidden":`true`})})]}):(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>i(!0),title:`Edit comment`,children:(0,G.jsx)(WO,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn srp-icon-btn-danger`,onClick:()=>n(e.id),title:`Remove from review`,children:(0,G.jsx)(nk,{size:13,"aria-hidden":`true`})})]})]}),e.lineContent?.trim()&&(0,G.jsx)(`code`,{className:`srp-item-code`,children:e.lineContent.trim().slice(0,160)}),r?(0,G.jsx)(`textarea`,{ref:s,className:`srp-item-edit`,value:a,rows:2,onChange:e=>o(e.target.value),onKeyDown:t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)?(t.preventDefault(),l()):t.key===`Escape`&&(t.preventDefault(),o(e.body),i(!1))}}):(0,G.jsx)(`p`,{className:`srp-item-body`,children:e.body})]})}function BH({lastRound:e}){let{data:t=[],isFetching:n,refetch:r}=nt({queryKey:[`review-history`],queryFn:async()=>{let e=await fetch(`/api/review/history`);return e.ok?(await e.json()).rounds??[]:[]},enabled:!1});return!e||e<1?null:(0,G.jsxs)(Zk,{side:`bottom`,align:`start`,ariaLabel:`Review history`,className:`review-history-popup`,onOpenChange:e=>{e&&r()},trigger:(0,G.jsxs)(`button`,{type:`button`,className:`toolbar-last-send toolbar-last-send-btn`,title:`Review history — past handoff rounds`,"aria-label":`Open review history`,children:[(0,G.jsx)(bO,{size:12,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`toolbar-last-send-dot`,"aria-hidden":`true`}),`Round `,e]}),children:[(0,G.jsxs)(`div`,{className:`review-history-header`,children:[(0,G.jsx)(bO,{size:14}),(0,G.jsx)(`strong`,{children:`Review history`}),n&&(0,G.jsx)(`span`,{className:`review-history-loading`,children:`Loading…`})]}),t.length===0?(0,G.jsx)(`p`,{className:`review-history-empty`,children:`No handoffs recorded yet (history is in-memory).`}):(0,G.jsx)(`ul`,{className:`review-history-list`,children:t.map(e=>(0,G.jsxs)(`li`,{className:`review-history-item`,children:[(0,G.jsxs)(`div`,{className:`review-history-item-top`,children:[(0,G.jsxs)(`span`,{className:`review-history-round`,children:[`Round `,e.round]}),e.decision&&(0,G.jsx)(`span`,{className:`review-history-decision`,"data-decision":e.decision,children:e.decision}),e.mode&&e.mode!==`standard`&&(0,G.jsx)(`span`,{className:`review-history-mode`,children:e.mode}),(0,G.jsx)(`span`,{className:`review-history-time`,title:new Date(e.sentAt).toLocaleString(),children:eE(e.sentAt)})]}),(0,G.jsxs)(`div`,{className:`review-history-item-meta`,children:[e.openCount,` open · `,e.filePaths.length,` file`,e.filePaths.length===1?``:`s`]}),e.filePaths.length>0&&(0,G.jsxs)(`div`,{className:`review-history-files`,children:[e.filePaths.slice(0,6).map(e=>(0,G.jsxs)(`span`,{className:`review-history-file`,title:e,children:[(0,G.jsx)(lO,{size:10}),e.split(`/`).pop()]},e)),e.filePaths.length>6&&(0,G.jsxs)(`span`,{className:`review-history-file-more`,children:[`+`,e.filePaths.length-6]})]})]},e.round))})]})}var VH=(0,W.memo)(function({size:e=22,className:t,decorative:n=!0}){return(0,G.jsx)(`img`,{className:t??`brand-mark`,src:`/favicon.svg`,alt:n?``:`diffing`,width:e,height:e,draggable:!1})});function HH(e){let t=W.useRef(!0);t.current&&(t.current=!1,e())}function UH({controlled:e,default:t,name:n,state:r=`value`}){let{current:i}=W.useRef(e!==void 0),[a,o]=W.useState(t);return[i?e:a,W.useCallback(e=>{i||o(e)},[])]}var WH=W.createContext(null),GH=W.createContext(null);function KH(){let e=W.useContext(WH);if(e===null)throw Error(j_(60));return e}function qH(){let e=W.useContext(GH);if(e===null)throw Error(j_(61));return e}var JH=function(e){return e.disabled=`data-disabled`,e.valid=`data-valid`,e.invalid=`data-invalid`,e.touched=`data-touched`,e.dirty=`data-dirty`,e.filled=`data-filled`,e.focused=`data-focused`,e}({}),YH={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},XH={valid(e){return e===null?null:e?{[JH.valid]:``}:{[JH.invalid]:``}}},ZH=W.createContext({invalid:void 0,name:void 0,validityData:{state:YH,errors:[],error:``,value:``,initialValue:null},setValidityData:zb,disabled:void 0,touched:!1,setTouched:zb,dirty:!1,setDirty:zb,filled:!1,setFilled:zb,focused:!1,setFocused:zb,validate:()=>null,validationMode:`onSubmit`,validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:{disabled:!1,valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},markedDirtyRef:{current:!1},validation:{getValidationProps:(e=Vb)=>e,getInputValidationProps:(e=Vb)=>e,inputRef:{current:null},commit:async()=>{}}});function QH(e=!0){let t=W.useContext(ZH);if(t.setValidityData===zb&&!e)throw Error(j_(28));return t}var $H=W.createContext({controlId:void 0,setControlId:zb,labelId:void 0,setLabelId:zb,messageIds:[],setMessageIds:zb,getDescriptionProps:e=>e});function eU(){return W.useContext($H)}function tU(e={}){let{id:t,implicit:n=!1,controlRef:r}=e,{controlId:i,setControlId:a}=eU(),o=bT(t);return Y(()=>{if(!(!n&&!t||a===zb)){if(n){let e=r?.current;K_(e)&&e.closest(`label`)!=null?a(t??null):a(i??o)}else t&&a(t);return()=>{t&&a(void 0)}}},[t,r,i,a,n,o]),i??o}var nU=(e,t)=>Object.is(e,t);function rU(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function iU(e,t,n){return!e||e.length===0?!1:e.some(e=>e===void 0?!1:rU(e,t,n))}function aU(e,t,n){return!e||e.length===0?-1:e.findIndex(e=>e===void 0?!1:rU(e,t,n))}function oU(e,t,n){return e.filter(e=>!rU(e,t,n))}function sU(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function cU(e){return e!=null&&e.length>0&&typeof e[0]==`object`&&e[0]!=null&&`items`in e[0]}function lU(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return sU(e)}function uU(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?sU(e.value):sU(e)}function dU(e,t,n){if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return t[e]??lU(e,n);if(Array.isArray(t)){let r=cU(t)?t.flatMap(e=>e.items):t;if(e==null){let t=r.find(e=>e.value==null);return t&&t.label!=null?t.label:lU(e,n)}if(typeof e!=`object`){let t=r.find(t=>t&&t.value===e);return t&&t.label!=null?t.label:lU(e,n)}if(`value`in e){let t=r.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return lU(e,n)}function fU(e,t){return!Array.isArray(e)||e.length===0?``:e.map(e=>lU(e,t)).join(`, `)}var pU={id:Z(e=>e.id),modal:Z(e=>e.modal),multiple:Z(e=>e.multiple),items:Z(e=>e.items),itemToStringLabel:Z(e=>e.itemToStringLabel),itemToStringValue:Z(e=>e.itemToStringValue),isItemEqualToValue:Z(e=>e.isItemEqualToValue),value:Z(e=>e.value),open:Z(e=>e.open),mounted:Z(e=>e.mounted),forceMount:Z(e=>e.forceMount),transitionStatus:Z(e=>e.transitionStatus),touchModality:Z(e=>e.touchModality),activeIndex:Z(e=>e.activeIndex),selectedIndex:Z(e=>e.selectedIndex),isActive:Z((e,t)=>e.activeIndex===t),isSelected:Z((e,t,n)=>{let r=e.isItemEqualToValue,i=e.value;return e.multiple?Array.isArray(i)&&i.some(e=>rU(e,n,r)):e.selectedIndex===t&&e.selectedIndex!==null?!0:rU(i,n,r)}),isSelectedByFocus:Z((e,t)=>e.selectedIndex===t),popupProps:Z(e=>e.popupProps),triggerProps:Z(e=>e.triggerProps),triggerElement:Z(e=>e.triggerElement),positionerElement:Z(e=>e.positionerElement),listElement:Z(e=>e.listElement),scrollUpArrowVisible:Z(e=>e.scrollUpArrowVisible),scrollDownArrowVisible:Z(e=>e.scrollDownArrowVisible),hasScrollArrows:Z(e=>e.hasScrollArrows),serializedValue:Z(e=>{let{multiple:t,value:n,itemToStringValue:r}=e;return t&&Array.isArray(n)&&n.length===0?``:uU(n,r)})},mU=W.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:zb,validationMode:`onSubmit`,submitAttemptedRef:{current:!1}});function hU(){return W.useContext(mU)}function gU(e,t){return{...e,state:{...e.state,valid:!t&&e.state.valid}}}function _U(e){let{enabled:t=!0,value:n,id:r,name:i,controlRef:a,commit:o}=e,{formRef:s}=hU(),{invalid:c,markedDirtyRef:l,validityData:u,setValidityData:d}=QH(),f=X(e.getValue);Y(()=>{if(!t)return;let e=n;e===void 0&&(e=f()),u.initialValue===null&&e!==null&&d(t=>({...t,initialValue:e}))},[t,d,n,u.initialValue,f]),Y(()=>{!t||!r||s.current.fields.set(r,{getValue:f,name:i,controlRef:a,validityData:gU(u,c),validate(){let e=n;e===void 0&&(e=f()),l.current=!0,aS.flushSync(()=>o(e))}})},[o,a,t,s,f,r,c,l,i,u,n]),Y(()=>{let e=s.current.fields;return()=>{r&&e.delete(r)}},[s,r])}function vU(e,t){let n=W.useRef(e),r=X(t);Y(()=>{n.current!==e&&r(n.current)},[e,r]),Y(()=>{n.current=e},[e])}function yU(e){let{id:t,value:n,defaultValue:r=null,onValueChange:i,open:a,defaultOpen:o=!1,onOpenChange:s,name:c,disabled:l=!1,readOnly:u=!1,required:d=!1,modal:f=!0,actionsRef:p,inputRef:m,onOpenChangeComplete:h,items:g,multiple:_=!1,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b=nU,highlightItemOnHover:x=!0,children:S}=e,{clearErrors:C}=hU(),{setDirty:w,shouldValidateOnChange:T,validityData:E,setFilled:D,name:O,disabled:k,validation:A}=QH(),{controlId:j}=eU(),M=tU({id:t}),N=k||l,P=O??c,[F,I]=UH({controlled:n,default:_?r??Bb:r,name:`Select`,state:`value`}),[L,R]=UH({controlled:a,default:o,name:`Select`,state:`open`}),z=W.useRef([]),ee=W.useRef([]),te=W.useRef(null),ne=W.useRef(null),B=W.useRef(0),V=W.useRef(null),re=W.useRef([]),ie=W.useRef(!1),ae=W.useRef(!1),oe=W.useRef(null),se=W.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1}),ce=W.useRef(!1),{mounted:H,setMounted:le,transitionStatus:ue}=pw(L),U=F_(()=>new lw({id:M,modal:f,multiple:_,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b,value:F,open:L,mounted:H,transitionStatus:ue,items:g,forceMount:!1,touchModality:!1,activeIndex:null,selectedIndex:null,popupProps:{},triggerProps:{},triggerElement:null,positionerElement:null,listElement:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1})).current,de=ow(U,pU.activeIndex),fe=ow(U,pU.selectedIndex),pe=ow(U,pU.triggerElement),me=ow(U,pU.positionerElement),he=W.useMemo(()=>_&&Array.isArray(F)&&F.length===0?``:uU(F,y),[_,F,y]),ge=fv(U.state.triggerElement);_U({id:M,commit:A.commit,value:F,controlRef:ge,name:P,getValue:()=>F});let _e=W.useRef(F);Y(()=>{F!==_e.current&&U.set(`forceMount`,!0)},[U,F]),Y(()=>{D(F!==null)},[F,D]),Y(function(){if(L)return;let e=re.current;if(_){let t=Array.isArray(F)?F:[];if(t.length===0){U.set(`selectedIndex`,null);return}let n=t[t.length-1],r=aU(e,n,b);U.set(`selectedIndex`,r===-1?null:r);return}let t=aU(e,F,b);U.set(`selectedIndex`,t===-1?null:t)},[_,L,F,re,b,U]),vU(F,()=>{C(P),w(F!==E.initialValue),T()?A.commit(F):A.commit(F,!0)});let ve=X((e,t)=>{if(s?.(e,t),!t.isCanceled&&(R(e),!e&&U.state.activeIndex!==null)){let e=z.current[U.state.activeIndex];queueMicrotask(()=>{e?.setAttribute(`tabindex`,`-1`)})}}),ye=X(()=>{le(!1),U.set(`activeIndex`,null),h?.(!1)});hw({enabled:!p,open:L,ref:te,onComplete(){L||ye()}}),W.useImperativeHandle(p,()=>({unmount:ye}),[ye]);let be=X((e,t)=>{i?.(e,t),!t.isCanceled&&I(e)}),xe=X(()=>{let e=U.state.listElement||te.current;if(!e)return;let t=e.scrollTop,n=e.scrollTop+e.clientHeight,r=t>1,i=n<e.scrollHeight-1;U.state.scrollUpArrowVisible!==r&&U.set(`scrollUpArrowVisible`,r),U.state.scrollDownArrowVisible!==i&&U.set(`scrollDownArrowVisible`,i)}),Se=ww({open:L,onOpenChange:ve,elements:{reference:pe,floating:me}}),{getReferenceProps:Ce,getFloatingProps:we,getItemProps:Te}=zw([SS(Se,{enabled:!u&&!N,event:`mousedown`}),LC(Se,{bubbles:!1}),Jw(Se,{enabled:!u&&!N,listRef:z,activeIndex:de,selectedIndex:fe,disabledIndices:Bb,onNavigate(e){e===null&&!L||U.set(`activeIndex`,e)},focusItemOnHover:!1}),Zw(Se,{enabled:!u&&!N&&(L||!_),listRef:ee,activeIndex:de,selectedIndex:fe,onMatch(e){L?U.set(`activeIndex`,e):be(re.current[e],ox(`none`))},onTypingChange(e){ie.current=e}})]);HH(()=>{U.update({popupProps:we(),triggerProps:Ce()})}),Y(()=>{U.update({id:M,modal:f,multiple:_,value:F,open:L,mounted:H,transitionStatus:ue,popupProps:we(),triggerProps:Ce(),items:g,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b})},[U,M,f,_,F,L,H,ue,we,Ce,g,v,y,b]);let Ee=W.useMemo(()=>({store:U,name:P,required:d,disabled:N,readOnly:u,multiple:_,itemToStringLabel:v,itemToStringValue:y,highlightItemOnHover:x,setValue:be,setOpen:ve,listRef:z,popupRef:te,scrollHandlerRef:ne,handleScrollArrowVisibility:xe,scrollArrowsMountedCountRef:B,getItemProps:Te,events:Se.context.events,valueRef:V,valuesRef:re,labelsRef:ee,typingRef:ie,selectionRef:se,selectedItemTextRef:oe,validation:A,onOpenChangeComplete:h,keyboardActiveRef:ae,alignItemWithTriggerActiveRef:ce,initialValueRef:_e}),[U,P,d,N,u,_,v,y,x,be,ve,Te,Se.context.events,A,h,xe]),De=fx(m,A.inputRef),Oe=_&&Array.isArray(F)&&F.length>0,ke=W.useMemo(()=>!_||!Array.isArray(F)||!P?null:F.map(e=>{let t=uU(e,y);return(0,G.jsx)(`input`,{type:`hidden`,name:P,value:t},t)}),[_,F,P,y]);return(0,G.jsx)(WH.Provider,{value:Ee,children:(0,G.jsxs)(GH.Provider,{value:Se,children:[S,(0,G.jsx)(`input`,{...A.getInputValidationProps({onFocus(){U.state.triggerElement?.focus()},onChange(e){if(e.nativeEvent.defaultPrevented)return;let t=e.target.value,n=ox(qb,e.nativeEvent);function r(){if(_)return;let e=re.current.find(e=>uU(e,y).toLowerCase()===t.toLowerCase());e!=null&&(w(e!==E.initialValue),be(e,n),T()&&A.commit(e))}U.set(`forceMount`,!0),queueMicrotask(r)}}),id:t||j||void 0,name:_?void 0:P,value:he,disabled:N,required:d&&!Oe,readOnly:u,ref:De,style:vx,tabIndex:-1,"aria-hidden":!0}),ke]})})}function bU(e){let t=e.getBoundingClientRect(),n=window.getComputedStyle(e,`::before`),r=window.getComputedStyle(e,`::after`);if(!(n.content!==`none`||r.content!==`none`))return t;let i=parseFloat(n.width)||0,a=parseFloat(n.height)||0,o=parseFloat(r.width)||0,s=parseFloat(r.height)||0,c=Math.max(t.width,i,o),l=Math.max(t.height,a,s),u=c-t.width,d=l-t.height;return{left:t.left-u/2,right:t.right+u/2,top:t.top-d/2,bottom:t.bottom+d/2}}var xU=2,SU={...vT,...XH,value:()=>null},CU=W.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,nativeButton:a=!0,...o}=e,{setTouched:s,setFocused:c,validationMode:l,state:u,disabled:d}=QH(),{labelId:f}=eU(),{store:p,setOpen:m,selectionRef:h,validation:g,readOnly:_,alignItemWithTriggerActiveRef:v,disabled:y,keyboardActiveRef:b}=KH(),x=d||y||i,S=ow(p,pU.open),C=ow(p,pU.value),w=ow(p,pU.triggerProps),T=ow(p,pU.positionerElement),E=ow(p,pU.listElement),D=ow(p,pU.serializedValue),O=fv(T),k=W.useRef(null),A=B_(),j=B_(),{getButtonProps:M,buttonRef:N}=Ok({disabled:x,native:a}),P=fx(t,k,N,X(e=>{p.set(`triggerElement`,e)})),F=B_(),I=B_();W.useEffect(()=>{if(S)return I.start(200,()=>{h.current.allowUnselectedMouseUp=!0,F.start(200,()=>{h.current.allowSelectedMouseUp=!0})}),()=>{F.clear(),I.clear()};h.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1},j.clear()},[S,h,j,F,I]);let L=W.useMemo(()=>E?.id??Kv(T)?.id,[E,T]),R=Wx(w,{role:`combobox`,"aria-expanded":S?`true`:`false`,"aria-haspopup":`listbox`,"aria-controls":S?L:void 0,"aria-labelledby":f,"aria-readonly":_||void 0,tabIndex:x?-1:0,ref:P,onFocus(e){c(!0),S&&v.current&&m(!1,ox($b,e.nativeEvent)),A.start(0,()=>{p.set(`forceMount`,!0)})},onBlur(){s(!0),c(!1),l===`onBlur`&&g.commit(C)},onPointerMove({pointerType:e}){b.current=!1,p.set(`touchModality`,e===`touch`)},onPointerDown({pointerType:e}){p.set(`touchModality`,e===`touch`)},onKeyDown(){b.current=!0},onMouseDown(e){if(S)return;let t=Cx(e.currentTarget);function n(e){if(!k.current)return;let t=e.target;if(Rv(k.current,t)||Rv(O.current,t)||t===k.current)return;let n=bU(k.current);e.clientX>=n.left-xU&&e.clientX<=n.right+xU&&e.clientY>=n.top-xU&&e.clientY<=n.bottom+xU||m(!1,ox(nx,e))}j.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},g.getValidationProps,o,M);R.role=`combobox`;let z=W.useMemo(()=>({...u,open:S,disabled:x,value:C,readOnly:_,placeholder:!D}),[u,S,x,C,_,D]);return tS(`button`,e,{ref:[t,k],state:z,stateAttributesMapping:SU,props:R})}),wU={value:()=>null},TU=W.forwardRef(function(e,t){let{className:n,render:r,children:i,...a}=e,{store:o,valueRef:s}=KH(),c=ow(o,pU.value),l=ow(o,pU.items),u=ow(o,pU.itemToStringLabel),d=ow(o,pU.serializedValue),f=W.useMemo(()=>({value:c,placeholder:!d}),[c,d]),p=typeof i==`function`?i(c):i??(Array.isArray(c)?fU(c,u):dU(c,l,u));return tS(`span`,e,{state:f,ref:[t,s],props:[{children:p},a],stateAttributesMapping:wU})}),EU=W.forwardRef(function(e,t){let{className:n,render:r,...i}=e,{store:a}=KH(),o=ow(a,pU.open);return tS(`span`,e,{state:W.useMemo(()=>({open:o}),[o]),ref:t,props:[{"aria-hidden":!0,children:`▼`},i],stateAttributesMapping:_T})}),DU=W.createContext(void 0),OU=W.forwardRef(function(e,t){let{store:n}=KH(),r=ow(n,pU.mounted),i=ow(n,pU.forceMount);return r||i?(0,G.jsx)(DU.Provider,{value:!0,children:(0,G.jsx)(uS,{ref:t,...e})}):null}),kU=W.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function AU(){return W.useContext(kU)}function jU(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=X(i),o=W.useRef(0),s=F_(NU).current,c=F_(MU).current,[l,u]=W.useState(0),d=W.useRef(l),f=X((e,t)=>{c.set(e,t??null),d.current+=1,u(d.current)}),p=X(e=>{c.delete(e),d.current+=1,u(d.current)}),m=W.useMemo(()=>{let e=new Map;return Array.from(c.keys()).filter(e=>e.isConnected).sort(PU).forEach((t,n)=>{let r=c.get(t)??{};e.set(t,{...r,index:n})}),e},[c,l]);Y(()=>{if(typeof MutationObserver!=`function`||m.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(d.current+=1,u(d.current))});return m.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[m]),Y(()=>{d.current===l&&(n.current.length!==m.size&&(n.current.length=m.size),r&&r.current.length!==m.size&&(r.current.length=m.size),o.current=m.size),a(m)},[a,m,n,r,l]),Y(()=>()=>{n.current=[]},[n]),Y(()=>()=>{r&&(r.current=[])},[r]);let h=X(e=>(s.add(e),()=>{s.delete(e)}));Y(()=>{s.forEach(e=>e(m))},[s,m]);let g=W.useMemo(()=>({register:f,unregister:p,subscribeMapChange:h,elementsRef:n,labelsRef:r,nextIndexRef:o}),[f,p,h,n,r,o]);return(0,G.jsx)(kU.Provider,{value:g,children:t})}function MU(){return new Map}function NU(){return new Set}function PU(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}var FU=W.createContext(void 0);function IU(){let e=W.useContext(FU);if(!e)throw Error(j_(59));return e}function LU(e,t){e&&Object.assign(e.style,t)}var RU={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},zU={position:`fixed`},BU=W.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o=`bottom`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m,alignItemWithTrigger:h=!0,collisionAvoidance:g=Wb,..._}=e,{store:v,listRef:y,labelsRef:b,alignItemWithTriggerActiveRef:x,selectedItemTextRef:S,valuesRef:C,initialValueRef:w,popupRef:T,setValue:E}=KH(),D=qH(),O=ow(v,pU.open),k=ow(v,pU.mounted),A=ow(v,pU.modal),j=ow(v,pU.value),M=ow(v,pU.touchModality),N=ow(v,pU.positionerElement),P=ow(v,pU.triggerElement),F=ow(v,pU.isItemEqualToValue),I=W.useRef(null),L=W.useRef(null),[R,z]=W.useState(h),ee=k&&R&&!M;!k&&R!==h&&z(h),Y(()=>{k||(pU.scrollUpArrowVisible(v.state)&&v.set(`scrollUpArrowVisible`,!1),pU.scrollDownArrowVisible(v.state)&&v.set(`scrollDownArrowVisible`,!1))},[v,k]),W.useImperativeHandle(x,()=>ee),hk((ee||A)&&O&&!M,P);let te=zT({anchor:n,floatingRootContext:D,positionMethod:r,mounted:k,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m??ee,collisionAvoidance:g,keepMounted:!0}),ne=ee?`none`:te.side,B=ee?zU:te.positionerStyles,V=W.useMemo(()=>{let e={};return O||(e.pointerEvents=`none`),{role:`presentation`,hidden:!k,style:{...B,...e}}},[O,k,B]),re=W.useMemo(()=>({open:O,side:ne,align:te.align,anchorHidden:te.anchorHidden}),[O,ne,te.align,te.anchorHidden]),ie=tS(`div`,e,{ref:[t,X(e=>{v.set(`positionerElement`,e)})],state:re,stateAttributesMapping:yT,props:[V,_]}),ae=W.useRef(0),oe=X(e=>{if(e.size===0&&ae.current===0||C.current.length===0)return;let t=ae.current;if(ae.current=e.size,e.size===t)return;let n=ox(qb);if(t!==0&&!v.state.multiple&&j!==null&&aU(C.current,j,F)===-1){let e=w.current,t=e!=null&&iU(C.current,e,F)?e:null;E(t,n),t===null&&(v.set(`selectedIndex`,null),S.current=null)}if(t!==0&&v.state.multiple&&Array.isArray(j)){let e=j.filter(e=>iU(C.current,e,F));(e.length!==j.length||e.some(e=>!iU(j,e,F)))&&(E(e,n),e.length===0&&(v.set(`selectedIndex`,null),S.current=null))}if(O&&ee){v.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};LU(N,e),LU(T.current,e)}}),se=W.useMemo(()=>({...te,side:ne,alignItemWithTriggerActive:ee,setControlledAlignItemWithTrigger:z,scrollUpArrowRef:I,scrollDownArrowRef:L}),[te,ne,ee,z]);return(0,G.jsx)(jU,{elementsRef:y,labelsRef:b,onMapChange:oe,children:(0,G.jsxs)(FU.Provider,{value:se,children:[k&&A&&(0,G.jsx)(Ik,{inert:ZT(!O),cutout:P}),ie]})})});function VU(e){let t=e.currentTarget.getBoundingClientRect();return t.top+1<=e.clientY&&e.clientY<=t.bottom-1&&t.left+1<=e.clientX&&e.clientX<=t.right-1}var HU=`base-ui-disable-scrollbar`,UU={className:HU,element:(0,G.jsx)(`style`,{href:HU,precedence:`base-ui:low`,children:`.${HU}{scrollbar-width:none}.${HU}::-webkit-scrollbar{display:none}`})},WU={...yT,...lT},GU=W.forwardRef(function(e,t){let{render:n,className:r,...i}=e,{store:a,popupRef:o,onOpenChangeComplete:s,setOpen:c,valueRef:l,selectedItemTextRef:u,keyboardActiveRef:d,multiple:f,handleScrollArrowVisibility:p,scrollHandlerRef:m}=KH(),{side:h,align:g,alignItemWithTriggerActive:_,setControlledAlignItemWithTrigger:v,scrollDownArrowRef:y,scrollUpArrowRef:b}=IU(),x=Jk(!0)!=null,S=qH(),C=B_(),w=ow(a,pU.id),T=ow(a,pU.open),E=ow(a,pU.mounted),D=ow(a,pU.popupProps),O=ow(a,pU.transitionStatus),k=ow(a,pU.triggerElement),A=ow(a,pU.positionerElement),j=ow(a,pU.listElement),M=W.useRef(0),N=W.useRef(!1),P=W.useRef(0),F=W.useRef(!1),I=W.useRef({}),L=Sx(),R=X(e=>{if(!A||!o.current||!F.current)return;if(N.current||!_){p();return}let t=A.style.top===`0px`,n=A.style.bottom===`0px`,r=A.getBoundingClientRect().height,i=Cx(A),a=getComputedStyle(A),s=parseFloat(a.marginTop),c=parseFloat(a.marginBottom),l=i.documentElement.clientHeight-s-c,u=e.scrollTop,d=e.scrollHeight-e.clientHeight,f=null,m=null,h=!1;if(t){let e=r+(d-u),t=Math.min(e,l);f=t,t===l?h=!0:m=d}else if(n){let e=u-0,t=r+e,n=Math.min(t,l),i=t-l;f=n,n===l?(h=!0,u<d&&(m=u-(e-i))):m=0}f!=null&&(A.style.height=`${f}px`),m!=null&&(e.scrollTop=m),h&&(N.current=!0),p()});W.useImperativeHandle(m,()=>R,[R]),hw({open:T,ref:o,onComplete(){T&&s?.(!0)}});let z=W.useMemo(()=>({open:T,transitionStatus:O,side:h,align:g}),[T,O,h,g]);Y(()=>{!A||!o.current||Object.keys(I.current).length||(I.current={top:A.style.top||`0`,left:A.style.left||`0`,right:A.style.right,height:A.style.height,bottom:A.style.bottom,minHeight:A.style.minHeight,maxHeight:A.style.maxHeight,marginTop:A.style.marginTop,marginBottom:A.style.marginBottom})},[o,A]),Y(()=>{E||_||(F.current=!1,N.current=!1,M.current=0,P.current=0,LU(A,I.current))},[E,_,A,o]),Y(()=>{let e=o.current;if(!(!E||!k||!A||!e)){if(!_){F.current=!0,L.request(p);return}queueMicrotask(()=>{let t=getComputedStyle(A),n=getComputedStyle(e),r=Cx(k),i=U_(A),a=k.getBoundingClientRect(),o=A.getBoundingClientRect(),s=a.left,c=a.height,d=j||e,f=d.scrollHeight,m=parseFloat(n.borderBottomWidth),h=parseFloat(t.marginTop)||10,g=parseFloat(t.marginBottom)||10,_=parseFloat(t.minHeight)||100,y=r.documentElement.clientHeight-h-g,b=r.documentElement.clientWidth,x=y-a.bottom+c,S=u.current,C=l.current,w=0,T=0;if(S&&C){let e=C.getBoundingClientRect(),t=S.getBoundingClientRect(),n=e.left-s,r=t.left-o.left,i=e.top-a.top+e.height/2,c=t.top-o.top+t.height/2;w=n-r,T=c-i}let E=x+T+g+m,D=Math.min(y,E),O=y-h-g,P=E-D,L=Math.max(5,s+w),R=b-5,z=Math.max(0,L+o.width-R);A.style.left=`${L-z}px`,A.style.height=`${D}px`,A.style.maxHeight=`auto`,A.style.marginTop=`${h}px`,A.style.marginBottom=`${g}px`,e.style.height=`100%`;let ee=d.scrollHeight-d.clientHeight,te=P>=ee;te&&(D=Math.min(y,o.height)-(P-ee));let ne=a.top<20||a.bottom>y-20||D<Math.min(f,_),B=(i.visualViewport?.scale??1)!==1&&Sv;if(ne||B){F.current=!0,LU(A,I.current),aS.flushSync(()=>v(!1));return}if(te){let e=Math.max(0,y-E);A.style.top=o.height>=O?`0`:`${e}px`,A.style.height=`${D}px`,d.scrollTop=d.scrollHeight-d.clientHeight,M.current=Math.max(_,D)}else A.style.bottom=`0`,M.current=Math.max(_,D),d.scrollTop=P;M.current===y&&(N.current=!0),p(),setTimeout(()=>{F.current=!0})})}},[a,E,A,k,l,u,o,p,_,v,L,y,b,j]),W.useEffect(()=>{if(!_||!A||!E)return;let e=U_(A);function t(e){c(!1,ox(ax,e))}return e.addEventListener(`resize`,t),()=>{e.removeEventListener(`resize`,t)}},[c,_,A,E]);let ee={...j?{role:`presentation`,"aria-orientation":void 0}:{role:`listbox`,"aria-multiselectable":f||void 0,id:`${w}-list`},onKeyDown(e){d.current=!0,x&&Kk.has(e.key)&&e.stopPropagation()},onMouseMove(){d.current=!1},onPointerLeave(e){if(VU(e)||e.pointerType===`touch`)return;let t=e.currentTarget;C.start(0,()=>{a.set(`activeIndex`,null),t.focus({preventScroll:!0})})},onScroll(e){j||m.current?.(e.currentTarget)},..._&&{style:j?{height:`100%`}:RU}},te=tS(`div`,e,{ref:[t,o],state:z,stateAttributesMapping:WU,props:[D,ee,VT(O),{className:!j&&_?UU.className:void 0},i]});return(0,G.jsxs)(W.Fragment,{children:[UU.element,(0,G.jsx)(xS,{context:S,modal:!1,disabled:!E,restoreFocus:!0,children:te})]})}),KU=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function qU(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,elementsRef:l,labelsRef:u,nextIndexRef:d}=AU(),f=W.useRef(-1),[p,m]=W.useState(a??(i===KU.GuessFromOrder?()=>{if(f.current===-1){let e=d.current;d.current+=1,f.current=e}return f.current}:-1)),h=W.useRef(null),g=W.useCallback(e=>{if(h.current=e,p!==-1&&e!==null&&(l.current[p]=e,u)){let n=t!==void 0;u.current[p]=n?t:r?.current?.textContent??e.textContent}},[p,l,u,t,r]);return Y(()=>{if(a!=null)return;let e=h.current;if(e)return o(e,n),()=>{s(e)}},[a,o,s,n]),Y(()=>{if(a==null)return c(e=>{let t=h.current?e.get(h.current)?.index:null;t!=null&&m(t)})},[a,c,m]),W.useMemo(()=>({ref:g,index:p}),[p,g])}var JU=W.createContext(void 0);function YU(){let e=W.useContext(JU);if(!e)throw Error(j_(57));return e}var XU=W.memo(W.forwardRef(function(e,t){let{render:n,className:r,value:i=null,label:a,disabled:o=!1,nativeButton:s=!1,...c}=e,l=W.useRef(null),u=qU({label:a,textRef:l,indexGuessBehavior:KU.GuessFromOrder}),{store:d,getItemProps:f,setOpen:p,setValue:m,selectionRef:h,typingRef:g,valuesRef:_,keyboardActiveRef:v,multiple:y,highlightItemOnHover:b}=KH(),x=B_(),S=ow(d,pU.isActive,u.index),C=ow(d,pU.isSelected,u.index,i),w=ow(d,pU.isSelectedByFocus,u.index),T=ow(d,pU.isItemEqualToValue),E=u.index,D=E!==-1,O=W.useRef(null),k=fv(E);Y(()=>{if(!D)return;let e=_.current;return e[E]=i,()=>{delete e[E]}},[D,E,i,_]),Y(()=>{if(!D)return;let e=d.state.value,t=e;y&&Array.isArray(e)&&e.length>0&&(t=e[e.length-1]),t!==void 0&&rU(t,i,T)&&d.set(`selectedIndex`,E)},[D,E,y,T,d,i]);let A=W.useMemo(()=>({disabled:o,selected:C,highlighted:S}),[o,C,S]),j=f({active:S,selected:C});j.onFocus=void 0,j.id=void 0;let M=W.useRef(null),N=W.useRef(`mouse`),P=W.useRef(!1),{getButtonProps:F,buttonRef:I}=Ok({disabled:o,focusableWhenDisabled:!0,native:s});function L(e){let t=d.state.value;if(y){let n=Array.isArray(t)?t:[];m(C?oU(n,i,T):[...n,i],ox(Qb,e))}else m(i,ox(Qb,e)),p(!1,ox(Qb,e))}let R={role:`option`,"aria-selected":C,"aria-disabled":o||void 0,tabIndex:S?0:-1,onFocus(){d.set(`activeIndex`,E)},onMouseEnter(){!v.current&&d.state.selectedIndex===null&&d.set(`activeIndex`,E)},onMouseMove(){b&&d.set(`activeIndex`,E)},onMouseLeave(e){!b||v.current||VU(e)||x.start(0,()=>{d.state.activeIndex===E&&d.set(`activeIndex`,null)})},onTouchStart(){h.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1}},onKeyDown(e){M.current=e.key,d.set(`activeIndex`,E)},onClick(e){P.current=!1,!(e.type===`keydown`&&M.current===null)&&(o||M.current===` `&&g.current||N.current!==`touch`&&!S||(M.current=null,L(e.nativeEvent)))},onPointerEnter(e){N.current=e.pointerType},onPointerDown(e){N.current=e.pointerType,P.current=!0},onMouseUp(e){if(o)return;if(P.current){P.current=!1;return}let t=!h.current.allowSelectedMouseUp&&C,n=!h.current.allowUnselectedMouseUp&&!C;t||n||N.current!==`touch`&&!S||L(e.nativeEvent)}},z=tS(`div`,e,{ref:[I,t,u.ref,O],state:A,props:[j,R,c,F]}),ee=W.useMemo(()=>({selected:C,indexRef:k,textRef:l,selectedByFocus:w,hasRegistered:D}),[C,k,l,w,D]);return(0,G.jsx)(JU.Provider,{value:ee,children:z})})),ZU=W.forwardRef(function(e,t){let n=e.keepMounted??!1,{selected:r}=YU();return n||r?(0,G.jsx)(QU,{...e,ref:t}):null}),QU=W.memo(W.forwardRef((e,t)=>{let{render:n,className:r,keepMounted:i,...a}=e,{selected:o}=YU(),s=W.useRef(null),{transitionStatus:c,setMounted:l}=pw(o),u=W.useMemo(()=>({selected:o,transitionStatus:c}),[o,c]),d=tS(`span`,e,{ref:[t,s],state:u,props:[{"aria-hidden":!0,children:`✔️`},a],stateAttributesMapping:lT});return hw({open:o,ref:s,onComplete(){o||l(!1)}}),d})),$U=W.memo(W.forwardRef(function(e,t){let{indexRef:n,textRef:r,selectedByFocus:i,hasRegistered:a}=YU(),{selectedItemTextRef:o}=KH(),{className:s,render:c,...l}=e;return tS(`div`,e,{ref:[W.useCallback(e=>{if(!e||!a)return;let t=o.current===null||!o.current.isConnected;(i||t&&n.current===0)&&(o.current=e)},[o,n,i,a]),t,r],props:l})}));function eW({value:e,onValueChange:t,options:n,ariaLabel:r,className:i}){return(0,G.jsxs)(yU,{value:e,onValueChange:e=>t(e),modal:!1,children:[(0,G.jsxs)(CU,{className:`ui-select-trigger ${i??``}`,"aria-label":r,children:[(0,G.jsx)(TU,{children:e=>n.find(t=>t.value===e)?.label??e}),(0,G.jsx)(EU,{className:`ui-select-icon`,children:(0,G.jsx)(KD,{size:12})})]}),(0,G.jsx)(OU,{children:(0,G.jsx)(BU,{className:`ui-select-positioner`,sideOffset:4,align:`end`,side:`bottom`,alignItemWithTrigger:!1,children:(0,G.jsx)(GU,{className:`ui-select-popup`,children:n.map(e=>(0,G.jsxs)(XU,{value:e.value,className:`ui-select-item`,children:[(0,G.jsx)($U,{children:e.label}),(0,G.jsx)(ZU,{className:`ui-select-indicator`,children:(0,G.jsx)(HD,{size:13})})]},e.value))})})})]})}var tW=[{value:`word`,label:`Word`},{value:`word-alt`,label:`Word (alt)`},{value:`char`,label:`Character`},{value:`none`,label:`None`}],nW=[{value:`classic`,label:`Classic (+/−)`},{value:`bars`,label:`Bars`},{value:`none`,label:`None`}],rW=[{value:`line-info`,label:`Line info + context`},{value:`line-info-basic`,label:`Line info`},{value:`metadata`,label:`Metadata only`},{value:`simple`,label:`Simple`}],iW=[{value:`both`,label:`Both`},{value:`line`,label:`Line only`},{value:`number`,label:`Number only`},{value:`disabled`,label:`Disabled`}],aW=[11,12,13,14,15,16].map(e=>({value:String(e),label:`${e}px`})),oW=[2,4,8].map(e=>({value:String(e),label:String(e)})),sW=[{value:`comfortable`,label:`Comfortable`},{value:`compact`,label:`Compact`}],cW=[{value:`0`,label:`Disabled`},{value:`100`,label:`100 lines`},{value:`200`,label:`200 lines`},{value:`400`,label:`400 lines`},{value:`800`,label:`800 lines`}],lW=[{value:``,label:`Default`},{value:`chrome`,label:`Chrome`},{value:`firefox`,label:`Firefox`},{value:`edge`,label:`Edge`},{value:`brave`,label:`Brave`}],uW=[{value:`default`,label:`Default / System`},{value:`vscode`,label:`VS Code`},{value:`zed`,label:`Zed`},{value:`vim`,label:`Vim`},{value:`neovim`,label:`Neovim`}];function dW({diffStyle:e,diffOptions:t,defaultTabSize:n,browser:r,editorIDE:i,lineDiffType:a,lineWrap:o,diffIndicators:s,showLineNumbers:c,hunkSeparators:l,lineHoverHighlight:u,fontSize:d,haptics:f,sounds:p,uiFont:m,monoFont:h,density:g,autoCollapseLineThreshold:_,requireViewAllBeforeSend:v=!1,showStatusBar:y,ignoreSpaceChange:b=!1,ignoreAllSpace:x=!1,onDiffStyleChange:S,onDiffOptionsChange:C,onDefaultTabSizeChange:w,onBrowserChange:T,onOpenThemeModal:E,onEditorIDEChange:D,onLineDiffTypeChange:O,onLineWrapChange:k,onDiffIndicatorsChange:A,onShowLineNumbersChange:j,onHunkSeparatorsChange:M,onLineHoverHighlightChange:N,onFontSizeChange:P,onHapticsChange:F,onSoundsChange:I,onDensityChange:L,onAutoCollapseLineThresholdChange:R,onRequireViewAllBeforeSendChange:z,onShowStatusBarChange:ee,onIgnoreSpaceChange:te,onIgnoreAllSpaceChange:ne,onOpenUiFontModal:B,onOpenMonoFontModal:V,showSource:re=!0,showWhitespace:ie=!0,showExternalTools:ae=!0,showSendPolicy:oe=!0}){let[se,ce]=(0,W.useState)(!1);return(0,W.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&(e.key===`,`||e.code===`Comma`)&&(e.preventDefault(),ce(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]),(0,G.jsx)(Zk,{open:se,onOpenChange:ce,ariaLabel:`Settings`,className:`settings-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn ${se?`btn-active`:``}`,title:`Settings (⌘,)`,"aria-label":`Settings`,children:[(0,G.jsx)(ZO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Settings`})]}),children:(0,G.jsxs)(`div`,{className:`popover-scroll settings-panel`,children:[re&&t&&C&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Source`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.staged,onChange:e=>C({...t,staged:e.target.checked})}),`Show staged`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.untracked,onChange:e=>C({...t,untracked:e.target.checked})}),`Show untracked`]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Display`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Inline diff`}),(0,G.jsx)(eW,{value:a,onValueChange:e=>O(e),options:tW,ariaLabel:`Inline diff style`})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:o,onChange:e=>k(e.target.checked)}),`Wrap long lines`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Diff indicators`}),(0,G.jsx)(eW,{value:s,onValueChange:e=>A(e),options:nW,ariaLabel:`Diff indicators`})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:c,onChange:e=>j(e.target.checked)}),`Show line numbers`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hunk separator`}),(0,G.jsx)(eW,{value:l,onValueChange:e=>M(e),options:rW,ariaLabel:`Hunk separator style`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hover highlight`}),(0,G.jsx)(eW,{value:u,onValueChange:e=>N(e),options:iW,ariaLabel:`Hover highlight`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Font size`}),(0,G.jsx)(eW,{value:String(d),onValueChange:e=>P(Number(e)),options:aW,ariaLabel:`Font size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Default tab size`}),(0,G.jsx)(eW,{value:String(n),onValueChange:e=>w(Number(e)),options:oW,ariaLabel:`Default tab size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`UI font`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),B()},title:m??`Default (Geist Mono)`,children:[(0,G.jsx)(ik,{size:13}),(0,G.jsx)(`span`,{className:`settings-value-label`,children:m??`Default…`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Comfort`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Density`}),(0,G.jsx)(eW,{value:g,onValueChange:e=>L(e),options:sW,ariaLabel:`UI density`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Auto-collapse huge files`}),(0,G.jsx)(eW,{value:String(_),onValueChange:e=>R(Number(e)),options:cW,ariaLabel:`Auto-collapse line threshold`})]}),oe&&z&&(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:v,onChange:e=>z(e.target.checked)}),(0,G.jsxs)(`span`,{className:`settings-icon-label`,children:[(0,G.jsx)($O,{size:12}),` Warn before sending if files are unviewed`]})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:y,onChange:e=>ee(e.target.checked)}),(0,G.jsxs)(`span`,{className:`settings-icon-label`,children:[(0,G.jsx)(CO,{size:12}),` Show status bar`]})]}),ie&&te&&ne&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Whitespace`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:b,onChange:e=>te(e.target.checked)}),`Ignore space-change (-b)`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:x,onChange:e=>ne(e.target.checked)}),`Ignore all space (-w)`]})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Code font`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),V()},title:h??`Default (JetBrains Mono)`,children:[(0,G.jsx)(ik,{size:13}),(0,G.jsx)(`span`,{className:`settings-value-label`,children:h??`Default…`})]})]}),ae&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`External tools`}),T&&(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Browser`}),(0,G.jsx)(eW,{value:r||``,onValueChange:T,options:lW,ariaLabel:`Browser`})]}),D&&(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Preferred IDE`}),(0,G.jsx)(eW,{value:i||`default`,onValueChange:D,options:uW,ariaLabel:`Preferred IDE`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Appearance`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Diff style`}),(0,G.jsx)(eW,{value:e,onValueChange:e=>S(e),options:[{value:`split`,label:`Split`},{value:`unified`,label:`Unified`}],ariaLabel:`Diff style`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Theme`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),E()},children:[(0,G.jsx)(BO,{size:14}),` Switch Theme…`]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Feedback`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:f,onChange:e=>F(e.target.checked)}),`Haptic feedback`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:p,onChange:e=>I(e.target.checked)}),`Sound effects`]})]})})}var fW=(0,W.memo)(function({repoName:e,branch:t,fileCount:n,totalFileCount:r,additions:i,deletions:a,commentCount:o,planCount:s,pendingPlanCount:c,lastSend:l,onOpenPlans:u,diffStyle:d,diffOptions:f,defaultTabSize:p,browser:m,theme:h,editorIDE:g,customMode:_,showMode:v,showCommitCount:y,lineDiffType:b,lineWrap:x,diffIndicators:S,showLineNumbers:C,hunkSeparators:w,lineHoverHighlight:T,fontSize:E,haptics:D,sounds:O,uiFont:k,monoFont:A,density:j,autoCollapseLineThreshold:M,requireViewAllBeforeSend:N,showStatusBar:P,ignoreSpaceChange:F,ignoreAllSpace:I,onDiffStyleChange:L,onDiffOptionsChange:R,onDefaultTabSizeChange:z,onBrowserChange:ee,onOpenThemeModal:te,onEditorIDEChange:ne,onLineDiffTypeChange:B,onLineWrapChange:V,onDiffIndicatorsChange:re,onShowLineNumbersChange:ie,onHunkSeparatorsChange:ae,onLineHoverHighlightChange:oe,onFontSizeChange:se,onHapticsChange:ce,onSoundsChange:H,onDensityChange:le,onAutoCollapseLineThresholdChange:ue,onRequireViewAllBeforeSendChange:U,onShowStatusBarChange:de,onIgnoreSpaceChange:fe,onIgnoreAllSpaceChange:pe,onResolveAllOpen:me,onOpenUiFontModal:he,onOpenMonoFontModal:ge,onOpenSearch:_e,onCopyComments:ve,onCopyMarkdown:ye,onSendToAgent:be,agentWaiting:xe,waitingAgents:Se=[],sending:Ce,comments:we,viewedFileCount:Te,onEditComment:Ee,onDeleteComment:De,sidebarCollapsed:Oe,onToggleSidebar:ke}){let Ae=v?`${y} commit${y===1?``:`s`}`:n===r?`${n} file${n===1?``:`s`}`:`${n}/${r} files`;return(0,G.jsxs)(`header`,{className:`toolbar diff-app-toolbar`,role:`banner`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[ke&&(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:ke,"aria-label":Oe?`Open file tree`:`Close file tree`,"aria-expanded":!Oe,title:Oe?`Open sidebar · b`:`Close sidebar · b`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsxs)(`div`,{className:`toolbar-brand`,children:[(0,G.jsx)(VH,{size:20,className:`toolbar-brand-mark`}),(0,G.jsxs)(`div`,{className:`toolbar-brand-text`,children:[(0,G.jsx)(`h1`,{className:`toolbar-title`,children:e||`diffing`}),t&&(0,G.jsxs)(`span`,{className:`toolbar-branch-inline`,title:t,children:[(0,G.jsx)(mO,{size:11,"aria-hidden":`true`}),t]})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-meta`,"aria-label":`Diff summary`,children:[(0,G.jsx)(`span`,{className:`toolbar-chip`,children:Ae}),(i>0||a>0)&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-diff`,children:[i>0&&(0,G.jsxs)(`span`,{className:`stat-additions`,children:[`+`,i]}),a>0&&(0,G.jsxs)(`span`,{className:`stat-deletions`,children:[`−`,a]})]}),o>0&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-comments`,children:[o,` open`]}),l&&l.round>0&&(0,G.jsx)(BH,{lastRound:l.round})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-search-btn`,onClick:_e,title:`Search files, text, symbols (⌘K)`,"aria-label":`Search`,children:[(0,G.jsx)(XO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Search`}),(0,G.jsx)(`kbd`,{className:`toolbar-search-kbd`,children:`⌘K`})]}),s>0&&(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-plans-btn ${c>0?`toolbar-plans-btn-pending`:``}`,onClick:u,title:c>0?`${c} plan${c===1?``:`s`} awaiting review`:`Open plan review`,children:[c>0&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(eO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Plans`}),c>0&&(0,G.jsx)(`span`,{className:`toolbar-plans-badge`,children:c})]}),o>0&&(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-resolve-all-btn`,onClick:()=>{typeof window>`u`||window.confirm(`Resolve all ${o} open comment${o===1?``:`s`}? This marks every open thread as resolved in one move.`)&&me()},title:`Resolve all open comments`,children:[(0,G.jsx)(VD,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Resolve all`})]}),(0,G.jsx)(dW,{diffStyle:d,diffOptions:f,defaultTabSize:p,browser:m,editorIDE:g,lineDiffType:b,lineWrap:x,diffIndicators:S,showLineNumbers:C,hunkSeparators:w,lineHoverHighlight:T,fontSize:E,haptics:D,sounds:O,uiFont:k,monoFont:A,density:j,autoCollapseLineThreshold:M,requireViewAllBeforeSend:N,showStatusBar:P,ignoreSpaceChange:F,ignoreAllSpace:I,onDiffStyleChange:L,onDiffOptionsChange:R,onDefaultTabSizeChange:z,onBrowserChange:ee,onOpenThemeModal:te,onEditorIDEChange:ne,onLineDiffTypeChange:B,onLineWrapChange:V,onDiffIndicatorsChange:re,onShowLineNumbersChange:ie,onHunkSeparatorsChange:ae,onLineHoverHighlightChange:oe,onFontSizeChange:se,onHapticsChange:ce,onSoundsChange:H,onDensityChange:le,onAutoCollapseLineThresholdChange:ue,onRequireViewAllBeforeSendChange:U,onShowStatusBarChange:de,onIgnoreSpaceChange:fe,onIgnoreAllSpaceChange:pe,onOpenUiFontModal:he,onOpenMonoFontModal:ge,showSource:!_}),(0,G.jsx)(RH,{comments:we,totalFileCount:r,viewedFileCount:Te,requireViewAllBeforeSend:N,onEditComment:Ee,onDeleteComment:De,onSend:be,sending:Ce,agentWaiting:xe,waitingAgents:Se,onCopyComments:ve,onCopyMarkdown:ye})]})]})});function pW({overview:e,commits:t}){let[n,r]=(0,W.useState)(!1),i=e.commitSubjects.length>0,a=e.truncated>0,o=!!e.subtitle||a||i;return(0,G.jsxs)(`section`,{className:`diff-overview-banner`,"data-kind":e.kind,"aria-label":`Diff overview: ${e.headline}`,children:[(0,G.jsxs)(`header`,{className:`diff-overview-banner-header`,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-line`,children:[(0,G.jsx)(_W,{kind:e.kind}),(0,G.jsx)(`h2`,{className:`diff-overview-banner-headline`,children:e.headline})]}),o&&(0,G.jsxs)(`div`,{className:`diff-overview-banner-meta`,children:[e.subtitle&&(0,G.jsx)(`span`,{className:`diff-overview-banner-subtitle`,children:e.subtitle}),a&&(0,G.jsxs)(`span`,{className:`diff-overview-banner-truncated-badge`,title:`${e.truncated} additional ${e.truncated===1?`commit`:`commits`} not shown`,children:[`+`,e.truncated]}),i&&(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-details-toggle`,onClick:()=>r(e=>!e),"aria-expanded":n,"aria-controls":`diff-overview-banner-details`,children:[n?(0,G.jsx)(UD,{size:14}):(0,G.jsx)(GD,{size:14}),(0,G.jsx)(dO,{size:13,"aria-hidden":`true`}),(0,G.jsxs)(`span`,{children:[n?`Hide`:`Show`,` `,e.commitSubjects.length,` `,`commit`,e.commitSubjects.length===1?``:`s`]})]})]})]}),i&&n&&(0,G.jsx)(mW,{overview:e,commits:t,id:`diff-overview-banner-details`})]})}function mW({overview:e,commits:t,id:n}){return t&&t.length>0?(0,G.jsxs)(`ul`,{id:n,className:`diff-overview-banner-subjects`,children:[t.map((e,n)=>(0,G.jsx)(hW,{commit:e,index:n,total:t.length},e.sha)),e.truncated>0&&(0,G.jsxs)(`li`,{className:`diff-overview-banner-truncated`,role:`status`,children:[`+ `,e.truncated,` more commit`,e.truncated===1?``:`s`,` not shown`]})]}):(0,G.jsx)(`ul`,{id:n,className:`diff-overview-banner-subjects`,children:e.commitSubjects.map((t,n)=>{let r=n===0||n===e.commitSubjects.length-1;return(0,G.jsxs)(`li`,{className:`diff-overview-banner-subject-row`,children:[(0,G.jsx)(hO,{size:12,className:`diff-overview-banner-subject-icon`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`diff-overview-banner-subject-text`,children:t}),r&&e.fromDate&&e.toDate&&(0,G.jsx)(`span`,{className:`diff-overview-banner-subject-dates`,children:n===0?e.fromDate:e.toDate})]},`${n}-${t}`)})})}function hW({commit:e,index:t,total:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(!1),s=async()=>{try{await navigator.clipboard.writeText(e.sha),i(!0),setTimeout(()=>i(!1),1500)}catch{}},c=e.body.trim().length>0,l=e.parents.length>1,u=n>1?`Commit ${t+1} of ${n}: ${e.subject}`:`Commit: ${e.subject}`;return(0,G.jsxs)(`li`,{className:`diff-overview-banner-commit-row`,"aria-label":u,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-line`,children:[(0,G.jsx)(hO,{size:12,className:`diff-overview-banner-subject-icon`,"aria-hidden":`true`}),(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-commit-sha`,onClick:s,title:r?`Copied full SHA`:`Click to copy full SHA`,"aria-label":`Copy full SHA ${e.sha}`,children:[(0,G.jsx)(`span`,{children:e.shortSha}),r?(0,G.jsx)(HD,{size:12,"aria-hidden":`true`}):(0,G.jsx)(aO,{size:12,"aria-hidden":`true`})]}),l&&(0,G.jsx)(`span`,{className:`diff-overview-banner-merge-badge`,title:`Merge commit with ${e.parents.length} parents`,children:`merge`}),(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-subject`,children:e.subject})]}),(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-meta`,children:[(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-author`,children:[(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-author-name`,children:e.authorName}),(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-author-email`,children:[`<`,e.authorEmail,`>`]})]}),(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-date`,title:e.authorDate,children:gW(e.authorDate)}),e.committerName!==e.authorName||e.committerEmail!==e.authorEmail?(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-committer`,title:`Committed by ${e.committerName} <${e.committerEmail}> at ${e.committerDate}`,children:[(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-committer-label`,children:`committed by`}),` `,(0,G.jsx)(`span`,{children:e.committerName})]}):null]}),c&&(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-body`,children:[(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-commit-body-toggle`,onClick:()=>o(e=>!e),"aria-expanded":a,"aria-controls":`diff-overview-commit-body-${e.shortSha}`,children:[a?(0,G.jsx)(UD,{size:14}):(0,G.jsx)(GD,{size:14}),(0,G.jsx)(dO,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:a?`Hide message`:`Show message`})]}),a&&(0,G.jsx)(`pre`,{id:`diff-overview-commit-body-${e.shortSha}`,className:`diff-overview-banner-commit-body-pre`,children:e.body})]})]})}function gW(e){try{let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}catch{return e}}function _W({kind:e}){let t={size:14,className:`diff-overview-banner-icon`,"aria-hidden":!0};switch(e){case`working-tree`:case`staged-only`:return(0,G.jsx)(SO,{...t});case`range`:return(0,G.jsx)(mO,{...t});case`commit-single`:case`commit-series`:return(0,G.jsx)(hO,{...t});case`pr`:return(0,G.jsx)(vO,{...t})}}function vW(e,t){return JSON.stringify(e.overview)===JSON.stringify(t.overview)&&JSON.stringify(e.commits)===JSON.stringify(t.commits)}var yW=(0,W.memo)(pW,vW),bW=W.createContext(void 0);function xW(e){let t=W.useContext(bW);if(e===!1&&t===void 0)throw Error(j_(27));return t}var SW={...yT,...lT},CW=W.forwardRef(function(e,t){let{render:n,className:r,forceRender:i=!1,...a}=e,{store:o}=xW(),s=o.useState(`open`),c=o.useState(`nested`),l=o.useState(`mounted`),u=o.useState(`transitionStatus`);return tS(`div`,e,{state:W.useMemo(()=>({open:s,transitionStatus:u}),[s,u]),ref:[o.context.backdropRef,t],stateAttributesMapping:SW,props:[{role:`presentation`,hidden:!l,style:{userSelect:`none`,WebkitUserSelect:`none`}},a],enabled:i||!c})}),wW=function(e){return e.nestedDialogs=`--nested-dialogs`,e}({}),TW=function(e){return e[e.open=uT.open]=`open`,e[e.closed=uT.closed]=`closed`,e[e.startingStyle=uT.startingStyle]=`startingStyle`,e[e.endingStyle=uT.endingStyle]=`endingStyle`,e.nested=`data-nested`,e.nestedDialogOpen=`data-nested-dialog-open`,e}({}),EW=W.createContext(void 0);function DW(){let e=W.useContext(EW);if(e===void 0)throw Error(j_(26));return e}var OW={...yT,...lT,nestedDialogOpen(e){return e?{[TW.nestedDialogOpen]:``}:null}},kW=W.forwardRef(function(e,t){let{className:n,finalFocus:r,initialFocus:i,render:a,...o}=e,{store:s}=xW(),c=s.useState(`descriptionElementId`),l=s.useState(`disablePointerDismissal`),u=s.useState(`floatingRootContext`),d=s.useState(`popupProps`),f=s.useState(`modal`),p=s.useState(`mounted`),m=s.useState(`nested`),h=s.useState(`nestedOpenDialogCount`),g=s.useState(`open`),_=s.useState(`openMethod`),v=s.useState(`titleElementId`),y=s.useState(`transitionStatus`),b=s.useState(`role`);DW(),hw({open:g,ref:s.context.popupRef,onComplete(){g&&s.context.onOpenChangeComplete?.(!0)}});function x(e){return e===`touch`?s.context.popupRef.current:!0}let S=i===void 0?x:i,C=h>0,w=tS(`div`,e,{state:W.useMemo(()=>({open:g,nested:m,transitionStatus:y,nestedDialogOpen:C}),[g,m,y,C]),props:[d,{"aria-labelledby":v??void 0,"aria-describedby":c??void 0,role:b,tabIndex:-1,hidden:!p,onKeyDown(e){Kk.has(e.key)&&e.stopPropagation()},style:{[wW.nestedDialogs]:h}},o],ref:[t,s.context.popupRef,s.useStateSetter(`popupElement`)],stateAttributesMapping:OW});return(0,G.jsx)(xS,{context:u,openInteractionType:_,disabled:!p,closeOnFocusOut:!l,initialFocus:S,returnFocus:r,modal:f!==!1,restoreFocus:`popup`,children:w})}),AW=W.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=xW(),a=i.useState(`mounted`),o=i.useState(`modal`);return a||n?(0,G.jsx)(EW.Provider,{value:n,children:(0,G.jsxs)(uS,{ref:t,...r,children:[a&&o===!0&&(0,G.jsx)(Ik,{ref:i.context.internalBackdropRef,inert:ZT(!open)}),e.children]})}):null});function jW(e){let{store:t,parentContext:n,actionsRef:r}=e,i=t.useState(`open`),a=t.useState(`disablePointerDismissal`),o=t.useState(`modal`),s=t.useState(`popupElement`),{openMethod:c,triggerProps:l,reset:u}=Sk(i);vw(t);let{forceUnmount:d}=yw(i,t,()=>{u()}),f=X(e=>{let n=ox(e);return n.preventUnmountOnClose=()=>{t.set(`preventUnmountingOnClose`,!0)},n}),p=W.useCallback(()=>{t.setOpen(!1,f(ix))},[t,f]);W.useImperativeHandle(r,()=>({unmount:d,close:p}),[d,p]);let m=Ew({popupStore:t,onOpenChange:t.setOpen,treatPopupAsFloatingElement:!0,noEmit:!0}),[h,g]=W.useState(0),_=h===0,v=Xw(m),y=LC(m,{outsidePressEvent(){return t.context.internalBackdropRef.current||t.context.backdropRef.current?`intentional`:{mouse:o===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}},outsidePress(e){if(`button`in e&&e.button!==0||`touches`in e&&e.touches.length!==1)return!1;let n=zv(e);if(_&&!a){let e=n;return o&&(t.context.internalBackdropRef.current||t.context.backdropRef.current)?t.context.internalBackdropRef.current===e||t.context.backdropRef.current===e||Rv(e,s)&&!e?.hasAttribute(`data-base-ui-portal`):!0}return!1},escapeKey:_});hk(i&&o===!0,s);let{getReferenceProps:b,getFloatingProps:x,getTriggerProps:S}=zw([v,y]);t.useContextCallback(`onNestedDialogOpen`,e=>{g(e+1)}),t.useContextCallback(`onNestedDialogClose`,()=>{g(0)}),W.useEffect(()=>(n?.onNestedDialogOpen&&i&&n.onNestedDialogOpen(h),n?.onNestedDialogClose&&!i&&n.onNestedDialogClose(),()=>{n?.onNestedDialogClose&&i&&n.onNestedDialogClose()}),[i,n,h]);let C=W.useMemo(()=>b(l),[b,l]),w=W.useMemo(()=>S(l),[S,l]),T=W.useMemo(()=>x(),[x]);t.useSyncedValues({openMethod:c,activeTriggerProps:C,inactiveTriggerProps:w,popupProps:T,floatingRootContext:m,nestedOpenDialogCount:h})}var MW={...Cw,modal:Z(e=>e.modal),nested:Z(e=>e.nested),nestedOpenDialogCount:Z(e=>e.nestedOpenDialogCount),disablePointerDismissal:Z(e=>e.disablePointerDismissal),openMethod:Z(e=>e.openMethod),descriptionElementId:Z(e=>e.descriptionElementId),titleElementId:Z(e=>e.titleElementId),viewportElement:Z(e=>e.viewportElement),role:Z(e=>e.role)},NW=class extends uw{constructor(e){super(PW(e),{popupRef:W.createRef(),backdropRef:W.createRef(),internalBackdropRef:W.createRef(),triggerElements:new bw,onOpenChange:void 0,onOpenChangeComplete:void 0},MW)}setOpen=(e,t)=>{if(t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},!e&&t.trigger==null&&this.state.activeTriggerId!=null&&(t.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;let n={open:e,nativeEvent:t.event,reason:t.reason,nested:this.state.nested};this.state.floatingRootContext.context.events?.emit(`openchange`,n);let r={open:e},i=t.trigger?.id??null;(i||e)&&(r.activeTriggerId=i,r.activeTriggerElement=t.trigger??null),this.update(r)}};function PW(e={}){return{...Sw(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,role:`dialog`,...e}}function FW(e){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,disablePointerDismissal:o=!1,modal:s=!0,actionsRef:c,handle:l,triggerId:u,defaultTriggerId:d=null}=e,f=xW(!0),p=!!f,m=F_(()=>l?.store??new NW({open:n??r,activeTriggerId:u===void 0?d:u,modal:s,disablePointerDismissal:o,nested:p})).current;m.useControlledProp(`open`,n,r),m.useControlledProp(`activeTriggerId`,u,d),m.useSyncedValues({disablePointerDismissal:o,nested:p,modal:s}),m.useContextCallback(`onOpenChange`,i),m.useContextCallback(`onOpenChangeComplete`,a);let h=m.useState(`payload`);jW({store:m,actionsRef:c,parentContext:f?.store.context,onOpenChange:i,triggerIdProp:u});let g=W.useMemo(()=>({store:m}),[m]);return(0,G.jsx)(bW.Provider,{value:g,children:typeof t==`function`?t({payload:h}):t})}function IW({open:e,onClose:t,className:n,ariaLabel:r,initialFocus:i,onKeyDown:a,children:o}){return(0,G.jsx)(FW,{open:e,onOpenChange:e=>{e||t()},children:(0,G.jsxs)(AW,{children:[(0,G.jsx)(CW,{className:`ui-modal-backdrop`}),(0,G.jsx)(kW,{className:`ui-modal-popup ${n??``}`,"aria-label":r,initialFocus:i,onKeyDown:a,children:o})]})})}async function LW(e,t){let n=await fetch(`/api/file-text?path=${encodeURIComponent(e)}&version=${t}`);if(!n.ok){if(n.status===404)return null;throw Error(`HTTP ${n.status} fetching ${t} ${e}`)}let r=await n.json();if(r.missing)return null;if(r.error)throw Error(r.error);return r.content??``}function RW(e,t){let[n,r]=(0,W.useState)({loading:!1,error:null,oldContent:null,newContent:null});return(0,W.useEffect)(()=>{if(!t||!e)return;let n=!1;return r(e=>({...e,loading:!0,error:null})),Promise.all([LW(e,`old`),LW(e,`new`)]).then(([e,t])=>{n||r({loading:!1,error:null,oldContent:e,newContent:t})}).catch(e=>{n||r({loading:!1,error:e.message,oldContent:null,newContent:null})}),()=>{n=!0}},[e,t]),n}var zW=`diffing-draft-`,BW=10080*60*1e3;function VW(...e){return zW+e.join(`:`)}function HW(...e){try{let t=CD(VW(...e));if(!t)return null;let n=JSON.parse(t);return Date.now()-n.timestamp>BW?(OD(VW(...e)),null):n.body}catch{return null}}var UW={};function WW(e,...t){let n=VW(...t);UW[n]&&clearTimeout(UW[n]),UW[n]=setTimeout(()=>{GW(e,...t),delete UW[n]},500)}function GW(e,...t){let n=VW(...t);try{e.trim()?DD(n,JSON.stringify({body:e,timestamp:Date.now()})):OD(n)}catch{}}function KW(...e){try{OD(VW(...e))}catch{}}function qW(e){return e.replace(/@([^\s@]+)/g,(e,t)=>`[${t.split(`/`).pop()||t}](file-mention://${t})`)}var JW=[{value:`none`,label:`None`,hint:`Untriaged`,icon:(0,G.jsx)(IO,{size:13})},{value:`blocking`,label:`Blocking`,hint:`Must fix before merge`,icon:(0,G.jsx)(zO,{size:13})},{value:`nit`,label:`Nit`,hint:`Optional polish`,icon:(0,G.jsx)(YD,{size:13})},{value:`question`,label:`Question`,hint:`Needs an answer`,icon:(0,G.jsx)(ZD,{size:13})},{value:`praise`,label:`Praise`,hint:`No change required`,icon:(0,G.jsx)($O,{size:13})}];function YW({value:e,onChange:t}){let n=JW.find(t=>t.value===e)??JW[0];return(0,G.jsxs)(yU,{value:e,onValueChange:e=>t(e),modal:!1,children:[(0,G.jsxs)(CU,{className:`ui-select-trigger comment-severity-trigger comment-severity-trigger-${e}`,"aria-label":`Comment severity`,"data-severity":e,children:[(0,G.jsxs)(`span`,{className:`comment-severity-trigger-inner`,children:[(0,G.jsx)(`span`,{className:`comment-severity-icon`,"data-severity":e,"aria-hidden":`true`,children:n.icon}),(0,G.jsx)(TU,{children:e=>JW.find(t=>t.value===e)?.label??e})]}),(0,G.jsx)(EU,{className:`ui-select-icon`,children:(0,G.jsx)(KD,{size:12})})]}),(0,G.jsx)(OU,{children:(0,G.jsx)(BU,{className:`ui-select-positioner comment-severity-positioner`,sideOffset:4,align:`start`,side:`top`,alignItemWithTrigger:!1,children:(0,G.jsx)(GU,{className:`ui-select-popup comment-severity-popup`,"aria-label":`Severity`,children:JW.map(e=>(0,G.jsxs)(XU,{value:e.value,className:`ui-select-item comment-severity-item comment-severity-item-${e.value}`,children:[(0,G.jsxs)(`span`,{className:`comment-severity-item-main`,children:[(0,G.jsx)(`span`,{className:`comment-severity-icon`,"data-severity":e.value,"aria-hidden":`true`,children:e.icon}),(0,G.jsxs)(`span`,{className:`comment-severity-item-text`,children:[(0,G.jsx)($U,{className:`comment-severity-item-label`,children:e.label}),(0,G.jsx)(`span`,{className:`comment-severity-item-hint`,children:e.hint})]})]}),(0,G.jsx)(ZU,{className:`ui-select-indicator`,children:(0,G.jsx)(HD,{size:13})})]},e.value))})})})]})}function XW({initialBody:e,lineContent:t,lineLabel:n,range:r,onAdjustStart:i,onAdjustEnd:a,draftKey:o,onSubmit:s,onCancel:c,showSeverity:l=!0}){let{haptic:u,sound:d}=pD(),{settings:f,updateSettings:p}=IE(),m=f.savedReplies??[],[h,g]=(0,W.useState)(()=>{if(o){let e=HW(o);if(e)return e}return e||``}),[_,v]=(0,W.useState)(`none`),[y,b]=(0,W.useState)(`write`),[x,S]=(0,W.useState)(!1),C=(0,W.useRef)(null),w=(0,W.useRef)(null),T=_H(h,g),E=e=>{g(t=>t.trim()?`${t.trimEnd()}\n\n${e.body}`:e.body),S(!1),b(`write`),requestAnimationFrame(()=>C.current?.focus())},D=()=>{let e=h.trim();if(!e)return;let t=window.prompt(`Template title`,e.slice(0,40))?.trim();t&&p({savedReplies:[...m,{id:crypto.randomUUID(),title:t,body:e}]})};(0,W.useEffect)(()=>{y===`write`?C.current?.focus():w.current?.focus()},[y]),(0,W.useEffect)(()=>{o&&WW(h,o)},[h,o]);let O=()=>{let e=h.trim();e&&(o&&KW(o),u(`success`),d(`success`),s(e,_===`none`?void 0:_))},k=()=>{if(!t)return;let e=`\`\`\`suggestion\n${t.split(`
1932
+ `,1;if(L>1e5&&L>r.index*3)throw Error(`potential infinite loop, way more iterations than matches`);return P+=a,a.length}let D=N(e);if(!D)throw _e(s.replace(`{}`,e)),Error(`Unknown language: "`+e+`"`);let O=Ee(D),k=``,A=a||O,j={},M=new l.__emitter(l);w();let P=``,F=0,I=0,L=0,R=!1;try{if(D.__emitTokens)D.__emitTokens(n,M);else{for(A.matcher.considerAll();;){L++,R?R=!1:A.matcher.considerAll(),A.matcher.lastIndex=I;let e=A.matcher.exec(n);if(!e)break;let t=E(n.substring(I,e.index),e);I=e.index+t}E(n.substring(I))}return M.finalize(),k=M.toHTML(),{language:e,value:k,relevance:F,illegal:!1,_emitter:M,_top:A}}catch(t){if(t.message&&t.message.includes(`Illegal`))return{language:e,value:je(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:I,context:n.slice(I-100,I+100),mode:t.mode,resultSoFar:k},_emitter:M};if(o)return{language:e,value:je(n),illegal:!1,relevance:0,errorRaised:t,_emitter:M,_top:A};throw t}}function b(e){let t={value:je(e),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return t._emitter.addText(e),t}function S(e,n){n=n||l.languages||Object.keys(t);let r=b(e),i=n.filter(N).filter(F).map(t=>v(t,e,!1));i.unshift(r);let[a,o]=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(N(e.language).supersetOf===t.language)return 1;if(N(t.language).supersetOf===e.language)return-1}return 0}),s=a;return s.secondBest=o,s}function C(e,t,n){let r=t&&i[t]||n;e.classList.add(`hljs`),e.classList.add(`language-${r}`)}function w(e){let t=null,n=d(e);if(u(n))return;if(z(`before:highlightElement`,{el:e,language:n}),e.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);return}if(e.children.length>0&&(l.ignoreUnescapedHTML||(console.warn(`One of your code blocks includes unescaped HTML. This is a potentially serious security risk.`),console.warn(`https://github.com/highlightjs/highlight.js/wiki/security`),console.warn(`The element with unescaped HTML:`),console.warn(e)),l.throwUnescapedHTML))throw new Ae(`One of your code blocks includes unescaped HTML.`,e.innerHTML);t=e;let r=t.textContent,i=n?p(r,{language:n,ignoreIllegals:!0}):S(r);e.innerHTML=i.value,e.dataset.highlighted=`yes`,C(e,n,i.language),e.result={language:i.language,re:i.relevance,relevance:i.relevance},i.secondBest&&(e.secondBest={language:i.secondBest.language,relevance:i.secondBest.relevance}),z(`after:highlightElement`,{el:e,result:i,text:r})}function T(e){l=Me(l,e)}let E=()=>{k(),ye(`10.6.0`,`initHighlighting() deprecated. Use highlightAll() now.`)};function D(){k(),ye(`10.6.0`,`initHighlightingOnLoad() deprecated. Use highlightAll() now.`)}let O=!1;function k(){function e(){k()}if(document.readyState===`loading`){O||window.addEventListener(`DOMContentLoaded`,e,!1),O=!0;return}document.querySelectorAll(l.cssSelector).forEach(w)}function A(n,r){let i=null;try{i=r(e)}catch(e){if(_e(`Language definition for '{}' could not be registered.`.replace(`{}`,n)),o)_e(e);else throw e;i=c}i.name||=n,t[n]=i,i.rawDefinition=r.bind(null,e),i.aliases&&P(i.aliases,{languageName:n})}function j(e){delete t[e];for(let t of Object.keys(i))i[t]===e&&delete i[t]}function M(){return Object.keys(t)}function N(e){return e=(e||``).toLowerCase(),t[e]||t[i[e]]}function P(e,{languageName:t}){typeof e==`string`&&(e=[e]),e.forEach(e=>{i[e.toLowerCase()]=t})}function F(e){let t=N(e);return t&&!t.disableAutodetect}function I(e){e[`before:highlightBlock`]&&!e[`before:highlightElement`]&&(e[`before:highlightElement`]=t=>{e[`before:highlightBlock`](Object.assign({block:t.el},t))}),e[`after:highlightBlock`]&&!e[`after:highlightElement`]&&(e[`after:highlightElement`]=t=>{e[`after:highlightBlock`](Object.assign({block:t.el},t))})}function L(e){I(e),a.push(e)}function R(e){let t=a.indexOf(e);t!==-1&&a.splice(t,1)}function z(e,t){let n=e;a.forEach(function(e){e[n]&&e[n](t)})}function ee(e){return ye(`10.7.0`,`highlightBlock will be removed entirely in v12.0`),ye(`10.7.0`,`Please use highlightElement now.`),w(e)}Object.assign(e,{highlight:p,highlightAuto:S,highlightAll:k,highlightElement:w,highlightBlock:ee,configure:T,initHighlighting:E,initHighlightingOnLoad:D,registerLanguage:A,unregisterLanguage:j,listLanguages:M,getLanguage:N,registerAliases:P,autoDetection:F,inherit:Me,addPlugin:L,removePlugin:R}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=ke,e.regex={concat:_,lookahead:m,either:y,optional:g,anyNumberOfTimes:h};for(let e in ae)typeof ae[e]==`object`&&n(ae[e]);return Object.assign(e,ae),e},Ie=Fe({});Ie.newInstance=()=>Fe({}),t.exports=Ie,Ie.HighlightJS=Ie,Ie.default=Ie}))()).default,MV={},NV=`hljs-`;function PV(e){let t=jV.newInstance();return e&&a(e),{highlight:n,highlightAuto:r,listLanguages:i,register:a,registerAlias:o,registered:s};function n(e,n,r){let i=r||MV,a=typeof i.prefix==`string`?i.prefix:NV;if(!t.getLanguage(e))throw Error("Unknown language: `"+e+"` is not registered");t.configure({__emitter:FV,classPrefix:a});let o=t.highlight(n,{ignoreIllegals:!0,language:e});if(o.errorRaised)throw Error("Could not highlight with `Highlight.js`",{cause:o.errorRaised});let s=o._emitter.root,c=s.data;return c.language=o.language,c.relevance=o.relevance,s}function r(e,r){let a=(r||MV).subset||i(),o=-1,s=0,c;for(;++o<a.length;){let i=a[o];if(!t.getLanguage(i))continue;let l=n(i,e,r);l.data&&l.data.relevance!==void 0&&l.data.relevance>s&&(s=l.data.relevance,c=l)}return c||{type:`root`,children:[],data:{language:void 0,relevance:s}}}function i(){return t.listLanguages()}function a(e,n){if(typeof e==`string`)t.registerLanguage(e,n);else{let n;for(n in e)Object.hasOwn(e,n)&&t.registerLanguage(n,e[n])}}function o(e,n){if(typeof e==`string`)t.registerAliases(typeof n==`string`?n:[...n],{languageName:e});else{let n;for(n in e)if(Object.hasOwn(e,n)){let r=e[n];t.registerAliases(typeof r==`string`?r:[...r],{languageName:n})}}}function s(e){return!!t.getLanguage(e)}}var FV=class{constructor(e){this.options=e,this.root={type:`root`,children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(e){if(e===``)return;let t=this.stack[this.stack.length-1],n=t.children[t.children.length-1];n&&n.type===`text`?n.value+=e:t.children.push({type:`text`,value:e})}startScope(e){this.openNode(String(e))}endScope(){this.closeNode()}__addSublanguage(e,t){let n=this.stack[this.stack.length-1],r=e.root.children;t?n.children.push({type:`element`,tagName:`span`,properties:{className:[t]},children:r}):n.children.push(...r)}openNode(e){let t=this,n=e.split(`.`).map(function(e,n){return n?e+`_`.repeat(n):t.options.classPrefix+e}),r=this.stack[this.stack.length-1],i={type:`element`,tagName:`span`,properties:{className:n},children:[]};r.children.push(i),this.stack.push(i)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return``}},IV={};function LV(e){let t=e||IV,n=t.aliases,r=t.detect||!1,i=t.languages||AV,a=t.plainText,o=t.prefix,s=t.subset,c=`hljs`,l=PV(i);if(n&&l.registerAlias(n),o){let e=o.indexOf(`-`);c=e===-1?o:o.slice(0,e)}return function(e,t){XP(e,`element`,function(e,n,i){if(e.tagName!==`code`||!i||i.type!==`element`||i.tagName!==`pre`)return;let u=RV(e);if(u===!1||!u&&!r||u&&a&&a.includes(u))return;Array.isArray(e.properties.className)||(e.properties.className=[]),e.properties.className.includes(c)||e.properties.className.unshift(c);let d=gz(e,{whitespace:`pre`}),f;try{f=u?l.highlight(u,d,{prefix:o}):l.highlightAuto(d,{prefix:o,subset:s})}catch(n){let r=n;if(u&&/Unknown language/.test(r.message)){t.message("Cannot highlight as `"+u+"`, it’s not registered",{ancestors:[i,e],cause:r,place:e.position,ruleId:`missing-language`,source:`rehype-highlight`});return}throw r}!u&&f.data&&f.data.language&&e.properties.className.push(`language-`+f.data.language),f.children.length>0&&(e.children=f.children)})}}function RV(e){let t=e.properties.className,n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){let e=String(t[n]);if(e===`no-highlight`||e===`nohighlight`)return!1;!r&&e.slice(0,5)===`lang-`&&(r=e.slice(5)),!r&&e.slice(0,9)===`language-`&&(r=e.slice(9))}return r}var zV=[`ariaDescribedBy`,`ariaLabel`,`ariaLabelledBy`],BV={ancestors:{tbody:[`table`],td:[`table`],th:[`table`],thead:[`table`],tfoot:[`table`],tr:[`table`]},attributes:{a:[...zV,`dataFootnoteBackref`,`dataFootnoteRef`,[`className`,`data-footnote-backref`],`href`],blockquote:[`cite`],code:[[`className`,/^language-./]],del:[`cite`],div:[`itemScope`,`itemType`],dl:[...zV],h2:[[`className`,`sr-only`]],img:[...zV,`longDesc`,`src`],input:[[`disabled`,!0],[`type`,`checkbox`]],ins:[`cite`],li:[[`className`,`task-list-item`]],ol:[...zV,[`className`,`contains-task-list`]],q:[`cite`],section:[`dataFootnotes`,[`className`,`footnotes`]],source:[`srcSet`],summary:[...zV],table:[...zV],ul:[...zV,[`className`,`contains-task-list`]],"*":`abbr.accept.acceptCharset.accessKey.action.align.alt.axis.border.cellPadding.cellSpacing.char.charOff.charSet.checked.clear.colSpan.color.cols.compact.coords.dateTime.dir.encType.frame.hSpace.headers.height.hrefLang.htmlFor.id.isMap.itemProp.label.lang.maxLength.media.method.multiple.name.noHref.noShade.noWrap.open.prompt.readOnly.rev.rowSpan.rows.rules.scope.selected.shape.size.span.start.summary.tabIndex.title.useMap.vAlign.value.width`.split(`.`)},clobber:[`ariaDescribedBy`,`ariaLabelledBy`,`id`,`name`],clobberPrefix:`user-content-`,protocols:{cite:[`http`,`https`],href:[`http`,`https`,`irc`,`ircs`,`mailto`,`xmpp`],longDesc:[`http`,`https`],src:[`http`,`https`]},required:{input:{disabled:!0,type:`checkbox`}},strip:[`script`],tagNames:`a.b.blockquote.br.code.dd.del.details.div.dl.dt.em.h1.h2.h3.h4.h5.h6.hr.i.img.input.ins.kbd.li.ol.p.picture.pre.q.rp.rt.ruby.s.samp.section.source.span.strike.strong.sub.summary.sup.table.tbody.td.tfoot.th.thead.tr.tt.ul.var`.split(`.`)},VV={}.hasOwnProperty;function HV(e,t){let n={type:`root`,children:[]},r=UV({schema:t?{...BV,...t}:BV,stack:[]},e);return r&&(Array.isArray(r)?r.length===1?n=r[0]:n.children=r:n=r),n}function UV(e,t){if(t&&typeof t==`object`){let n=t;switch(typeof n.type==`string`?n.type:``){case`comment`:return WV(e,n);case`doctype`:return GV(e,n);case`element`:return KV(e,n);case`root`:return qV(e,n);case`text`:return JV(e,n);default:}}}function WV(e,t){if(e.schema.allowComments){let e=typeof t.value==`string`?t.value:``,n=e.indexOf(`-->`),r={type:`comment`,value:n<0?e:e.slice(0,n)};return tH(r,t),r}}function GV(e,t){if(e.schema.allowDoctypes){let e={type:`doctype`};return tH(e,t),e}}function KV(e,t){let n=typeof t.tagName==`string`?t.tagName:``;e.stack.push(n);let r=YV(e,t.children),i=XV(e,t.properties);e.stack.pop();let a=!1;if(n&&n!==`*`&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&VV.call(e.schema.ancestors,n))){let t=e.schema.ancestors[n],r=-1;for(a=!1;++r<t.length;)e.stack.includes(t[r])&&(a=!0)}if(!a)return e.schema.strip&&!e.schema.strip.includes(n)?r:void 0;let o={type:`element`,tagName:n,properties:i,children:r};return tH(o,t),o}function qV(e,t){let n={type:`root`,children:YV(e,t.children)};return tH(n,t),n}function JV(e,t){let n={type:`text`,value:typeof t.value==`string`?t.value:``};return tH(n,t),n}function YV(e,t){let n=[];if(Array.isArray(t)){let r=t,i=-1;for(;++i<r.length;){let t=UV(e,r[i]);t&&(Array.isArray(t)?n.push(...t):n.push(t))}}return n}function XV(e,t){let n=e.stack[e.stack.length-1],r=e.schema.attributes,i=e.schema.required,a=r&&VV.call(r,n)?r[n]:void 0,o=r&&VV.call(r,`*`)?r[`*`]:void 0,s=t&&typeof t==`object`?t:{},c={},l;for(l in s)if(VV.call(s,l)){let t=s[l],n=ZV(e,nH(a,l),l,t);n??=ZV(e,nH(o,l),l,t),n!=null&&(c[l]=n)}if(i&&VV.call(i,n)){let e=i[n];for(l in e)VV.call(e,l)&&!VV.call(c,l)&&(c[l]=e[l])}return c}function ZV(e,t,n,r){return t?Array.isArray(r)?QV(e,t,n,r):$V(e,t,n,r):void 0}function QV(e,t,n,r){let i=-1,a=[];for(;++i<r.length;){let o=$V(e,t,n,r[i]);(typeof o==`number`||typeof o==`string`)&&a.push(o)}return a}function $V(e,t,n,r){if(!(typeof r!=`boolean`&&typeof r!=`number`&&typeof r!=`string`)&&eH(e,n,r)){if(typeof t==`object`&&t.length>1){let e=!1,n=0;for(;++n<t.length;){let i=t[n];if(i&&typeof i==`object`&&`flags`in i){if(i.test(String(r))){e=!0;break}}else if(i===r){e=!0;break}}if(!e)return}return e.schema.clobber&&e.schema.clobberPrefix&&e.schema.clobber.includes(n)?e.schema.clobberPrefix+r:r}}function eH(e,t,n){let r=e.schema.protocols&&VV.call(e.schema.protocols,t)?e.schema.protocols[t]:void 0;if(!r||r.length===0)return!0;let i=String(n),a=i.indexOf(`:`),o=i.indexOf(`?`),s=i.indexOf(`#`),c=i.indexOf(`/`);if(a<0||c>-1&&a>c||o>-1&&a>o||s>-1&&a>s)return!0;let l=-1;for(;++l<r.length;){let e=r[l];if(a===e.length&&i.slice(0,e.length)===e)return!0}return!1}function tH(e,t){let n=lA(t);t.data&&(e.data=FP(t.data)),n&&(e.position=n)}function nH(e,t){let n,r=-1;if(e)for(;++r<e.length;){let i=e[r],a=typeof i==`string`?i:i[0];if(a===t)return i;a===`data*`&&(n=i)}if(t.length>4&&t.slice(0,4).toLowerCase()===`data`)return n}function rH(e){return function(t){return HV(t,e)}}function iH(){return typeof document>`u`?`dark`:(nE[document.documentElement.getAttribute(`data-theme`)||`nord`]?.type??`dark`)===`light`?`default`:`dark`}function aH({chart:e}){let t=(0,W.useRef)(null),n=`mermaid-${(0,W.useId)().replace(/[^a-zA-Z0-9]/g,``)}`,[r,i]=(0,W.useState)(null);return(0,W.useEffect)(()=>{let r=!1;if(t.current)return(async()=>{try{let a=(await J(async()=>{let{default:e}=await import(`./mermaid.core-pkJSRcFi.js`);return{default:e}},__vite__mapDeps([101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118]))).default;a.initialize({startOnLoad:!1,securityLevel:`strict`,theme:iH()});let{svg:o,bindFunctions:s}=await a.render(n,e);if(r||!t.current)return;t.current.innerHTML=o,s?.(t.current),i(null)}catch(e){r||i(e instanceof Error?e.message:String(e))}})(),()=>{r=!0}},[e,n]),r?(0,G.jsxs)(`div`,{className:`mermaid-error`,children:[(0,G.jsxs)(`div`,{className:`mermaid-error-note`,children:[`Failed to render diagram: `,r]}),(0,G.jsx)(`pre`,{children:(0,G.jsx)(`code`,{children:e})})]}):(0,G.jsx)(`div`,{className:`mermaid`,ref:t,role:`img`,"aria-label":`Mermaid diagram`})}var oH=[ZR,ez],sH=[[rH,{...BV,protocols:{...BV.protocols,href:[...BV.protocols?.href??[],`file`,`file-mention`]},attributes:{...BV.attributes,h1:[...BV.attributes?.h1??[],`id`],h2:[...BV.attributes?.h2??[],`id`],h3:[...BV.attributes?.h3??[],`id`],h4:[...BV.attributes?.h4??[],`id`],h5:[...BV.attributes?.h5??[],`id`],h6:[...BV.attributes?.h6??[],`id`]}}],[LV,{ignoreMissing:!0,plainText:[`mermaid`,`suggestion`]}]];function cH(e){return e.startsWith(`file://`)||e.startsWith(`file-mention://`)?e:QF(e)}function lH(e){return e==null||e===!1||e===!0?``:typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(lH).join(``):(0,W.isValidElement)(e)?lH(e.props.children):``}function uH(e){return typeof e==`string`?/language-([\w-]+)/.exec(e)?.[1]??null:null}function dH(e){return e.toLowerCase().trim().replace(/[`*_~[\]()#.!?,:'"]/g,``).replace(/[^\w\s-]/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``).slice(0,80)||`section`}function fH({language:e,codeText:t,children:n}){let[r,i]=(0,W.useState)(!1),a=(0,W.useCallback)(()=>{typeof navigator>`u`||!navigator.clipboard||navigator.clipboard.writeText(t).then(()=>{i(!0),window.setTimeout(()=>i(!1),1400)},()=>{})},[t]);return(0,G.jsxs)(`div`,{className:`md-code-block`,children:[(0,G.jsxs)(`div`,{className:`md-code-toolbar`,children:[(0,G.jsx)(`span`,{className:`md-code-lang`,children:e||`code`}),(0,G.jsx)(`button`,{type:`button`,className:`md-code-copy`,onClick:a,"aria-label":`Copy code`,children:r?`Copied`:`Copy`})]}),(0,G.jsx)(`pre`,{children:n})]})}function pH(e){return{pre({children:e}){let t=uH((0,W.isValidElement)(e)?e.props.className:void 0);return t===`mermaid`?(0,G.jsx)(aH,{chart:lH(e).replace(/\n$/,``)}):t===`suggestion`?null:(0,G.jsx)(fH,{language:t,codeText:lH(e).replace(/\n$/,``),children:e})},a({href:e,children:t}){return typeof e==`string`&&e.startsWith(`file-mention://`)?(0,G.jsx)(`span`,{className:`mention-file`,title:e.slice(15),children:t}):(0,G.jsx)(`a`,{href:e,...typeof e==`string`&&/^https?:\/\//.test(e)?{target:`_blank`,rel:`noopener noreferrer`}:{},children:t})},h1:mH(`h1`,e),h2:mH(`h2`,e),h3:mH(`h3`,e),h4:mH(`h4`,e),h5:mH(`h5`,e),h6:mH(`h6`,e)}}function mH(e,t){return function({children:n,...r}){let i=lH(n),a=dH(i),o=t.get(a)??0;return t.set(a,o+1),o>0&&(a=`${a}-${o+1}`),(0,G.jsxs)(e,{id:a,className:`md-heading`,...r,children:[(0,G.jsx)(`a`,{href:`#${a}`,className:`md-heading-anchor`,"aria-label":`Link to ${i}`,children:`#`}),n]})}}function hH({content:e,className:t}){return(0,G.jsx)(`div`,{className:t,children:(0,G.jsx)(JF,{remarkPlugins:oH,rehypePlugins:sH,urlTransform:cH,components:pH(new Map),children:e})})}function gH(e,t){let n=e.slice(0,t);for(let e=t-1;e>=0;e--){let t=n[e];if(t===`@`){if(e===0||/\s/.test(n[e-1])){let t=n.slice(e+1);if(!/\s/.test(t))return{atStart:e,query:t}}return null}if(t===`
1933
+ `)return null}return null}function _H(e,t){let n=(0,W.useRef)(null),[r,i]=(0,W.useState)(null),[a,o]=(0,W.useState)(0),[s,c]=(0,W.useState)(0),l=(0,W.useRef)(0),u=(0,W.useCallback)(e=>{n.current=e},[]);(0,W.useEffect)(()=>{let t=n.current;if(!t)return;let r=t.selectionStart;l.current=r;let a=gH(e,r);if(i(a),a){o(0);let n=parseFloat(getComputedStyle(t).lineHeight)||20,i=(e.slice(0,r).match(/\n/g)||[]).length;c((parseFloat(getComputedStyle(t).paddingTop)||0)+(i+1)*n+4)}},[e]);let d=r?.query??``,f=nt({queryKey:[`file-mention`,d],enabled:r!==null,placeholderData:B,staleTime:5e3,queryFn:async({signal:e})=>{let t=await fetch(`/api/search`,{method:`POST`,headers:{"content-type":`application/json`},signal:e,body:JSON.stringify({scope:`files`,query:d})});if(!t.ok)throw Error(`Search failed (${t.status})`);return await t.json()}}),p=f.data?.items??[],m=r!==null&&(p.length>0||f.isFetching),h=(0,W.useCallback)(a=>{if(!r)return;let o=n.current;if(!o)return;let s=e.slice(0,r.atStart),c=e.slice(l.current),u=`@${a} `;t(s+u+c),i(null),requestAnimationFrame(()=>{o.selectionStart=o.selectionEnd=(s+u).length,o.focus()})},[r,e,t]),g=(0,W.useCallback)(e=>{if(!m)return!1;if(e.key===`ArrowDown`){e.preventDefault();let t=p.length;return t>0&&o(e=>(e+1)%t),!0}if(e.key===`ArrowUp`){e.preventDefault();let t=p.length;return t>0&&o(e=>e===0?t-1:e-1),!0}return(e.key===`Enter`||e.key===`Tab`)&&p[a]?(e.preventDefault(),h(p[a].path),!0):e.key===`Escape`?(e.preventDefault(),i(null),!0):!1},[m,p,a,h]),_=(0,W.useCallback)(e=>h(e),[h]);return{isOpen:m,results:p,focusedIndex:a,query:d,isFetching:f.isFetching,cursorTop:s,handleKeyDown:g,onSelect:_,setFocusedIndex:o,setTextareaRef:u}}function vH(e,t){let n=t.trim().toLowerCase();if(!n)return[];let r=e.toLowerCase(),i=[],a=0;for(let e=0;e<r.length&&a<n.length;e++)if(r[e]===n[a]){let t=i[i.length-1];t&&t[1]===e?t[1]=e+1:i.push([e,e+1]),a++}return a===n.length?i:[]}function yH({text:e,ranges:t}){if(!t.length)return(0,G.jsx)(G.Fragment,{children:e});let n=[],r=0;return t.forEach(([t,i],a)=>{t>r&&n.push(e.slice(r,t)),n.push((0,G.jsx)(`mark`,{className:`mention-highlight`,children:e.slice(t,i)},a)),r=i}),r<e.length&&n.push(e.slice(r)),(0,G.jsx)(G.Fragment,{children:n})}var bH=e=>{let t=e.lastIndexOf(`/`);return t===-1?``:e.slice(0,t+1)},xH=e=>{let t=e.lastIndexOf(`/`);return t===-1?e:e.slice(t+1)};function SH({results:e,focusedIndex:t,query:n,cursorTop:r,onSelect:i,onHover:a}){let o=(0,W.useRef)(null);return(0,W.useEffect)(()=>{(o.current?.querySelector(`[data-focused="true"]`))?.scrollIntoView({block:`nearest`})},[t]),e.length===0?null:(0,G.jsx)(`div`,{className:`mention-dropdown`,ref:o,role:`listbox`,"aria-label":`File suggestions`,style:{top:r},children:e.map((e,r)=>{let o=xH(e.path),s=vH(o,n),c=r===t;return(0,G.jsxs)(`div`,{role:`option`,"aria-selected":c,"data-focused":c,className:`mention-item ${c?`mention-item-focused`:``}`,onMouseDown:t=>{t.preventDefault(),i(e.path)},onMouseEnter:()=>a(r),children:[(0,G.jsx)(`span`,{className:`mention-icon`,children:(0,G.jsx)(dO,{size:13})}),(0,G.jsxs)(`div`,{className:`mention-info`,children:[(0,G.jsx)(`span`,{className:`mention-name`,children:(0,G.jsx)(yH,{text:o,ranges:s})}),(0,G.jsx)(`span`,{className:`mention-dir`,children:bH(e.path)||`./`})]})]},e.path)})})}function CH(e){return e.replace(/@([^\s@]+)/g,(e,t)=>`[${t.split(`/`).pop()||t}](file-mention://${t})`)}function wH({id:e,value:t,onChange:n,placeholder:r,rows:i=3,ariaLabel:a,textareaClassName:o,onSubmitShortcut:s}){let[c,l]=(0,W.useState)(`write`),u=(0,W.useRef)(null),d=(0,W.useRef)(null),f=_H(t,n),p=(0,W.useRef)(t);(0,W.useEffect)(()=>{p.current=t},[t]),(0,W.useEffect)(()=>{c===`preview`&&d.current?.focus()},[c]);let m=async e=>{let r=e.clipboardData.items,i=null;for(let e=0;e<r.length;e++){let t=r[e];if(t.kind===`file`&&t.type.startsWith(`image/`)){i=t.getAsFile();break}}if(!i)return;e.preventDefault();let a=u.current;if(!a)return;let o=a.selectionStart,s=a.selectionEnd,c=Math.random().toString(36).slice(2,8),l=`![Uploading image… ${c}]()`,d=t.slice(0,o)+l+t.slice(s);n(d),p.current=d;try{let e=new FormData;e.append(`file`,i,i.name||`pasted-${c}.png`);let t=await fetch(`/api/attachments`,{method:`POST`,body:e});if(!t.ok)throw Error(`HTTP ${t.status}`);let r=await t.json();if(!r.url)throw Error(r.error||`Upload failed`);n(p.current.replace(l,`![pasted image](${r.url})`))}catch(e){console.error(`Image upload failed:`,e),n(p.current.replace(l,`![upload failed]()`))}};return(0,G.jsxs)(`div`,{className:`md-field`,children:[(0,G.jsxs)(`div`,{className:`comment-form-tabs`,role:`tablist`,"aria-label":`Markdown editor mode`,children:[(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":c===`write`,onClick:()=>l(`write`),onKeyDown:e=>{e.key===`ArrowRight`&&(e.preventDefault(),l(`preview`))},className:`comment-form-tab-btn ${c===`write`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Write`}),(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":c===`preview`,onClick:()=>l(`preview`),onKeyDown:e=>{e.key===`ArrowLeft`&&(e.preventDefault(),l(`write`))},className:`comment-form-tab-btn ${c===`preview`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Preview`})]}),c===`write`?(0,G.jsxs)(`div`,{style:{position:`relative`},children:[(0,G.jsx)(`textarea`,{id:e,ref:e=>{u.current=e,f.setTextareaRef(e)},className:o,value:t,rows:i,placeholder:r,"aria-label":a,onChange:e=>n(e.target.value),onPaste:m,onKeyDown:e=>{f.handleKeyDown(e)||(e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),s?.()),e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),l(e=>e===`write`?`preview`:`write`)))}}),f.isOpen&&(0,G.jsx)(SH,{results:f.results,focusedIndex:f.focusedIndex,query:f.query,cursorTop:f.cursorTop,onSelect:f.onSelect,onHover:f.setFocusedIndex})]}):(0,G.jsx)(`div`,{ref:d,className:`md-field-preview markdown-body`,role:`tabpanel`,"aria-label":`Markdown preview`,tabIndex:0,onKeyDown:e=>{e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),l(`write`))},children:t.trim()?(0,G.jsx)(hH,{content:CH(t)}):(0,G.jsx)(`span`,{className:`md-field-empty`,children:`Nothing to preview`})})]})}var TH=`diffing-submit-panel-height`,EH=`diffing-submit-panel-width`,DH=[{label:`S`,width:420,height:340},{label:`M`,width:480,height:440},{label:`L`,width:560,height:560},{label:`XL`,width:640,height:760}],OH=480,kH=520;function AH(e){return Number.isFinite(e)?Math.max(280,Math.min(760,e)):OH}function jH(e){return Number.isFinite(e)?Math.max(360,Math.min(720,e)):kH}function MH(){let e=CD(TH);if(e==null)return OH;let t=Number(e);return Number.isFinite(t)?AH(t):OH}function NH(){let e=CD(EH);if(e==null)return kH;let t=Number(e);return Number.isFinite(t)?jH(t):kH}function PH(e,t){if(!(!e||typeof e.setPointerCapture!=`function`))try{e.setPointerCapture(t)}catch{}}function FH(e,t){if(!(!e||typeof e.releasePointerCapture!=`function`))try{e.hasPointerCapture?.(t)&&e.releasePointerCapture(t)}catch{}}function IH(){let[e,t]=(0,W.useState)(()=>MH()),[n,r]=(0,W.useState)(()=>NH()),i=(0,W.useRef)(null),a=(0,W.useRef)(e);a.current=e;let o=(0,W.useRef)(n);o.current=n;let s=(0,W.useRef)(!1),c=(0,W.useRef)(0),l=(0,W.useCallback)(()=>{s.current=!0,c.current=1/0},[]),u=(0,W.useCallback)(()=>{s.current=!1,c.current=Date.now()+200},[]),d=(0,W.useCallback)(()=>s.current||Date.now()<c.current,[]),f=(0,W.useCallback)((e,t,n)=>{if(!e&&d()){t?.cancel?.();return}n(e)},[d]),p=(0,W.useCallback)(e=>{let n=AH(e);t(n),DD(TH,String(n))},[]),m=(0,W.useCallback)(e=>{let t=jH(e);r(t),DD(EH,String(t))},[]),h=(0,W.useCallback)(e=>{m(e.width),p(e.height)},[m,p]),g=(()=>{for(let t=0;t<DH.length;t++){let r=DH[t];if(Math.abs(e-r.height)<1&&Math.abs(n-r.width)<1)return t}return-1})(),_=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let n=i.current;if(!n)return;let r=e.currentTarget,o=e.pointerId;PH(r,o),l();let s=e.clientY,c=a.current,d=c,f=0,p=()=>{f=0,n.style.setProperty(`--submit-panel-height`,`${d}px`)},m=e=>{e.pointerId===o&&(d=AH(c+(e.clientY-s)),f||=requestAnimationFrame(p))},h=e=>{e.pointerId===o&&(f&&cancelAnimationFrame(f),t(d),DD(TH,String(d)),FH(r,o),u(),document.removeEventListener(`pointermove`,m),document.removeEventListener(`pointerup`,h),document.removeEventListener(`pointercancel`,h),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,m),document.addEventListener(`pointerup`,h),document.addEventListener(`pointercancel`,h),document.body.style.cursor=`row-resize`,document.body.style.userSelect=`none`},[l,u]),v=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let t=i.current;if(!t)return;let n=e.currentTarget,a=e.pointerId;PH(n,a),l();let s=e.clientX,c=o.current,d=c,f=0,p=()=>{f=0,t.style.setProperty(`--submit-panel-width`,`${d}px`)},m=e=>{e.pointerId===a&&(d=jH(c+(s-e.clientX)),f||=requestAnimationFrame(p))},h=e=>{e.pointerId===a&&(f&&cancelAnimationFrame(f),r(d),DD(EH,String(d)),FH(n,a),u(),document.removeEventListener(`pointermove`,m),document.removeEventListener(`pointerup`,h),document.removeEventListener(`pointercancel`,h),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,m),document.addEventListener(`pointerup`,h),document.addEventListener(`pointercancel`,h),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[l,u]),y=(0,W.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let n=i.current;if(!n)return;let s=e.currentTarget,c=e.pointerId;PH(s,c),l();let d=e.clientX,f=e.clientY,p=o.current,m=a.current,h=p,g=m,_=0,v=()=>{_=0,n.style.setProperty(`--submit-panel-width`,`${h}px`),n.style.setProperty(`--submit-panel-height`,`${g}px`)},y=e=>{if(e.pointerId!==c)return;let t=d-e.clientX,n=e.clientY-f;h=jH(p+t),g=AH(m+n),_||=requestAnimationFrame(v)},b=e=>{e.pointerId===c&&(_&&cancelAnimationFrame(_),r(h),t(g),DD(EH,String(h)),DD(TH,String(g)),FH(s,c),u(),document.removeEventListener(`pointermove`,y),document.removeEventListener(`pointerup`,b),document.removeEventListener(`pointercancel`,b),document.body.style.cursor=``,document.body.style.userSelect=``)};document.addEventListener(`pointermove`,y),document.addEventListener(`pointerup`,b),document.addEventListener(`pointercancel`,b),document.body.style.cursor=`nesw-resize`,document.body.style.userSelect=`none`},[l,u]);return(0,W.useEffect)(()=>()=>{document.body.style.cursor=``,document.body.style.userSelect=``},[]),{height:e,width:n,setHeight:p,setWidth:m,applyPreset:h,activePreset:g,startResize:_,startLeftResize:v,startCornerResize:y,handleOpenChange:f,popoverStyle:{"--submit-panel-height":`${e}px`,"--submit-panel-width":`${n}px`},panelRef:i}}var LH=[{value:`approved`,label:`Approve`,description:`The changes look good — the agent can proceed.`,icon:HD,className:`plan-verdict-approve`},{value:`changes-requested`,label:`Request edits`,description:`The agent should address the comments and apply edits.`,icon:MO,className:`plan-verdict-changes`},{value:`rejected`,label:`Reject`,description:`Don't keep building on this — the approach needs rethinking.`,icon:sk,className:`plan-verdict-reject`},{value:`comment-only`,label:`Comment only`,description:`Agent must NOT edit files — only reply to comments. General note goes to chat.`,icon:NO,className:`plan-verdict-comment-only`}];function RH({comments:e,totalFileCount:t,viewedFileCount:n,requireViewAllBeforeSend:r,onEditComment:i,onDeleteComment:a,onSend:o,sending:s,agentWaiting:c,waitingAgents:l=[],onCopyComments:u,onCopyMarkdown:d}){let{haptic:f,sound:p}=pD(),[m,h]=(0,W.useState)(!1),[g,_]=(0,W.useState)(``),[v,y]=(0,W.useState)(null),[b,x]=(0,W.useState)(!1),[S,C]=(0,W.useState)(null),[w,T]=(0,W.useState)(!1),{popoverStyle:E,activePreset:D,applyPreset:O,startResize:k,startLeftResize:A,startCornerResize:j,handleOpenChange:M,panelRef:N}=IH(),P=async()=>{u&&(await u(),x(!0),setTimeout(()=>x(!1),2e3))},F=e.length,I=(0,W.useMemo)(()=>[...e].sort((e,t)=>e.createdAt-t.createdAt),[e]),L=Math.max(0,t-n),R=async()=>{if(!v)return;if(r&&L>0&&!w){if(f(`medium`),!(!(typeof window>`u`)&&window.confirm(`${L} file${L===1?``:`s`} ${L===1?`is`:`are`} still unviewed. Send the review to the agent anyway?`))){T(!1),h(!0);return}T(!0)}f(`heavy`),p(`send`);let e=v===`comment-only`?`comment-only`:`standard`;try{await o(v,g,e,w),_(``),y(null),h(!1),C(null),T(!1)}catch(e){if(e?.kind===`secrets`){C(e.findings),T(!1);return}throw e}};return(0,G.jsx)(Zk,{open:m,onOpenChange:(e,t)=>M(e,t,h),ariaLabel:`Submit your review to the agent`,className:`send-review-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:s,title:l.length>0?`Waiting: ${l.map(e=>e.label||e.model||e.id.slice(0,8)).join(`, `)}`:c?`Agent waiting for your review`:`Submit review to agent`,"aria-label":s?`Sending review`:F>0?`Send review with ${F} comment${F===1?``:`s`}`:`Send review to agent`,children:[c&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(BD,{size:14,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`btn-label`,children:s?`Sending…`:l.length>1?`Send (${l.length})`:F>0?`Send (${F})`:`Send review`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:N,style:E,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:A,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[(0,G.jsx)(BD,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:`Submit review`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":D===t,"aria-pressed":D===t,onClick:()=>O(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),F>0&&(0,G.jsxs)(`span`,{className:`srp-count`,children:[F,` comment`,F===1?``:`s`]})]}),l.length>0&&(0,G.jsxs)(`div`,{className:`srp-agents`,"aria-label":`Waiting agents`,children:[(0,G.jsx)(`span`,{className:`srp-agents-label`,children:l.length===1?`Agent waiting`:`${l.length} agents waiting`}),(0,G.jsx)(`ul`,{className:`srp-agents-list`,children:l.map(e=>(0,G.jsxs)(`li`,{className:`srp-agent-chip`,title:e.id,children:[(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-agent-name`,children:e.label||e.model||e.id.slice(0,8)}),e.model&&e.label&&(0,G.jsx)(`span`,{className:`srp-agent-model`,children:e.model})]},e.id))})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:LH.map(e=>{let t=e.icon,n=v===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>y(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),F>0?(0,G.jsx)(`ul`,{className:`srp-list`,"aria-label":`Comments to send`,children:I.map(e=>(0,G.jsx)(zH,{comment:e,onEdit:i,onDelete:a},e.id))}):(0,G.jsx)(`p`,{className:`srp-empty`,children:`No inline comments — your verdict and overall note will be sent on their own.`}),L>0&&(0,G.jsx)(`div`,{className:`srp-warning`,role:`note`,"data-tone":`muted`,children:(0,G.jsxs)(`span`,{children:[(0,G.jsx)(`strong`,{children:L}),` of `,(0,G.jsx)(`strong`,{children:t}),` file`,t===1?``:`s`,` still unviewed.`,r&&(0,G.jsx)(G.Fragment,{children:` Sending will require an extra confirmation.`})]})}),S&&(0,G.jsxs)(`div`,{className:`srp-warning srp-warning-danger`,role:`alert`,"data-tone":`danger`,children:[(0,G.jsxs)(`div`,{className:`srp-warning-head`,children:[(0,G.jsx)(QO,{size:14,"aria-hidden":`true`}),(0,G.jsxs)(`strong`,{children:[S.length,` possible secret`,S.length===1?``:`s`,` detected`]})]}),(0,G.jsx)(`ul`,{className:`srp-warning-list`,children:S.map((e,t)=>(0,G.jsxs)(`li`,{children:[(0,G.jsx)(`code`,{children:e.rule}),`: `,(0,G.jsx)(`code`,{children:e.snippet}),` `,(0,G.jsxs)(`span`,{className:`srp-warning-source`,children:[`in `,e.source]})]},t))}),(0,G.jsxs)(`div`,{className:`srp-warning-actions`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>C(null),disabled:s,children:`Cancel & edit`}),(0,G.jsx)(`button`,{className:`btn btn-sm btn-danger`,onClick:()=>{T(!0),C(null),R()},disabled:s,children:`Send anyway`})]})]}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`srp-general-input`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`srp-general-input`,value:g,onChange:_,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the agent that applies to the whole review…`,rows:3,ariaLabel:`Overall review comment`,onSubmitShortcut:R})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[u&&(0,G.jsxs)(`div`,{style:{marginRight:`auto`,display:`flex`,gap:6},children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:P,disabled:F===0,children:b?`Copied!`:`Copy XML`}),d&&(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:async()=>{try{await d(),x(!0),setTimeout(()=>x(!1),1500)}catch{}},disabled:F===0,title:`Copy review as Markdown`,children:`Copy MD`})]}),(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>h(!1),disabled:s,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:R,disabled:!v||s,children:s?`Sending…`:`Send review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:k,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:j,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}function zH({comment:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),s=(0,W.useRef)(null);(0,W.useEffect)(()=>{r&&(s.current?.focus(),s.current?.select())},[r]);let c=e.lineNumber>0?e.startLineNumber&&e.startLineNumber!==e.lineNumber?`:${e.startLineNumber}-${e.lineNumber}`:`:${e.lineNumber}`:` · file`,l=()=>{let n=a.trim();n&&n!==e.body&&t(e.id,n),i(!1)};return(0,G.jsxs)(`li`,{className:`srp-item`,children:[(0,G.jsxs)(`div`,{className:`srp-item-top`,children:[(0,G.jsxs)(`span`,{className:`srp-item-loc`,children:[(0,G.jsx)(`span`,{className:`srp-item-file`,children:tE(e.filePath)}),(0,G.jsx)(`span`,{className:`srp-item-line`,children:c})]}),e.status===`resolved`&&(0,G.jsx)(`span`,{className:`srp-item-resolved`,children:`resolved`}),(0,G.jsxs)(`span`,{className:`srp-item-actions`,children:[r?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:l,title:`Save edit`,children:(0,G.jsx)(HD,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>{o(e.body),i(!1)},title:`Cancel edit`,children:(0,G.jsx)(sk,{size:13,"aria-hidden":`true`})})]}):(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>i(!0),title:`Edit comment`,children:(0,G.jsx)(WO,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn srp-icon-btn-danger`,onClick:()=>n(e.id),title:`Remove from review`,children:(0,G.jsx)(nk,{size:13,"aria-hidden":`true`})})]})]}),e.lineContent?.trim()&&(0,G.jsx)(`code`,{className:`srp-item-code`,children:e.lineContent.trim().slice(0,160)}),r?(0,G.jsx)(`textarea`,{ref:s,className:`srp-item-edit`,value:a,rows:2,onChange:e=>o(e.target.value),onKeyDown:t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)?(t.preventDefault(),l()):t.key===`Escape`&&(t.preventDefault(),o(e.body),i(!1))}}):(0,G.jsx)(`p`,{className:`srp-item-body`,children:e.body})]})}function BH({lastRound:e}){let{data:t=[],isFetching:n,refetch:r}=nt({queryKey:[`review-history`],queryFn:async()=>{let e=await fetch(`/api/review/history`);return e.ok?(await e.json()).rounds??[]:[]},enabled:!1});return!e||e<1?null:(0,G.jsxs)(Zk,{side:`bottom`,align:`start`,ariaLabel:`Review history`,className:`review-history-popup`,onOpenChange:e=>{e&&r()},trigger:(0,G.jsxs)(`button`,{type:`button`,className:`toolbar-last-send toolbar-last-send-btn`,title:`Review history — past handoff rounds`,"aria-label":`Open review history`,children:[(0,G.jsx)(bO,{size:12,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`toolbar-last-send-dot`,"aria-hidden":`true`}),`Round `,e]}),children:[(0,G.jsxs)(`div`,{className:`review-history-header`,children:[(0,G.jsx)(bO,{size:14}),(0,G.jsx)(`strong`,{children:`Review history`}),n&&(0,G.jsx)(`span`,{className:`review-history-loading`,children:`Loading…`})]}),t.length===0?(0,G.jsx)(`p`,{className:`review-history-empty`,children:`No handoffs recorded yet (history is in-memory).`}):(0,G.jsx)(`ul`,{className:`review-history-list`,children:t.map(e=>(0,G.jsxs)(`li`,{className:`review-history-item`,children:[(0,G.jsxs)(`div`,{className:`review-history-item-top`,children:[(0,G.jsxs)(`span`,{className:`review-history-round`,children:[`Round `,e.round]}),e.decision&&(0,G.jsx)(`span`,{className:`review-history-decision`,"data-decision":e.decision,children:e.decision}),e.mode&&e.mode!==`standard`&&(0,G.jsx)(`span`,{className:`review-history-mode`,children:e.mode}),(0,G.jsx)(`span`,{className:`review-history-time`,title:new Date(e.sentAt).toLocaleString(),children:eE(e.sentAt)})]}),(0,G.jsxs)(`div`,{className:`review-history-item-meta`,children:[e.openCount,` open · `,e.filePaths.length,` file`,e.filePaths.length===1?``:`s`]}),e.filePaths.length>0&&(0,G.jsxs)(`div`,{className:`review-history-files`,children:[e.filePaths.slice(0,6).map(e=>(0,G.jsxs)(`span`,{className:`review-history-file`,title:e,children:[(0,G.jsx)(lO,{size:10}),e.split(`/`).pop()]},e)),e.filePaths.length>6&&(0,G.jsxs)(`span`,{className:`review-history-file-more`,children:[`+`,e.filePaths.length-6]})]})]},e.round))})]})}var VH=(0,W.memo)(function({size:e=22,className:t,decorative:n=!0}){return(0,G.jsx)(`img`,{className:t??`brand-mark`,src:`/favicon.svg`,alt:n?``:`diffing`,width:e,height:e,draggable:!1})});function HH(e){let t=W.useRef(!0);t.current&&(t.current=!1,e())}function UH({controlled:e,default:t,name:n,state:r=`value`}){let{current:i}=W.useRef(e!==void 0),[a,o]=W.useState(t);return[i?e:a,W.useCallback(e=>{i||o(e)},[])]}var WH=W.createContext(null),GH=W.createContext(null);function KH(){let e=W.useContext(WH);if(e===null)throw Error(j_(60));return e}function qH(){let e=W.useContext(GH);if(e===null)throw Error(j_(61));return e}var JH=function(e){return e.disabled=`data-disabled`,e.valid=`data-valid`,e.invalid=`data-invalid`,e.touched=`data-touched`,e.dirty=`data-dirty`,e.filled=`data-filled`,e.focused=`data-focused`,e}({}),YH={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},XH={valid(e){return e===null?null:e?{[JH.valid]:``}:{[JH.invalid]:``}}},ZH=W.createContext({invalid:void 0,name:void 0,validityData:{state:YH,errors:[],error:``,value:``,initialValue:null},setValidityData:zb,disabled:void 0,touched:!1,setTouched:zb,dirty:!1,setDirty:zb,filled:!1,setFilled:zb,focused:!1,setFocused:zb,validate:()=>null,validationMode:`onSubmit`,validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:{disabled:!1,valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},markedDirtyRef:{current:!1},validation:{getValidationProps:(e=Vb)=>e,getInputValidationProps:(e=Vb)=>e,inputRef:{current:null},commit:async()=>{}}});function QH(e=!0){let t=W.useContext(ZH);if(t.setValidityData===zb&&!e)throw Error(j_(28));return t}var $H=W.createContext({controlId:void 0,setControlId:zb,labelId:void 0,setLabelId:zb,messageIds:[],setMessageIds:zb,getDescriptionProps:e=>e});function eU(){return W.useContext($H)}function tU(e={}){let{id:t,implicit:n=!1,controlRef:r}=e,{controlId:i,setControlId:a}=eU(),o=bT(t);return Y(()=>{if(!(!n&&!t||a===zb)){if(n){let e=r?.current;K_(e)&&e.closest(`label`)!=null?a(t??null):a(i??o)}else t&&a(t);return()=>{t&&a(void 0)}}},[t,r,i,a,n,o]),i??o}var nU=(e,t)=>Object.is(e,t);function rU(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function iU(e,t,n){return!e||e.length===0?!1:e.some(e=>e===void 0?!1:rU(e,t,n))}function aU(e,t,n){return!e||e.length===0?-1:e.findIndex(e=>e===void 0?!1:rU(e,t,n))}function oU(e,t,n){return e.filter(e=>!rU(e,t,n))}function sU(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function cU(e){return e!=null&&e.length>0&&typeof e[0]==`object`&&e[0]!=null&&`items`in e[0]}function lU(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return sU(e)}function uU(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?sU(e.value):sU(e)}function dU(e,t,n){if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return t[e]??lU(e,n);if(Array.isArray(t)){let r=cU(t)?t.flatMap(e=>e.items):t;if(e==null){let t=r.find(e=>e.value==null);return t&&t.label!=null?t.label:lU(e,n)}if(typeof e!=`object`){let t=r.find(t=>t&&t.value===e);return t&&t.label!=null?t.label:lU(e,n)}if(`value`in e){let t=r.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return lU(e,n)}function fU(e,t){return!Array.isArray(e)||e.length===0?``:e.map(e=>lU(e,t)).join(`, `)}var pU={id:Z(e=>e.id),modal:Z(e=>e.modal),multiple:Z(e=>e.multiple),items:Z(e=>e.items),itemToStringLabel:Z(e=>e.itemToStringLabel),itemToStringValue:Z(e=>e.itemToStringValue),isItemEqualToValue:Z(e=>e.isItemEqualToValue),value:Z(e=>e.value),open:Z(e=>e.open),mounted:Z(e=>e.mounted),forceMount:Z(e=>e.forceMount),transitionStatus:Z(e=>e.transitionStatus),touchModality:Z(e=>e.touchModality),activeIndex:Z(e=>e.activeIndex),selectedIndex:Z(e=>e.selectedIndex),isActive:Z((e,t)=>e.activeIndex===t),isSelected:Z((e,t,n)=>{let r=e.isItemEqualToValue,i=e.value;return e.multiple?Array.isArray(i)&&i.some(e=>rU(e,n,r)):e.selectedIndex===t&&e.selectedIndex!==null?!0:rU(i,n,r)}),isSelectedByFocus:Z((e,t)=>e.selectedIndex===t),popupProps:Z(e=>e.popupProps),triggerProps:Z(e=>e.triggerProps),triggerElement:Z(e=>e.triggerElement),positionerElement:Z(e=>e.positionerElement),listElement:Z(e=>e.listElement),scrollUpArrowVisible:Z(e=>e.scrollUpArrowVisible),scrollDownArrowVisible:Z(e=>e.scrollDownArrowVisible),hasScrollArrows:Z(e=>e.hasScrollArrows),serializedValue:Z(e=>{let{multiple:t,value:n,itemToStringValue:r}=e;return t&&Array.isArray(n)&&n.length===0?``:uU(n,r)})},mU=W.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:zb,validationMode:`onSubmit`,submitAttemptedRef:{current:!1}});function hU(){return W.useContext(mU)}function gU(e,t){return{...e,state:{...e.state,valid:!t&&e.state.valid}}}function _U(e){let{enabled:t=!0,value:n,id:r,name:i,controlRef:a,commit:o}=e,{formRef:s}=hU(),{invalid:c,markedDirtyRef:l,validityData:u,setValidityData:d}=QH(),f=X(e.getValue);Y(()=>{if(!t)return;let e=n;e===void 0&&(e=f()),u.initialValue===null&&e!==null&&d(t=>({...t,initialValue:e}))},[t,d,n,u.initialValue,f]),Y(()=>{!t||!r||s.current.fields.set(r,{getValue:f,name:i,controlRef:a,validityData:gU(u,c),validate(){let e=n;e===void 0&&(e=f()),l.current=!0,aS.flushSync(()=>o(e))}})},[o,a,t,s,f,r,c,l,i,u,n]),Y(()=>{let e=s.current.fields;return()=>{r&&e.delete(r)}},[s,r])}function vU(e,t){let n=W.useRef(e),r=X(t);Y(()=>{n.current!==e&&r(n.current)},[e,r]),Y(()=>{n.current=e},[e])}function yU(e){let{id:t,value:n,defaultValue:r=null,onValueChange:i,open:a,defaultOpen:o=!1,onOpenChange:s,name:c,disabled:l=!1,readOnly:u=!1,required:d=!1,modal:f=!0,actionsRef:p,inputRef:m,onOpenChangeComplete:h,items:g,multiple:_=!1,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b=nU,highlightItemOnHover:x=!0,children:S}=e,{clearErrors:C}=hU(),{setDirty:w,shouldValidateOnChange:T,validityData:E,setFilled:D,name:O,disabled:k,validation:A}=QH(),{controlId:j}=eU(),M=tU({id:t}),N=k||l,P=O??c,[F,I]=UH({controlled:n,default:_?r??Bb:r,name:`Select`,state:`value`}),[L,R]=UH({controlled:a,default:o,name:`Select`,state:`open`}),z=W.useRef([]),ee=W.useRef([]),te=W.useRef(null),ne=W.useRef(null),B=W.useRef(0),V=W.useRef(null),re=W.useRef([]),ie=W.useRef(!1),ae=W.useRef(!1),oe=W.useRef(null),se=W.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1}),ce=W.useRef(!1),{mounted:H,setMounted:le,transitionStatus:ue}=pw(L),U=F_(()=>new lw({id:M,modal:f,multiple:_,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b,value:F,open:L,mounted:H,transitionStatus:ue,items:g,forceMount:!1,touchModality:!1,activeIndex:null,selectedIndex:null,popupProps:{},triggerProps:{},triggerElement:null,positionerElement:null,listElement:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1})).current,de=ow(U,pU.activeIndex),fe=ow(U,pU.selectedIndex),pe=ow(U,pU.triggerElement),me=ow(U,pU.positionerElement),he=W.useMemo(()=>_&&Array.isArray(F)&&F.length===0?``:uU(F,y),[_,F,y]),ge=fv(U.state.triggerElement);_U({id:M,commit:A.commit,value:F,controlRef:ge,name:P,getValue:()=>F});let _e=W.useRef(F);Y(()=>{F!==_e.current&&U.set(`forceMount`,!0)},[U,F]),Y(()=>{D(F!==null)},[F,D]),Y(function(){if(L)return;let e=re.current;if(_){let t=Array.isArray(F)?F:[];if(t.length===0){U.set(`selectedIndex`,null);return}let n=t[t.length-1],r=aU(e,n,b);U.set(`selectedIndex`,r===-1?null:r);return}let t=aU(e,F,b);U.set(`selectedIndex`,t===-1?null:t)},[_,L,F,re,b,U]),vU(F,()=>{C(P),w(F!==E.initialValue),T()?A.commit(F):A.commit(F,!0)});let ve=X((e,t)=>{if(s?.(e,t),!t.isCanceled&&(R(e),!e&&U.state.activeIndex!==null)){let e=z.current[U.state.activeIndex];queueMicrotask(()=>{e?.setAttribute(`tabindex`,`-1`)})}}),ye=X(()=>{le(!1),U.set(`activeIndex`,null),h?.(!1)});hw({enabled:!p,open:L,ref:te,onComplete(){L||ye()}}),W.useImperativeHandle(p,()=>({unmount:ye}),[ye]);let be=X((e,t)=>{i?.(e,t),!t.isCanceled&&I(e)}),xe=X(()=>{let e=U.state.listElement||te.current;if(!e)return;let t=e.scrollTop,n=e.scrollTop+e.clientHeight,r=t>1,i=n<e.scrollHeight-1;U.state.scrollUpArrowVisible!==r&&U.set(`scrollUpArrowVisible`,r),U.state.scrollDownArrowVisible!==i&&U.set(`scrollDownArrowVisible`,i)}),Se=ww({open:L,onOpenChange:ve,elements:{reference:pe,floating:me}}),{getReferenceProps:Ce,getFloatingProps:we,getItemProps:Te}=zw([SS(Se,{enabled:!u&&!N,event:`mousedown`}),LC(Se,{bubbles:!1}),Jw(Se,{enabled:!u&&!N,listRef:z,activeIndex:de,selectedIndex:fe,disabledIndices:Bb,onNavigate(e){e===null&&!L||U.set(`activeIndex`,e)},focusItemOnHover:!1}),Zw(Se,{enabled:!u&&!N&&(L||!_),listRef:ee,activeIndex:de,selectedIndex:fe,onMatch(e){L?U.set(`activeIndex`,e):be(re.current[e],ox(`none`))},onTypingChange(e){ie.current=e}})]);HH(()=>{U.update({popupProps:we(),triggerProps:Ce()})}),Y(()=>{U.update({id:M,modal:f,multiple:_,value:F,open:L,mounted:H,transitionStatus:ue,popupProps:we(),triggerProps:Ce(),items:g,itemToStringLabel:v,itemToStringValue:y,isItemEqualToValue:b})},[U,M,f,_,F,L,H,ue,we,Ce,g,v,y,b]);let Ee=W.useMemo(()=>({store:U,name:P,required:d,disabled:N,readOnly:u,multiple:_,itemToStringLabel:v,itemToStringValue:y,highlightItemOnHover:x,setValue:be,setOpen:ve,listRef:z,popupRef:te,scrollHandlerRef:ne,handleScrollArrowVisibility:xe,scrollArrowsMountedCountRef:B,getItemProps:Te,events:Se.context.events,valueRef:V,valuesRef:re,labelsRef:ee,typingRef:ie,selectionRef:se,selectedItemTextRef:oe,validation:A,onOpenChangeComplete:h,keyboardActiveRef:ae,alignItemWithTriggerActiveRef:ce,initialValueRef:_e}),[U,P,d,N,u,_,v,y,x,be,ve,Te,Se.context.events,A,h,xe]),De=fx(m,A.inputRef),Oe=_&&Array.isArray(F)&&F.length>0,ke=W.useMemo(()=>!_||!Array.isArray(F)||!P?null:F.map(e=>{let t=uU(e,y);return(0,G.jsx)(`input`,{type:`hidden`,name:P,value:t},t)}),[_,F,P,y]);return(0,G.jsx)(WH.Provider,{value:Ee,children:(0,G.jsxs)(GH.Provider,{value:Se,children:[S,(0,G.jsx)(`input`,{...A.getInputValidationProps({onFocus(){U.state.triggerElement?.focus()},onChange(e){if(e.nativeEvent.defaultPrevented)return;let t=e.target.value,n=ox(qb,e.nativeEvent);function r(){if(_)return;let e=re.current.find(e=>uU(e,y).toLowerCase()===t.toLowerCase());e!=null&&(w(e!==E.initialValue),be(e,n),T()&&A.commit(e))}U.set(`forceMount`,!0),queueMicrotask(r)}}),id:t||j||void 0,name:_?void 0:P,value:he,disabled:N,required:d&&!Oe,readOnly:u,ref:De,style:vx,tabIndex:-1,"aria-hidden":!0}),ke]})})}function bU(e){let t=e.getBoundingClientRect(),n=window.getComputedStyle(e,`::before`),r=window.getComputedStyle(e,`::after`);if(!(n.content!==`none`||r.content!==`none`))return t;let i=parseFloat(n.width)||0,a=parseFloat(n.height)||0,o=parseFloat(r.width)||0,s=parseFloat(r.height)||0,c=Math.max(t.width,i,o),l=Math.max(t.height,a,s),u=c-t.width,d=l-t.height;return{left:t.left-u/2,right:t.right+u/2,top:t.top-d/2,bottom:t.bottom+d/2}}var xU=2,SU={...vT,...XH,value:()=>null},CU=W.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,nativeButton:a=!0,...o}=e,{setTouched:s,setFocused:c,validationMode:l,state:u,disabled:d}=QH(),{labelId:f}=eU(),{store:p,setOpen:m,selectionRef:h,validation:g,readOnly:_,alignItemWithTriggerActiveRef:v,disabled:y,keyboardActiveRef:b}=KH(),x=d||y||i,S=ow(p,pU.open),C=ow(p,pU.value),w=ow(p,pU.triggerProps),T=ow(p,pU.positionerElement),E=ow(p,pU.listElement),D=ow(p,pU.serializedValue),O=fv(T),k=W.useRef(null),A=B_(),j=B_(),{getButtonProps:M,buttonRef:N}=Ok({disabled:x,native:a}),P=fx(t,k,N,X(e=>{p.set(`triggerElement`,e)})),F=B_(),I=B_();W.useEffect(()=>{if(S)return I.start(200,()=>{h.current.allowUnselectedMouseUp=!0,F.start(200,()=>{h.current.allowSelectedMouseUp=!0})}),()=>{F.clear(),I.clear()};h.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1},j.clear()},[S,h,j,F,I]);let L=W.useMemo(()=>E?.id??Kv(T)?.id,[E,T]),R=Wx(w,{role:`combobox`,"aria-expanded":S?`true`:`false`,"aria-haspopup":`listbox`,"aria-controls":S?L:void 0,"aria-labelledby":f,"aria-readonly":_||void 0,tabIndex:x?-1:0,ref:P,onFocus(e){c(!0),S&&v.current&&m(!1,ox($b,e.nativeEvent)),A.start(0,()=>{p.set(`forceMount`,!0)})},onBlur(){s(!0),c(!1),l===`onBlur`&&g.commit(C)},onPointerMove({pointerType:e}){b.current=!1,p.set(`touchModality`,e===`touch`)},onPointerDown({pointerType:e}){p.set(`touchModality`,e===`touch`)},onKeyDown(){b.current=!0},onMouseDown(e){if(S)return;let t=Cx(e.currentTarget);function n(e){if(!k.current)return;let t=e.target;if(Rv(k.current,t)||Rv(O.current,t)||t===k.current)return;let n=bU(k.current);e.clientX>=n.left-xU&&e.clientX<=n.right+xU&&e.clientY>=n.top-xU&&e.clientY<=n.bottom+xU||m(!1,ox(nx,e))}j.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},g.getValidationProps,o,M);R.role=`combobox`;let z=W.useMemo(()=>({...u,open:S,disabled:x,value:C,readOnly:_,placeholder:!D}),[u,S,x,C,_,D]);return tS(`button`,e,{ref:[t,k],state:z,stateAttributesMapping:SU,props:R})}),wU={value:()=>null},TU=W.forwardRef(function(e,t){let{className:n,render:r,children:i,...a}=e,{store:o,valueRef:s}=KH(),c=ow(o,pU.value),l=ow(o,pU.items),u=ow(o,pU.itemToStringLabel),d=ow(o,pU.serializedValue),f=W.useMemo(()=>({value:c,placeholder:!d}),[c,d]),p=typeof i==`function`?i(c):i??(Array.isArray(c)?fU(c,u):dU(c,l,u));return tS(`span`,e,{state:f,ref:[t,s],props:[{children:p},a],stateAttributesMapping:wU})}),EU=W.forwardRef(function(e,t){let{className:n,render:r,...i}=e,{store:a}=KH(),o=ow(a,pU.open);return tS(`span`,e,{state:W.useMemo(()=>({open:o}),[o]),ref:t,props:[{"aria-hidden":!0,children:`▼`},i],stateAttributesMapping:_T})}),DU=W.createContext(void 0),OU=W.forwardRef(function(e,t){let{store:n}=KH(),r=ow(n,pU.mounted),i=ow(n,pU.forceMount);return r||i?(0,G.jsx)(DU.Provider,{value:!0,children:(0,G.jsx)(uS,{ref:t,...e})}):null}),kU=W.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function AU(){return W.useContext(kU)}function jU(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=X(i),o=W.useRef(0),s=F_(NU).current,c=F_(MU).current,[l,u]=W.useState(0),d=W.useRef(l),f=X((e,t)=>{c.set(e,t??null),d.current+=1,u(d.current)}),p=X(e=>{c.delete(e),d.current+=1,u(d.current)}),m=W.useMemo(()=>{let e=new Map;return Array.from(c.keys()).filter(e=>e.isConnected).sort(PU).forEach((t,n)=>{let r=c.get(t)??{};e.set(t,{...r,index:n})}),e},[c,l]);Y(()=>{if(typeof MutationObserver!=`function`||m.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(d.current+=1,u(d.current))});return m.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[m]),Y(()=>{d.current===l&&(n.current.length!==m.size&&(n.current.length=m.size),r&&r.current.length!==m.size&&(r.current.length=m.size),o.current=m.size),a(m)},[a,m,n,r,l]),Y(()=>()=>{n.current=[]},[n]),Y(()=>()=>{r&&(r.current=[])},[r]);let h=X(e=>(s.add(e),()=>{s.delete(e)}));Y(()=>{s.forEach(e=>e(m))},[s,m]);let g=W.useMemo(()=>({register:f,unregister:p,subscribeMapChange:h,elementsRef:n,labelsRef:r,nextIndexRef:o}),[f,p,h,n,r,o]);return(0,G.jsx)(kU.Provider,{value:g,children:t})}function MU(){return new Map}function NU(){return new Set}function PU(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}var FU=W.createContext(void 0);function IU(){let e=W.useContext(FU);if(!e)throw Error(j_(59));return e}function LU(e,t){e&&Object.assign(e.style,t)}var RU={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},zU={position:`fixed`},BU=W.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o=`bottom`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m,alignItemWithTrigger:h=!0,collisionAvoidance:g=Wb,..._}=e,{store:v,listRef:y,labelsRef:b,alignItemWithTriggerActiveRef:x,selectedItemTextRef:S,valuesRef:C,initialValueRef:w,popupRef:T,setValue:E}=KH(),D=qH(),O=ow(v,pU.open),k=ow(v,pU.mounted),A=ow(v,pU.modal),j=ow(v,pU.value),M=ow(v,pU.touchModality),N=ow(v,pU.positionerElement),P=ow(v,pU.triggerElement),F=ow(v,pU.isItemEqualToValue),I=W.useRef(null),L=W.useRef(null),[R,z]=W.useState(h),ee=k&&R&&!M;!k&&R!==h&&z(h),Y(()=>{k||(pU.scrollUpArrowVisible(v.state)&&v.set(`scrollUpArrowVisible`,!1),pU.scrollDownArrowVisible(v.state)&&v.set(`scrollDownArrowVisible`,!1))},[v,k]),W.useImperativeHandle(x,()=>ee),hk((ee||A)&&O&&!M,P);let te=zT({anchor:n,floatingRootContext:D,positionMethod:r,mounted:k,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m??ee,collisionAvoidance:g,keepMounted:!0}),ne=ee?`none`:te.side,B=ee?zU:te.positionerStyles,V=W.useMemo(()=>{let e={};return O||(e.pointerEvents=`none`),{role:`presentation`,hidden:!k,style:{...B,...e}}},[O,k,B]),re=W.useMemo(()=>({open:O,side:ne,align:te.align,anchorHidden:te.anchorHidden}),[O,ne,te.align,te.anchorHidden]),ie=tS(`div`,e,{ref:[t,X(e=>{v.set(`positionerElement`,e)})],state:re,stateAttributesMapping:yT,props:[V,_]}),ae=W.useRef(0),oe=X(e=>{if(e.size===0&&ae.current===0||C.current.length===0)return;let t=ae.current;if(ae.current=e.size,e.size===t)return;let n=ox(qb);if(t!==0&&!v.state.multiple&&j!==null&&aU(C.current,j,F)===-1){let e=w.current,t=e!=null&&iU(C.current,e,F)?e:null;E(t,n),t===null&&(v.set(`selectedIndex`,null),S.current=null)}if(t!==0&&v.state.multiple&&Array.isArray(j)){let e=j.filter(e=>iU(C.current,e,F));(e.length!==j.length||e.some(e=>!iU(j,e,F)))&&(E(e,n),e.length===0&&(v.set(`selectedIndex`,null),S.current=null))}if(O&&ee){v.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};LU(N,e),LU(T.current,e)}}),se=W.useMemo(()=>({...te,side:ne,alignItemWithTriggerActive:ee,setControlledAlignItemWithTrigger:z,scrollUpArrowRef:I,scrollDownArrowRef:L}),[te,ne,ee,z]);return(0,G.jsx)(jU,{elementsRef:y,labelsRef:b,onMapChange:oe,children:(0,G.jsxs)(FU.Provider,{value:se,children:[k&&A&&(0,G.jsx)(Ik,{inert:ZT(!O),cutout:P}),ie]})})});function VU(e){let t=e.currentTarget.getBoundingClientRect();return t.top+1<=e.clientY&&e.clientY<=t.bottom-1&&t.left+1<=e.clientX&&e.clientX<=t.right-1}var HU=`base-ui-disable-scrollbar`,UU={className:HU,element:(0,G.jsx)(`style`,{href:HU,precedence:`base-ui:low`,children:`.${HU}{scrollbar-width:none}.${HU}::-webkit-scrollbar{display:none}`})},WU={...yT,...lT},GU=W.forwardRef(function(e,t){let{render:n,className:r,...i}=e,{store:a,popupRef:o,onOpenChangeComplete:s,setOpen:c,valueRef:l,selectedItemTextRef:u,keyboardActiveRef:d,multiple:f,handleScrollArrowVisibility:p,scrollHandlerRef:m}=KH(),{side:h,align:g,alignItemWithTriggerActive:_,setControlledAlignItemWithTrigger:v,scrollDownArrowRef:y,scrollUpArrowRef:b}=IU(),x=Jk(!0)!=null,S=qH(),C=B_(),w=ow(a,pU.id),T=ow(a,pU.open),E=ow(a,pU.mounted),D=ow(a,pU.popupProps),O=ow(a,pU.transitionStatus),k=ow(a,pU.triggerElement),A=ow(a,pU.positionerElement),j=ow(a,pU.listElement),M=W.useRef(0),N=W.useRef(!1),P=W.useRef(0),F=W.useRef(!1),I=W.useRef({}),L=Sx(),R=X(e=>{if(!A||!o.current||!F.current)return;if(N.current||!_){p();return}let t=A.style.top===`0px`,n=A.style.bottom===`0px`,r=A.getBoundingClientRect().height,i=Cx(A),a=getComputedStyle(A),s=parseFloat(a.marginTop),c=parseFloat(a.marginBottom),l=i.documentElement.clientHeight-s-c,u=e.scrollTop,d=e.scrollHeight-e.clientHeight,f=null,m=null,h=!1;if(t){let e=r+(d-u),t=Math.min(e,l);f=t,t===l?h=!0:m=d}else if(n){let e=u-0,t=r+e,n=Math.min(t,l),i=t-l;f=n,n===l?(h=!0,u<d&&(m=u-(e-i))):m=0}f!=null&&(A.style.height=`${f}px`),m!=null&&(e.scrollTop=m),h&&(N.current=!0),p()});W.useImperativeHandle(m,()=>R,[R]),hw({open:T,ref:o,onComplete(){T&&s?.(!0)}});let z=W.useMemo(()=>({open:T,transitionStatus:O,side:h,align:g}),[T,O,h,g]);Y(()=>{!A||!o.current||Object.keys(I.current).length||(I.current={top:A.style.top||`0`,left:A.style.left||`0`,right:A.style.right,height:A.style.height,bottom:A.style.bottom,minHeight:A.style.minHeight,maxHeight:A.style.maxHeight,marginTop:A.style.marginTop,marginBottom:A.style.marginBottom})},[o,A]),Y(()=>{E||_||(F.current=!1,N.current=!1,M.current=0,P.current=0,LU(A,I.current))},[E,_,A,o]),Y(()=>{let e=o.current;if(!(!E||!k||!A||!e)){if(!_){F.current=!0,L.request(p);return}queueMicrotask(()=>{let t=getComputedStyle(A),n=getComputedStyle(e),r=Cx(k),i=U_(A),a=k.getBoundingClientRect(),o=A.getBoundingClientRect(),s=a.left,c=a.height,d=j||e,f=d.scrollHeight,m=parseFloat(n.borderBottomWidth),h=parseFloat(t.marginTop)||10,g=parseFloat(t.marginBottom)||10,_=parseFloat(t.minHeight)||100,y=r.documentElement.clientHeight-h-g,b=r.documentElement.clientWidth,x=y-a.bottom+c,S=u.current,C=l.current,w=0,T=0;if(S&&C){let e=C.getBoundingClientRect(),t=S.getBoundingClientRect(),n=e.left-s,r=t.left-o.left,i=e.top-a.top+e.height/2,c=t.top-o.top+t.height/2;w=n-r,T=c-i}let E=x+T+g+m,D=Math.min(y,E),O=y-h-g,P=E-D,L=Math.max(5,s+w),R=b-5,z=Math.max(0,L+o.width-R);A.style.left=`${L-z}px`,A.style.height=`${D}px`,A.style.maxHeight=`auto`,A.style.marginTop=`${h}px`,A.style.marginBottom=`${g}px`,e.style.height=`100%`;let ee=d.scrollHeight-d.clientHeight,te=P>=ee;te&&(D=Math.min(y,o.height)-(P-ee));let ne=a.top<20||a.bottom>y-20||D<Math.min(f,_),B=(i.visualViewport?.scale??1)!==1&&Sv;if(ne||B){F.current=!0,LU(A,I.current),aS.flushSync(()=>v(!1));return}if(te){let e=Math.max(0,y-E);A.style.top=o.height>=O?`0`:`${e}px`,A.style.height=`${D}px`,d.scrollTop=d.scrollHeight-d.clientHeight,M.current=Math.max(_,D)}else A.style.bottom=`0`,M.current=Math.max(_,D),d.scrollTop=P;M.current===y&&(N.current=!0),p(),setTimeout(()=>{F.current=!0})})}},[a,E,A,k,l,u,o,p,_,v,L,y,b,j]),W.useEffect(()=>{if(!_||!A||!E)return;let e=U_(A);function t(e){c(!1,ox(ax,e))}return e.addEventListener(`resize`,t),()=>{e.removeEventListener(`resize`,t)}},[c,_,A,E]);let ee={...j?{role:`presentation`,"aria-orientation":void 0}:{role:`listbox`,"aria-multiselectable":f||void 0,id:`${w}-list`},onKeyDown(e){d.current=!0,x&&Kk.has(e.key)&&e.stopPropagation()},onMouseMove(){d.current=!1},onPointerLeave(e){if(VU(e)||e.pointerType===`touch`)return;let t=e.currentTarget;C.start(0,()=>{a.set(`activeIndex`,null),t.focus({preventScroll:!0})})},onScroll(e){j||m.current?.(e.currentTarget)},..._&&{style:j?{height:`100%`}:RU}},te=tS(`div`,e,{ref:[t,o],state:z,stateAttributesMapping:WU,props:[D,ee,VT(O),{className:!j&&_?UU.className:void 0},i]});return(0,G.jsxs)(W.Fragment,{children:[UU.element,(0,G.jsx)(xS,{context:S,modal:!1,disabled:!E,restoreFocus:!0,children:te})]})}),KU=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function qU(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,elementsRef:l,labelsRef:u,nextIndexRef:d}=AU(),f=W.useRef(-1),[p,m]=W.useState(a??(i===KU.GuessFromOrder?()=>{if(f.current===-1){let e=d.current;d.current+=1,f.current=e}return f.current}:-1)),h=W.useRef(null),g=W.useCallback(e=>{if(h.current=e,p!==-1&&e!==null&&(l.current[p]=e,u)){let n=t!==void 0;u.current[p]=n?t:r?.current?.textContent??e.textContent}},[p,l,u,t,r]);return Y(()=>{if(a!=null)return;let e=h.current;if(e)return o(e,n),()=>{s(e)}},[a,o,s,n]),Y(()=>{if(a==null)return c(e=>{let t=h.current?e.get(h.current)?.index:null;t!=null&&m(t)})},[a,c,m]),W.useMemo(()=>({ref:g,index:p}),[p,g])}var JU=W.createContext(void 0);function YU(){let e=W.useContext(JU);if(!e)throw Error(j_(57));return e}var XU=W.memo(W.forwardRef(function(e,t){let{render:n,className:r,value:i=null,label:a,disabled:o=!1,nativeButton:s=!1,...c}=e,l=W.useRef(null),u=qU({label:a,textRef:l,indexGuessBehavior:KU.GuessFromOrder}),{store:d,getItemProps:f,setOpen:p,setValue:m,selectionRef:h,typingRef:g,valuesRef:_,keyboardActiveRef:v,multiple:y,highlightItemOnHover:b}=KH(),x=B_(),S=ow(d,pU.isActive,u.index),C=ow(d,pU.isSelected,u.index,i),w=ow(d,pU.isSelectedByFocus,u.index),T=ow(d,pU.isItemEqualToValue),E=u.index,D=E!==-1,O=W.useRef(null),k=fv(E);Y(()=>{if(!D)return;let e=_.current;return e[E]=i,()=>{delete e[E]}},[D,E,i,_]),Y(()=>{if(!D)return;let e=d.state.value,t=e;y&&Array.isArray(e)&&e.length>0&&(t=e[e.length-1]),t!==void 0&&rU(t,i,T)&&d.set(`selectedIndex`,E)},[D,E,y,T,d,i]);let A=W.useMemo(()=>({disabled:o,selected:C,highlighted:S}),[o,C,S]),j=f({active:S,selected:C});j.onFocus=void 0,j.id=void 0;let M=W.useRef(null),N=W.useRef(`mouse`),P=W.useRef(!1),{getButtonProps:F,buttonRef:I}=Ok({disabled:o,focusableWhenDisabled:!0,native:s});function L(e){let t=d.state.value;if(y){let n=Array.isArray(t)?t:[];m(C?oU(n,i,T):[...n,i],ox(Qb,e))}else m(i,ox(Qb,e)),p(!1,ox(Qb,e))}let R={role:`option`,"aria-selected":C,"aria-disabled":o||void 0,tabIndex:S?0:-1,onFocus(){d.set(`activeIndex`,E)},onMouseEnter(){!v.current&&d.state.selectedIndex===null&&d.set(`activeIndex`,E)},onMouseMove(){b&&d.set(`activeIndex`,E)},onMouseLeave(e){!b||v.current||VU(e)||x.start(0,()=>{d.state.activeIndex===E&&d.set(`activeIndex`,null)})},onTouchStart(){h.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1}},onKeyDown(e){M.current=e.key,d.set(`activeIndex`,E)},onClick(e){P.current=!1,!(e.type===`keydown`&&M.current===null)&&(o||M.current===` `&&g.current||N.current!==`touch`&&!S||(M.current=null,L(e.nativeEvent)))},onPointerEnter(e){N.current=e.pointerType},onPointerDown(e){N.current=e.pointerType,P.current=!0},onMouseUp(e){if(o)return;if(P.current){P.current=!1;return}let t=!h.current.allowSelectedMouseUp&&C,n=!h.current.allowUnselectedMouseUp&&!C;t||n||N.current!==`touch`&&!S||L(e.nativeEvent)}},z=tS(`div`,e,{ref:[I,t,u.ref,O],state:A,props:[j,R,c,F]}),ee=W.useMemo(()=>({selected:C,indexRef:k,textRef:l,selectedByFocus:w,hasRegistered:D}),[C,k,l,w,D]);return(0,G.jsx)(JU.Provider,{value:ee,children:z})})),ZU=W.forwardRef(function(e,t){let n=e.keepMounted??!1,{selected:r}=YU();return n||r?(0,G.jsx)(QU,{...e,ref:t}):null}),QU=W.memo(W.forwardRef((e,t)=>{let{render:n,className:r,keepMounted:i,...a}=e,{selected:o}=YU(),s=W.useRef(null),{transitionStatus:c,setMounted:l}=pw(o),u=W.useMemo(()=>({selected:o,transitionStatus:c}),[o,c]),d=tS(`span`,e,{ref:[t,s],state:u,props:[{"aria-hidden":!0,children:`✔️`},a],stateAttributesMapping:lT});return hw({open:o,ref:s,onComplete(){o||l(!1)}}),d})),$U=W.memo(W.forwardRef(function(e,t){let{indexRef:n,textRef:r,selectedByFocus:i,hasRegistered:a}=YU(),{selectedItemTextRef:o}=KH(),{className:s,render:c,...l}=e;return tS(`div`,e,{ref:[W.useCallback(e=>{if(!e||!a)return;let t=o.current===null||!o.current.isConnected;(i||t&&n.current===0)&&(o.current=e)},[o,n,i,a]),t,r],props:l})}));function eW({value:e,onValueChange:t,options:n,ariaLabel:r,className:i}){return(0,G.jsxs)(yU,{value:e,onValueChange:e=>t(e),modal:!1,children:[(0,G.jsxs)(CU,{className:`ui-select-trigger ${i??``}`,"aria-label":r,children:[(0,G.jsx)(TU,{children:e=>n.find(t=>t.value===e)?.label??e}),(0,G.jsx)(EU,{className:`ui-select-icon`,children:(0,G.jsx)(KD,{size:12})})]}),(0,G.jsx)(OU,{children:(0,G.jsx)(BU,{className:`ui-select-positioner`,sideOffset:4,align:`end`,side:`bottom`,alignItemWithTrigger:!1,children:(0,G.jsx)(GU,{className:`ui-select-popup`,children:n.map(e=>(0,G.jsxs)(XU,{value:e.value,className:`ui-select-item`,children:[(0,G.jsx)($U,{children:e.label}),(0,G.jsx)(ZU,{className:`ui-select-indicator`,children:(0,G.jsx)(HD,{size:13})})]},e.value))})})})]})}var tW=[{value:`word`,label:`Word`},{value:`word-alt`,label:`Word (alt)`},{value:`char`,label:`Character`},{value:`none`,label:`None`}],nW=[{value:`classic`,label:`Classic (+/−)`},{value:`bars`,label:`Bars`},{value:`none`,label:`None`}],rW=[{value:`line-info`,label:`Line info + context`},{value:`line-info-basic`,label:`Line info`},{value:`metadata`,label:`Metadata only`},{value:`simple`,label:`Simple`}],iW=[{value:`both`,label:`Both`},{value:`line`,label:`Line only`},{value:`number`,label:`Number only`},{value:`disabled`,label:`Disabled`}],aW=[11,12,13,14,15,16].map(e=>({value:String(e),label:`${e}px`})),oW=[2,4,8].map(e=>({value:String(e),label:String(e)})),sW=[{value:`comfortable`,label:`Comfortable`},{value:`compact`,label:`Compact`}],cW=[{value:`0`,label:`Disabled`},{value:`100`,label:`100 lines`},{value:`200`,label:`200 lines`},{value:`400`,label:`400 lines`},{value:`800`,label:`800 lines`}],lW=[{value:``,label:`Default`},{value:`chrome`,label:`Chrome`},{value:`firefox`,label:`Firefox`},{value:`edge`,label:`Edge`},{value:`brave`,label:`Brave`}],uW=[{value:`default`,label:`Default / System`},{value:`vscode`,label:`VS Code`},{value:`zed`,label:`Zed`},{value:`vim`,label:`Vim`},{value:`neovim`,label:`Neovim`}];function dW({diffStyle:e,diffOptions:t,defaultTabSize:n,browser:r,editorIDE:i,lineDiffType:a,lineWrap:o,diffIndicators:s,showLineNumbers:c,hunkSeparators:l,lineHoverHighlight:u,fontSize:d,haptics:f,sounds:p,uiFont:m,monoFont:h,density:g,autoCollapseLineThreshold:_,requireViewAllBeforeSend:v=!1,showStatusBar:y,ignoreSpaceChange:b=!1,ignoreAllSpace:x=!1,onDiffStyleChange:S,onDiffOptionsChange:C,onDefaultTabSizeChange:w,onBrowserChange:T,onOpenThemeModal:E,onEditorIDEChange:D,onLineDiffTypeChange:O,onLineWrapChange:k,onDiffIndicatorsChange:A,onShowLineNumbersChange:j,onHunkSeparatorsChange:M,onLineHoverHighlightChange:N,onFontSizeChange:P,onHapticsChange:F,onSoundsChange:I,onDensityChange:L,onAutoCollapseLineThresholdChange:R,onRequireViewAllBeforeSendChange:z,onShowStatusBarChange:ee,onIgnoreSpaceChange:te,onIgnoreAllSpaceChange:ne,onOpenUiFontModal:B,onOpenMonoFontModal:V,showSource:re=!0,showWhitespace:ie=!0,showExternalTools:ae=!0,showSendPolicy:oe=!0}){let[se,ce]=(0,W.useState)(!1);return(0,W.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&(e.key===`,`||e.code===`Comma`)&&(e.preventDefault(),ce(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]),(0,G.jsx)(Zk,{open:se,onOpenChange:ce,ariaLabel:`Settings`,className:`settings-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn ${se?`btn-active`:``}`,title:`Settings (⌘,)`,"aria-label":`Settings`,children:[(0,G.jsx)(ZO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Settings`})]}),children:(0,G.jsxs)(`div`,{className:`popover-scroll settings-panel`,children:[re&&t&&C&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Source`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.staged,onChange:e=>C({...t,staged:e.target.checked})}),`Show staged`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.untracked,onChange:e=>C({...t,untracked:e.target.checked})}),`Show untracked`]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Display`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Inline diff`}),(0,G.jsx)(eW,{value:a,onValueChange:e=>O(e),options:tW,ariaLabel:`Inline diff style`})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:o,onChange:e=>k(e.target.checked)}),`Wrap long lines`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Diff indicators`}),(0,G.jsx)(eW,{value:s,onValueChange:e=>A(e),options:nW,ariaLabel:`Diff indicators`})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:c,onChange:e=>j(e.target.checked)}),`Show line numbers`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hunk separator`}),(0,G.jsx)(eW,{value:l,onValueChange:e=>M(e),options:rW,ariaLabel:`Hunk separator style`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hover highlight`}),(0,G.jsx)(eW,{value:u,onValueChange:e=>N(e),options:iW,ariaLabel:`Hover highlight`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Font size`}),(0,G.jsx)(eW,{value:String(d),onValueChange:e=>P(Number(e)),options:aW,ariaLabel:`Font size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Default tab size`}),(0,G.jsx)(eW,{value:String(n),onValueChange:e=>w(Number(e)),options:oW,ariaLabel:`Default tab size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`UI font`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),B()},title:m??`Default (Geist Mono)`,children:[(0,G.jsx)(ik,{size:13}),(0,G.jsx)(`span`,{className:`settings-value-label`,children:m??`Default…`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Comfort`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Density`}),(0,G.jsx)(eW,{value:g,onValueChange:e=>L(e),options:sW,ariaLabel:`UI density`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Auto-collapse huge files`}),(0,G.jsx)(eW,{value:String(_),onValueChange:e=>R(Number(e)),options:cW,ariaLabel:`Auto-collapse line threshold`})]}),oe&&z&&(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:v,onChange:e=>z(e.target.checked)}),(0,G.jsxs)(`span`,{className:`settings-icon-label`,children:[(0,G.jsx)($O,{size:12}),` Warn before sending if files are unviewed`]})]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:y,onChange:e=>ee(e.target.checked)}),(0,G.jsxs)(`span`,{className:`settings-icon-label`,children:[(0,G.jsx)(CO,{size:12}),` Show status bar`]})]}),ie&&te&&ne&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Whitespace`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:b,onChange:e=>te(e.target.checked)}),`Ignore space-change (-b)`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:x,onChange:e=>ne(e.target.checked)}),`Ignore all space (-w)`]})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Code font`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),V()},title:h??`Default (JetBrains Mono)`,children:[(0,G.jsx)(ik,{size:13}),(0,G.jsx)(`span`,{className:`settings-value-label`,children:h??`Default…`})]})]}),ae&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`External tools`}),T&&(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Browser`}),(0,G.jsx)(eW,{value:r||``,onValueChange:T,options:lW,ariaLabel:`Browser`})]}),D&&(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Preferred IDE`}),(0,G.jsx)(eW,{value:i||`default`,onValueChange:D,options:uW,ariaLabel:`Preferred IDE`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Appearance`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Diff style`}),(0,G.jsx)(eW,{value:e,onValueChange:e=>S(e),options:[{value:`split`,label:`Split`},{value:`unified`,label:`Unified`}],ariaLabel:`Diff style`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Theme`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{ce(!1),E()},children:[(0,G.jsx)(BO,{size:14}),` Switch Theme…`]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Feedback`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:f,onChange:e=>F(e.target.checked)}),`Haptic feedback`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:p,onChange:e=>I(e.target.checked)}),`Sound effects`]})]})})}var fW=(0,W.memo)(function({repoName:e,branch:t,fileCount:n,totalFileCount:r,additions:i,deletions:a,commentCount:o,planCount:s,pendingPlanCount:c,lastSend:l,onOpenPlans:u,diffStyle:d,diffOptions:f,defaultTabSize:p,browser:m,theme:h,editorIDE:g,customMode:_,showMode:v,showCommitCount:y,lineDiffType:b,lineWrap:x,diffIndicators:S,showLineNumbers:C,hunkSeparators:w,lineHoverHighlight:T,fontSize:E,haptics:D,sounds:O,uiFont:k,monoFont:A,density:j,autoCollapseLineThreshold:M,requireViewAllBeforeSend:N,showStatusBar:P,ignoreSpaceChange:F,ignoreAllSpace:I,onDiffStyleChange:L,onDiffOptionsChange:R,onDefaultTabSizeChange:z,onBrowserChange:ee,onOpenThemeModal:te,onEditorIDEChange:ne,onLineDiffTypeChange:B,onLineWrapChange:V,onDiffIndicatorsChange:re,onShowLineNumbersChange:ie,onHunkSeparatorsChange:ae,onLineHoverHighlightChange:oe,onFontSizeChange:se,onHapticsChange:ce,onSoundsChange:H,onDensityChange:le,onAutoCollapseLineThresholdChange:ue,onRequireViewAllBeforeSendChange:U,onShowStatusBarChange:de,onIgnoreSpaceChange:fe,onIgnoreAllSpaceChange:pe,onResolveAllOpen:me,onOpenUiFontModal:he,onOpenMonoFontModal:ge,onOpenSearch:_e,onCopyComments:ve,onCopyMarkdown:ye,onSendToAgent:be,agentWaiting:xe,waitingAgents:Se=[],sending:Ce,comments:we,viewedFileCount:Te,onEditComment:Ee,onDeleteComment:De,sidebarCollapsed:Oe,onToggleSidebar:ke}){let Ae=v?`${y} commit${y===1?``:`s`}`:n===r?`${n} file${n===1?``:`s`}`:`${n}/${r} files`;return(0,G.jsxs)(`header`,{className:`toolbar diff-app-toolbar`,role:`banner`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[ke&&(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:ke,"aria-label":Oe?`Open file tree`:`Close file tree`,"aria-expanded":!Oe,title:Oe?`Open sidebar · b`:`Close sidebar · b`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsxs)(`div`,{className:`toolbar-brand`,children:[(0,G.jsx)(VH,{size:20,className:`toolbar-brand-mark`}),(0,G.jsxs)(`div`,{className:`toolbar-brand-text`,children:[(0,G.jsx)(`h1`,{className:`toolbar-title`,children:e||`diffing`}),t&&(0,G.jsxs)(`span`,{className:`toolbar-branch-inline`,title:t,children:[(0,G.jsx)(mO,{size:11,"aria-hidden":`true`}),t]})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-meta`,"aria-label":`Diff summary`,children:[(0,G.jsx)(`span`,{className:`toolbar-chip`,children:Ae}),(i>0||a>0)&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-diff`,children:[i>0&&(0,G.jsxs)(`span`,{className:`stat-additions`,children:[`+`,i]}),a>0&&(0,G.jsxs)(`span`,{className:`stat-deletions`,children:[`−`,a]})]}),o>0&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-comments`,children:[o,` open`]}),l&&l.round>0&&(0,G.jsx)(BH,{lastRound:l.round})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-search-btn`,onClick:_e,title:`Search files, text, symbols (⌘K)`,"aria-label":`Search`,children:[(0,G.jsx)(XO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Search`}),(0,G.jsx)(`kbd`,{className:`toolbar-search-kbd`,children:`⌘K`})]}),s>0&&(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-plans-btn ${c>0?`toolbar-plans-btn-pending`:``}`,onClick:u,title:c>0?`${c} plan${c===1?``:`s`} awaiting review`:`Open plan review`,children:[c>0&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),(0,G.jsx)(eO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Plans`}),c>0&&(0,G.jsx)(`span`,{className:`toolbar-plans-badge`,children:c})]}),o>0&&(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-resolve-all-btn`,onClick:()=>{typeof window>`u`||window.confirm(`Resolve all ${o} open comment${o===1?``:`s`}? This marks every open thread as resolved in one move.`)&&me()},title:`Resolve all open comments`,children:[(0,G.jsx)(VD,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Resolve all`})]}),(0,G.jsx)(dW,{diffStyle:d,diffOptions:f,defaultTabSize:p,browser:m,editorIDE:g,lineDiffType:b,lineWrap:x,diffIndicators:S,showLineNumbers:C,hunkSeparators:w,lineHoverHighlight:T,fontSize:E,haptics:D,sounds:O,uiFont:k,monoFont:A,density:j,autoCollapseLineThreshold:M,requireViewAllBeforeSend:N,showStatusBar:P,ignoreSpaceChange:F,ignoreAllSpace:I,onDiffStyleChange:L,onDiffOptionsChange:R,onDefaultTabSizeChange:z,onBrowserChange:ee,onOpenThemeModal:te,onEditorIDEChange:ne,onLineDiffTypeChange:B,onLineWrapChange:V,onDiffIndicatorsChange:re,onShowLineNumbersChange:ie,onHunkSeparatorsChange:ae,onLineHoverHighlightChange:oe,onFontSizeChange:se,onHapticsChange:ce,onSoundsChange:H,onDensityChange:le,onAutoCollapseLineThresholdChange:ue,onRequireViewAllBeforeSendChange:U,onShowStatusBarChange:de,onIgnoreSpaceChange:fe,onIgnoreAllSpaceChange:pe,onOpenUiFontModal:he,onOpenMonoFontModal:ge,showSource:!_}),(0,G.jsx)(RH,{comments:we,totalFileCount:r,viewedFileCount:Te,requireViewAllBeforeSend:N,onEditComment:Ee,onDeleteComment:De,onSend:be,sending:Ce,agentWaiting:xe,waitingAgents:Se,onCopyComments:ve,onCopyMarkdown:ye})]})]})});function pW({overview:e,commits:t}){let[n,r]=(0,W.useState)(!1),i=e.commitSubjects.length>0,a=e.truncated>0,o=!!e.subtitle||a||i;return(0,G.jsxs)(`section`,{className:`diff-overview-banner`,"data-kind":e.kind,"aria-label":`Diff overview: ${e.headline}`,children:[(0,G.jsxs)(`header`,{className:`diff-overview-banner-header`,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-line`,children:[(0,G.jsx)(_W,{kind:e.kind}),(0,G.jsx)(`h2`,{className:`diff-overview-banner-headline`,children:e.headline})]}),o&&(0,G.jsxs)(`div`,{className:`diff-overview-banner-meta`,children:[e.subtitle&&(0,G.jsx)(`span`,{className:`diff-overview-banner-subtitle`,children:e.subtitle}),a&&(0,G.jsxs)(`span`,{className:`diff-overview-banner-truncated-badge`,title:`${e.truncated} additional ${e.truncated===1?`commit`:`commits`} not shown`,children:[`+`,e.truncated]}),i&&(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-details-toggle`,onClick:()=>r(e=>!e),"aria-expanded":n,"aria-controls":`diff-overview-banner-details`,children:[n?(0,G.jsx)(UD,{size:14}):(0,G.jsx)(GD,{size:14}),(0,G.jsx)(dO,{size:13,"aria-hidden":`true`}),(0,G.jsxs)(`span`,{children:[n?`Hide`:`Show`,` `,e.commitSubjects.length,` `,`commit`,e.commitSubjects.length===1?``:`s`]})]})]})]}),i&&n&&(0,G.jsx)(mW,{overview:e,commits:t,id:`diff-overview-banner-details`})]})}function mW({overview:e,commits:t,id:n}){return t&&t.length>0?(0,G.jsxs)(`ul`,{id:n,className:`diff-overview-banner-subjects`,children:[t.map((e,n)=>(0,G.jsx)(hW,{commit:e,index:n,total:t.length},e.sha)),e.truncated>0&&(0,G.jsxs)(`li`,{className:`diff-overview-banner-truncated`,role:`status`,children:[`+ `,e.truncated,` more commit`,e.truncated===1?``:`s`,` not shown`]})]}):(0,G.jsx)(`ul`,{id:n,className:`diff-overview-banner-subjects`,children:e.commitSubjects.map((t,n)=>{let r=n===0||n===e.commitSubjects.length-1;return(0,G.jsxs)(`li`,{className:`diff-overview-banner-subject-row`,children:[(0,G.jsx)(hO,{size:12,className:`diff-overview-banner-subject-icon`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`diff-overview-banner-subject-text`,children:t}),r&&e.fromDate&&e.toDate&&(0,G.jsx)(`span`,{className:`diff-overview-banner-subject-dates`,children:n===0?e.fromDate:e.toDate})]},`${n}-${t}`)})})}function hW({commit:e,index:t,total:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(!1),s=async()=>{try{await navigator.clipboard.writeText(e.sha),i(!0),setTimeout(()=>i(!1),1500)}catch{}},c=e.body.trim().length>0,l=e.parents.length>1,u=n>1?`Commit ${t+1} of ${n}: ${e.subject}`:`Commit: ${e.subject}`;return(0,G.jsxs)(`li`,{className:`diff-overview-banner-commit-row`,"aria-label":u,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-line`,children:[(0,G.jsx)(hO,{size:12,className:`diff-overview-banner-subject-icon`,"aria-hidden":`true`}),(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-commit-sha`,onClick:s,title:r?`Copied full SHA`:`Click to copy full SHA`,"aria-label":`Copy full SHA ${e.sha}`,children:[(0,G.jsx)(`span`,{children:e.shortSha}),r?(0,G.jsx)(HD,{size:12,"aria-hidden":`true`}):(0,G.jsx)(aO,{size:12,"aria-hidden":`true`})]}),l&&(0,G.jsx)(`span`,{className:`diff-overview-banner-merge-badge`,title:`Merge commit with ${e.parents.length} parents`,children:`merge`}),(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-subject`,children:e.subject})]}),(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-meta`,children:[(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-author`,children:[(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-author-name`,children:e.authorName}),(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-author-email`,children:[`<`,e.authorEmail,`>`]})]}),(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-date`,title:e.authorDate,children:gW(e.authorDate)}),e.committerName!==e.authorName||e.committerEmail!==e.authorEmail?(0,G.jsxs)(`span`,{className:`diff-overview-banner-commit-committer`,title:`Committed by ${e.committerName} <${e.committerEmail}> at ${e.committerDate}`,children:[(0,G.jsx)(`span`,{className:`diff-overview-banner-commit-committer-label`,children:`committed by`}),` `,(0,G.jsx)(`span`,{children:e.committerName})]}):null]}),c&&(0,G.jsxs)(`div`,{className:`diff-overview-banner-commit-body`,children:[(0,G.jsxs)(`button`,{type:`button`,className:`diff-overview-banner-commit-body-toggle`,onClick:()=>o(e=>!e),"aria-expanded":a,"aria-controls":`diff-overview-commit-body-${e.shortSha}`,children:[a?(0,G.jsx)(UD,{size:14}):(0,G.jsx)(GD,{size:14}),(0,G.jsx)(dO,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:a?`Hide message`:`Show message`})]}),a&&(0,G.jsx)(`pre`,{id:`diff-overview-commit-body-${e.shortSha}`,className:`diff-overview-banner-commit-body-pre`,children:e.body})]})]})}function gW(e){try{let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}catch{return e}}function _W({kind:e}){let t={size:14,className:`diff-overview-banner-icon`,"aria-hidden":!0};switch(e){case`working-tree`:case`staged-only`:return(0,G.jsx)(SO,{...t});case`range`:return(0,G.jsx)(mO,{...t});case`commit-single`:case`commit-series`:return(0,G.jsx)(hO,{...t});case`pr`:return(0,G.jsx)(vO,{...t})}}function vW(e,t){return JSON.stringify(e.overview)===JSON.stringify(t.overview)&&JSON.stringify(e.commits)===JSON.stringify(t.commits)}var yW=(0,W.memo)(pW,vW),bW=W.createContext(void 0);function xW(e){let t=W.useContext(bW);if(e===!1&&t===void 0)throw Error(j_(27));return t}var SW={...yT,...lT},CW=W.forwardRef(function(e,t){let{render:n,className:r,forceRender:i=!1,...a}=e,{store:o}=xW(),s=o.useState(`open`),c=o.useState(`nested`),l=o.useState(`mounted`),u=o.useState(`transitionStatus`);return tS(`div`,e,{state:W.useMemo(()=>({open:s,transitionStatus:u}),[s,u]),ref:[o.context.backdropRef,t],stateAttributesMapping:SW,props:[{role:`presentation`,hidden:!l,style:{userSelect:`none`,WebkitUserSelect:`none`}},a],enabled:i||!c})}),wW=function(e){return e.nestedDialogs=`--nested-dialogs`,e}({}),TW=function(e){return e[e.open=uT.open]=`open`,e[e.closed=uT.closed]=`closed`,e[e.startingStyle=uT.startingStyle]=`startingStyle`,e[e.endingStyle=uT.endingStyle]=`endingStyle`,e.nested=`data-nested`,e.nestedDialogOpen=`data-nested-dialog-open`,e}({}),EW=W.createContext(void 0);function DW(){let e=W.useContext(EW);if(e===void 0)throw Error(j_(26));return e}var OW={...yT,...lT,nestedDialogOpen(e){return e?{[TW.nestedDialogOpen]:``}:null}},kW=W.forwardRef(function(e,t){let{className:n,finalFocus:r,initialFocus:i,render:a,...o}=e,{store:s}=xW(),c=s.useState(`descriptionElementId`),l=s.useState(`disablePointerDismissal`),u=s.useState(`floatingRootContext`),d=s.useState(`popupProps`),f=s.useState(`modal`),p=s.useState(`mounted`),m=s.useState(`nested`),h=s.useState(`nestedOpenDialogCount`),g=s.useState(`open`),_=s.useState(`openMethod`),v=s.useState(`titleElementId`),y=s.useState(`transitionStatus`),b=s.useState(`role`);DW(),hw({open:g,ref:s.context.popupRef,onComplete(){g&&s.context.onOpenChangeComplete?.(!0)}});function x(e){return e===`touch`?s.context.popupRef.current:!0}let S=i===void 0?x:i,C=h>0,w=tS(`div`,e,{state:W.useMemo(()=>({open:g,nested:m,transitionStatus:y,nestedDialogOpen:C}),[g,m,y,C]),props:[d,{"aria-labelledby":v??void 0,"aria-describedby":c??void 0,role:b,tabIndex:-1,hidden:!p,onKeyDown(e){Kk.has(e.key)&&e.stopPropagation()},style:{[wW.nestedDialogs]:h}},o],ref:[t,s.context.popupRef,s.useStateSetter(`popupElement`)],stateAttributesMapping:OW});return(0,G.jsx)(xS,{context:u,openInteractionType:_,disabled:!p,closeOnFocusOut:!l,initialFocus:S,returnFocus:r,modal:f!==!1,restoreFocus:`popup`,children:w})}),AW=W.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=xW(),a=i.useState(`mounted`),o=i.useState(`modal`);return a||n?(0,G.jsx)(EW.Provider,{value:n,children:(0,G.jsxs)(uS,{ref:t,...r,children:[a&&o===!0&&(0,G.jsx)(Ik,{ref:i.context.internalBackdropRef,inert:ZT(!open)}),e.children]})}):null});function jW(e){let{store:t,parentContext:n,actionsRef:r}=e,i=t.useState(`open`),a=t.useState(`disablePointerDismissal`),o=t.useState(`modal`),s=t.useState(`popupElement`),{openMethod:c,triggerProps:l,reset:u}=Sk(i);vw(t);let{forceUnmount:d}=yw(i,t,()=>{u()}),f=X(e=>{let n=ox(e);return n.preventUnmountOnClose=()=>{t.set(`preventUnmountingOnClose`,!0)},n}),p=W.useCallback(()=>{t.setOpen(!1,f(ix))},[t,f]);W.useImperativeHandle(r,()=>({unmount:d,close:p}),[d,p]);let m=Ew({popupStore:t,onOpenChange:t.setOpen,treatPopupAsFloatingElement:!0,noEmit:!0}),[h,g]=W.useState(0),_=h===0,v=Xw(m),y=LC(m,{outsidePressEvent(){return t.context.internalBackdropRef.current||t.context.backdropRef.current?`intentional`:{mouse:o===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}},outsidePress(e){if(`button`in e&&e.button!==0||`touches`in e&&e.touches.length!==1)return!1;let n=zv(e);if(_&&!a){let e=n;return o&&(t.context.internalBackdropRef.current||t.context.backdropRef.current)?t.context.internalBackdropRef.current===e||t.context.backdropRef.current===e||Rv(e,s)&&!e?.hasAttribute(`data-base-ui-portal`):!0}return!1},escapeKey:_});hk(i&&o===!0,s);let{getReferenceProps:b,getFloatingProps:x,getTriggerProps:S}=zw([v,y]);t.useContextCallback(`onNestedDialogOpen`,e=>{g(e+1)}),t.useContextCallback(`onNestedDialogClose`,()=>{g(0)}),W.useEffect(()=>(n?.onNestedDialogOpen&&i&&n.onNestedDialogOpen(h),n?.onNestedDialogClose&&!i&&n.onNestedDialogClose(),()=>{n?.onNestedDialogClose&&i&&n.onNestedDialogClose()}),[i,n,h]);let C=W.useMemo(()=>b(l),[b,l]),w=W.useMemo(()=>S(l),[S,l]),T=W.useMemo(()=>x(),[x]);t.useSyncedValues({openMethod:c,activeTriggerProps:C,inactiveTriggerProps:w,popupProps:T,floatingRootContext:m,nestedOpenDialogCount:h})}var MW={...Cw,modal:Z(e=>e.modal),nested:Z(e=>e.nested),nestedOpenDialogCount:Z(e=>e.nestedOpenDialogCount),disablePointerDismissal:Z(e=>e.disablePointerDismissal),openMethod:Z(e=>e.openMethod),descriptionElementId:Z(e=>e.descriptionElementId),titleElementId:Z(e=>e.titleElementId),viewportElement:Z(e=>e.viewportElement),role:Z(e=>e.role)},NW=class extends uw{constructor(e){super(PW(e),{popupRef:W.createRef(),backdropRef:W.createRef(),internalBackdropRef:W.createRef(),triggerElements:new bw,onOpenChange:void 0,onOpenChangeComplete:void 0},MW)}setOpen=(e,t)=>{if(t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},!e&&t.trigger==null&&this.state.activeTriggerId!=null&&(t.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;let n={open:e,nativeEvent:t.event,reason:t.reason,nested:this.state.nested};this.state.floatingRootContext.context.events?.emit(`openchange`,n);let r={open:e},i=t.trigger?.id??null;(i||e)&&(r.activeTriggerId=i,r.activeTriggerElement=t.trigger??null),this.update(r)}};function PW(e={}){return{...Sw(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,role:`dialog`,...e}}function FW(e){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,disablePointerDismissal:o=!1,modal:s=!0,actionsRef:c,handle:l,triggerId:u,defaultTriggerId:d=null}=e,f=xW(!0),p=!!f,m=F_(()=>l?.store??new NW({open:n??r,activeTriggerId:u===void 0?d:u,modal:s,disablePointerDismissal:o,nested:p})).current;m.useControlledProp(`open`,n,r),m.useControlledProp(`activeTriggerId`,u,d),m.useSyncedValues({disablePointerDismissal:o,nested:p,modal:s}),m.useContextCallback(`onOpenChange`,i),m.useContextCallback(`onOpenChangeComplete`,a);let h=m.useState(`payload`);jW({store:m,actionsRef:c,parentContext:f?.store.context,onOpenChange:i,triggerIdProp:u});let g=W.useMemo(()=>({store:m}),[m]);return(0,G.jsx)(bW.Provider,{value:g,children:typeof t==`function`?t({payload:h}):t})}function IW({open:e,onClose:t,className:n,ariaLabel:r,initialFocus:i,onKeyDown:a,children:o}){return(0,G.jsx)(FW,{open:e,onOpenChange:e=>{e||t()},children:(0,G.jsxs)(AW,{children:[(0,G.jsx)(CW,{className:`ui-modal-backdrop`}),(0,G.jsx)(kW,{className:`ui-modal-popup ${n??``}`,"aria-label":r,initialFocus:i,onKeyDown:a,children:o})]})})}async function LW(e,t){let n=await fetch(`/api/file-text?path=${encodeURIComponent(e)}&version=${t}`);if(!n.ok){if(n.status===404)return null;throw Error(`HTTP ${n.status} fetching ${t} ${e}`)}let r=await n.json();if(r.missing)return null;if(r.error)throw Error(r.error);return r.content??``}function RW(e,t,n=e){let[r,i]=(0,W.useState)({loading:!1,error:null,oldContent:null,newContent:null});return(0,W.useEffect)(()=>{if(!t||!e)return;let r=!1;return i(e=>({...e,loading:!0,error:null})),Promise.all([LW(n,`old`),LW(e,`new`)]).then(([e,t])=>{r||i({loading:!1,error:null,oldContent:e,newContent:t})}).catch(e=>{r||i({loading:!1,error:e.message,oldContent:null,newContent:null})}),()=>{r=!0}},[e,n,t]),r}var zW=`diffing-draft-`,BW=10080*60*1e3;function VW(...e){return zW+e.join(`:`)}function HW(...e){try{let t=CD(VW(...e));if(!t)return null;let n=JSON.parse(t);return Date.now()-n.timestamp>BW?(OD(VW(...e)),null):n.body}catch{return null}}var UW={};function WW(e,...t){let n=VW(...t);UW[n]&&clearTimeout(UW[n]),UW[n]=setTimeout(()=>{GW(e,...t),delete UW[n]},500)}function GW(e,...t){let n=VW(...t);try{e.trim()?DD(n,JSON.stringify({body:e,timestamp:Date.now()})):OD(n)}catch{}}function KW(...e){try{OD(VW(...e))}catch{}}function qW(e){return e.replace(/@([^\s@]+)/g,(e,t)=>`[${t.split(`/`).pop()||t}](file-mention://${t})`)}var JW=[{value:`none`,label:`None`,hint:`Untriaged`,icon:(0,G.jsx)(IO,{size:13})},{value:`blocking`,label:`Blocking`,hint:`Must fix before merge`,icon:(0,G.jsx)(zO,{size:13})},{value:`nit`,label:`Nit`,hint:`Optional polish`,icon:(0,G.jsx)(YD,{size:13})},{value:`question`,label:`Question`,hint:`Needs an answer`,icon:(0,G.jsx)(ZD,{size:13})},{value:`praise`,label:`Praise`,hint:`No change required`,icon:(0,G.jsx)($O,{size:13})}];function YW({value:e,onChange:t}){let n=JW.find(t=>t.value===e)??JW[0];return(0,G.jsxs)(yU,{value:e,onValueChange:e=>t(e),modal:!1,children:[(0,G.jsxs)(CU,{className:`ui-select-trigger comment-severity-trigger comment-severity-trigger-${e}`,"aria-label":`Comment severity`,"data-severity":e,children:[(0,G.jsxs)(`span`,{className:`comment-severity-trigger-inner`,children:[(0,G.jsx)(`span`,{className:`comment-severity-icon`,"data-severity":e,"aria-hidden":`true`,children:n.icon}),(0,G.jsx)(TU,{children:e=>JW.find(t=>t.value===e)?.label??e})]}),(0,G.jsx)(EU,{className:`ui-select-icon`,children:(0,G.jsx)(KD,{size:12})})]}),(0,G.jsx)(OU,{children:(0,G.jsx)(BU,{className:`ui-select-positioner comment-severity-positioner`,sideOffset:4,align:`start`,side:`top`,alignItemWithTrigger:!1,children:(0,G.jsx)(GU,{className:`ui-select-popup comment-severity-popup`,"aria-label":`Severity`,children:JW.map(e=>(0,G.jsxs)(XU,{value:e.value,className:`ui-select-item comment-severity-item comment-severity-item-${e.value}`,children:[(0,G.jsxs)(`span`,{className:`comment-severity-item-main`,children:[(0,G.jsx)(`span`,{className:`comment-severity-icon`,"data-severity":e.value,"aria-hidden":`true`,children:e.icon}),(0,G.jsxs)(`span`,{className:`comment-severity-item-text`,children:[(0,G.jsx)($U,{className:`comment-severity-item-label`,children:e.label}),(0,G.jsx)(`span`,{className:`comment-severity-item-hint`,children:e.hint})]})]}),(0,G.jsx)(ZU,{className:`ui-select-indicator`,children:(0,G.jsx)(HD,{size:13})})]},e.value))})})})]})}function XW({initialBody:e,lineContent:t,lineLabel:n,range:r,onAdjustStart:i,onAdjustEnd:a,draftKey:o,onSubmit:s,onCancel:c,showSeverity:l=!0}){let{haptic:u,sound:d}=pD(),{settings:f,updateSettings:p}=IE(),m=f.savedReplies??[],[h,g]=(0,W.useState)(()=>{if(o){let e=HW(o);if(e)return e}return e||``}),[_,v]=(0,W.useState)(`none`),[y,b]=(0,W.useState)(`write`),[x,S]=(0,W.useState)(!1),C=(0,W.useRef)(null),w=(0,W.useRef)(null),T=_H(h,g),E=e=>{g(t=>t.trim()?`${t.trimEnd()}\n\n${e.body}`:e.body),S(!1),b(`write`),requestAnimationFrame(()=>C.current?.focus())},D=()=>{let e=h.trim();if(!e)return;let t=window.prompt(`Template title`,e.slice(0,40))?.trim();t&&p({savedReplies:[...m,{id:crypto.randomUUID(),title:t,body:e}]})};(0,W.useEffect)(()=>{y===`write`?C.current?.focus():w.current?.focus()},[y]),(0,W.useEffect)(()=>{o&&WW(h,o)},[h,o]);let O=()=>{let e=h.trim();e&&(o&&KW(o),u(`success`),d(`success`),s(e,_===`none`?void 0:_))},k=()=>{if(!t)return;let e=`\`\`\`suggestion\n${t.split(`
1934
1934
  `).map(e=>e.replace(/^[+\- ]/,``)).join(`
1935
1935
  `)}\n\`\`\`\n`;g(t=>t.trim()?t.includes("```suggestion")?t:`${t.trimEnd()}\n\n${e}`:e),b(`write`),requestAnimationFrame(()=>C.current?.focus())},A=e=>{if(!T.handleKeyDown(e)&&(e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),O()),e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),b(e=>e===`write`?`preview`:`write`)),e.key===`Escape`)){if(h.includes(`
1936
1936
  `))return;c()}},j=async e=>{let t=e.clipboardData.items,n=null;for(let e=0;e<t.length;e++){let r=t[e];if(r.kind===`file`&&r.type.startsWith(`image/`)){n=r.getAsFile();break}}if(!n)return;e.preventDefault();let r=C.current;if(!r)return;let i=r.selectionStart,a=r.selectionEnd,o=Math.random().toString(36).slice(2,8),s=`![Uploading image… ${o}]()`,c=r.value;g(c.slice(0,i)+s+c.slice(a));try{let e=new FormData;e.append(`file`,n,n.name||`pasted-${o}.png`);let t=await fetch(`/api/attachments`,{method:`POST`,body:e});if(!t.ok)throw Error(`HTTP ${t.status}`);let r=await t.json();if(!r.url)throw Error(r.error||`Upload failed`);let i=`![pasted image](${r.url})`;g(e=>e.replace(s,i))}catch(e){console.error(`Image upload failed:`,e),g(e=>e.replace(s,`![upload failed]()`))}},M=!!(r&&i&&a),N=r?Math.abs(r.end-r.start)+1:0,P=M&&(r.canAdjustStart?.(-1)??!0),F=M&&(r.canAdjustStart?.(1)??!0),I=M&&(r.canAdjustEnd?.(-1)??!0),L=M&&(r.canAdjustEnd?.(1)??!0),R=e=>{e.preventDefault()};return(0,G.jsxs)(`div`,{className:`comment-form`,style:{padding:`16px`},role:`form`,"aria-label":`Comment form`,children:[M&&r?(0,G.jsxs)(`div`,{className:`comment-form-range`,"aria-live":`polite`,children:[(0,G.jsx)(`span`,{className:`comment-form-range-prefix`,children:`Commenting on`}),(0,G.jsxs)(`div`,{className:`comment-form-range-controls`,role:`group`,"aria-label":`Comment line range`,children:[(0,G.jsxs)(`div`,{className:`comment-form-range-edge`,"aria-label":`Range start`,children:[(0,G.jsx)(`button`,{type:`button`,className:`comment-form-range-btn`,"aria-label":`Expand range upward`,title:`Expand range upward`,disabled:!P,onMouseDown:R,onClick:()=>i(-1),children:`−`}),(0,G.jsxs)(`span`,{className:`comment-form-range-num`,"aria-label":`Start line ${r.start}`,children:[`L`,r.start]}),(0,G.jsx)(`button`,{type:`button`,className:`comment-form-range-btn`,"aria-label":`Shrink range from top`,title:`Shrink range from top`,disabled:!F,onMouseDown:R,onClick:()=>i(1),children:`+`})]}),(0,G.jsx)(`span`,{className:`comment-form-range-sep`,"aria-hidden":`true`,children:`–`}),(0,G.jsxs)(`div`,{className:`comment-form-range-edge`,"aria-label":`Range end`,children:[(0,G.jsx)(`button`,{type:`button`,className:`comment-form-range-btn`,"aria-label":`Shrink range from bottom`,title:`Shrink range from bottom`,disabled:!I,onMouseDown:R,onClick:()=>a(-1),children:`−`}),(0,G.jsxs)(`span`,{className:`comment-form-range-num`,"aria-label":`End line ${r.end}`,children:[`L`,r.end]}),(0,G.jsx)(`button`,{type:`button`,className:`comment-form-range-btn`,"aria-label":`Expand range downward`,title:`Expand range downward`,disabled:!L,onMouseDown:R,onClick:()=>a(1),children:`+`})]})]}),(0,G.jsxs)(`span`,{className:`comment-form-range-meta`,children:[(0,G.jsx)(`span`,{className:`comment-form-range-side`,children:r.sideLabel}),(0,G.jsxs)(`span`,{className:`comment-form-range-count`,children:[N,` line`,N===1?``:`s`]})]})]}):n?(0,G.jsxs)(`div`,{className:`comment-form-line-label`,"aria-live":`polite`,children:[`Commenting on `,(0,G.jsx)(`strong`,{children:n})]}):null,(0,G.jsxs)(`div`,{className:`comment-form-tabs`,role:`tablist`,"aria-label":`Comment form mode`,children:[(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":y===`write`,"aria-controls":`comment-write-panel`,onClick:()=>b(`write`),onKeyDown:e=>{e.key===`ArrowRight`&&(e.preventDefault(),b(`preview`))},className:`comment-form-tab-btn ${y===`write`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Write`}),(0,G.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":y===`preview`,"aria-controls":`comment-preview-panel`,onClick:()=>b(`preview`),onKeyDown:e=>{e.key===`ArrowLeft`&&(e.preventDefault(),b(`write`))},className:`comment-form-tab-btn ${y===`preview`?`comment-form-tab-btn-active`:`comment-form-tab-btn-inactive`}`,children:`Preview`})]}),y===`write`?(0,G.jsxs)(`div`,{style:{position:`relative`},children:[(0,G.jsxs)(`div`,{className:`comment-form-suggest-row`,children:[m.length>0&&(0,G.jsxs)(`div`,{className:`comment-form-saved-replies`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm comment-form-suggest-btn`,onClick:()=>S(e=>!e),"aria-expanded":x,title:`Insert a saved reply template`,children:`Saved replies`}),x&&(0,G.jsx)(`ul`,{className:`comment-form-saved-list`,role:`listbox`,children:m.map(e=>(0,G.jsxs)(`li`,{children:[(0,G.jsx)(`button`,{type:`button`,onClick:()=>E(e),role:`option`,children:e.title}),(0,G.jsx)(`button`,{type:`button`,className:`comment-form-saved-delete`,"aria-label":`Delete template ${e.title}`,onClick:()=>p({savedReplies:m.filter(t=>t.id!==e.id)}),children:`×`})]},e.id))})]}),h.trim()&&(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm comment-form-suggest-btn`,onClick:D,title:`Save current body as a reusable template`,children:`Save template`}),t?(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm comment-form-suggest-btn`,onClick:k,title:"Insert a ```suggestion block pre-filled with the selected line(s)",children:`Suggest change`}):null]}),(0,G.jsx)(`textarea`,{id:`comment-write-panel`,ref:e=>{C.current=e,T.setTextareaRef(e)},value:h,onChange:e=>g(e.target.value),onKeyDown:A,onPaste:j,placeholder:`Leave a review comment (supports Markdown and Pasting Clipboard Images)...`,rows:4,"aria-label":`Comment body`,style:{minHeight:`100px`}}),T.isOpen&&(0,G.jsx)(SH,{results:T.results,focusedIndex:T.focusedIndex,query:T.query,cursorTop:T.cursorTop,onSelect:T.onSelect,onHover:T.setFocusedIndex})]}):(0,G.jsxs)(`div`,{id:`comment-preview-panel`,ref:w,role:`tabpanel`,"aria-label":`Preview`,tabIndex:0,onKeyDown:e=>{e.key===`p`&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(e.preventDefault(),b(`write`))},style:{display:`flex`,flexDirection:`column`,gap:`12px`},children:[(()=>{let e=!!h.match(/```suggestion\n([\s\S]*?)```/);return h.replace(/```suggestion\n([\s\S]*?)```/g,``).trim().length>0||!e?(0,G.jsx)(`div`,{className:`comment-preview markdown-body`,style:{minHeight:`100px`,padding:`12px 16px`,border:`1px solid var(--border-normal)`,borderRadius:`var(--radius-md)`,background:`var(--bg-primary)`,fontSize:`14px`,lineHeight:1.6,color:`var(--text-primary)`,overflowY:`auto`,whiteSpace:`pre-wrap`,wordBreak:`break-word`,overflowWrap:`break-word`},children:h.trim()?(0,G.jsx)(hH,{content:qW(h)}):(0,G.jsx)(`span`,{style:{color:`var(--text-muted)`,fontStyle:`italic`},children:`Nothing to preview`})}):null})(),(()=>{let e=h.match(/```suggestion\n([\s\S]*?)```/),n=!!e,r=e?e[1].trimEnd():``;return n?(0,G.jsxs)(`div`,{className:`suggestion-card`,style:{border:`1px solid var(--border-normal)`,borderRadius:`var(--radius-md)`,overflow:`hidden`,background:`var(--bg-primary)`,boxShadow:`var(--shadow-sm)`},children:[(0,G.jsx)(`div`,{className:`suggestion-header`,style:{padding:`8px 12px`,background:`var(--bg-secondary)`,borderBottom:`1px solid var(--border-normal)`,display:`flex`,alignItems:`center`,justifyContent:`space-between`,fontSize:`12px`,fontWeight:600},children:(0,G.jsx)(`span`,{style:{color:`var(--text-secondary)`},children:`Suggested Change Preview`})}),(0,G.jsxs)(`div`,{className:`suggestion-diff`,style:{display:`flex`,flexDirection:`column`,fontSize:`12px`,fontFamily:`var(--font-mono)`,overflowX:`auto`},children:[t&&(0,G.jsxs)(`div`,{style:{display:`flex`,padding:`8px 12px`,background:`var(--feedback-danger-bg)`,borderBottom:`1px dashed var(--border-color)`,color:`var(--feedback-danger-text)`,minWidth:`max-content`},children:[(0,G.jsx)(`span`,{style:{width:`20px`,userSelect:`none`,opacity:.5},children:`-`}),(0,G.jsx)(`span`,{style:{whiteSpace:`pre`},children:t})]}),(0,G.jsxs)(`div`,{style:{display:`flex`,padding:`8px 12px`,background:`var(--feedback-success-bg)`,color:`var(--feedback-success-text)`,minWidth:`max-content`},children:[(0,G.jsx)(`span`,{style:{width:`20px`,userSelect:`none`,opacity:.5},children:`+`}),(0,G.jsx)(`span`,{style:{whiteSpace:`pre`},children:r})]})]})]}):null})()]}),(0,G.jsxs)(`div`,{className:`comment-form-actions`,children:[l&&(0,G.jsxs)(`div`,{className:`comment-form-severity`,"data-severity":_,children:[(0,G.jsx)(`span`,{className:`comment-form-severity-label`,children:`Severity`}),(0,G.jsx)(YW,{value:_,onChange:v})]}),(0,G.jsxs)(`div`,{className:`comment-form-actions-right`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-secondary btn-sm`,onClick:c,children:`Cancel`}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-primary btn-sm`,onClick:O,disabled:!h.trim(),children:e?`Save`:`Comment`})]})]})]})}function ZW({role:e,size:t=16}){return e===`agent`?(0,G.jsx)(`div`,{className:`comment-avatar-circle comment-avatar-agent`,style:{width:`${t*2}px`,height:`${t*2}px`},children:(0,G.jsx)(BD,{size:t,"aria-hidden":`true`})}):(0,G.jsx)(`div`,{className:`comment-avatar-circle comment-avatar-user`,style:{width:`${t*2}px`,height:`${t*2}px`},children:(0,G.jsx)(ok,{size:t,"aria-hidden":`true`})})}function QW({comment:e,onDelete:t}){let[,n]=(0,W.useState)(0),{resolveComment:r,unresolveComment:i,addReply:a,removeReply:o,editReply:s,applySuggestion:c,editComment:l}=xE(),u=e.status===`resolved`,[d,f]=(0,W.useState)(u),[p,m]=(0,W.useState)(!1),[h,g]=(0,W.useState)(!1),[_,v]=(0,W.useState)(!1),[y,b]=(0,W.useState)(null),x=(0,W.useRef)(null),S=e.body.replace(/```suggestion\n([\s\S]*?)```/g,``).trim().length>0,C=e.body.replace(/\s+/g,` `).trim().slice(0,72),w=e.replies?.length??0;(0,W.useEffect)(()=>{e.status===`resolved`&&f(!0)},[e.status]),(0,W.useEffect)(()=>{let e=setInterval(()=>n(e=>e+1),3e4);return()=>clearInterval(e)},[]);let T=()=>r(e.id),E=()=>i(e.id),D=e=>{b(e)},O=t=>{o(e.id,t)},k=(0,G.jsxs)(G.Fragment,{children:[e.lineNumber===0&&(0,G.jsx)(`span`,{className:`comment-file-chip`,children:`File`}),e.outdated&&(0,G.jsxs)(`span`,{className:`comment-outdated-badge`,title:`Anchored code no longer matches the live diff`,children:[(0,G.jsx)(rk,{size:10}),` outdated`]}),e.severity&&e.severity!==`none`&&(0,G.jsx)(`span`,{className:`comment-severity-badge`,"data-severity":e.severity,children:e.severity}),e.startLineNumber&&e.startLineNumber!==e.lineNumber&&(0,G.jsxs)(`span`,{className:`comment-range-chip`,children:[`L`,e.startLineNumber,`–`,e.lineNumber]}),e.lineNumber>0&&!(e.startLineNumber&&e.startLineNumber!==e.lineNumber)&&(0,G.jsxs)(`span`,{className:`comment-range-chip`,children:[`L`,e.lineNumber]})]});return d&&!h?(0,G.jsxs)(`div`,{className:`comment-collapsed-bar ${u?`comment-collapsed-bar-resolved`:``}`,id:`comment-${e.id}`,role:`article`,children:[(0,G.jsx)(`button`,{type:`button`,className:`comment-collapsed-toggle`,onClick:()=>f(!1),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),f(!1))},"aria-expanded":!1,"aria-label":u?`Show resolved conversation`:`Expand comment thread`,title:`Expand`,children:(0,G.jsx)(GD,{size:14,"aria-hidden":`true`})}),(0,G.jsxs)(`div`,{className:`comment-collapsed-main`,children:[u?(0,G.jsx)(JD,{size:14,className:`comment-collapsed-resolved-icon`,"aria-hidden":`true`}):(0,G.jsx)(ZW,{role:`user`,size:11}),(0,G.jsx)(`span`,{className:`comment-collapsed-label`,children:u?`Resolved`:`User`}),k,(0,G.jsxs)(`span`,{className:`comment-collapsed-preview`,title:e.body,children:[C,e.body.length>72?`…`:``]}),(0,G.jsx)(`span`,{className:`comment-collapsed-meta`,children:w>0?`${w+1} comments`:`1 comment`})]}),(0,G.jsx)(`button`,{type:`button`,className:`comment-collapsed-expand-btn`,onClick:()=>f(!1),"aria-label":u?`Show resolved conversation`:`Expand comment thread`,children:`Expand`})]}):h?(0,G.jsx)(`div`,{className:`comment-bubble-canvas`,id:`comment-${e.id}`,role:`article`,"aria-label":`Edit comment`,children:(0,G.jsxs)(`div`,{className:`comment-node`,children:[(0,G.jsx)(`div`,{className:`comment-avatar-col`,children:(0,G.jsx)(ZW,{role:`user`,size:16})}),(0,G.jsxs)(`div`,{className:`comment-content-col`,children:[(0,G.jsxs)(`div`,{className:`comment-node-header`,children:[(0,G.jsx)(`span`,{className:`comment-node-author`,children:`User`}),(0,G.jsx)(`span`,{className:`comment-node-badge comment-node-badge-user`,children:`User`}),(0,G.jsxs)(`span`,{className:`comment-node-time`,style:{display:`flex`,alignItems:`center`,gap:`8px`,flexWrap:`wrap`},children:[eE(e.createdAt),e.lineNumber===0&&(0,G.jsx)(`span`,{style:{padding:`1px 5px`,background:`var(--accent-subtle)`,border:`1px solid var(--primary)`,borderRadius:`var(--radius-sm)`,fontSize:`10px`,fontWeight:700,color:`var(--primary)`,textTransform:`uppercase`,letterSpacing:`0.5px`},children:`File Comment`}),e.outdated&&(0,G.jsxs)(`span`,{className:`comment-outdated-badge`,title:`Anchored code no longer matches the live diff`,children:[(0,G.jsx)(rk,{size:10}),` outdated`]}),e.severity&&e.severity!==`none`&&(0,G.jsx)(`span`,{className:`comment-severity-badge`,"data-severity":e.severity,children:e.severity}),e.startLineNumber&&e.startLineNumber!==e.lineNumber&&(0,G.jsxs)(`span`,{style:{padding:`1px 5px`,background:`var(--bg-primary)`,border:`1px solid var(--border-color)`,borderRadius:`var(--radius-sm)`,fontSize:`10px`,fontWeight:600,fontFamily:`var(--font-mono)`,color:`var(--text-secondary)`},children:[`L`,e.startLineNumber,`–`,e.lineNumber]})]})]}),(0,G.jsx)(`div`,{style:{marginTop:`8px`},children:(0,G.jsx)(XW,{draftKey:`edit:${e.id}`,initialBody:e.body,lineContent:e.lineContent,onSubmit:t=>{l(e.id,t),g(!1)},onCancel:()=>g(!1)})})]})]})}):(0,G.jsxs)(`div`,{className:`comment-bubble-canvas ${u?`comment-bubble-canvas-resolved`:``}`,id:`comment-${e.id}`,role:`article`,"aria-label":e.lineNumber===0?`File-level comment`:`Comment by user on line ${e.lineNumber}`,children:[(0,G.jsxs)(`div`,{className:`comment-node ${u?`comment-node-resolved`:``}`,children:[(0,G.jsx)(`div`,{className:`comment-avatar-col`,children:(0,G.jsx)(ZW,{role:`user`,size:16})}),(0,G.jsxs)(`div`,{className:`comment-content-col`,children:[(0,G.jsxs)(`div`,{className:`comment-node-header`,children:[(0,G.jsx)(`button`,{type:`button`,className:`comment-collapse-btn`,onClick:()=>f(!0),"aria-expanded":!0,"aria-label":`Collapse comment thread`,title:`Collapse`,children:(0,G.jsx)(UD,{size:14,"aria-hidden":`true`})}),(0,G.jsx)(`span`,{className:`comment-node-author`,children:`User`}),(0,G.jsx)(`span`,{className:`comment-node-badge comment-node-badge-user`,children:`User`}),(0,G.jsxs)(`span`,{className:`comment-node-time`,style:{display:`flex`,alignItems:`center`,gap:`8px`,flexWrap:`wrap`},children:[eE(e.createdAt),e.lineNumber===0&&(0,G.jsx)(`span`,{style:{padding:`1px 5px`,background:`var(--accent-subtle)`,border:`1px solid var(--primary)`,borderRadius:`var(--radius-sm)`,fontSize:`10px`,fontWeight:700,color:`var(--primary)`,textTransform:`uppercase`,letterSpacing:`0.5px`},children:`File Comment`}),e.startLineNumber&&e.startLineNumber!==e.lineNumber&&(0,G.jsxs)(`span`,{style:{padding:`1px 5px`,background:`var(--bg-primary)`,border:`1px solid var(--border-color)`,borderRadius:`var(--radius-sm)`,fontSize:`10px`,fontWeight:600,fontFamily:`var(--font-mono)`,color:`var(--text-secondary)`},children:[`L`,e.startLineNumber,`–`,e.lineNumber]})]}),u&&(0,G.jsxs)(`span`,{className:`comment-canvas-resolved-banner`,style:{marginLeft:`8px`},children:[(0,G.jsx)(JD,{size:13}),`Resolved`]}),!u&&(0,G.jsxs)(`div`,{className:`comment-node-actions`,children:[(0,G.jsx)(`button`,{ref:x,className:`comment-node-btn`,onClick:()=>g(!0),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),g(!0))},title:`Edit comment`,"aria-label":`Edit comment`,tabIndex:0,children:(0,G.jsx)(WO,{size:13,"aria-hidden":`true`})}),_?(0,G.jsxs)(`div`,{className:`comment-delete-confirm`,style:{display:`flex`,alignItems:`center`,gap:`4px`},children:[(0,G.jsxs)(`button`,{className:`comment-node-btn comment-node-btn-delete`,onClick:()=>t(e.id),title:`Confirm delete`,"aria-label":`Confirm delete comment`,style:{color:`var(--danger)`,background:`var(--feedback-danger-bg)`,fontWeight:600,fontSize:`11px`,borderRadius:`var(--radius-sm)`,border:`1px solid var(--feedback-danger-border)`,padding:`2px 6px`,cursor:`pointer`,display:`flex`,alignItems:`center`,gap:`2px`,width:`auto`,height:`auto`},children:[(0,G.jsx)(rk,{size:11}),`Delete?`]}),(0,G.jsx)(`button`,{className:`comment-node-btn`,onClick:()=>v(!1),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),v(!1))},title:`Cancel delete`,"aria-label":`Cancel delete`,style:{fontSize:`11px`,padding:`2px 6px`,width:`auto`,height:`auto`},children:`Cancel`})]}):(0,G.jsx)(`button`,{className:`comment-node-btn comment-node-btn-delete`,onClick:()=>v(!0),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),v(!0))},title:`Delete comment`,"aria-label":`Delete comment`,tabIndex:0,children:(0,G.jsx)(nk,{size:13,"aria-hidden":`true`})})]})]}),S&&(0,G.jsx)(hH,{content:e.body,className:`comment-node-body markdown-body ${u?`comment-resolved-line`:``}`}),(()=>{let t=e.body.match(/```suggestion\n([\s\S]*?)```/),n=!!t&&e.side===`additions`,r=t?t[1].trimEnd():``;return n?(0,G.jsxs)(`div`,{className:`suggestion-card`,style:{marginTop:`12px`,marginBottom:`4px`,border:`1px solid var(--border-normal)`,borderRadius:`var(--radius-md)`,overflow:`hidden`,background:`var(--bg-primary)`,boxShadow:`var(--shadow-sm)`},children:[(0,G.jsxs)(`div`,{className:`suggestion-header`,style:{padding:`8px 12px`,background:`var(--bg-secondary)`,borderBottom:`1px solid var(--border-normal)`,display:`flex`,alignItems:`center`,justifyContent:`space-between`,fontSize:`12px`,fontWeight:600},children:[(0,G.jsx)(`span`,{style:{color:`var(--text-secondary)`},children:`Suggested Change`}),u?(0,G.jsxs)(`span`,{style:{color:`var(--feedback-success-text)`,display:`inline-flex`,alignItems:`center`,gap:`4px`},children:[(0,G.jsx)(JD,{size:12}),` Applied`]}):(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:async()=>{try{await c(e.id)}catch(e){alert(e.message)}},style:{fontSize:`11px`,padding:`2px 8px`,borderRadius:`var(--radius-sm)`,height:`24px`},children:`Apply Suggestion`})]}),(0,G.jsxs)(`div`,{className:`suggestion-diff`,style:{display:`flex`,flexDirection:`column`,fontSize:`12px`,fontFamily:`var(--font-mono)`,overflowX:`auto`},children:[(0,G.jsxs)(`div`,{style:{display:`flex`,padding:`8px 12px`,background:`var(--feedback-danger-bg)`,borderBottom:`1px dashed var(--border-color)`,color:`var(--feedback-danger-text)`,minWidth:`max-content`},children:[(0,G.jsx)(`span`,{style:{width:`20px`,userSelect:`none`,opacity:.5},children:`-`}),(0,G.jsx)(`span`,{style:{whiteSpace:`pre`},children:e.lineContent})]}),(0,G.jsxs)(`div`,{style:{display:`flex`,padding:`8px 12px`,background:`var(--feedback-success-bg)`,color:`var(--feedback-success-text)`,minWidth:`max-content`},children:[(0,G.jsx)(`span`,{style:{width:`20px`,userSelect:`none`,opacity:.5},children:`+`}),(0,G.jsx)(`span`,{style:{whiteSpace:`pre`},children:r})]})]})]}):null})()]})]}),e.replies?.length>0&&(0,G.jsx)(`div`,{className:`comment-replies`,role:`list`,"aria-label":`Replies`,children:e.replies.map((t,n)=>{let r=t.role===`agent`,i=y===t.id;return(0,G.jsxs)(`div`,{className:`comment-node ${r?`comment-node-agent`:`comment-node-user`} ${u?`comment-node-resolved`:``}`,role:`listitem`,"aria-label":`${r?`Agent`:`User`} reply ${n+1}`,children:[(0,G.jsx)(`div`,{className:`comment-avatar-col`,children:(0,G.jsx)(ZW,{role:r?`agent`:`user`,size:14})}),(0,G.jsxs)(`div`,{className:`comment-content-col`,children:[(0,G.jsxs)(`div`,{className:`comment-node-header`,children:[(0,G.jsx)(`span`,{className:`comment-node-author`,children:r?`Agent`:`User`}),(0,G.jsx)(`span`,{className:`comment-node-badge ${r?`comment-node-badge-agent`:`comment-node-badge-user`}`,children:r?`Agent`:`User`}),r&&t.model&&(0,G.jsx)(`span`,{style:{fontSize:`10px`,fontWeight:600,padding:`1px 5px`,borderRadius:`4px`,background:`var(--bg-tertiary)`,color:`var(--text-secondary)`,fontFamily:`var(--font-mono)`},children:t.model}),(0,G.jsx)(`span`,{className:`comment-node-time`,children:eE(t.createdAt)}),!u&&(0,G.jsxs)(`div`,{className:`comment-node-actions`,children:[(0,G.jsx)(`button`,{className:`comment-node-btn`,onClick:()=>D(t.id),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),D(t.id))},title:`Edit reply`,"aria-label":`Edit reply`,tabIndex:0,children:(0,G.jsx)(WO,{size:12,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`comment-node-btn comment-node-btn-delete`,onClick:()=>O(t.id),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),O(t.id))},title:`Delete reply`,"aria-label":`Delete reply`,tabIndex:0,children:(0,G.jsx)(nk,{size:12,"aria-hidden":`true`})})]})]}),i?(0,G.jsx)(`div`,{style:{background:`var(--bg-secondary)`,borderRadius:`var(--radius-md)`,border:`1px solid var(--border-color)`,marginTop:`6px`},children:(0,G.jsx)(XW,{draftKey:`reply-edit:${e.id}:${t.id}`,initialBody:t.body,onSubmit:n=>{s(e.id,t.id,n),b(null)},onCancel:()=>b(null)})}):(0,G.jsx)(hH,{content:t.body,className:`comment-node-body markdown-body`})]})]},t.id)})}),(0,G.jsxs)(`div`,{className:`comment-canvas-footer`,children:[!p&&(0,G.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,G.jsxs)(`button`,{onClick:()=>m(!0),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),m(!0))},className:`comment-reply-trigger`,"aria-label":`Write a reply`,tabIndex:0,style:{width:`100%`,maxWidth:`320px`},children:[(0,G.jsx)(qO,{size:14,"aria-hidden":`true`}),`Reply...`]}),u?(0,G.jsxs)(`div`,{style:{display:`flex`,gap:`6px`,marginLeft:`12px`},children:[(0,G.jsx)(`button`,{className:`btn btn-secondary btn-sm`,onClick:()=>f(!0),style:{fontSize:`12px`,padding:`4px 10px`},"aria-label":`Hide resolved conversation`,children:`Hide`}),(0,G.jsx)(`button`,{className:`btn btn-secondary btn-sm`,onClick:E,style:{fontSize:`12px`,padding:`4px 10px`},"aria-label":`Unresolve conversation`,children:`Unresolve`})]}):(0,G.jsx)(`button`,{className:`btn btn-secondary btn-sm`,onClick:T,style:{fontSize:`12px`,padding:`4px 10px`,marginLeft:`12px`},"aria-label":`Resolve conversation`,children:`Resolve conversation`})]}),p&&(0,G.jsx)(`div`,{style:{background:`var(--bg-secondary)`,borderRadius:`var(--radius-md)`,border:`1px solid var(--border-color)`,marginTop:`4px`},children:(0,G.jsx)(XW,{draftKey:`reply:${e.id}`,onSubmit:t=>{a(e.id,t),m(!1)},onCancel:()=>{m(!1),x.current?.focus()}})})]})]})}function $W({comment:e,lineContent:t,onReply:n,onEdit:r,onDelete:i,onSetResolved:a}){let[o,s]=(0,W.useState)(!1),[c,l]=(0,W.useState)(!1),[u,d]=(0,W.useState)(``),[f,p]=(0,W.useState)(!1),[m,h]=(0,W.useState)(null),[g,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(e.body),[b,x]=(0,W.useState)(!1);(0,W.useEffect)(()=>{g||y(e.body)},[e.body,g]);let S=e.state?{APPROVED:{icon:JD,label:`Approved`,cls:`badge-approved`},CHANGES_REQUESTED:{icon:rk,label:`Changes requested`,cls:`badge-changes`},COMMENTED:{icon:AO,label:`Commented`,cls:`badge-commented`},PENDING:{icon:AO,label:`Pending`,cls:`badge-pending`},DISMISSED:{icon:rk,label:`Dismissed`,cls:`badge-dismissed`}}[e.state]:null,C=eG(e.body),w=async()=>{let t=u.trim();if(!(!t||!n)){p(!0),h(null);try{await n(e.id,t),d(``),l(!1),s(!0)}catch(e){h(e?.message??`Failed to reply`)}finally{p(!1)}}},T=async e=>{x(!0),h(null);try{await e()}catch(e){throw h(e?.message??`GitHub update failed`),e}finally{x(!1)}},E=async()=>{let t=v.trim();if(!(!t||!r))try{await T(()=>r(e.id,t)),_(!1)}catch{}};return(0,G.jsxs)(`div`,{className:`pr-existing-bubble ${e.isResolved?`is-resolved`:``}`,children:[(0,G.jsxs)(`div`,{className:`pr-existing-bubble-head`,children:[e.author?(0,G.jsx)(`img`,{className:`pr-existing-avatar`,src:e.author.avatarUrl,alt:e.author.login}):(0,G.jsx)(`div`,{className:`pr-existing-avatar pr-existing-avatar-fallback`}),(0,G.jsxs)(`div`,{className:`pr-existing-bubble-meta`,children:[(0,G.jsxs)(`span`,{className:`pr-existing-bubble-author`,children:[`@`,e.author?.login??`unknown`]}),(0,G.jsx)(`span`,{className:`pr-existing-bubble-date`,children:new Date(e.createdAt).toLocaleString()})]}),(0,G.jsx)(`span`,{className:`pr-existing-bubble-source`,children:`from GitHub`}),e.line!=null&&(0,G.jsxs)(`span`,{className:`pr-existing-bubble-location`,children:[`L`,e.line,` · `,e.side===`LEFT`?`base`:`head`]}),S&&(0,G.jsxs)(`span`,{className:`pr-existing-bubble-badge ${S.cls}`,children:[(0,G.jsx)(S.icon,{size:11}),` `,S.label]}),e.isOutdated&&(0,G.jsxs)(`span`,{className:`pr-existing-bubble-badge badge-outdated`,children:[(0,G.jsx)(rk,{size:11}),` outdated`]}),e.isResolved&&(0,G.jsxs)(`span`,{className:`pr-existing-bubble-badge badge-approved`,children:[(0,G.jsx)(JD,{size:11}),` resolved`]}),(0,G.jsxs)(`span`,{className:`pr-existing-bubble-actions`,children:[e.threadId&&a&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn`,disabled:b||(e.isResolved?e.viewerCanUnresolve===!1:e.viewerCanResolve===!1),onClick:()=>{T(()=>a(e.threadId,!e.isResolved)).catch(()=>void 0)},title:e.isResolved?`Reopen conversation on GitHub`:`Resolve conversation on GitHub`,"aria-label":e.isResolved?`Reopen conversation`:`Resolve conversation`,children:e.isResolved?(0,G.jsx)(JO,{size:12}):(0,G.jsx)(JD,{size:12})}),r&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn`,disabled:b,onClick:()=>_(!0),title:`Edit on GitHub`,"aria-label":`Edit GitHub comment`,children:(0,G.jsx)(WO,{size:12})}),i&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn danger`,disabled:b,onClick:()=>{window.confirm(`Delete this published comment from GitHub?`)&&T(()=>i(e.id)).catch(()=>void 0)},title:`Delete from GitHub`,"aria-label":`Delete GitHub comment`,children:(0,G.jsx)(nk,{size:12})})]})]}),g?(0,G.jsxs)(`div`,{className:`pr-existing-edit-form`,children:[(0,G.jsx)(`textarea`,{value:v,onChange:e=>y(e.target.value),rows:3,"aria-label":`Edit GitHub comment body`}),(0,G.jsxs)(`div`,{className:`pr-existing-reply-form-actions`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm`,disabled:b,onClick:()=>{_(!1),y(e.body)},children:`Cancel`}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm btn-primary`,disabled:b||!v.trim(),onClick:()=>{E()},children:b?`Saving…`:`Save on GitHub`})]})]}):(0,G.jsxs)(G.Fragment,{children:[C.remainingBody&&(0,G.jsx)(hH,{content:C.remainingBody,className:`pr-existing-bubble-body markdown-body`}),C.code!=null&&(0,G.jsxs)(`div`,{className:`pr-existing-suggestion`,"aria-label":`Suggested change preview`,children:[(0,G.jsxs)(`div`,{className:`pr-existing-suggestion-head`,children:[(0,G.jsx)(`span`,{children:`Suggested change`}),(0,G.jsx)(`span`,{className:`pr-existing-suggestion-preview-label`,children:`Preview`})]}),(0,G.jsxs)(`div`,{className:`pr-existing-suggestion-diff`,children:[t!=null&&t!==``&&(0,G.jsxs)(`div`,{className:`pr-existing-suggestion-line is-removed`,children:[(0,G.jsx)(`span`,{"aria-hidden":`true`,children:`−`}),(0,G.jsx)(`code`,{children:t})]}),(0,G.jsxs)(`div`,{className:`pr-existing-suggestion-line is-added`,children:[(0,G.jsx)(`span`,{"aria-hidden":`true`,children:`+`}),(0,G.jsx)(`code`,{children:C.code})]})]})]})]}),e.replies.length>0&&(0,G.jsxs)(`button`,{type:`button`,className:`pr-existing-bubble-toggle`,onClick:()=>s(e=>!e),children:[o?`Hide`:`Show`,` `,e.replies.length,` repl`,e.replies.length===1?`y`:`ies`]}),o&&e.replies.length>0&&(0,G.jsx)(`ul`,{className:`pr-existing-replies`,children:e.replies.map(e=>(0,G.jsx)(tG,{reply:e,onEdit:r,onDelete:i},e.id))}),n&&(0,G.jsx)(`div`,{className:`pr-existing-reply-actions`,children:c?(0,G.jsxs)(`div`,{className:`pr-existing-reply-form`,children:[(0,G.jsx)(`textarea`,{value:u,onChange:e=>d(e.target.value),rows:3,placeholder:`Reply to this thread on GitHub…`,"aria-label":`Reply body`}),m&&(0,G.jsx)(`p`,{className:`pr-existing-reply-error`,children:m}),(0,G.jsxs)(`div`,{className:`pr-existing-reply-form-actions`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm`,onClick:()=>{l(!1),d(``),h(null)},disabled:f,children:`Cancel`}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm btn-primary`,onClick:w,disabled:f||!u.trim(),children:f?`Sending…`:`Post reply`})]})]}):(0,G.jsxs)(`button`,{type:`button`,className:`btn btn-sm pr-existing-reply-btn`,onClick:()=>l(!0),children:[(0,G.jsx)(oO,{size:12}),`Reply on GitHub`]})}),m&&!c&&(0,G.jsx)(`p`,{className:`pr-existing-reply-error`,role:`alert`,children:m})]})}function eG(e){let t=/```suggestion[^\r\n]*\r?\n([\s\S]*?)```/i.exec(e);return t?{remainingBody:e.replace(/```suggestion[^\r\n]*\r?\n[\s\S]*?```/gi,``).trim(),code:t[1].replace(/\r\n/g,`
1937
- `).replace(/\n$/,``)}:{remainingBody:e,code:null}}function tG({reply:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),[s,c]=(0,W.useState)(!1),[l,u]=(0,W.useState)(null);(0,W.useEffect)(()=>{r||o(e.body)},[e.body,r]);let d=async()=>{if(!(!t||!a.trim())){c(!0),u(null);try{await t(e.id,a.trim()),i(!1)}catch(e){u(e?.message??`Failed to edit reply`)}finally{c(!1)}}},f=async()=>{if(!(!n||!window.confirm(`Delete this published reply from GitHub?`))){c(!0),u(null);try{await n(e.id)}catch(e){u(e?.message??`Failed to delete reply`),c(!1)}}};return(0,G.jsxs)(`li`,{className:`pr-existing-reply`,children:[(0,G.jsxs)(`div`,{className:`pr-existing-bubble-meta`,children:[(0,G.jsxs)(`span`,{className:`pr-existing-bubble-author`,children:[`@`,e.author?.login??`unknown`]}),(0,G.jsx)(`span`,{className:`pr-existing-bubble-date`,children:new Date(e.createdAt).toLocaleString()}),(0,G.jsxs)(`span`,{className:`pr-existing-bubble-actions`,children:[t&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn`,disabled:s,onClick:()=>i(!0),"aria-label":`Edit GitHub reply`,children:(0,G.jsx)(WO,{size:11})}),n&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn danger`,disabled:s,onClick:()=>{f()},"aria-label":`Delete GitHub reply`,children:(0,G.jsx)(nk,{size:11})})]})]}),r?(0,G.jsxs)(`div`,{className:`pr-existing-edit-form is-reply`,children:[(0,G.jsx)(`textarea`,{value:a,onChange:e=>o(e.target.value),rows:3,"aria-label":`Edit GitHub reply body`}),(0,G.jsxs)(`div`,{className:`pr-existing-reply-form-actions`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm`,disabled:s,onClick:()=>{i(!1),o(e.body)},children:`Cancel`}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm btn-primary`,disabled:s||!a.trim(),onClick:()=>{d()},children:s?`Saving…`:`Save`})]})]}):(0,G.jsx)(`p`,{children:e.body}),l&&(0,G.jsx)(`p`,{className:`pr-existing-reply-error`,role:`alert`,children:l})]})}function nG(e){let t=e.hunks??[];if(t.length===0)return[];let n=t.map(e=>{let t=e.additionCount??e.additionLines??0,n=e.deletionCount??e.deletionLines??0;return Math.max(1,t+n)}),r=n.reduce((e,t)=>e+t,0)||1,i=0;return t.map((e,t)=>{let a=e.additionCount??e.additionLines??0,o=e.deletionCount??e.deletionLines??0,s=n[t]/r,c=i;i+=s;let l=`change`;a>0&&o===0?l=`add`:o>0&&a===0&&(l=`del`);let u=e.additionStart||0,d=e.deletionStart||0,f=u||d||1,p=u&&a>0?u+Math.max(0,a-1):d&&o>0?d+Math.max(0,o-1):f,m=p===f?`L${f}`:`L${f}–${p}`;return{start:c,height:s,kind:l,line:f,index:t+1,additions:a,deletions:o,rangeLabel:m}})}function rG(e){return e===`add`?`Added`:e===`del`?`Removed`:`Modified`}function iG(e){let t=[];return e.additions>0&&t.push(`+${e.additions}`),e.deletions>0&&t.push(`−${e.deletions}`),t.join(` `)||`empty`}function aG(e){return[`Hunk ${e.index}`,rG(e.kind),iG(e),e.rangeLabel,`Click to jump`].join(` · `)}var oG=(0,W.memo)(function({fileDiff:e,filePath:t,onJump:n}){let r=(0,W.useMemo)(()=>nG(e),[e]),[i,a]=(0,W.useState)(null),[o,s]=(0,W.useState)(null),c=(0,W.useMemo)(()=>{let e=0,t=0;for(let n of r)e+=n.additions,t+=n.deletions;return{additions:e,deletions:t,hunks:r.length}},[r]),l=(0,W.useCallback)(e=>{if(s(e.index),n){n(t,e.line);return}(document.getElementById(`file-${CSS.escape(t)}`)??document.querySelector(`[data-file-path="${CSS.escape(t)}"]`))?.scrollIntoView({behavior:`smooth`,block:`start`})},[t,n]);if(r.length===0)return null;let u=i==null?null:r.find(e=>e.index===i);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`div`,{className:`diff-minimap-header`,role:`region`,"aria-label":`Change map for ${t}`,children:[(0,G.jsxs)(`div`,{className:`diff-minimap-meta`,children:[(0,G.jsxs)(`span`,{className:`diff-minimap-title`,children:[(0,G.jsx)(DO,{size:12,"aria-hidden":`true`}),`Change map`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-summary`,children:[c.hunks,` hunk`,c.hunks===1?``:`s`,c.additions>0&&(0,G.jsxs)(`span`,{className:`diff-minimap-stat-add`,children:[` +`,c.additions]}),c.deletions>0&&(0,G.jsxs)(`span`,{className:`diff-minimap-stat-del`,children:[` −`,c.deletions]})]}),(0,G.jsx)(`span`,{className:`diff-minimap-hint`,children:`Hover the bar on the right · Click to jump`})]}),(0,G.jsxs)(`div`,{className:`diff-minimap-footer`,children:[(0,G.jsxs)(`div`,{className:`diff-minimap-legend`,"aria-hidden":`true`,children:[(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-add`}),` Added`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-del`}),` Removed`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-change`}),` Modified`]})]}),u?(0,G.jsxs)(`div`,{className:`diff-minimap-live`,"aria-live":`polite`,children:[(0,G.jsxs)(`strong`,{children:[`#`,u.index]}),(0,G.jsx)(`span`,{children:rG(u.kind)}),(0,G.jsx)(`span`,{className:`diff-minimap-live-stats`,children:iG(u)}),(0,G.jsx)(`span`,{className:`diff-minimap-live-range`,children:u.rangeLabel})]}):(0,G.jsx)(`div`,{className:`diff-minimap-live diff-minimap-live-idle`,children:`Hover a block for details`})]})]}),(0,G.jsx)(`div`,{className:`diff-minimap`,role:`navigation`,"aria-label":`Jump to changes in ${t}`,children:(0,G.jsx)(`div`,{className:`diff-minimap-track`,role:`list`,children:r.map(e=>{let t=i===e.index||o===e.index;return(0,G.jsx)($T,{content:aG(e),side:`left`,children:(0,G.jsx)(`button`,{type:`button`,role:`listitem`,className:[`diff-minimap-seg`,`diff-minimap-seg-${e.kind}`,t?`diff-minimap-seg-hot`:``,o===e.index?`diff-minimap-seg-active`:``].filter(Boolean).join(` `),style:{top:`${e.start*100}%`,height:`${Math.max(e.height*100,3)}%`},onClick:t=>{t.stopPropagation(),l(e)},onMouseEnter:()=>a(e.index),onMouseLeave:()=>a(null),onFocus:()=>a(e.index),onBlur:()=>a(null),"aria-label":aG(e)})},e.index)})})})]})});function sG(e){return e.endSide??e.side??`additions`}function cG(e){return e.side??e.endSide??`additions`}function lG(e){if(e.startSide&&e.startSide!==e.side){if(e.startLineNumber==null||e.startLineNumber===e.lineNumber){let{startLineNumber:t,startSide:n,...r}=e;return r}return e}let t=e.startLineNumber==null?e.lineNumber:Math.min(e.startLineNumber,e.lineNumber),n=e.startLineNumber==null?e.lineNumber:Math.max(e.startLineNumber,e.lineNumber);return t===n?{side:e.side,lineNumber:n}:{side:e.side,lineNumber:n,startLineNumber:t}}function uG(e){let t=cG(e),n=sG(e);if(t===n){let t=Math.min(e.start,e.end),r=Math.max(e.start,e.end);return lG({side:n,lineNumber:r,startLineNumber:t===r?void 0:t})}return{side:n,lineNumber:e.end,startLineNumber:e.start===e.end?void 0:e.start,startSide:t}}function dG(e){return e.side===`deletions`?`old`:`new`}function fG(e){let t=dG(e);return e.startLineNumber!=null&&e.startLineNumber!==e.lineNumber?`L${Math.min(e.startLineNumber,e.lineNumber)}–L${Math.max(e.startLineNumber,e.lineNumber)} · ${t}`:`L${e.lineNumber} · ${t}`}function pG(e){return e.startSide&&e.startSide!==e.side?{start:e.startLineNumber??e.lineNumber,end:e.lineNumber}:{start:e.startLineNumber==null?e.lineNumber:Math.min(e.startLineNumber,e.lineNumber),end:e.startLineNumber==null?e.lineNumber:Math.max(e.startLineNumber,e.lineNumber)}}function mG(e){return e.startLineNumber!=null&&e.startLineNumber!==e.lineNumber?{start:e.startLineNumber,end:e.lineNumber,side:e.startSide??e.side,...e.startSide&&e.startSide!==e.side?{endSide:e.side}:{}}:{start:e.lineNumber,end:e.lineNumber,side:e.side}}function hG(e,t,n){if(e.startSide&&e.startSide!==e.side)return e;if(!Number.isFinite(t)||t===0)return lG(e);let{start:r,end:i}=pG(e),a=r+t;return n&&(a=Math.max(n.min,Math.min(n.max,a))),a=Math.min(a,i),lG({side:e.side,lineNumber:i,startLineNumber:a})}function gG(e,t,n){if(e.startSide&&e.startSide!==e.side)return e;if(!Number.isFinite(t)||t===0)return lG(e);let{start:r,end:i}=pG(e),a=i+t;return n&&(a=Math.max(n.min,Math.min(n.max,a))),a=Math.max(a,r),lG({side:e.side,lineNumber:a,startLineNumber:r})}function _G(e,t,n){if(e.startSide&&e.startSide!==e.side)return!1;let r=hG(e,t,n);return r.startLineNumber!==e.startLineNumber||r.lineNumber!==e.lineNumber}function vG(e,t,n){if(e.startSide&&e.startSide!==e.side)return!1;let r=gG(e,t,n);return r.startLineNumber!==e.startLineNumber||r.lineNumber!==e.lineNumber}function yG(e,t){if(t.isOutdated||t.line==null||t.line<1||t.side==null)return!1;let n=t.side===`LEFT`?`deletions`:`additions`,r=n===`additions`?`additionStart`:`deletionStart`,i=n===`additions`?`additionCount`:`deletionCount`;return e.hunks.some(e=>t.line>=e[r]&&t.line<e[r]+e[i])}function bG(e,t,n){let r=t===`additions`?`additionStart`:`deletionStart`,i=t===`additions`?`additionCount`:`deletionCount`,a=1/0,o=0;for(let t of e.hunks){let e=t[r],n=t[i];n<=0||(a=Math.min(a,e),o=Math.max(o,e+n-1))}return n&&n>0&&(a=Math.min(a===1/0?1:a,1),o=Math.max(o,n)),!Number.isFinite(a)||o<1?{min:1,max:Math.max(1,n??1)}:{min:a,max:o}}var xG=(0,W.memo)(function({id:e,fileDiff:t,filePath:n,annotations:r,existingComments:i=[],diffStyle:a,tabSize:o,viewed:s,theme:c,editorIDE:l,lineDiffType:u,lineWrap:d,diffIndicators:f,showLineNumbers:p,hunkSeparators:m,lineHoverHighlight:h,fontSize:g,monoFontFamily:_,expandContextByDefault:v,collapsedContextThreshold:y,expansionLineCount:b,autoCollapseLineThreshold:x,onViewedChange:S,onAddComment:C,onDeleteComment:w,onReplyExisting:T,onEditExisting:E,onDeleteExisting:D,onSetExistingResolved:O,allowLocalActions:k=!0,onCardToggleCollapse:A}){let[j,M]=(0,W.useState)(null),[N,P]=(0,W.useState)(null),[F,I]=(0,W.useState)(0),L=(0,W.useRef)(null),[R,z]=(0,W.useState)(null),[ee,te]=(0,W.useState)(!1),ne=t.additionLines.length+t.deletionLines.length,[B,V]=(0,W.useState)(s||x>0&&ne>x),[re,ie]=(0,W.useState)(!1),[ae,oe]=(0,W.useState)(!1),[se,ce]=(0,W.useState)(v),[H,le]=(0,W.useState)(null),[ue,U]=(0,W.useState)(null),[de,fe]=(0,W.useState)(null),pe=(0,W.useRef)(null),[me,he]=(0,W.useState)(!1),ge=e=>{e.stopPropagation(),!(typeof navigator>`u`||!navigator.clipboard)&&navigator.clipboard.writeText(n).then(()=>{te(!0),window.setTimeout(()=>te(!1),1500)},()=>{})},_e=async(e,t=!1)=>{if(H===null&&!(!t&&typeof window<`u`&&!window.confirm(`Revert hunk #${e+1} in ${n}? This rewrites the file via "git apply --reverse".`))){le(e),U(null);try{let t=await fetch(`/api/revert-hunk`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:n,hunkIndex:e})});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.error??`HTTP ${t.status}`)}}catch(e){U(e.message)}finally{le(null)}}},ve=t.type===`change`||t.type===`rename-changed`,ye=!B&&ve,{loading:be,oldContent:xe,newContent:Se}=RW(n,se&&ye),Ce=se&&xe!==null&&Se!==null,we=t.prevName??n;(0,W.useLayoutEffect)(()=>{V(s)},[s]),(0,W.useEffect)(()=>{if(me||B)return;let e=pe.current;if(!e||typeof IntersectionObserver>`u`){he(!0);return}let t=e.getBoundingClientRect();if(t.bottom>=-800&&t.top<=(typeof window<`u`?window.innerHeight+800:2e3)){he(!0);return}let n=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&(he(!0),n.disconnect())},{root:null,rootMargin:`800px 0px`,threshold:0});return n.observe(e),()=>n.disconnect()},[B,me]);let Te=nE[c]||nE.nord,Ee=(0,W.useMemo)(()=>CG(o,g,_),[o,g,_]),De=(e,n,r)=>{let i=r??n,a=n,o=Math.min(i,a),s=Math.max(i,a),c=[],l=Ce?(e===`additions`?Se:xe)?.replace(/\r\n/g,`
1937
+ `).replace(/\n$/,``)}:{remainingBody:e,code:null}}function tG({reply:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),[s,c]=(0,W.useState)(!1),[l,u]=(0,W.useState)(null);(0,W.useEffect)(()=>{r||o(e.body)},[e.body,r]);let d=async()=>{if(!(!t||!a.trim())){c(!0),u(null);try{await t(e.id,a.trim()),i(!1)}catch(e){u(e?.message??`Failed to edit reply`)}finally{c(!1)}}},f=async()=>{if(!(!n||!window.confirm(`Delete this published reply from GitHub?`))){c(!0),u(null);try{await n(e.id)}catch(e){u(e?.message??`Failed to delete reply`),c(!1)}}};return(0,G.jsxs)(`li`,{className:`pr-existing-reply`,children:[(0,G.jsxs)(`div`,{className:`pr-existing-bubble-meta`,children:[(0,G.jsxs)(`span`,{className:`pr-existing-bubble-author`,children:[`@`,e.author?.login??`unknown`]}),(0,G.jsx)(`span`,{className:`pr-existing-bubble-date`,children:new Date(e.createdAt).toLocaleString()}),(0,G.jsxs)(`span`,{className:`pr-existing-bubble-actions`,children:[t&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn`,disabled:s,onClick:()=>i(!0),"aria-label":`Edit GitHub reply`,children:(0,G.jsx)(WO,{size:11})}),n&&e.viewerDidAuthor!==!1&&(0,G.jsx)(`button`,{type:`button`,className:`file-diff-icon-btn danger`,disabled:s,onClick:()=>{f()},"aria-label":`Delete GitHub reply`,children:(0,G.jsx)(nk,{size:11})})]})]}),r?(0,G.jsxs)(`div`,{className:`pr-existing-edit-form is-reply`,children:[(0,G.jsx)(`textarea`,{value:a,onChange:e=>o(e.target.value),rows:3,"aria-label":`Edit GitHub reply body`}),(0,G.jsxs)(`div`,{className:`pr-existing-reply-form-actions`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm`,disabled:s,onClick:()=>{i(!1),o(e.body)},children:`Cancel`}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm btn-primary`,disabled:s||!a.trim(),onClick:()=>{d()},children:s?`Saving…`:`Save`})]})]}):(0,G.jsx)(`p`,{children:e.body}),l&&(0,G.jsx)(`p`,{className:`pr-existing-reply-error`,role:`alert`,children:l})]})}function nG(e){let t=e.hunks??[];if(t.length===0)return[];let n=t.map(e=>{let t=e.additionCount??e.additionLines??0,n=e.deletionCount??e.deletionLines??0;return Math.max(1,t+n)}),r=n.reduce((e,t)=>e+t,0)||1,i=0;return t.map((e,t)=>{let a=e.additionCount??e.additionLines??0,o=e.deletionCount??e.deletionLines??0,s=n[t]/r,c=i;i+=s;let l=`change`;a>0&&o===0?l=`add`:o>0&&a===0&&(l=`del`);let u=e.additionStart||0,d=e.deletionStart||0,f=u||d||1,p=u&&a>0?u+Math.max(0,a-1):d&&o>0?d+Math.max(0,o-1):f,m=p===f?`L${f}`:`L${f}–${p}`;return{start:c,height:s,kind:l,line:f,index:t+1,additions:a,deletions:o,rangeLabel:m}})}function rG(e){return e===`add`?`Added`:e===`del`?`Removed`:`Modified`}function iG(e){let t=[];return e.additions>0&&t.push(`+${e.additions}`),e.deletions>0&&t.push(`−${e.deletions}`),t.join(` `)||`empty`}function aG(e){return[`Hunk ${e.index}`,rG(e.kind),iG(e),e.rangeLabel,`Click to jump`].join(` · `)}var oG=(0,W.memo)(function({fileDiff:e,filePath:t,onJump:n}){let r=(0,W.useMemo)(()=>nG(e),[e]),[i,a]=(0,W.useState)(null),[o,s]=(0,W.useState)(null),c=(0,W.useMemo)(()=>{let e=0,t=0;for(let n of r)e+=n.additions,t+=n.deletions;return{additions:e,deletions:t,hunks:r.length}},[r]),l=(0,W.useCallback)(e=>{if(s(e.index),n){n(t,e.line);return}(document.getElementById(`file-${CSS.escape(t)}`)??document.querySelector(`[data-file-path="${CSS.escape(t)}"]`))?.scrollIntoView({behavior:`smooth`,block:`start`})},[t,n]);if(r.length===0)return null;let u=i==null?null:r.find(e=>e.index===i);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`div`,{className:`diff-minimap-header`,role:`region`,"aria-label":`Change map for ${t}`,children:[(0,G.jsxs)(`div`,{className:`diff-minimap-meta`,children:[(0,G.jsxs)(`span`,{className:`diff-minimap-title`,children:[(0,G.jsx)(DO,{size:12,"aria-hidden":`true`}),`Change map`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-summary`,children:[c.hunks,` hunk`,c.hunks===1?``:`s`,c.additions>0&&(0,G.jsxs)(`span`,{className:`diff-minimap-stat-add`,children:[` +`,c.additions]}),c.deletions>0&&(0,G.jsxs)(`span`,{className:`diff-minimap-stat-del`,children:[` −`,c.deletions]})]}),(0,G.jsx)(`span`,{className:`diff-minimap-hint`,children:`Hover the bar on the right · Click to jump`})]}),(0,G.jsxs)(`div`,{className:`diff-minimap-footer`,children:[(0,G.jsxs)(`div`,{className:`diff-minimap-legend`,"aria-hidden":`true`,children:[(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-add`}),` Added`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-del`}),` Removed`]}),(0,G.jsxs)(`span`,{className:`diff-minimap-legend-item`,children:[(0,G.jsx)(`i`,{className:`diff-minimap-dot diff-minimap-dot-change`}),` Modified`]})]}),u?(0,G.jsxs)(`div`,{className:`diff-minimap-live`,"aria-live":`polite`,children:[(0,G.jsxs)(`strong`,{children:[`#`,u.index]}),(0,G.jsx)(`span`,{children:rG(u.kind)}),(0,G.jsx)(`span`,{className:`diff-minimap-live-stats`,children:iG(u)}),(0,G.jsx)(`span`,{className:`diff-minimap-live-range`,children:u.rangeLabel})]}):(0,G.jsx)(`div`,{className:`diff-minimap-live diff-minimap-live-idle`,children:`Hover a block for details`})]})]}),(0,G.jsx)(`div`,{className:`diff-minimap`,role:`navigation`,"aria-label":`Jump to changes in ${t}`,children:(0,G.jsx)(`div`,{className:`diff-minimap-track`,role:`list`,children:r.map(e=>{let t=i===e.index||o===e.index;return(0,G.jsx)($T,{content:aG(e),side:`left`,children:(0,G.jsx)(`button`,{type:`button`,role:`listitem`,className:[`diff-minimap-seg`,`diff-minimap-seg-${e.kind}`,t?`diff-minimap-seg-hot`:``,o===e.index?`diff-minimap-seg-active`:``].filter(Boolean).join(` `),style:{top:`${e.start*100}%`,height:`${Math.max(e.height*100,3)}%`},onClick:t=>{t.stopPropagation(),l(e)},onMouseEnter:()=>a(e.index),onMouseLeave:()=>a(null),onFocus:()=>a(e.index),onBlur:()=>a(null),"aria-label":aG(e)})},e.index)})})})]})});function sG(e){return e.endSide??e.side??`additions`}function cG(e){return e.side??e.endSide??`additions`}function lG(e){if(e.startSide&&e.startSide!==e.side){if(e.startLineNumber==null||e.startLineNumber===e.lineNumber){let{startLineNumber:t,startSide:n,...r}=e;return r}return e}let t=e.startLineNumber==null?e.lineNumber:Math.min(e.startLineNumber,e.lineNumber),n=e.startLineNumber==null?e.lineNumber:Math.max(e.startLineNumber,e.lineNumber);return t===n?{side:e.side,lineNumber:n}:{side:e.side,lineNumber:n,startLineNumber:t}}function uG(e){let t=cG(e),n=sG(e);if(t===n){let t=Math.min(e.start,e.end),r=Math.max(e.start,e.end);return lG({side:n,lineNumber:r,startLineNumber:t===r?void 0:t})}return{side:n,lineNumber:e.end,startLineNumber:e.start===e.end?void 0:e.start,startSide:t}}function dG(e){return e.side===`deletions`?`old`:`new`}function fG(e){let t=dG(e);return e.startLineNumber!=null&&e.startLineNumber!==e.lineNumber?`L${Math.min(e.startLineNumber,e.lineNumber)}–L${Math.max(e.startLineNumber,e.lineNumber)} · ${t}`:`L${e.lineNumber} · ${t}`}function pG(e){return e.startSide&&e.startSide!==e.side?{start:e.startLineNumber??e.lineNumber,end:e.lineNumber}:{start:e.startLineNumber==null?e.lineNumber:Math.min(e.startLineNumber,e.lineNumber),end:e.startLineNumber==null?e.lineNumber:Math.max(e.startLineNumber,e.lineNumber)}}function mG(e){return e.startLineNumber!=null&&e.startLineNumber!==e.lineNumber?{start:e.startLineNumber,end:e.lineNumber,side:e.startSide??e.side,...e.startSide&&e.startSide!==e.side?{endSide:e.side}:{}}:{start:e.lineNumber,end:e.lineNumber,side:e.side}}function hG(e,t,n){if(e.startSide&&e.startSide!==e.side)return e;if(!Number.isFinite(t)||t===0)return lG(e);let{start:r,end:i}=pG(e),a=r+t;return n&&(a=Math.max(n.min,Math.min(n.max,a))),a=Math.min(a,i),lG({side:e.side,lineNumber:i,startLineNumber:a})}function gG(e,t,n){if(e.startSide&&e.startSide!==e.side)return e;if(!Number.isFinite(t)||t===0)return lG(e);let{start:r,end:i}=pG(e),a=i+t;return n&&(a=Math.max(n.min,Math.min(n.max,a))),a=Math.max(a,r),lG({side:e.side,lineNumber:a,startLineNumber:r})}function _G(e,t,n){if(e.startSide&&e.startSide!==e.side)return!1;let r=hG(e,t,n);return r.startLineNumber!==e.startLineNumber||r.lineNumber!==e.lineNumber}function vG(e,t,n){if(e.startSide&&e.startSide!==e.side)return!1;let r=gG(e,t,n);return r.startLineNumber!==e.startLineNumber||r.lineNumber!==e.lineNumber}function yG(e,t){if(t.isOutdated||t.line==null||t.line<1||t.side==null)return!1;let n=t.side===`LEFT`?`deletions`:`additions`,r=n===`additions`?`additionStart`:`deletionStart`,i=n===`additions`?`additionCount`:`deletionCount`;return e.hunks.some(e=>t.line>=e[r]&&t.line<e[r]+e[i])}function bG(e,t,n){let r=t===`additions`?`additionStart`:`deletionStart`,i=t===`additions`?`additionCount`:`deletionCount`,a=1/0,o=0;for(let t of e.hunks){let e=t[r],n=t[i];n<=0||(a=Math.min(a,e),o=Math.max(o,e+n-1))}return n&&n>0&&(a=Math.min(a===1/0?1:a,1),o=Math.max(o,n)),!Number.isFinite(a)||o<1?{min:1,max:Math.max(1,n??1)}:{min:a,max:o}}var xG=(0,W.memo)(function({id:e,fileDiff:t,filePath:n,annotations:r,existingComments:i=[],diffStyle:a,tabSize:o,viewed:s,theme:c,editorIDE:l,lineDiffType:u,lineWrap:d,diffIndicators:f,showLineNumbers:p,hunkSeparators:m,lineHoverHighlight:h,fontSize:g,monoFontFamily:_,expandContextByDefault:v,collapsedContextThreshold:y,expansionLineCount:b,autoCollapseLineThreshold:x,onViewedChange:S,onAddComment:C,onDeleteComment:w,onReplyExisting:T,onEditExisting:E,onDeleteExisting:D,onSetExistingResolved:O,allowLocalActions:k=!0,onCardToggleCollapse:A}){let[j,M]=(0,W.useState)(null),[N,P]=(0,W.useState)(null),[F,I]=(0,W.useState)(0),L=(0,W.useRef)(null),[R,z]=(0,W.useState)(null),[ee,te]=(0,W.useState)(!1),ne=t.additionLines.length+t.deletionLines.length,[B,V]=(0,W.useState)(s||x>0&&ne>x),[re,ie]=(0,W.useState)(!1),[ae,oe]=(0,W.useState)(!1),[se,ce]=(0,W.useState)(v),[H,le]=(0,W.useState)(null),[ue,U]=(0,W.useState)(null),[de,fe]=(0,W.useState)(null),pe=(0,W.useRef)(null),[me,he]=(0,W.useState)(!1),ge=e=>{e.stopPropagation(),!(typeof navigator>`u`||!navigator.clipboard)&&navigator.clipboard.writeText(n).then(()=>{te(!0),window.setTimeout(()=>te(!1),1500)},()=>{})},_e=async(e,t=!1)=>{if(H===null&&!(!t&&typeof window<`u`&&!window.confirm(`Revert hunk #${e+1} in ${n}? This rewrites the file via "git apply --reverse".`))){le(e),U(null);try{let t=await fetch(`/api/revert-hunk`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:n,hunkIndex:e})});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.error??`HTTP ${t.status}`)}}catch(e){U(e.message)}finally{le(null)}}},ve=t.type===`change`||t.type===`rename-changed`,ye=!B&&ve,be=t.prevName??n,{loading:xe,oldContent:Se,newContent:Ce}=RW(n,se&&ye,be),we=se&&Se!==null&&Ce!==null;(0,W.useLayoutEffect)(()=>{V(s)},[s]),(0,W.useEffect)(()=>{if(me||B)return;let e=pe.current;if(!e||typeof IntersectionObserver>`u`){he(!0);return}let t=e.getBoundingClientRect();if(t.bottom>=-800&&t.top<=(typeof window<`u`?window.innerHeight+800:2e3)){he(!0);return}let n=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&(he(!0),n.disconnect())},{root:null,rootMargin:`800px 0px`,threshold:0});return n.observe(e),()=>n.disconnect()},[B,me]);let Te=nE[c]||nE.nord,Ee=(0,W.useMemo)(()=>CG(o,g,_),[o,g,_]),De=(e,n,r)=>{let i=r??n,a=n,o=Math.min(i,a),s=Math.max(i,a),c=[],l=we?(e===`additions`?Ce:Se)?.replace(/\r\n/g,`
1938
1938
  `).split(`
1939
1939
  `):void 0;for(let n=o;n<=s;n++){let r=e===`additions`?t.additionLines:t.deletionLines,i=e===`additions`?`additionStart`:`deletionStart`,a=e===`additions`?`additionCount`:`deletionCount`,o=e===`additions`?`additionLineIndex`:`deletionLineIndex`,s=!1;for(let e of t.hunks){let t=e[i],l=e[a];if(n>=t&&n<t+l){let i=e[o]+(n-t);c.push(r[i]??``),s=!0;break}}s||c.push(l?.[n-1]??``)}return c.join(`
1940
- `)},Oe=(0,W.useCallback)(e=>{let t=lG(e);L.current||=crypto.randomUUID(),M(t),P(mG(t)),I(0)},[]),ke=(0,W.useCallback)(()=>{M(null),P(null),I(0),L.current=null},[]),Ae=(0,W.useMemo)(()=>{if(!j)return;let e=Ce&&j.side===`additions`?(Se??``).split(`
1941
- `).length:Ce&&j.side===`deletions`?(xe??``).split(`
1942
- `).length:void 0;return bG(t,j.side,e)},[j,t,Ce,Se,xe]),je=(0,W.useCallback)(e=>{let t=lG(e);M(t),P(mG(t))},[]);(0,W.useEffect)(()=>{if(!j)return;let e=window.requestAnimationFrame(()=>{let e=pe.current?.querySelector(`.comment-form, [data-annotation-slot]`);e instanceof HTMLElement&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})});return()=>cancelAnimationFrame(e)},[j?.side,j?.lineNumber]);let Me=async e=>{if(e.stopPropagation(),t.type!==`deleted`){ie(!0);try{await fetch(`/api/open-file`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:n,editor:l})})}catch(e){console.error(`Failed to open file in IDE editor:`,e)}finally{ie(!1)}}},Ne=()=>{switch(t.type){case`new`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-new`,children:`Added`});case`deleted`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-deleted`,children:`Deleted`});case`rename-pure`:case`rename-changed`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-renamed`,children:`Renamed`});default:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-modified`,children:`Modified`})}},Pe=r.filter(e=>e.lineNumber===0),Fe=r.filter(e=>e.lineNumber>0),Ie=i.filter(e=>yG(t,e)).map(e=>({side:e.side===`LEFT`?`deletions`:`additions`,lineNumber:e.line,metadata:{_existingPr:!0,comment:e}})),Le=i.filter(e=>!yG(t,e)),Re=e=>{if(`_pending`in e.metadata){if(!j)return null;let e=L.current??`open`,t=`new:${n}:${j.side}:${e}`,r=De(j.side,j.lineNumber,j.startLineNumber),i=pG(j),a=Ae;return(0,G.jsx)(XW,{draftKey:t,lineContent:r,lineLabel:fG(j),range:{start:i.start,end:i.end,sideLabel:dG(j),canAdjustStart:e=>_G(j,e,a),canAdjustEnd:e=>vG(j,e,a)},onAdjustStart:e=>{je(hG(j,e,a))},onAdjustEnd:e=>{je(gG(j,e,a))},onSubmit:(e,t)=>{let r=De(j.side,j.lineNumber,j.startLineNumber);C(n,j.side,j.lineNumber,r,e,j.startLineNumber,t),ke()},onCancel:ke})}return`_existingPr`in e.metadata?(0,G.jsx)($W,{comment:e.metadata.comment,lineContent:De(e.side,e.lineNumber,e.metadata.comment.startLine??void 0),onReply:T,onEdit:E,onDelete:D,onSetResolved:O}):(0,G.jsx)(QW,{comment:e.metadata,onDelete:w})},ze=(0,W.useCallback)(()=>{I(0),M(null),P(null),L.current=null},[]),Be=(0,W.useCallback)(e=>{I(e?Math.abs(e.end-e.start)+1:0)},[]),Ve=(0,W.useCallback)(e=>{I(0),e&&Oe(uG(e))},[Oe]),He=(0,W.useCallback)(e=>{Oe(uG(e))},[Oe]),Ue=[...Fe,...Ie,...j?[{side:j.side,lineNumber:j.lineNumber,metadata:{_pending:!0}}]:[]];return(0,G.jsxs)(`div`,{ref:pe,className:`file-diff-card ${s?`file-diff-viewed`:``} ${B?`file-diff-collapsed`:``}`,id:e,"data-file-path":n,children:[(0,G.jsxs)(`div`,{className:`file-diff-card-header`,onClick:()=>{let e=!B;V(e),A?.(n,e)},children:[(0,G.jsxs)(`div`,{className:`file-diff-header-left`,children:[(0,G.jsx)(`span`,{className:`file-diff-collapse-indicator`,"aria-hidden":`true`,children:B?(0,G.jsx)(GD,{size:14}):(0,G.jsx)(UD,{size:14})}),(0,G.jsxs)(`div`,{className:`file-diff-title-row`,children:[(0,G.jsx)(`span`,{className:`file-diff-name`,title:n,children:n}),(0,G.jsx)(`button`,{className:`file-diff-copy-path-btn`,onClick:ge,title:`Copy file path to clipboard`,"aria-label":`Copy file path to clipboard`,children:ee?(0,G.jsx)(HD,{size:12}):(0,G.jsx)(aO,{size:12})}),Ne(),Fe.length+Ie.length>0&&(0,G.jsxs)(`span`,{className:`file-diff-comment-badge`,title:`${Fe.length+Ie.length} inline comment${Fe.length+Ie.length===1?``:`s`}`,children:[(0,G.jsx)(NO,{size:10}),Fe.length+Ie.length]}),F>0&&(0,G.jsxs)(`span`,{className:`file-diff-selection-badge`,"aria-live":`polite`,children:[F,` line`,F===1?``:`s`,` selected`]}),ee&&(0,G.jsx)(`span`,{className:`file-diff-permalink-flash`,role:`status`,children:`Copied path`}),R&&(0,G.jsxs)(`span`,{className:`file-diff-permalink-flash`,role:`status`,children:[`Copied `,R]})]})]}),(0,G.jsxs)(`div`,{className:`file-diff-header-right`,onClick:e=>e.stopPropagation(),children:[ye&&(0,G.jsx)($T,{content:se?`Hide unchanged context`:`Expand full-file context`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn ${se?`is-active`:``}`,onClick:()=>ce(e=>!e),disabled:be,"aria-label":be?`Loading context`:se?`Hide context`:`Expand context`,children:be?(0,G.jsx)(EO,{size:13,className:`spin`}):(0,G.jsx)(OO,{size:13})})}),k&&t.type!==`deleted`&&(0,G.jsx)($T,{content:`Open in editor`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:Me,disabled:re,"aria-label":re?`Opening file`:`Edit file`,children:re?(0,G.jsx)(EO,{size:13,className:`spin`}):(0,G.jsx)(UO,{size:13})})}),(0,G.jsx)($T,{content:`Comment on entire file`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:()=>{V(!1),oe(!0)},"aria-label":`Add file comment`,children:(0,G.jsx)(NO,{size:13})})}),(0,G.jsxs)(`label`,{className:`viewed-label ${s?`viewed-checked`:``}`,title:s?`Mark unviewed · v`:`Mark viewed · v`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:s,"aria-label":s?`Mark as unviewed`:`Mark as viewed`,onChange:e=>{let t=e.target.checked;V(t),S(n,t)}}),(0,G.jsx)(`span`,{className:`viewed-label-text`,children:`Viewed`})]})]})]}),k&&!B&&t.hunks.length>0&&(0,G.jsxs)(`div`,{className:`file-diff-hunk-actions`,onClick:e=>e.stopPropagation(),children:[(0,G.jsxs)(`div`,{className:`file-diff-hunk-actions-meta`,children:[(0,G.jsx)(`span`,{className:`file-diff-hunk-actions-label`,children:`Revert hunks`}),(0,G.jsx)($T,{content:`Preview and undo specific change blocks via git apply --reverse`,side:`top`,children:(0,G.jsx)(ZD,{size:12,className:`file-diff-hunk-help`})}),(0,G.jsxs)(`span`,{className:`file-diff-hunk-count`,children:[t.hunks.length,` block`,t.hunks.length===1?``:`s`]})]}),(0,G.jsx)(`div`,{className:`file-diff-hunk-actions-buttons`,children:t.hunks.map((e,t)=>(0,G.jsxs)(`button`,{type:`button`,className:`file-diff-hunk-revert-btn`,onClick:()=>fe(t),disabled:H!==null,title:`Preview and revert hunk #${t+1} (lines @${e.additionStart}+${e.additionLines??e.additionCount})`,children:[H===t?(0,G.jsx)(EO,{size:10,className:`spin`}):(0,G.jsx)(ak,{size:10}),(0,G.jsxs)(`span`,{children:[`Hunk #`,t+1]})]},t))}),ue&&(0,G.jsxs)(`span`,{className:`file-diff-hunk-error`,role:`alert`,children:[(0,G.jsx)(qD,{size:11}),ue]})]}),k&&de!==null&&(()=>{let e=t.hunks[de];if(!e)return null;let r=t.deletionLines.slice(e.deletionLineIndex,e.deletionLineIndex+(e.deletionCount??e.deletionLines??0)),i=t.additionLines.slice(e.additionLineIndex,e.additionLineIndex+(e.additionStart!==void 0&&e.additionLines!==void 0?e.additionLines:e.additionCount??0));return(0,G.jsxs)(IW,{open:de!==null,onClose:()=>fe(null),className:`hunk-revert-modal`,ariaLabel:`Selective Revert Preview Hunk #${de+1}`,children:[(0,G.jsxs)(`div`,{className:`shortcuts-header`,children:[(0,G.jsxs)(`div`,{className:`shortcuts-header-title`,children:[(0,G.jsx)(ak,{size:18,className:`shortcuts-icon`}),(0,G.jsxs)(`h2`,{children:[`Revert Hunk #`,de+1]})]}),(0,G.jsx)(`button`,{className:`shortcuts-close-btn`,onClick:()=>fe(null),"aria-label":`Close dialog`,children:(0,G.jsx)(sk,{size:16})})]}),(0,G.jsxs)(`div`,{className:`shortcuts-body`,children:[(0,G.jsxs)(`div`,{className:`hunk-preview-intro`,children:[`Reverting this hunk will restore the deleted (`,(0,G.jsx)(`span`,{style:{color:`var(--feedback-danger-text)`,fontWeight:600},children:`red`}),`) lines and remove the added (`,(0,G.jsx)(`span`,{style:{color:`var(--feedback-success-text)`,fontWeight:600},children:`green`}),`) lines from `,(0,G.jsx)(`strong`,{children:n.split(`/`).pop()}),`.`]}),(0,G.jsxs)(`div`,{className:`hunk-preview-container`,children:[(0,G.jsxs)(`div`,{className:`hunk-preview-header`,children:[(0,G.jsx)(`span`,{children:n}),(0,G.jsxs)(`span`,{children:[`Lines: @-`,e.deletionStart,`,`,e.deletionCount??e.deletionLines??0,` @+`,e.additionStart,`,`,e.additionLines??e.additionCount??0]})]}),(0,G.jsxs)(`div`,{className:`hunk-preview-code`,children:[r.map((e,t)=>(0,G.jsxs)(`div`,{className:`hunk-preview-line hunk-preview-line-deletion`,children:[(0,G.jsx)(`span`,{className:`hunk-preview-sign`,children:`-`}),(0,G.jsx)(`span`,{className:`hunk-preview-text`,children:e})]},`del-${t}`)),i.map((e,t)=>(0,G.jsxs)(`div`,{className:`hunk-preview-line hunk-preview-line-addition`,children:[(0,G.jsx)(`span`,{className:`hunk-preview-sign`,children:`+`}),(0,G.jsx)(`span`,{className:`hunk-preview-text`,children:e})]},`add-${t}`)),r.length===0&&i.length===0&&(0,G.jsx)(`div`,{className:`hunk-preview-line`,style:{fontStyle:`italic`,color:`var(--text-muted)`},children:`No changes in this hunk.`})]})]}),(0,G.jsx)(SG,{filePath:n,deletionStart:e.deletionStart,deletionCount:e.deletionCount??e.deletionLines??0})]}),(0,G.jsxs)(`div`,{className:`modal-footer`,children:[(0,G.jsx)(`button`,{className:`hunk-revert-btn-secondary`,onClick:()=>fe(null),children:`Cancel`}),(0,G.jsx)(`button`,{className:`hunk-revert-btn-primary`,onClick:async()=>{let e=de;fe(null),await _e(e,!0)},children:`Revert Changes`})]})]})})(),!B&&(0,G.jsxs)(`div`,{className:`file-diff-card-body`,children:[!me&&(0,G.jsx)(`div`,{className:`file-diff-body-placeholder`,"aria-hidden":`true`,children:`Loading diff…`}),me&&t.hunks.length>0&&(0,G.jsx)(oG,{fileDiff:t,filePath:n,onJump:(e,t)=>{oE(e,t,`additions`)}}),me&&(Pe.length>0||Le.length>0||ae)&&(0,G.jsxs)(`div`,{className:`file-level-comments-section`,style:{margin:`16px 20px`,padding:`12px`,background:`rgba(255,255,255,0.02)`,border:`1px solid var(--border-color)`,borderRadius:`8px`,display:`flex`,flexDirection:`column`,gap:`12px`},children:[(0,G.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`6px`,fontSize:`13px`,fontWeight:600,color:`var(--text-secondary)`},children:[(0,G.jsx)(NO,{size:14}),(0,G.jsxs)(`span`,{children:[`File-Level Comments (`,Pe.length+Le.length,`)`]})]}),Pe.length>0&&(0,G.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:`12px`},children:Pe.map(e=>(0,G.jsx)(QW,{comment:e.metadata,onDelete:w},e.metadata.id))}),Le.map(e=>(0,G.jsx)($W,{comment:e,onReply:T,onEdit:E,onDelete:D,onSetResolved:O},`github-${e.id}`)),ae&&(0,G.jsx)(`div`,{style:{background:`var(--bg-secondary)`,borderRadius:`6px`,border:`1px solid var(--border-color)`},children:(0,G.jsx)(XW,{draftKey:`file-comment:${n}`,lineContent:``,onSubmit:(e,t)=>{C(n,`additions`,0,``,e,void 0,t),oe(!1)},onCancel:()=>oe(!1)})})]}),me&&Ce?(0,G.jsx)(Xg,{oldFile:{name:we,contents:xe??``},newFile:{name:n,contents:Se??``},options:{diffStyle:a,enableGutterUtility:!0,enableLineSelection:!0,disableFileHeader:!0,lineDiffType:u,overflow:d?`wrap`:`scroll`,diffIndicators:f,disableLineNumbers:!p,hunkSeparators:m,lineHoverHighlight:h,expandUnchanged:!1,collapsedContextThreshold:y,expansionLineCount:b,onLineSelectionStart:ze,onLineSelectionChange:Be,onLineSelectionEnd:Ve,onGutterUtilityClick:He,onLineNumberClick:e=>{let t=e.annotationSide===`deletions`?`deletions`:`additions`,r=`${n}:${t===`deletions`?`-`:`+`}${e.lineNumber}`,i=new URLSearchParams({file:n,line:String(e.lineNumber),side:t}),a=typeof window<`u`?`${window.location.origin}${window.location.pathname}?${i}`:r;navigator.clipboard?.writeText(a).then(()=>{z(r),setTimeout(()=>z(null),1600)},()=>{})},theme:{dark:Te.type===`dark`?Te.themeName:`nord`,light:Te.type===`light`?Te.themeName:`github-light`},themeType:Te.type,unsafeCSS:Ee},selectedLines:j?N:void 0,lineAnnotations:Ue,renderHeaderMetadata:()=>null,renderAnnotation:Re}):me?(0,G.jsx)(Yg,{fileDiff:t,options:{diffStyle:a,enableGutterUtility:!0,enableLineSelection:!0,disableFileHeader:!0,lineDiffType:u,overflow:d?`wrap`:`scroll`,diffIndicators:f,disableLineNumbers:!p,hunkSeparators:m,lineHoverHighlight:h,onLineSelectionStart:ze,onLineSelectionChange:Be,onLineSelectionEnd:Ve,onGutterUtilityClick:He,onLineNumberClick:e=>{let t=e.annotationSide===`deletions`?`deletions`:`additions`,r=`${n}:${t===`deletions`?`-`:`+`}${e.lineNumber}`,i=new URLSearchParams({file:n,line:String(e.lineNumber),side:t}),a=typeof window<`u`?`${window.location.origin}${window.location.pathname}?${i}`:r;navigator.clipboard?.writeText(a).then(()=>{z(r),setTimeout(()=>z(null),1600)},()=>{})},theme:{dark:Te.type===`dark`?Te.themeName:`nord`,light:Te.type===`light`?Te.themeName:`github-light`},themeType:Te.type,unsafeCSS:Ee},selectedLines:j?N:void 0,lineAnnotations:Ue,renderHeaderMetadata:()=>null,renderAnnotation:Re}):null]})]})});function SG({filePath:e,deletionStart:t,deletionCount:n}){let[r,i]=(0,W.useState)(null),[a,o]=(0,W.useState)(!1),[s,c]=(0,W.useState)(null);if((0,W.useEffect)(()=>{let r=!0;return(async()=>{o(!0),c(null);try{let a=new URLSearchParams({filePath:e,deletionStart:String(t),deletionCount:String(n)}),o=await fetch(`/api/hunk-history?${a}`);if(!o.ok)throw Error(`HTTP ${o.status}`);let s=await o.json();r&&i(s)}catch(e){r&&c(e.message||`Failed to fetch hunk history`)}finally{r&&o(!1)}})(),()=>{r=!1}},[e,t,n]),a)return(0,G.jsxs)(`div`,{className:`hunk-history-loading`,children:[(0,G.jsx)(EO,{size:14,className:`spin`,style:{marginRight:`8px`}}),(0,G.jsx)(`span`,{children:`Loading git history & origin blame…`})]});if(s)return(0,G.jsxs)(`div`,{className:`hunk-history-error`,children:[(0,G.jsx)(qD,{size:14,style:{color:`var(--feedback-danger-text)`,marginRight:`8px`}}),(0,G.jsxs)(`span`,{children:[`Failed to load git history: `,s]})]});if(!r)return null;let l=Array.from(new Map(r.blame.map(e=>[e.commit,e])).values());return(0,G.jsxs)(`div`,{className:`hunk-history-section`,children:[l.length>0&&(0,G.jsxs)(`div`,{className:`hunk-history-block`,children:[(0,G.jsx)(`h3`,{className:`hunk-history-title`,children:`Commit(s) introducing deleted lines`}),(0,G.jsx)(`div`,{className:`hunk-history-commits`,children:l.map(e=>(0,G.jsxs)(`div`,{className:`hunk-history-commit-card`,children:[(0,G.jsxs)(`div`,{className:`hunk-history-commit-header`,children:[(0,G.jsx)(`span`,{className:`hunk-history-commit-hash`,children:e.commit}),(0,G.jsxs)(`span`,{className:`hunk-history-commit-author`,children:[(0,G.jsx)(ok,{size:11}),(0,G.jsx)(`span`,{children:e.author})]}),(0,G.jsxs)(`span`,{className:`hunk-history-commit-date`,children:[(0,G.jsx)(nO,{size:11}),(0,G.jsx)(`span`,{children:e.date})]})]}),(0,G.jsx)(`div`,{className:`hunk-history-commit-msg`,children:e.summary})]},e.commit))})]}),r.recentCommits.length>0&&(0,G.jsxs)(`div`,{className:`hunk-history-block`,children:[(0,G.jsx)(`h3`,{className:`hunk-history-title`,children:`Recent File Modification History`}),(0,G.jsx)(`div`,{className:`hunk-history-log`,children:r.recentCommits.map(e=>(0,G.jsxs)(`div`,{className:`hunk-history-log-row`,children:[(0,G.jsx)(`span`,{className:`hunk-history-log-hash`,children:e.hash}),(0,G.jsx)(`span`,{className:`hunk-history-log-msg`,title:e.summary,children:e.summary}),(0,G.jsx)(`span`,{className:`hunk-history-log-author`,children:e.author}),(0,G.jsx)(`span`,{className:`hunk-history-log-date`,children:e.date})]},e.hash))})]})]})}function CG(e,t,n){return`
1940
+ `)},Oe=(0,W.useCallback)(e=>{let t=lG(e);L.current||=crypto.randomUUID(),M(t),P(mG(t)),I(0)},[]),ke=(0,W.useCallback)(()=>{M(null),P(null),I(0),L.current=null},[]),Ae=(0,W.useMemo)(()=>{if(!j)return;let e=we&&j.side===`additions`?(Ce??``).split(`
1941
+ `).length:we&&j.side===`deletions`?(Se??``).split(`
1942
+ `).length:void 0;return bG(t,j.side,e)},[j,t,we,Ce,Se]),je=(0,W.useCallback)(e=>{let t=lG(e);M(t),P(mG(t))},[]);(0,W.useEffect)(()=>{if(!j)return;let e=window.requestAnimationFrame(()=>{let e=pe.current?.querySelector(`.comment-form, [data-annotation-slot]`);e instanceof HTMLElement&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})});return()=>cancelAnimationFrame(e)},[j?.side,j?.lineNumber]);let Me=async e=>{if(e.stopPropagation(),t.type!==`deleted`){ie(!0);try{await fetch(`/api/open-file`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:n,editor:l})})}catch(e){console.error(`Failed to open file in IDE editor:`,e)}finally{ie(!1)}}},Ne=()=>{switch(t.type){case`new`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-new`,children:`Added`});case`deleted`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-deleted`,children:`Deleted`});case`rename-pure`:case`rename-changed`:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-renamed`,children:`Renamed`});default:return(0,G.jsx)(`span`,{className:`diff-status-badge diff-status-modified`,children:`Modified`})}},Pe=r.filter(e=>e.lineNumber===0),Fe=r.filter(e=>e.lineNumber>0),Ie=i.filter(e=>yG(t,e)).map(e=>({side:e.side===`LEFT`?`deletions`:`additions`,lineNumber:e.line,metadata:{_existingPr:!0,comment:e}})),Le=i.filter(e=>!yG(t,e)),Re=e=>{if(`_pending`in e.metadata){if(!j)return null;let e=L.current??`open`,t=`new:${n}:${j.side}:${e}`,r=De(j.side,j.lineNumber,j.startLineNumber),i=pG(j),a=Ae;return(0,G.jsx)(XW,{draftKey:t,lineContent:r,lineLabel:fG(j),range:{start:i.start,end:i.end,sideLabel:dG(j),canAdjustStart:e=>_G(j,e,a),canAdjustEnd:e=>vG(j,e,a)},onAdjustStart:e=>{je(hG(j,e,a))},onAdjustEnd:e=>{je(gG(j,e,a))},onSubmit:(e,t)=>{let r=De(j.side,j.lineNumber,j.startLineNumber);C(n,j.side,j.lineNumber,r,e,j.startLineNumber,t),ke()},onCancel:ke})}return`_existingPr`in e.metadata?(0,G.jsx)($W,{comment:e.metadata.comment,lineContent:De(e.side,e.lineNumber,e.metadata.comment.startLine??void 0),onReply:T,onEdit:E,onDelete:D,onSetResolved:O}):(0,G.jsx)(QW,{comment:e.metadata,onDelete:w})},ze=(0,W.useCallback)(()=>{I(0),M(null),P(null),L.current=null},[]),Be=(0,W.useCallback)(e=>{I(e?Math.abs(e.end-e.start)+1:0)},[]),Ve=(0,W.useCallback)(e=>{I(0),e&&Oe(uG(e))},[Oe]),He=(0,W.useCallback)(e=>{Oe(uG(e))},[Oe]),Ue=[...Fe,...Ie,...j?[{side:j.side,lineNumber:j.lineNumber,metadata:{_pending:!0}}]:[]];return(0,G.jsxs)(`div`,{ref:pe,className:`file-diff-card ${s?`file-diff-viewed`:``} ${B?`file-diff-collapsed`:``}`,id:e,"data-file-path":n,children:[(0,G.jsxs)(`div`,{className:`file-diff-card-header`,onClick:()=>{let e=!B;V(e),A?.(n,e)},children:[(0,G.jsxs)(`div`,{className:`file-diff-header-left`,children:[(0,G.jsx)(`span`,{className:`file-diff-collapse-indicator`,"aria-hidden":`true`,children:B?(0,G.jsx)(GD,{size:14}):(0,G.jsx)(UD,{size:14})}),(0,G.jsxs)(`div`,{className:`file-diff-title-row`,children:[(0,G.jsx)(`span`,{className:`file-diff-name`,title:n,children:n}),(0,G.jsx)(`button`,{className:`file-diff-copy-path-btn`,onClick:ge,title:`Copy file path to clipboard`,"aria-label":`Copy file path to clipboard`,children:ee?(0,G.jsx)(HD,{size:12}):(0,G.jsx)(aO,{size:12})}),Ne(),Fe.length+Ie.length>0&&(0,G.jsxs)(`span`,{className:`file-diff-comment-badge`,title:`${Fe.length+Ie.length} inline comment${Fe.length+Ie.length===1?``:`s`}`,children:[(0,G.jsx)(NO,{size:10}),Fe.length+Ie.length]}),F>0&&(0,G.jsxs)(`span`,{className:`file-diff-selection-badge`,"aria-live":`polite`,children:[F,` line`,F===1?``:`s`,` selected`]}),ee&&(0,G.jsx)(`span`,{className:`file-diff-permalink-flash`,role:`status`,children:`Copied path`}),R&&(0,G.jsxs)(`span`,{className:`file-diff-permalink-flash`,role:`status`,children:[`Copied `,R]})]})]}),(0,G.jsxs)(`div`,{className:`file-diff-header-right`,onClick:e=>e.stopPropagation(),children:[ye&&(0,G.jsx)($T,{content:se?`Hide unchanged context`:`Expand full-file context`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn ${se?`is-active`:``}`,onClick:()=>ce(e=>!e),disabled:xe,"aria-label":xe?`Loading context`:se?`Hide context`:`Expand context`,children:xe?(0,G.jsx)(EO,{size:13,className:`spin`}):(0,G.jsx)(OO,{size:13})})}),k&&t.type!==`deleted`&&(0,G.jsx)($T,{content:`Open in editor`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:Me,disabled:re,"aria-label":re?`Opening file`:`Edit file`,children:re?(0,G.jsx)(EO,{size:13,className:`spin`}):(0,G.jsx)(UO,{size:13})})}),(0,G.jsx)($T,{content:`Comment on entire file`,side:`bottom`,children:(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:()=>{V(!1),oe(!0)},"aria-label":`Add file comment`,children:(0,G.jsx)(NO,{size:13})})}),(0,G.jsxs)(`label`,{className:`viewed-label ${s?`viewed-checked`:``}`,title:s?`Mark unviewed · v`:`Mark viewed · v`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:s,"aria-label":s?`Mark as unviewed`:`Mark as viewed`,onChange:e=>{let t=e.target.checked;V(t),S(n,t)}}),(0,G.jsx)(`span`,{className:`viewed-label-text`,children:`Viewed`})]})]})]}),k&&!B&&t.hunks.length>0&&(0,G.jsxs)(`div`,{className:`file-diff-hunk-actions`,onClick:e=>e.stopPropagation(),children:[(0,G.jsxs)(`div`,{className:`file-diff-hunk-actions-meta`,children:[(0,G.jsx)(`span`,{className:`file-diff-hunk-actions-label`,children:`Revert hunks`}),(0,G.jsx)($T,{content:`Preview and undo specific change blocks via git apply --reverse`,side:`top`,children:(0,G.jsx)(ZD,{size:12,className:`file-diff-hunk-help`})}),(0,G.jsxs)(`span`,{className:`file-diff-hunk-count`,children:[t.hunks.length,` block`,t.hunks.length===1?``:`s`]})]}),(0,G.jsx)(`div`,{className:`file-diff-hunk-actions-buttons`,children:t.hunks.map((e,t)=>(0,G.jsxs)(`button`,{type:`button`,className:`file-diff-hunk-revert-btn`,onClick:()=>fe(t),disabled:H!==null,title:`Preview and revert hunk #${t+1} (lines @${e.additionStart}+${e.additionLines??e.additionCount})`,children:[H===t?(0,G.jsx)(EO,{size:10,className:`spin`}):(0,G.jsx)(ak,{size:10}),(0,G.jsxs)(`span`,{children:[`Hunk #`,t+1]})]},t))}),ue&&(0,G.jsxs)(`span`,{className:`file-diff-hunk-error`,role:`alert`,children:[(0,G.jsx)(qD,{size:11}),ue]})]}),k&&de!==null&&(()=>{let e=t.hunks[de];if(!e)return null;let r=t.deletionLines.slice(e.deletionLineIndex,e.deletionLineIndex+(e.deletionCount??e.deletionLines??0)),i=t.additionLines.slice(e.additionLineIndex,e.additionLineIndex+(e.additionStart!==void 0&&e.additionLines!==void 0?e.additionLines:e.additionCount??0));return(0,G.jsxs)(IW,{open:de!==null,onClose:()=>fe(null),className:`hunk-revert-modal`,ariaLabel:`Selective Revert Preview Hunk #${de+1}`,children:[(0,G.jsxs)(`div`,{className:`shortcuts-header`,children:[(0,G.jsxs)(`div`,{className:`shortcuts-header-title`,children:[(0,G.jsx)(ak,{size:18,className:`shortcuts-icon`}),(0,G.jsxs)(`h2`,{children:[`Revert Hunk #`,de+1]})]}),(0,G.jsx)(`button`,{className:`shortcuts-close-btn`,onClick:()=>fe(null),"aria-label":`Close dialog`,children:(0,G.jsx)(sk,{size:16})})]}),(0,G.jsxs)(`div`,{className:`shortcuts-body`,children:[(0,G.jsxs)(`div`,{className:`hunk-preview-intro`,children:[`Reverting this hunk will restore the deleted (`,(0,G.jsx)(`span`,{style:{color:`var(--feedback-danger-text)`,fontWeight:600},children:`red`}),`) lines and remove the added (`,(0,G.jsx)(`span`,{style:{color:`var(--feedback-success-text)`,fontWeight:600},children:`green`}),`) lines from `,(0,G.jsx)(`strong`,{children:n.split(`/`).pop()}),`.`]}),(0,G.jsxs)(`div`,{className:`hunk-preview-container`,children:[(0,G.jsxs)(`div`,{className:`hunk-preview-header`,children:[(0,G.jsx)(`span`,{children:n}),(0,G.jsxs)(`span`,{children:[`Lines: @-`,e.deletionStart,`,`,e.deletionCount??e.deletionLines??0,` @+`,e.additionStart,`,`,e.additionLines??e.additionCount??0]})]}),(0,G.jsxs)(`div`,{className:`hunk-preview-code`,children:[r.map((e,t)=>(0,G.jsxs)(`div`,{className:`hunk-preview-line hunk-preview-line-deletion`,children:[(0,G.jsx)(`span`,{className:`hunk-preview-sign`,children:`-`}),(0,G.jsx)(`span`,{className:`hunk-preview-text`,children:e})]},`del-${t}`)),i.map((e,t)=>(0,G.jsxs)(`div`,{className:`hunk-preview-line hunk-preview-line-addition`,children:[(0,G.jsx)(`span`,{className:`hunk-preview-sign`,children:`+`}),(0,G.jsx)(`span`,{className:`hunk-preview-text`,children:e})]},`add-${t}`)),r.length===0&&i.length===0&&(0,G.jsx)(`div`,{className:`hunk-preview-line`,style:{fontStyle:`italic`,color:`var(--text-muted)`},children:`No changes in this hunk.`})]})]}),(0,G.jsx)(SG,{filePath:n,deletionStart:e.deletionStart,deletionCount:e.deletionCount??e.deletionLines??0})]}),(0,G.jsxs)(`div`,{className:`modal-footer`,children:[(0,G.jsx)(`button`,{className:`hunk-revert-btn-secondary`,onClick:()=>fe(null),children:`Cancel`}),(0,G.jsx)(`button`,{className:`hunk-revert-btn-primary`,onClick:async()=>{let e=de;fe(null),await _e(e,!0)},children:`Revert Changes`})]})]})})(),!B&&(0,G.jsxs)(`div`,{className:`file-diff-card-body`,children:[!me&&(0,G.jsx)(`div`,{className:`file-diff-body-placeholder`,"aria-hidden":`true`,children:`Loading diff…`}),me&&t.hunks.length>0&&(0,G.jsx)(oG,{fileDiff:t,filePath:n,onJump:(e,t)=>{oE(e,t,`additions`)}}),me&&(Pe.length>0||Le.length>0||ae)&&(0,G.jsxs)(`div`,{className:`file-level-comments-section`,style:{margin:`16px 20px`,padding:`12px`,background:`rgba(255,255,255,0.02)`,border:`1px solid var(--border-color)`,borderRadius:`8px`,display:`flex`,flexDirection:`column`,gap:`12px`},children:[(0,G.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`6px`,fontSize:`13px`,fontWeight:600,color:`var(--text-secondary)`},children:[(0,G.jsx)(NO,{size:14}),(0,G.jsxs)(`span`,{children:[`File-Level Comments (`,Pe.length+Le.length,`)`]})]}),Pe.length>0&&(0,G.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:`12px`},children:Pe.map(e=>(0,G.jsx)(QW,{comment:e.metadata,onDelete:w},e.metadata.id))}),Le.map(e=>(0,G.jsx)($W,{comment:e,onReply:T,onEdit:E,onDelete:D,onSetResolved:O},`github-${e.id}`)),ae&&(0,G.jsx)(`div`,{style:{background:`var(--bg-secondary)`,borderRadius:`6px`,border:`1px solid var(--border-color)`},children:(0,G.jsx)(XW,{draftKey:`file-comment:${n}`,lineContent:``,onSubmit:(e,t)=>{C(n,`additions`,0,``,e,void 0,t),oe(!1)},onCancel:()=>oe(!1)})})]}),me&&we?(0,G.jsx)(Xg,{oldFile:{name:be,contents:Se??``},newFile:{name:n,contents:Ce??``},options:{diffStyle:a,enableGutterUtility:!0,enableLineSelection:!0,disableFileHeader:!0,lineDiffType:u,overflow:d?`wrap`:`scroll`,diffIndicators:f,disableLineNumbers:!p,hunkSeparators:m,lineHoverHighlight:h,expandUnchanged:!1,collapsedContextThreshold:y,expansionLineCount:b,onLineSelectionStart:ze,onLineSelectionChange:Be,onLineSelectionEnd:Ve,onGutterUtilityClick:He,onLineNumberClick:e=>{let t=e.annotationSide===`deletions`?`deletions`:`additions`,r=`${n}:${t===`deletions`?`-`:`+`}${e.lineNumber}`,i=new URLSearchParams({file:n,line:String(e.lineNumber),side:t}),a=typeof window<`u`?`${window.location.origin}${window.location.pathname}?${i}`:r;navigator.clipboard?.writeText(a).then(()=>{z(r),setTimeout(()=>z(null),1600)},()=>{})},theme:{dark:Te.type===`dark`?Te.themeName:`nord`,light:Te.type===`light`?Te.themeName:`github-light`},themeType:Te.type,unsafeCSS:Ee},selectedLines:j?N:void 0,lineAnnotations:Ue,renderHeaderMetadata:()=>null,renderAnnotation:Re}):me?(0,G.jsx)(Yg,{fileDiff:t,options:{diffStyle:a,enableGutterUtility:!0,enableLineSelection:!0,disableFileHeader:!0,lineDiffType:u,overflow:d?`wrap`:`scroll`,diffIndicators:f,disableLineNumbers:!p,hunkSeparators:m,lineHoverHighlight:h,onLineSelectionStart:ze,onLineSelectionChange:Be,onLineSelectionEnd:Ve,onGutterUtilityClick:He,onLineNumberClick:e=>{let t=e.annotationSide===`deletions`?`deletions`:`additions`,r=`${n}:${t===`deletions`?`-`:`+`}${e.lineNumber}`,i=new URLSearchParams({file:n,line:String(e.lineNumber),side:t}),a=typeof window<`u`?`${window.location.origin}${window.location.pathname}?${i}`:r;navigator.clipboard?.writeText(a).then(()=>{z(r),setTimeout(()=>z(null),1600)},()=>{})},theme:{dark:Te.type===`dark`?Te.themeName:`nord`,light:Te.type===`light`?Te.themeName:`github-light`},themeType:Te.type,unsafeCSS:Ee},selectedLines:j?N:void 0,lineAnnotations:Ue,renderHeaderMetadata:()=>null,renderAnnotation:Re}):null]})]})});function SG({filePath:e,deletionStart:t,deletionCount:n}){let[r,i]=(0,W.useState)(null),[a,o]=(0,W.useState)(!1),[s,c]=(0,W.useState)(null);if((0,W.useEffect)(()=>{let r=!0;return(async()=>{o(!0),c(null);try{let a=new URLSearchParams({filePath:e,deletionStart:String(t),deletionCount:String(n)}),o=await fetch(`/api/hunk-history?${a}`);if(!o.ok)throw Error(`HTTP ${o.status}`);let s=await o.json();r&&i(s)}catch(e){r&&c(e.message||`Failed to fetch hunk history`)}finally{r&&o(!1)}})(),()=>{r=!1}},[e,t,n]),a)return(0,G.jsxs)(`div`,{className:`hunk-history-loading`,children:[(0,G.jsx)(EO,{size:14,className:`spin`,style:{marginRight:`8px`}}),(0,G.jsx)(`span`,{children:`Loading git history & origin blame…`})]});if(s)return(0,G.jsxs)(`div`,{className:`hunk-history-error`,children:[(0,G.jsx)(qD,{size:14,style:{color:`var(--feedback-danger-text)`,marginRight:`8px`}}),(0,G.jsxs)(`span`,{children:[`Failed to load git history: `,s]})]});if(!r)return null;let l=Array.from(new Map(r.blame.map(e=>[e.commit,e])).values());return(0,G.jsxs)(`div`,{className:`hunk-history-section`,children:[l.length>0&&(0,G.jsxs)(`div`,{className:`hunk-history-block`,children:[(0,G.jsx)(`h3`,{className:`hunk-history-title`,children:`Commit(s) introducing deleted lines`}),(0,G.jsx)(`div`,{className:`hunk-history-commits`,children:l.map(e=>(0,G.jsxs)(`div`,{className:`hunk-history-commit-card`,children:[(0,G.jsxs)(`div`,{className:`hunk-history-commit-header`,children:[(0,G.jsx)(`span`,{className:`hunk-history-commit-hash`,children:e.commit}),(0,G.jsxs)(`span`,{className:`hunk-history-commit-author`,children:[(0,G.jsx)(ok,{size:11}),(0,G.jsx)(`span`,{children:e.author})]}),(0,G.jsxs)(`span`,{className:`hunk-history-commit-date`,children:[(0,G.jsx)(nO,{size:11}),(0,G.jsx)(`span`,{children:e.date})]})]}),(0,G.jsx)(`div`,{className:`hunk-history-commit-msg`,children:e.summary})]},e.commit))})]}),r.recentCommits.length>0&&(0,G.jsxs)(`div`,{className:`hunk-history-block`,children:[(0,G.jsx)(`h3`,{className:`hunk-history-title`,children:`Recent File Modification History`}),(0,G.jsx)(`div`,{className:`hunk-history-log`,children:r.recentCommits.map(e=>(0,G.jsxs)(`div`,{className:`hunk-history-log-row`,children:[(0,G.jsx)(`span`,{className:`hunk-history-log-hash`,children:e.hash}),(0,G.jsx)(`span`,{className:`hunk-history-log-msg`,title:e.summary,children:e.summary}),(0,G.jsx)(`span`,{className:`hunk-history-log-author`,children:e.author}),(0,G.jsx)(`span`,{className:`hunk-history-log-date`,children:e.date})]},e.hash))})]})]})}function CG(e,t,n){return`
1943
1943
  :host {
1944
1944
  --diffs-tab-size: ${e} !important;
1945
1945
  --diffs-font-family: ${n} !important;
@@ -3956,4 +3956,4 @@ https://github.com/highlightjs/highlight.js/issues/2277`),i=e,r=t),n===void 0&&(
3956
3956
  overflow-wrap: break-word !important;
3957
3957
  min-width: 0 !important;
3958
3958
  }
3959
- `}var Y4={pending:{icon:nO,className:`plan-badge-pending`,label:`Pending`},approved:{icon:HD,className:`plan-badge-approved`,label:`Approved`},"changes-requested":{icon:MO,className:`plan-badge-changes`,label:`Changes`},rejected:{icon:sk,className:`plan-badge-rejected`,label:`Rejected`},"comment-only":{icon:NO,className:`plan-badge-comment-only`,label:`Comment only`}},X4=[`all`,`pending`,`approved`,`changes-requested`,`rejected`,`comment-only`];function Z4(){try{let e=CD(y4.decisionFilter);if(e&&X4.includes(e))return e}catch{}return`all`}function Q4({plans:e,activeId:t,onSelect:n,onDelete:r,collapsed:i,onToggleCollapse:a}){let[o,s]=(0,W.useState)(``),[c,l]=(0,W.useState)(Z4),[u,d]=(0,W.useState)(null),f=(0,W.useCallback)(e=>{l(e),DD(y4.decisionFilter,e)},[]),p=(0,W.useMemo)(()=>[...e].sort((e,t)=>t.createdAt-e.createdAt),[e]),m=(0,W.useMemo)(()=>{let e=o.toLowerCase().trim();return p.filter(t=>c!==`all`&&t.decision!==c?!1:e?`${t.title} ${t.source??``} ${t.sourcePath??``} ${t.model??``} ${t.id}`.toLowerCase().includes(e):!0)},[p,o,c]),h=(0,W.useMemo)(()=>e.filter(e=>e.decision===`pending`).length,[e]);return i?(0,G.jsx)(`div`,{className:`plan-list plan-list-collapsed`,children:a&&(0,G.jsx)($T,{content:`Expand sidebar · b`,side:`right`,children:(0,G.jsx)(`button`,{className:`sidebar-toggle`,onClick:a,"aria-label":`Expand sidebar`,children:(0,G.jsx)(HO,{size:16})})})}):(0,G.jsxs)(`div`,{className:`plan-list`,children:[(0,G.jsxs)(`div`,{className:`plan-list-chrome`,children:[(0,G.jsxs)(`div`,{className:`plan-list-toolbar`,children:[a&&(0,G.jsx)($T,{content:`Collapse sidebar · b`,side:`right`,children:(0,G.jsx)(`button`,{className:`sidebar-toggle`,onClick:a,"aria-label":`Collapse sidebar`,children:(0,G.jsx)(VO,{size:16})})}),(0,G.jsxs)(`div`,{className:`plan-list-search`,children:[(0,G.jsx)(XO,{size:14,className:`plan-list-search-icon`,"aria-hidden":`true`}),(0,G.jsx)(`input`,{type:`text`,placeholder:`Search plans…`,value:o,onChange:e=>s(e.target.value),className:`plan-list-search-input`,"aria-label":`Search plans`})]})]}),(0,G.jsx)(`div`,{className:`plan-list-filters`,role:`group`,"aria-label":`Filter by decision`,children:[{id:`all`,label:`All`},{id:`pending`,label:h?`Pending ${h}`:`Pending`},{id:`approved`,label:`Approved`},{id:`changes-requested`,label:`Changes`},{id:`rejected`,label:`Rejected`}].map(e=>(0,G.jsx)(`button`,{type:`button`,className:`plan-list-filter ${c===e.id?`is-active`:``}`,"aria-pressed":c===e.id,onClick:()=>f(e.id),children:e.label},e.id))})]}),(0,G.jsxs)(`div`,{className:`plan-list-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-list-header`,children:(0,G.jsx)(`span`,{children:m.length===e.length?`${e.length} plan${e.length===1?``:`s`}`:`${m.length} of ${e.length}`})}),m.length===0&&(0,G.jsx)(`div`,{className:`plan-list-empty`,children:o||c!==`all`?`No matching plans.`:`No plans yet.`}),(0,G.jsx)(`div`,{className:`plan-list-items`,children:m.map(e=>{let i=Y4[e.decision],a=i.icon,o=(e.comments??[]).filter(e=>e.status===`open`).length,s=e.sourcePath||e.source,c=e.id===t;return(0,G.jsxs)(`div`,{className:`plan-list-item ${c?`plan-list-item-active`:``}`,onClick:()=>n(e.id),role:`button`,tabIndex:0,"aria-current":c?`true`:void 0,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),n(e.id))},children:[(0,G.jsxs)(`div`,{className:`plan-list-item-top`,children:[(0,G.jsx)(`span`,{className:`plan-badge plan-badge-dot ${i.className}`,title:i.label,children:(0,G.jsx)(a,{size:11,"aria-hidden":`true`})}),(0,G.jsx)(`span`,{className:`plan-list-item-title`,title:e.title,children:e.title}),s&&(0,G.jsx)($T,{content:`Copy source path`,children:(0,G.jsx)(`button`,{className:`plan-list-copy-path`,title:`Copy source path`,"aria-label":`Copy source path`,onClick:t=>{t.stopPropagation();let n=e.sourcePath||e.source||``;navigator.clipboard?.writeText(n).then(()=>{d(e.id),window.setTimeout(()=>d(null),1200)},()=>{})},children:u===e.id?(0,G.jsx)(HD,{size:12}):(0,G.jsx)(aO,{size:12})})}),(0,G.jsx)(`button`,{className:`plan-list-delete`,title:`Delete plan`,"aria-label":`Delete plan`,onClick:t=>{t.stopPropagation(),r(e.id)},children:(0,G.jsx)(nk,{size:12,"aria-hidden":`true`})})]}),(0,G.jsxs)(`div`,{className:`plan-list-item-sub`,children:[(0,G.jsxs)(`span`,{className:`plan-list-item-version`,children:[`v`,e.version]}),o>0&&(0,G.jsxs)(`span`,{className:`plan-list-item-open`,children:[o,` open`]}),e.model&&(0,G.jsxs)(`span`,{className:`plan-list-item-model`,title:e.model,children:[(0,G.jsx)(BD,{size:10,"aria-hidden":`true`}),e.model]}),(0,G.jsx)(`span`,{className:`plan-list-item-time`,children:eE(e.createdAt)})]})]},e.id)})})]})]})}var $4=[{value:`approved`,label:`Approve`,description:`The plan looks good — the agent should proceed.`,icon:HD,className:`plan-verdict-approve`},{value:`changes-requested`,label:`Request changes`,description:`The agent should revise the plan and resubmit it.`,icon:MO,className:`plan-verdict-changes`},{value:`rejected`,label:`Reject`,description:`Don't proceed — the approach needs rethinking.`,icon:sk,className:`plan-verdict-reject`},{value:`comment-only`,label:`Comment only`,description:`Agent must NOT edit files — only reply to comments. General note goes to chat.`,icon:NO,className:`plan-verdict-comment-only`}];function e3({openCommentCount:e,onSubmit:t,submitting:n,agentWaiting:r,currentDecision:i}){let{haptic:a,sound:o}=pD(),[s,c]=(0,W.useState)(!1),[l,u]=(0,W.useState)(null),[d,f]=(0,W.useState)(``),{popoverStyle:p,activePreset:m,applyPreset:h,startResize:g,startLeftResize:_,startCornerResize:v,handleOpenChange:y,panelRef:b}=IH(),x=async()=>{l&&(a(`heavy`),o(`send`),await t(l,d,l===`comment-only`?`comment-only`:`standard`),f(``),u(null),c(!1))},S=i!==`pending`;return(0,G.jsx)(Zk,{open:s,onOpenChange:(e,t)=>y(e,t,c),ariaLabel:`Submit plan review`,className:`submit-plan-review-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:n,title:r?`An agent is connected and waiting for your verdict`:`Submit your verdict on this plan`,style:{display:`inline-flex`,alignItems:`center`,gap:`6px`},children:[r&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),S?(0,G.jsx)(KO,{size:14}):(0,G.jsx)($D,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:n?`Submitting…`:S?`Update review`:`Submit review`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:b,style:p,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:_,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[S?(0,G.jsx)(KO,{size:15,"aria-hidden":`true`}):(0,G.jsx)($D,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:S?`Update plan review`:`Submit plan review`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":m===t,"aria-pressed":m===t,onClick:()=>h(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),e>0&&(0,G.jsxs)(`span`,{className:`srp-count`,children:[e,` open comment`,e===1?``:`s`]})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:$4.map(e=>{let t=e.icon,n=l===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>u(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`plan-decision-comment`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`plan-decision-comment`,value:d,onChange:f,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the agent that applies to the whole plan…`,rows:3,ariaLabel:`Overall plan review comment`,onSubmitShortcut:x})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>c(!1),disabled:n,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:x,disabled:!l||n,children:n?`Submitting…`:`Submit review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:g,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:v,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}var t3=[11,12,13,14,15,16].map(e=>({value:String(e),label:`${e}px`})),n3=[2,4,8].map(e=>({value:String(e),label:String(e)})),r3=[{value:`both`,label:`Both`},{value:`line`,label:`Line only`},{value:`number`,label:`Number only`},{value:`disabled`,label:`Disabled`}];function i3(){let e=Am(),{settings:t,loaded:n,updateSettings:r}=IE();LE(n,t.uiFont,t.monoFont);let{plans:i,getPlan:a,removePlan:o,agentActivity:s,clearAgentActivity:c,submitDecision:l,submitting:u,agentWaiting:d,isLoading:f}=wE(),p=jE(),[m,h]=(0,W.useState)(!1),[g,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(!1);(0,W.useEffect)(()=>{let e=e=>{if(e.metaKey||e.ctrlKey){if(e.key===`,`||e.code===`Comma`){e.preventDefault(),_(e=>!e);return}(e.key===`?`||e.key===`/`&&e.shiftKey||e.code===`Slash`&&e.shiftKey)&&(e.preventDefault(),y(!0))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let[b,x]=(0,W.useState)(()=>{try{let e=CD(y4.viewMode);if(e===`rendered`||e===`split`||e===`source`)return e}catch{}return`source`}),S=(0,W.useCallback)(e=>{x(e);try{DD(y4.viewMode,e)}catch{}},[]),[C,w]=(0,W.useState)(()=>b4(y4.zenMode,!1)),T=(0,W.useCallback)(e=>{w(e);try{DD(y4.zenMode,String(e))}catch{}},[]),E=(0,W.useCallback)(()=>{b===`rendered`?T(!C):(S(`rendered`),T(!0))},[b,C,S,T]),[D,O]=(0,W.useState)(()=>{try{let e=CD(y4.tocOpen);if(e===`false`)return!1;if(e===`true`)return!0}catch{}return!0}),[k,A]=(0,W.useState)(()=>{try{let e=CD(y4.commentsRail);if(e===`false`)return!1;if(e===`true`)return!0}catch{}return!0}),j=(0,W.useCallback)(e=>{O(e),DD(y4.tocOpen,String(e))},[]),M=(0,W.useCallback)(e=>{A(e),DD(y4.commentsRail,String(e))},[]),N=(0,W.useCallback)(()=>{j(!D)},[D,j]),P=(0,W.useCallback)(()=>{M(!k)},[k,M]),F=(0,W.useMemo)(()=>{let e=/^\/plan\/([^/]+)/.exec(p);return e?decodeURIComponent(e[1]):null},[p]),I=(0,W.useMemo)(()=>F?a(F):i.length===0?null:[...i].reverse().find(e=>e.decision===`pending`)??i[i.length-1],[F,i,a]),L=(0,W.useMemo)(()=>nE[t.theme||`nord`]||nE.nord,[t.theme]);(0,W.useEffect)(()=>{let e=t.theme||`nord`,n=document.documentElement;n.classList.add(`theme-switching`),n.setAttribute(`data-theme`,e);let r=requestAnimationFrame(()=>{requestAnimationFrame(()=>n.classList.remove(`theme-switching`))});return()=>cancelAnimationFrame(r)},[t.theme]),(0,W.useEffect)(()=>{e&&e.setRenderOptions({theme:{dark:L.type===`dark`?L.themeName:`nord`,light:L.type===`light`?L.themeName:`github-light`}}).catch(e=>console.error(`Failed to set worker pool render options:`,e))},[e,L]),(0,W.useEffect)(()=>{let e=L.type===`dark`?L.themeName:`nord`,t=L.type===`light`?L.themeName:`github-light`;Uf({themes:Array.from(new Set([e,t])),langs:[]}).catch(()=>{})},[L]);let[R,z]=(0,W.useState)(()=>{try{let e=CD(`diffing-sidebar-collapsed`);if(e!=null)return e===`true`}catch{}return typeof window<`u`&&window.innerWidth<=768}),[ee,te]=(0,W.useState)(()=>{try{let e=CD(`diffing-sidebar-width`);return e?Number(e):320}catch{return 320}});(0,W.useEffect)(()=>{try{DD(`diffing-sidebar-collapsed`,String(R))}catch{}},[R]);let ne=(0,W.useRef)(ee);ne.current=ee;let B=(0,W.useRef)(null),V=(0,W.useRef)(null),re=(0,W.useRef)(null),ie=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientX,n=ne.current,r=V.current,i=re.current,a=r?r.getBoundingClientRect().left:0,o=n,s=0,c=()=>{s=0,i&&(i.style.transform=`translateX(${a+o}px)`)};i&&(i.style.transform=`translateX(${a+n}px)`,i.classList.add(`sidebar-resize-guide-active`));let l=e=>{let r=e.clientX-t;o=Math.max(240,Math.min(640,n+r)),s||=requestAnimationFrame(c)},u=()=>{s&&cancelAnimationFrame(s),i&&i.classList.remove(`sidebar-resize-guide-active`),te(o);try{DD(`diffing-sidebar-width`,String(o))}catch{}document.removeEventListener(`mousemove`,l),document.removeEventListener(`mouseup`,u),document.body.style.cursor=``,document.body.style.userSelect=``};document.addEventListener(`mousemove`,l),document.addEventListener(`mouseup`,u),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[]),ae=(0,W.useCallback)(()=>{z(e=>!e)},[]),oe=(0,W.useCallback)(()=>{r({lineWrap:!t.lineWrap})},[t.lineWrap,r]),se=(0,W.useCallback)(()=>{r({showLineNumbers:!t.showLineNumbers})},[t.showLineNumbers,r]),ce=(0,W.useCallback)(()=>{let e=[`source`,`rendered`,`split`],t=e[(e.indexOf(b)+1)%e.length];S(t)},[b,S]),H=(0,W.useCallback)(()=>{let e=[2,4,8],n=t.defaultTabSize||4;r({defaultTabSize:e[(e.indexOf(n)+1)%e.length]})},[t.defaultTabSize,r]),le=(0,W.useCallback)(e=>{if(i.length===0)return;let t=[...i].sort((e,t)=>t.createdAt-e.createdAt),n=0;if(I){let r=t.findIndex(e=>e.id===I.id);r!==-1&&(n=e===`next`?Math.min(r+1,t.length-1):Math.max(r-1,0))}let r=t[n];DE(`/plan/${r.id}`)},[i,I]);(0,W.useEffect)(()=>{let e=``,t,n=0,r=r=>{let i=document.activeElement;if(i){let e=i.tagName.toLowerCase();if(e===`input`||e===`textarea`||i.hasAttribute(`contenteditable`))return}clearTimeout(t);let a=r.key;if(r.ctrlKey){a===`d`?(r.preventDefault(),window.scrollBy({top:window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),e=``):a===`u`&&(r.preventDefault(),window.scrollBy({top:-window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),e=``);return}if(!(a.length>1&&a!==`Escape`&&a!==`Enter`))if(e+=a,t=setTimeout(()=>{e=``},800),e===`j`){r.preventDefault(),window.scrollBy({top:100,behavior:`auto`});let t=Date.now();t-n>80&&(lD(`navigate`),n=t),e=``}else if(e===`k`){r.preventDefault(),window.scrollBy({top:-100,behavior:`auto`});let t=Date.now();t-n>80&&(lD(`navigate`),n=t),e=``}else e===`gg`?(r.preventDefault(),window.scrollTo({top:0,behavior:`auto`}),dD(`selection`,`navigate`),e=``):e===`G`?(r.preventDefault(),window.scrollTo({top:document.documentElement.scrollHeight,behavior:`auto`}),dD(`selection`,`navigate`),e=``):e===`J`?(r.preventDefault(),le(`next`),dD(`selection`,`navigate`),e=``):e===`K`?(r.preventDefault(),le(`prev`),dD(`selection`,`navigate`),e=``):e===`m`?(r.preventDefault(),ce(),dD(`selection`,`toggle`),e=``):e===`z`?(r.preventDefault(),E(),dD(`selection`,`toggle`),e=``):e===`c`?(r.preventDefault(),P(),dD(`selection`,`toggle`),e=``):e===`o`?(r.preventDefault(),N(),dD(`selection`,`toggle`),e=``):e===`t`?(r.preventDefault(),H(),dD(`selection`,`toggle`),e=``):e===`b`?(r.preventDefault(),ae(),dD(`selection`,`toggle`),e=``):e===`w`?(r.preventDefault(),oe(),dD(`selection`,`toggle`),e=``):e===`n`?(r.preventDefault(),se(),dD(`selection`,`toggle`),e=``):e===`gt`?(r.preventDefault(),h(!0),dD(`medium`,`open`),e=``):e===`?`?(r.preventDefault(),y(!0),dD(`medium`,`open`),e=``):e.length>=2&&(e=``)};return window.addEventListener(`keydown`,r),()=>{window.removeEventListener(`keydown`,r)}},[ae,oe,se,ce,E,P,N,H,le]);let ue=(0,W.useMemo)(()=>I?(I.comments??[]).filter(e=>e.status===`open`).length:0,[I]);return f||!n?(0,G.jsxs)(`div`,{className:`app plan-app skeleton-app`,style:{"--sidebar-width":`${ee}px`},children:[(0,G.jsxs)(`header`,{className:`skeleton-toolbar`,children:[(0,G.jsx)(`div`,{className:`skeleton-item skeleton-logo`,style:{width:`140px`}}),(0,G.jsx)(`div`,{className:`skeleton-item skeleton-stats`,style:{width:`80px`,marginLeft:`20px`}}),(0,G.jsx)(`div`,{className:`skeleton-item skeleton-actions`,style:{width:`220px`}})]}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsx)(`aside`,{className:`sidebar plan-sidebar skeleton-sidebar ${R?`sidebar-collapsed`:``}`,children:!R&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`skeleton-search`,style:{height:`32px`,margin:`0 16px 16px 16px`}}),(0,G.jsx)(`div`,{className:`skeleton-tree-nodes`,children:Array.from({length:4}).map((e,t)=>(0,G.jsxs)(`div`,{className:`skeleton-tree-node`,style:{paddingLeft:`16px`,height:`40px`,borderBottom:`1px solid var(--border-weak)`},children:[(0,G.jsx)(`div`,{className:`skeleton-node-icon`,style:{width:`20px`,height:`20px`,borderRadius:`50%`}}),(0,G.jsx)(`div`,{className:`skeleton-node-text`,style:{width:`${80+t*30%90}px`,height:`14px`}})]},t))})]})}),!R&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,style:{cursor:`default`}}),(0,G.jsx)(`main`,{className:`main plan-main skeleton-main`,children:(0,G.jsxs)(`div`,{className:`file-diff-card skeleton-card`,style:{border:`1px solid var(--border-color)`,borderRadius:`8px`},children:[(0,G.jsxs)(`div`,{className:`skeleton-card-header`,style:{padding:`16px 20px`},children:[(0,G.jsx)(`div`,{className:`skeleton-card-title`,style:{width:`250px`,height:`20px`}}),(0,G.jsx)(`div`,{className:`skeleton-card-badge`,style:{width:`100px`,height:`24px`}})]}),(0,G.jsxs)(`div`,{className:`skeleton-card-body`,style:{padding:`24px`,background:`var(--bg-secondary)`,display:`flex`,flexDirection:`column`,gap:`16px`},children:[(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`90%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`75%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`85%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`40%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`60%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`80%`,height:`16px`}})]})]})})]})]}):(0,G.jsx)(fD,{enabled:t.haptics??!0,soundsEnabled:t.sounds??!0,children:(0,G.jsxs)(`div`,{className:`app plan-app`,ref:B,style:{"--sidebar-width":`${ee}px`},children:[(0,G.jsx)(`div`,{className:`sidebar-resize-guide`,ref:re,"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`toolbar plan-app-toolbar`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:()=>z(!R),"aria-label":`Toggle sidebar`,title:R?`Open sidebar`:`Close sidebar`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsx)($T,{content:`Back to diff review`,side:`bottom`,children:(0,G.jsxs)(`button`,{className:`btn btn-sm plan-toolbar-back`,onClick:()=>DE(`/`),"aria-label":`Back to the diff review`,children:[(0,G.jsx)(zD,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Diff`})]})}),(0,G.jsxs)(`div`,{className:`plan-toolbar-brand`,children:[(0,G.jsx)(VH,{size:18,className:`plan-app-brand`}),(0,G.jsxs)(`div`,{className:`plan-toolbar-brand-text`,children:[(0,G.jsx)(`h1`,{className:`toolbar-title plan-app-title`,children:`Plans`}),I?(0,G.jsx)(`span`,{className:`plan-toolbar-active`,title:I.title,children:I.title}):(0,G.jsxs)(`span`,{className:`plan-toolbar-count`,children:[i.length,` plan`,i.length===1?``:`s`]})]})]})]}),(0,G.jsx)(`div`,{className:`plan-view-toggle`,role:`group`,"aria-label":`Plan view mode`,children:[{id:`source`,label:`Source`,icon:rO,tip:`Source — select lines to comment`},{id:`rendered`,label:`Read`,icon:dO,tip:`Read — rendered markdown (highlight to comment)`},{id:`split`,label:`Split`,icon:iO,tip:`Split — source + rendered (drag the divider to resize)`}].map(({id:e,label:t,icon:n,tip:r})=>(0,G.jsx)($T,{content:`${r} · m to cycle`,side:`bottom`,children:(0,G.jsxs)(`button`,{type:`button`,className:`plan-view-toggle-btn ${b===e?`is-active`:``}`,"aria-pressed":b===e,"aria-label":r,onClick:()=>S(e),children:[(0,G.jsx)(n,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:t})]})},e))}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsx)(Zk,{open:g,onOpenChange:_,ariaLabel:`Settings`,className:`settings-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn ${g?`btn-active`:``}`,title:`Settings (⌘,)`,"aria-label":`Settings`,children:[(0,G.jsx)(ZO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Settings`})]}),children:(0,G.jsxs)(`div`,{className:`popover-scroll settings-panel`,children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Appearance`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Theme`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{_(!1),h(!0)},style:{display:`inline-flex`,alignItems:`center`},children:[(0,G.jsx)(BO,{size:14,style:{marginRight:`4px`}}),(0,G.jsx)(`span`,{children:`Switch Theme...`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Plan chrome`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:D,onChange:e=>j(e.target.checked)}),`Show outline`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:k,onChange:e=>M(e.target.checked)}),`Show comments panel`]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Display`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.lineWrap,onChange:e=>r({lineWrap:e.target.checked})}),`Wrap long lines`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.showLineNumbers,onChange:e=>r({showLineNumbers:e.target.checked})}),`Show line numbers`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.showStatusBar??!0,onChange:e=>r({showStatusBar:e.target.checked})}),`Show status bar`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hover highlight`}),(0,G.jsx)(eW,{value:t.lineHoverHighlight,onValueChange:e=>r({lineHoverHighlight:e}),options:r3,ariaLabel:`Hover highlight`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Font size`}),(0,G.jsx)(eW,{value:String(t.fontSize),onValueChange:e=>r({fontSize:Number(e)}),options:t3,ariaLabel:`Font size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Default tab size`}),(0,G.jsx)(eW,{value:String(t.defaultTabSize),onValueChange:e=>r({defaultTabSize:Number(e)}),options:n3,ariaLabel:`Default tab size`})]})]})}),I&&(0,G.jsx)(e3,{openCommentCount:ue,onSubmit:(e,t)=>l(I.id,e,t),submitting:u,agentWaiting:d,currentDecision:I.decision})]})]}),!R&&(0,G.jsx)(`div`,{className:`sidebar-mobile-backdrop`,onClick:()=>z(!0),"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsx)(`aside`,{ref:V,className:`sidebar plan-sidebar ${R?`sidebar-collapsed`:``}`,children:(0,G.jsx)(`div`,{style:{flex:1,minHeight:0,overflow:`hidden`},children:(0,G.jsx)(Q4,{plans:i,activeId:I?.id??null,onSelect:e=>DE(`/plan/${e}`),onDelete:e=>{o(e),I?.id===e&&DE(`/plan`)},collapsed:R,onToggleCollapse:()=>z(!R)})})}),!R&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,onMouseDown:ie,role:`separator`,"aria-label":`Resize sidebar`,"aria-orientation":`vertical`,tabIndex:0}),(0,G.jsx)(`main`,{className:`main plan-main`,children:I?(0,G.jsx)(q4,{plan:I,theme:t.theme||`nord`,fontSize:t.fontSize,monoFontFamily:FE(t.monoFont),defaultTabSize:t.defaultTabSize,lineWrap:t.lineWrap,showLineNumbers:t.showLineNumbers,lineHoverHighlight:t.lineHoverHighlight,viewMode:b,onViewModeChange:S,editorIDE:t.editorIDE,tocOpen:D,onTocOpenChange:j,commentsRailOpen:k,onCommentsRailOpenChange:M,zenMode:C,onZenModeChange:T},I.id):(0,G.jsx)(a3,{hasPlans:i.length>0,notFound:!!F})})]}),(0,G.jsx)(z2,{open:m,activeTheme:t.theme||`nord`,onThemeChange:e=>r({theme:e}),onClose:()=>h(!1)}),(0,G.jsx)(L2,{activity:s?{at:s.at,commentId:s.commentId,filePath:`plan · ${s.planId.slice(0,8)}`,model:s.model,body:s.body}:null,onDismiss:c,onJump:()=>{s&&(DE(`/plan/${s.planId}`),requestAnimationFrame(()=>{document.getElementById(`plan-comment-${s.commentId}`)?.scrollIntoView({behavior:`smooth`,block:`center`})}))}}),(0,G.jsx)(F2,{activeFile:I?I.title:null,onShowHelp:()=>y(!0),placeholder:`No active plan (J/K to jump)`,visible:t.showStatusBar??!0}),(0,G.jsx)(I2,{isOpen:v,onClose:()=>y(!1),mode:`plan`})]})})}function a3({hasPlans:e,notFound:t}){return(0,G.jsxs)(`div`,{className:`plan-empty-state`,children:[(0,G.jsx)(`div`,{className:`plan-empty-icon`,"aria-hidden":`true`,children:(0,G.jsx)(eO,{size:28})}),t?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`Plan not found`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`It may have been deleted. Pick another from the list, or submit a new one.`})]}):e?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`Select a plan`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`Choose one from the sidebar to start reviewing.`})]}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`No plans yet`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`Agents submit a plan, you review it here, then they continue on approval.`}),(0,G.jsxs)(`div`,{className:`plan-empty-steps`,children:[(0,G.jsx)(`code`,{children:`diffing plan submit PLAN.md`}),(0,G.jsx)(`code`,{children:`diffing plan await`})]})]})]})}var o3=[`pr-session`];function s3(){let e=Ve(),{data:t,isLoading:n,error:r}=nt({queryKey:o3,queryFn:async()=>{let e=await fetch(`/api/gh/session`);if(e.status===404)return null;if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json();return t?.prMode===!1?null:t},retry:!1});return(0,W.useEffect)(()=>fE(`pr-session`,()=>{e.invalidateQueries({queryKey:o3})}),[e]),{session:t,loaded:!n,error:r}}function c3(e){let t=Ve();(0,W.useEffect)(()=>{if(!e)return;let n=!1,r=!1,i=async()=>{if(!(n||r||document.visibilityState===`hidden`)){r=!0;try{(await fetch(`/api/gh/comments/sync`,{method:`POST`})).ok&&!n&&await t.invalidateQueries({queryKey:o3})}finally{r=!1}}},a=()=>{i()};i();let o=window.setInterval(i,3e4);return window.addEventListener(`focus`,a),()=>{n=!0,window.clearInterval(o),window.removeEventListener(`focus`,a)}},[e,t])}var l3=[`pr-comments`];function u3(e){let t=Ve(),{data:n=[]}=nt({queryKey:l3,queryFn:async()=>{let e=await fetch(`/api/gh/pr-session/comments`);if(e.status===404)return[];if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()},enabled:e});(0,W.useEffect)(()=>fE(`pr-session`,()=>{t.invalidateQueries({queryKey:l3})}),[t]);let r=rt({mutationFn:async e=>(await fetch(`/api/gh/pr-session/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)})).json(),onSuccess:e=>{t.setQueryData(l3,(t=[])=>[...t,e])}}),i=rt({mutationFn:async e=>(await fetch(`/api/gh/pr-session/comments/${e}`,{method:`DELETE`}),e),onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.filter(t=>t.id!==e))}}),a=rt({mutationFn:async({id:e,body:t,status:n})=>(await fetch(`/api/gh/pr-session/comments/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,status:n})})).json(),onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e.id?e:t))}}),o=rt({mutationFn:async({id:e,body:t})=>{let n=await fetch(`/api/gh/pr-session/comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,role:`user`})}),r=await n.json().catch(()=>({}));if(!n.ok||!r.id)throw Error(r.error||`HTTP ${n.status}`);return r},onMutate:async({id:e,body:n})=>{await t.cancelQueries({queryKey:l3});let r=t.getQueryData(l3)??[],i=`pending-${crypto.randomUUID()}`;return t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e?{...t,replies:[...t.replies??[],{id:i,body:n,createdAt:Date.now(),role:`user`}]}:t)),{previous:r}},onError:(e,n,r)=>{r?.previous&&t.setQueryData(l3,r.previous)},onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e.id?e:t))}}),s=(0,W.useCallback)(e=>{a.mutate({id:e,status:`resolved`})},[a]),c=(0,W.useCallback)(e=>{a.mutate({id:e,status:`open`})},[a]),l=(0,W.useCallback)((e,t,n)=>{},[]),u=(0,W.useCallback)((e,t)=>{},[]);return{comments:n,addComment:r.mutate,removeComment:i.mutate,updateComment:a.mutate,addReply:o.mutateAsync,resolveComment:s,unresolveComment:c,editComment:(e,t)=>a.mutate({id:e,body:t}),editReply:l,removeReply:u}}function d3(){let e=Ve();return rt({mutationFn:async e=>{let t=new AbortController,n=window.setTimeout(()=>t.abort(),6e4);try{let n=await fetch(`/api/gh/submit`,{method:`POST`,headers:{"Content-Type":`application/json`},signal:t.signal,body:JSON.stringify({decision:e.decision,body:e.body,dryRun:e.dryRun})}),r=await n.json();if(!n.ok||!r.ok)throw Error(r.error||`HTTP ${n.status}`);return r}catch(e){throw t.signal.aborted?Error(`GitHub submission timed out. Check your connection and try again.`):e}finally{window.clearTimeout(n)}},onSuccess:()=>{e.setQueryData(l3,[]),e.invalidateQueries({queryKey:o3}),e.invalidateQueries({queryKey:l3})}})}function f3(){let e=Ve();return rt({mutationFn:async()=>{let e=await fetch(`/api/gh/pr/refresh`,{method:`POST`}),t=await e.json();if(!e.ok)throw Error(t.error||`HTTP ${e.status}`);return t},onSuccess:()=>{e.invalidateQueries({queryKey:o3}),e.invalidateQueries({queryKey:l3})}})}function p3(e){(0,W.useEffect)(()=>{let t=``,n,r=0,i=()=>{t=``,clearTimeout(n)},a=a=>{if((a.metaKey||a.ctrlKey)&&a.key.toLowerCase()===`k`){a.preventDefault(),e.onTogglePalette?e.onTogglePalette():e.onOpenPalette(`all`),i();return}let o=document.activeElement;if(o){let e=o.tagName.toLowerCase();if(e===`input`||e===`textarea`||o.hasAttribute(`contenteditable`))return}if((a.metaKey||a.ctrlKey)&&(a.key===`?`||a.key===`/`&&a.shiftKey||a.code===`Slash`&&a.shiftKey)){a.preventDefault(),e.onOpenShortcuts(),dD(`medium`,`open`),i();return}if(a.ctrlKey){(a.key===`d`||a.key===`u`)&&(a.preventDefault(),window.scrollBy({top:a.key===`d`?window.innerHeight/2:-window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),i());return}let s=a.key;if(s.length>1&&s!==`Escape`&&s!==`Enter`)return;clearTimeout(n),t+=s,n=setTimeout(()=>{t=``},800);let c=(e,t=`toggle`)=>{a.preventDefault(),e(),dD(t===`open`?`medium`:`selection`,t),i()};if(t===`j`||t===`k`){a.preventDefault(),window.scrollBy({top:t===`j`?100:-100,behavior:`auto`});let e=Date.now();e-r>80&&(lD(`navigate`),r=e),i()}else t===`gg`?c(()=>window.scrollTo({top:0,behavior:`auto`}),`navigate`):t===`G`?c(()=>window.scrollTo({top:document.documentElement.scrollHeight,behavior:`auto`}),`navigate`):t===`J`?c(()=>e.onNavigateFile(`next`),`navigate`):t===`K`?c(()=>e.onNavigateFile(`prev`),`navigate`):t===`]`&&e.onNavigateCommit?c(()=>e.onNavigateCommit?.(`next`),`navigate`):t===`[`&&e.onNavigateCommit?c(()=>e.onNavigateCommit?.(`prev`),`navigate`):t===`v`?c(e.onToggleViewed):t===`m`?c(e.onToggleDiffStyle):t===`t`?c(e.onCycleTabSize):t===`b`?c(e.onToggleSidebar):t===`w`?c(e.onToggleLineWrap):t===`n`?c(e.onToggleLineNumbers):t===`i`?c(e.onCycleDiffIndicators):t===`I`?c(e.onCycleLineDiffType):t===`/`?c(()=>e.onOpenPalette(`text`),`open`):t===`s`||t===`gs`?c(()=>e.onOpenPalette(`symbols`),`open`):t===`gf`?c(()=>e.onOpenPalette(`all`),`open`):t===`gv`?c(()=>e.onOpenPalette(`files`),`open`):t===`gt`?c(e.onOpenTheme,`open`):t===`?`?c(e.onOpenShortcuts,`open`):t.length>=2&&i()};return window.addEventListener(`keydown`,a),()=>{window.removeEventListener(`keydown`,a),clearTimeout(n)}},[e])}function m3({session:e,comments:t,onEditComment:n,onDeleteComment:r,onSubmitted:i}){let{haptic:a,sound:o}=pD(),s=d3(),[c,l]=(0,W.useState)(!1),[u,d]=(0,W.useState)(null),[f,p]=(0,W.useState)(``),{popoverStyle:m,activePreset:h,applyPreset:g,startResize:_,startLeftResize:v,startCornerResize:y,handleOpenChange:b,panelRef:x}=IH(),S=t.length,C=(0,W.useMemo)(()=>[...t].sort((e,t)=>e.createdAt-t.createdAt),[t]),w=!!e.submittedAt,T=async()=>{if(u){a(`heavy`),o(`send`);try{let e=await s.mutateAsync({decision:u,body:f});i?.(e),p(``),d(null),l(!1)}catch{}}};return(0,G.jsx)(Zk,{open:c,onOpenChange:(e,t)=>b(e,t,l),ariaLabel:`Submit your review to GitHub`,className:`submit-to-github-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:s.isPending,title:w?`Already submitted`:`Submit your review to the PR on GitHub`,style:{display:`inline-flex`,alignItems:`center`,gap:`6px`},children:[(0,G.jsx)(vO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:s.isPending?`Submitting…`:w?`Submitted ✓`:S>0?`Submit to GitHub (${S})`:`Submit to GitHub`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:x,style:m,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:v,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[(0,G.jsx)(vO,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:`Submit review to GitHub`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":h===t,"aria-pressed":h===t,onClick:()=>g(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),(0,G.jsxs)(`span`,{className:`srp-count`,children:[S,` comment`,S===1?``:`s`]})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[w&&(0,G.jsxs)(`div`,{className:`srp-already-submitted`,children:[(0,G.jsx)(HD,{size:13}),(0,G.jsxs)(`span`,{children:[`Already submitted as`,` `,e.submittedReviewUrl?(0,G.jsxs)(`a`,{href:e.submittedReviewUrl,target:`_blank`,rel:`noreferrer`,children:[`review #`,e.submittedReviewId,` `,(0,G.jsx)(sO,{size:11})]}):`review #${e.submittedReviewId}`,`. Re-submitting will post a new review on the same PR.`]})]}),(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:h3.map(e=>{let t=e.icon,n=u===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>d(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),S>0?(0,G.jsxs)(`section`,{className:`srp-comments-section`,"aria-labelledby":`srp-gh-comments-title`,children:[(0,G.jsxs)(`div`,{className:`srp-section-heading`,id:`srp-gh-comments-title`,children:[(0,G.jsx)(NO,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:`Inline comments to publish`}),(0,G.jsx)(`span`,{className:`srp-section-count`,children:S})]}),(0,G.jsx)(`ul`,{className:`srp-list`,"aria-label":`Comments to send`,children:C.map(e=>(0,G.jsx)(g3,{comment:e,onEdit:n,onDelete:r},e.id))})]}):(0,G.jsx)(`p`,{className:`srp-empty`,children:`No inline comments — your verdict and overall note will be sent on their own.`}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`srp-gh-general-input`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`srp-gh-general-input`,value:f,onChange:p,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the PR that applies to the whole review…`,rows:3,ariaLabel:`Overall PR review comment`,onSubmitShortcut:T})]}),s.isError&&(0,G.jsxs)(`div`,{className:`srp-error`,role:`alert`,children:[(0,G.jsx)(qD,{size:13}),(0,G.jsx)(`span`,{children:s.error?.message??`Submit failed`})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>l(!1),disabled:s.isPending,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:T,disabled:!u||s.isPending,children:s.isPending?`Submitting…`:u===`draft`?`Save draft review`:`Submit review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:_,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:y,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}var h3=[{value:`approve`,label:`Approve`,description:`The PR is good — submit an APPROVE review.`,icon:HD,className:`plan-verdict-approve`},{value:`comment`,label:`Comment`,description:`Leave neutral feedback (no approve / no request changes).`,icon:MO,className:`plan-verdict-changes`},{value:`request-changes`,label:`Request changes`,description:`The author must address the comments before merging.`,icon:sk,className:`plan-verdict-reject`},{value:`draft`,label:`Save as draft`,description:`Post a PENDING review on GitHub — finish it later in the PR UI.`,icon:uO,className:`plan-verdict-comment-only`}];function g3({comment:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),s=(0,W.useRef)(null);(0,W.useEffect)(()=>{r&&(s.current?.focus(),s.current?.select())},[r]);let c=e.lineNumber>0?e.startLineNumber&&e.startLineNumber!==e.lineNumber?`:${e.startLineNumber}-${e.lineNumber}`:`:${e.lineNumber}`:` · file`,l=()=>{let n=a.trim();n&&n!==e.body&&t(e.id,n),i(!1)};return(0,G.jsxs)(`li`,{className:`srp-item`,children:[(0,G.jsxs)(`div`,{className:`srp-item-top`,children:[(0,G.jsxs)(`span`,{className:`srp-item-loc`,children:[(0,G.jsx)(`span`,{className:`srp-item-file`,children:tE(e.filePath)}),(0,G.jsx)(`span`,{className:`srp-item-line`,children:c})]}),e.status===`resolved`&&(0,G.jsx)(`span`,{className:`srp-item-resolved`,children:`resolved`}),(0,G.jsxs)(`span`,{className:`srp-item-actions`,children:[r?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:l,title:`Save edit`,children:(0,G.jsx)(HD,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>{o(e.body),i(!1)},title:`Cancel edit`,children:(0,G.jsx)(sk,{size:13,"aria-hidden":`true`})})]}):(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>i(!0),title:`Edit comment`,children:(0,G.jsx)(WO,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn srp-icon-btn-danger`,onClick:()=>n(e.id),title:`Remove from review`,children:(0,G.jsx)(nk,{size:13,"aria-hidden":`true`})})]})]}),e.lineContent?.trim()&&(0,G.jsx)(`code`,{className:`srp-item-code`,children:e.lineContent.trim().slice(0,160)}),r?(0,G.jsx)(`textarea`,{ref:s,className:`srp-item-edit`,value:a,rows:2,onChange:e=>o(e.target.value),onKeyDown:t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)?(t.preventDefault(),l()):t.key===`Escape`&&(t.preventDefault(),o(e.body),i(!1))}}):(0,G.jsx)(`p`,{className:`srp-item-body`,children:e.body})]})}function _3({session:e,comments:t,settingsProps:n,sidebarCollapsed:r,onToggleSidebar:i,onOpenSearch:a,onRefresh:o,refreshing:s,onEditComment:c,onDeleteComment:l,onSubmitted:u}){return(0,G.jsxs)(`header`,{className:`toolbar diff-app-toolbar pr-review-toolbar`,role:`banner`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:i,"aria-label":r?`Open file tree`:`Close file tree`,"aria-expanded":!r,title:r?`Open sidebar · b`:`Close sidebar · b`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsx)(`button`,{className:`pr-toolbar-back`,onClick:()=>DE(`/`),title:`Back to local review`,"aria-label":`Back to local review`,children:(0,G.jsx)(zD,{size:14})}),(0,G.jsxs)(`div`,{className:`toolbar-brand pr-toolbar-brand`,children:[(0,G.jsx)(VH,{size:20,className:`toolbar-brand-mark`}),(0,G.jsxs)(`div`,{className:`toolbar-brand-text`,children:[(0,G.jsxs)(`h1`,{className:`toolbar-title`,children:[e.owner,`/`,e.repo]}),(0,G.jsxs)(`span`,{className:`toolbar-branch-inline`,title:`Pull request #${e.pullNumber}`,children:[(0,G.jsx)(vO,{size:11}),` #`,e.pullNumber]})]})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-search-btn`,onClick:a,title:`Search files and changed lines (⌘K)`,"aria-label":`Search`,children:[(0,G.jsx)(XO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Search`}),(0,G.jsx)(`kbd`,{className:`toolbar-search-kbd`,children:`⌘K`})]}),(0,G.jsxs)(`button`,{className:`btn btn-sm pr-header-copy`,onClick:()=>navigator.clipboard.writeText(vE(t)),disabled:t.length===0,title:`Copy draft comments as Markdown`,children:[(0,G.jsx)(aO,{size:13}),` `,(0,G.jsx)(`span`,{className:`btn-label`,children:`Copy`})]}),(0,G.jsxs)(`button`,{className:`btn btn-sm pr-header-refresh`,onClick:o,disabled:s,title:`Refresh PR from GitHub`,children:[(0,G.jsx)(KO,{size:13,className:s?`spinning`:``}),(0,G.jsx)(`span`,{className:`btn-label`,children:s?`Refreshing…`:`Refresh`})]}),(0,G.jsxs)(`a`,{className:`btn btn-sm pr-header-link`,href:e.url,target:`_blank`,rel:`noreferrer`,title:`Open pull request on GitHub`,children:[(0,G.jsx)(sO,{size:13}),` `,(0,G.jsx)(`span`,{className:`btn-label`,children:`GitHub`})]}),(0,G.jsx)(dW,{...n}),(0,G.jsx)(m3,{session:e,comments:t,onEditComment:c,onDeleteComment:l,onSubmitted:u})]})]})}var v3={APPROVED:{label:`approved these changes`,short:`Approved`,icon:JD},CHANGES_REQUESTED:{label:`requested changes`,short:`Changes requested`,icon:QD},COMMENTED:{label:`left a review comment`,short:`Commented`,icon:AO},PENDING:{label:`started a pending review`,short:`Pending`,icon:tO},DISMISSED:{label:`had a review dismissed`,short:`Dismissed`,icon:QD}};function y3({reviews:e}){let[t,n]=(0,W.useState)(e[0]?.id??null);if((0,W.useEffect)(()=>{n(e[0]?.id??null)},[e[0]?.id]),e.length===0)return null;let r=Math.max(0,e.findIndex(e=>e.id===t)),i=e[r]??e[0],a=v3[i.state],o=a.icon,s=i.submittedAt?new Date(i.submittedAt).getTime():null;return(0,G.jsxs)(`section`,{className:`pr-review-activity`,"aria-label":`GitHub review activity`,children:[(0,G.jsxs)(`header`,{className:`pr-review-activity-head`,children:[(0,G.jsxs)(`div`,{className:`pr-review-activity-identity`,children:[i.author?.avatarUrl?(0,G.jsx)(`img`,{src:i.author.avatarUrl,alt:``,className:`pr-review-activity-avatar`}):(0,G.jsx)(`span`,{className:`pr-review-activity-avatar is-fallback`,"aria-hidden":`true`,children:(0,G.jsx)(o,{size:14})}),(0,G.jsx)(o,{className:`pr-review-activity-state-icon`,"data-state":i.state,size:16,"aria-hidden":`true`}),(0,G.jsxs)(`span`,{children:[(0,G.jsxs)(`strong`,{children:[`@`,i.author?.login??`unknown`]}),` `,a.label]}),s!=null&&(0,G.jsx)(`time`,{dateTime:i.submittedAt,title:new Date(s).toLocaleString(),children:eE(s)}),(0,G.jsx)(`span`,{className:`pr-review-activity-verdict`,"data-state":i.state,children:a.short})]}),(0,G.jsxs)(`nav`,{className:`pr-review-activity-nav`,"aria-label":`Walk GitHub reviews`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm commit-walk-btn`,disabled:r===0,onClick:()=>n(e[r-1]?.id??i.id),"aria-label":`Newer review`,title:`Newer review`,children:(0,G.jsx)(WD,{size:14})}),(0,G.jsxs)(`span`,{children:[r+1,` / `,e.length]}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm commit-walk-btn`,disabled:r>=e.length-1,onClick:()=>n(e[r+1]?.id??i.id),"aria-label":`Older review`,title:`Older review`,children:(0,G.jsx)(GD,{size:14})}),i.htmlUrl&&(0,G.jsxs)(`a`,{className:`pr-review-activity-link`,href:i.htmlUrl,target:`_blank`,rel:`noreferrer`,children:[`View on GitHub `,(0,G.jsx)(sO,{size:11})]})]})]}),i.body.trim()?(0,G.jsx)(hH,{content:i.body,className:`pr-review-activity-body markdown-body`}):(0,G.jsx)(`p`,{className:`pr-review-activity-empty`,children:`No overall comment was submitted with this review.`})]})}function b3(e){return e.some(e=>e.state===`pending`)?8e3:3e4}function x3(e){return e===`success`?{icon:JD,className:`is-success`,label:`Succeeded`}:e===`pending`?{icon:tO,className:`is-pending`,label:`In progress`}:e===`failure`||e===`error`||e===`timed_out`||e===`action_required`?{icon:QD,className:`is-failure`,label:e===`timed_out`?`Timed out`:`Failed`}:e===`skipped`||e===`cancelled`||e===`neutral`?{icon:XD,className:`is-neutral`,label:e===`cancelled`?`Cancelled`:e===`skipped`?`Skipped`:`Neutral`}:{icon:YD,className:`is-neutral`,label:`Unknown`}}function S3({headSha:e}){let t=nt({queryKey:[`pr-checks`,e],queryFn:async()=>{let e=await fetch(`/api/gh/checks`),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error||`HTTP ${e.status}`);return t},refetchInterval:e=>b3(e.state.data?.checks??[]),refetchOnWindowFocus:!0,staleTime:5e3}),n=t.data?.checks??[],r=n.filter(e=>e.state===`success`).length,i=n.filter(e=>e.state===`pending`).length,a=n.filter(e=>[`failure`,`error`,`timed_out`,`action_required`].includes(e.state)).length,o=Math.max(0,n.length-r-i-a),s=a>0?`failure`:i>0?`pending`:n.length>0?`success`:`neutral`,c=s===`failure`?QD:s===`pending`?tO:s===`success`?JD:YD;return(0,G.jsx)(Zk,{ariaLabel:`GitHub checks`,className:`pr-checks-popover`,trigger:(0,G.jsxs)(`button`,{className:`toolbar-chip pr-checks-trigger is-${s}`,title:`Live GitHub checks and actions status`,type:`button`,children:[(0,G.jsx)(c,{size:12}),(0,G.jsx)(`span`,{children:t.isLoading?`Loading checks…`:n.length===0?`No checks`:a>0?`${a} failing`:i>0?`${i} running`:`${r}/${n.length} passed`})]}),children:(0,G.jsxs)(`div`,{className:`pr-checks-panel`,children:[(0,G.jsxs)(`div`,{className:`pr-checks-head`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`strong`,{children:`Checks and actions`}),(0,G.jsxs)(`span`,{children:[`Live status for `,e.slice(0,7)]})]}),(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:()=>t.refetch(),disabled:t.isFetching,"aria-label":`Refresh checks`,children:(0,G.jsx)(KO,{size:13,className:t.isFetching?`spinning`:``})})]}),n.length>0&&(0,G.jsxs)(`div`,{className:`pr-checks-summary`,"aria-label":`Checks summary`,children:[(0,G.jsxs)(`span`,{className:`is-success`,children:[(0,G.jsx)(JD,{size:12}),` `,r,` passed`]}),(0,G.jsxs)(`span`,{className:`is-failure`,children:[(0,G.jsx)(QD,{size:12}),` `,a,` failed`]}),(0,G.jsxs)(`span`,{className:`is-pending`,children:[(0,G.jsx)(tO,{size:12}),` `,i,` running`]}),o>0&&(0,G.jsxs)(`span`,{className:`is-neutral`,children:[(0,G.jsx)(XD,{size:12}),` `,o,` other`]})]}),t.isError?(0,G.jsxs)(`div`,{className:`pr-checks-empty is-error`,children:[(0,G.jsx)(qD,{size:15}),` `,t.error.message]}):t.isLoading?(0,G.jsx)(`div`,{className:`pr-checks-empty`,children:`Loading the latest GitHub status…`}):n.length===0?(0,G.jsx)(`div`,{className:`pr-checks-empty`,children:`No checks are reported for this commit.`}):(0,G.jsx)(`ul`,{className:`pr-checks-list`,children:n.map((e,t)=>{let n=x3(e.state),r=n.icon;return(0,G.jsxs)(`li`,{className:n.className,children:[(0,G.jsx)(r,{size:14}),(0,G.jsx)(`span`,{className:`pr-checks-name`,children:e.name}),(0,G.jsx)(`span`,{className:`pr-checks-state`,children:n.label}),e.detailsUrl&&(0,G.jsx)(`a`,{href:e.detailsUrl,target:`_blank`,rel:`noreferrer`,"aria-label":`Open ${e.name} on GitHub`,children:(0,G.jsx)(sO,{size:12})})]},`${e.name}-${t}`)})}),(0,G.jsx)(`div`,{className:`pr-checks-foot`,children:`Updates every 8 seconds while work is running.`})]})})}function C3({session:e,draftCount:t}){return(0,G.jsx)(`section`,{className:`diff-overview-banner pr-overview-banner`,"aria-label":`Pull request #${e.pullNumber}: ${e.title}`,children:(0,G.jsxs)(`header`,{className:`diff-overview-banner-header`,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-line`,children:[(0,G.jsx)(vO,{size:14,className:`diff-overview-banner-icon`,"aria-hidden":`true`}),(0,G.jsx)(`h2`,{className:`diff-overview-banner-headline`,children:e.title})]}),(0,G.jsxs)(`div`,{className:`diff-overview-banner-meta pr-overview-meta`,children:[(0,G.jsxs)(`span`,{className:`pr-overview-identity`,children:[`Pull request #`,e.pullNumber,e.author?.login?(0,G.jsxs)(G.Fragment,{children:[` by `,(0,G.jsxs)(`strong`,{children:[`@`,e.author.login]})]}):null]}),(0,G.jsxs)(`span`,{children:[e.changedFiles,` file`,e.changedFiles===1?``:`s`]}),(0,G.jsxs)(`span`,{className:`toolbar-chip-diff`,"aria-label":`${e.additions} additions and ${e.deletions} deletions`,children:[(0,G.jsxs)(`span`,{className:`stat-additions`,children:[`+`,e.additions]}),(0,G.jsxs)(`span`,{className:`stat-deletions`,children:[`−`,e.deletions]})]}),t>0&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-comments`,children:[t,` draft`,t===1?``:`s`]}),(0,G.jsx)(S3,{headSha:e.headSha})]})]})})}function w3({result:e,onDismiss:t}){return(0,G.jsxs)(`div`,{className:`pr-submitted-toast`,role:`status`,children:[(0,G.jsx)(JD,{size:16,className:`pr-submitted-icon`}),(0,G.jsxs)(`div`,{className:`pr-submitted-text`,children:[(0,G.jsx)(`strong`,{children:`Review submitted to GitHub.`}),e.reviewUrl&&(0,G.jsxs)(G.Fragment,{children:[` `,(0,G.jsxs)(`a`,{href:e.reviewUrl,target:`_blank`,rel:`noreferrer`,children:[`Open review on GitHub `,(0,G.jsx)(sO,{size:11})]})]}),e.authSource&&e.authSource!==`none`&&(0,G.jsxs)(`span`,{className:`pr-submitted-auth`,children:[`via `,e.authSource]})]}),(0,G.jsx)(`button`,{className:`pr-submitted-dismiss`,onClick:t,title:`Dismiss`,"aria-label":`Dismiss`,children:`×`})]})}function T3(){let e=Am(),t=Ve(),{settings:n,loaded:r,updateSettings:i}=IE(),[,a]=(0,W.useTransition)(),{session:o,loaded:s,error:c}=s3(),l=f3();c3(s&&!!o);let{comments:u,addComment:d,removeComment:f,updateComment:p,addReply:m,resolveComment:h,unresolveComment:g,editComment:_,editReply:v,removeReply:y}=u3(s&&!!o),{patch:b,loading:x,error:S}=gE({staged:!1,untracked:!1},s&&!!o),{viewedFiles:C,setViewed:w}=VE(),[T,E]=(0,W.useState)(null),[D,O]=(0,W.useState)(()=>{let e=CD(`diffing-sidebar-collapsed`);return e==null?typeof window<`u`&&window.innerWidth<=768:e===`true`}),[k,A]=(0,W.useState)(()=>Number(CD(`diffing-sidebar-width`))||320),[j,M]=(0,W.useState)(()=>Number(CD(`diffing-comment-panel-height`))||220),[N,P]=(0,W.useState)(()=>mD(CD(`diffing-pr-extension-filter`)??``)),[F,I]=(0,W.useState)(()=>{let e=CD(`diffing-pr-chip-filter`);return e===`unviewed`||e===`has-comments`?e:`all`}),[L,R]=(0,W.useState)({open:!1,scope:`files`}),[z,ee]=(0,W.useState)(!1),[te,ne]=(0,W.useState)(!1),[B,V]=(0,W.useState)(!1),[re,ie]=(0,W.useState)(!1),[ae,oe]=(0,W.useState)(null),se=(0,W.useRef)(null),ce=(0,W.useRef)(null),H=(0,W.useRef)(null),le=(0,W.useRef)(k),ue=(0,W.useRef)(j);le.current=k,ue.current=j,LE(r,n.uiFont,n.monoFont);let U=(0,W.useMemo)(()=>{if(!b)return[];try{let e=new Set;return Pg(b).flatMap(e=>e.files).filter(t=>e.has(t.name)?!1:(e.add(t.name),!0)).sort(kG)}catch{return[]}},[b]),de=(0,W.useMemo)(()=>{let e=new Map;for(let t of o?.existingComments??[]){let n=e.get(t.path)??[];n.push(t),e.set(t.path,n)}return e},[o]),fe=(0,W.useMemo)(()=>{let e={};for(let t of u)e[t.filePath]=(e[t.filePath]??0)+1;for(let t of o?.existingComments??[])e[t.path]=(e[t.path]??0)+1;return e},[u,o]),pe=(0,W.useMemo)(()=>{let e=U;return N.length>0&&(e=e.filter(e=>_D(e.name,N))),F===`unviewed`&&(e=e.filter(e=>!C.has(e.name))),F===`has-comments`&&(e=e.filter(e=>(fe[e.name]??0)>0)),e},[U,N,F,C,fe]),me=(0,W.useMemo)(()=>{let e=new Map;for(let t of u){let n=e.get(t.filePath)??[];n.push({side:t.side,lineNumber:t.lineNumber,metadata:t}),e.set(t.filePath,n)}return e},[u]),he=kD(pe),ge=(0,W.useMemo)(()=>FE(n.monoFont),[n.monoFont]),_e=(0,W.useMemo)(()=>new Set,[]),ve=(0,W.useCallback)(e=>{E(e),document.getElementById(`file-${e}`)?.scrollIntoView({block:`start`})},[]),ye=(0,W.useCallback)(e=>{let t=pe[pe.findIndex(t=>t.name===e)+1];t&&requestAnimationFrame(()=>requestAnimationFrame(()=>{document.getElementById(`file-${t.name}`)?.scrollIntoView({block:`start`,behavior:`smooth`})}))},[pe]),be=(0,W.useCallback)((e,t)=>{w(e,t),t&&ye(e)},[w,ye]),xe=(0,W.useCallback)(async(e,n)=>{let r=await fetch(`/api/gh/existing-comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n})}),i=await r.json().catch(()=>({}));if(!r.ok)throw Error(i.error||`HTTP ${r.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),Se=(0,W.useCallback)(async(e,n,r)=>{let i=await fetch(`/api/gh/existing-comments/${n}`,{method:e,headers:r==null?void 0:{"Content-Type":`application/json`},body:r==null?void 0:JSON.stringify({body:r})}),a=await i.json().catch(()=>({}));if(!i.ok)throw Error(a.error||`HTTP ${i.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),Ce=(0,W.useCallback)(async(e,n)=>{let r=await fetch(`/api/gh/review-threads/${encodeURIComponent(e)}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({resolved:n})}),i=await r.json().catch(()=>({}));if(!r.ok)throw Error(i.error||`HTTP ${r.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),we=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientX,n=le.current,r=ce.current?.getBoundingClientRect().left??0,i=n,a=e=>{i=Math.max(240,Math.min(640,n+e.clientX-t)),H.current&&(H.current.style.transform=`translateX(${r+i}px)`)},o=()=>{H.current?.classList.remove(`sidebar-resize-guide-active`),A(i),DD(`diffing-sidebar-width`,String(i)),document.removeEventListener(`mousemove`,a),document.removeEventListener(`mouseup`,o),document.body.style.cursor=``,document.body.style.userSelect=``};H.current?.classList.add(`sidebar-resize-guide-active`),document.addEventListener(`mousemove`,a),document.addEventListener(`mouseup`,o),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[]),Te=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientY,n=ue.current,r=n,i=e=>{r=Math.max(100,Math.min(600,n+t-e.clientY)),se.current?.style.setProperty(`--comment-panel-height`,`${r}px`)},a=()=>{M(r),DD(`diffing-comment-panel-height`,String(r)),document.removeEventListener(`mousemove`,i),document.removeEventListener(`mouseup`,a),document.body.style.cursor=``,document.body.style.userSelect=``};document.addEventListener(`mousemove`,i),document.addEventListener(`mouseup`,a),document.body.style.cursor=`row-resize`,document.body.style.userSelect=`none`},[]);(0,W.useEffect)(()=>{DD(`diffing-sidebar-collapsed`,String(D))},[D]),(0,W.useEffect)(()=>DD(`diffing-pr-extension-filter`,N.join(`,`)),[N]),(0,W.useEffect)(()=>DD(`diffing-pr-chip-filter`,F),[F]),(0,W.useEffect)(()=>{let e=document.documentElement;e.classList.add(`theme-switching`),e.setAttribute(`data-theme`,n.theme||`nord`),e.setAttribute(`data-density`,n.density||`comfortable`);let t=requestAnimationFrame(()=>requestAnimationFrame(()=>e.classList.remove(`theme-switching`)));return()=>cancelAnimationFrame(t)},[n.theme,n.density]);let Ee=(0,W.useMemo)(()=>nE[n.theme||`nord`]||nE.nord,[n.theme]);(0,W.useEffect)(()=>{e&&e.setRenderOptions({theme:{dark:Ee.type===`dark`?Ee.themeName:`nord`,light:Ee.type===`light`?Ee.themeName:`github-light`}}).catch(()=>{})},[e,Ee]),(0,W.useEffect)(()=>{let e=Ee.type===`dark`?Ee.themeName:`nord`,t=Ee.type===`light`?Ee.themeName:`github-light`;Uf({themes:Array.from(new Set([e,t])),langs:[]}).catch(()=>{})},[Ee]),(0,W.useEffect)(()=>{if(o)return document.title=`${o.owner}/${o.repo}#${o.pullNumber} · diffing`,()=>{document.title=`diffing`}},[o]);let De=(0,W.useCallback)(e=>{if(pe.length===0)return;let t=T?pe.findIndex(e=>e.name===T):-1,n=e===`next`?Math.min(t+1,pe.length-1):Math.max(t-1,0),r=pe[Math.max(0,n)];r&&ve(r.name)},[T,pe,ve]),Oe=(0,W.useCallback)(()=>{T&&be(T,!C.has(T))},[T,be,C]);if(p3((0,W.useMemo)(()=>({onNavigateFile:De,onToggleViewed:Oe,onToggleDiffStyle:()=>i({diffStyle:n.diffStyle===`split`?`unified`:`split`}),onCycleTabSize:()=>{let e=[2,4,8];i({defaultTabSize:e[(e.indexOf(n.defaultTabSize)+1)%e.length]})},onToggleSidebar:()=>O(e=>!e),onToggleLineWrap:()=>i({lineWrap:!n.lineWrap}),onToggleLineNumbers:()=>i({showLineNumbers:!n.showLineNumbers}),onCycleDiffIndicators:()=>{let e=[`classic`,`bars`,`none`];i({diffIndicators:e[(e.indexOf(n.diffIndicators)+1)%e.length]})},onCycleLineDiffType:()=>{let e=[`word`,`word-alt`,`char`,`none`];i({lineDiffType:e[(e.indexOf(n.lineDiffType)+1)%e.length]})},onOpenPalette:e=>R({open:!0,scope:e}),onTogglePalette:()=>R(e=>e.open?{...e,open:!1}:{open:!0,scope:`all`}),onOpenTheme:()=>ee(!0),onOpenShortcuts:()=>ie(!0)}),[De,n.defaultTabSize,n.diffIndicators,n.diffStyle,n.lineDiffType,n.lineWrap,n.showLineNumbers,Oe,i])),s&&!o)return(0,G.jsxs)(`div`,{className:`pr-app-empty`,children:[(0,G.jsx)(vO,{size:32}),(0,G.jsx)(`h2`,{children:`No active PR session`}),(0,G.jsxs)(`p`,{children:[`Start one with `,(0,G.jsx)(`code`,{children:`diffing "gh pr 1234"`}),` or `,(0,G.jsx)(`code`,{children:`diffing --gh-pr 1234`}),` from inside the repo.`]}),(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>DE(`/`),children:`Back to local review`})]});if(!o)return(0,G.jsx)(`div`,{className:`pr-app-empty`,children:(0,G.jsx)(`span`,{children:`Loading PR session…`})});let ke=e=>a(()=>i(e)),Ae={diffStyle:n.diffStyle,defaultTabSize:n.defaultTabSize,lineDiffType:n.lineDiffType,lineWrap:n.lineWrap,diffIndicators:n.diffIndicators,showLineNumbers:n.showLineNumbers,hunkSeparators:n.hunkSeparators,lineHoverHighlight:n.lineHoverHighlight,fontSize:n.fontSize,haptics:n.haptics,sounds:n.sounds,uiFont:n.uiFont,monoFont:n.monoFont,density:n.density,autoCollapseLineThreshold:n.autoCollapseLineThreshold,showStatusBar:n.showStatusBar,onDiffStyleChange:e=>ke({diffStyle:e}),onDefaultTabSizeChange:e=>ke({defaultTabSize:e}),onOpenThemeModal:()=>ee(!0),onLineDiffTypeChange:e=>ke({lineDiffType:e}),onLineWrapChange:e=>ke({lineWrap:e}),onDiffIndicatorsChange:e=>ke({diffIndicators:e}),onShowLineNumbersChange:e=>ke({showLineNumbers:e}),onHunkSeparatorsChange:e=>ke({hunkSeparators:e}),onLineHoverHighlightChange:e=>ke({lineHoverHighlight:e}),onFontSizeChange:e=>ke({fontSize:e}),onHapticsChange:e=>ke({haptics:e}),onSoundsChange:e=>ke({sounds:e}),onDensityChange:e=>ke({density:e}),onAutoCollapseLineThresholdChange:e=>ke({autoCollapseLineThreshold:e}),onShowStatusBarChange:e=>ke({showStatusBar:e}),onOpenUiFontModal:()=>ne(!0),onOpenMonoFontModal:()=>V(!0),showSource:!1,showWhitespace:!1,showExternalTools:!1,showSendPolicy:!1};return(0,G.jsx)(fD,{enabled:n.haptics,soundsEnabled:n.sounds,children:(0,G.jsxs)(`div`,{ref:se,className:`app pr-app`,"data-pr-mode":`true`,style:{"--sidebar-width":`${k}px`,"--comment-panel-height":`${j}px`},children:[(0,G.jsx)(`a`,{href:`#pr-diff-main`,className:`skip-to-main`,children:`Skip to diff`}),(0,G.jsx)(`div`,{className:`sidebar-resize-guide`,ref:H,"aria-hidden":`true`}),(0,G.jsx)(_3,{session:o,comments:u,settingsProps:Ae,sidebarCollapsed:D,onToggleSidebar:()=>O(e=>!e),onOpenSearch:()=>R({open:!0,scope:`all`}),onRefresh:()=>l.mutate(),refreshing:l.isPending,onEditComment:(e,t)=>p({id:e,body:t}),onDeleteComment:f,onSubmitted:oe}),!D&&(0,G.jsx)(`div`,{className:`sidebar-mobile-backdrop`,onClick:()=>O(!0),"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsxs)(`aside`,{ref:ce,className:`sidebar ${D?`sidebar-collapsed`:``}`,children:[(0,G.jsx)(`div`,{className:`pr-sidebar-tree`,children:(0,G.jsx)(X0,{files:U,activeFile:T,commentCounts:fe,viewedFiles:C,untrackedFiles:_e,onFileClick:ve,collapsed:D,onToggleCollapse:()=>O(e=>!e),appliedExtensions:N,onApplyExtensions:e=>P(hD(e)),chipFilter:F,onChipFilterChange:I})}),!D&&u.length>0&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`ct-resize-handle`,onMouseDown:Te,role:`separator`,"aria-label":`Resize comments panel`,"aria-orientation":`horizontal`,tabIndex:0}),(0,G.jsx)(`div`,{className:`ct-wrapper pr-ct-wrapper`,children:(0,G.jsx)(e2,{comments:u,resolveComment:h,unresolveComment:g,removeComment:f,addReply:async(e,t)=>{await m({id:e,body:t})},editComment:_,editReply:v,removeReply:y})})]})]}),!D&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,onMouseDown:we,role:`separator`,"aria-label":`Resize sidebar`,"aria-orientation":`vertical`,tabIndex:0}),(0,G.jsxs)(`main`,{className:`main pr-main`,id:`pr-diff-main`,tabIndex:-1,children:[(0,G.jsx)(C3,{session:o,draftCount:u.length}),(0,G.jsx)(y3,{reviews:o.existingReviews??[]}),(o.existingComments?.length??0)>0&&(0,G.jsxs)(`div`,{className:`pr-existing-summary`,children:[(0,G.jsx)(AO,{size:13}),(0,G.jsxs)(`span`,{children:[o.existingComments.length,` existing GitHub conversation`,o.existingComments.length===1?``:`s`,` included in this review.`]})]}),(S||c)&&(0,G.jsxs)(`div`,{className:`pr-error`,children:[(0,G.jsx)(qD,{size:14}),` Failed to load the PR: `,S||c?.message]}),x&&!b?(0,G.jsx)(`div`,{className:`pr-app-loading`,children:`Loading PR diff…`}):pe.length===0?(0,G.jsxs)(`div`,{className:`empty-state`,role:`status`,children:[(0,G.jsx)(`div`,{className:`empty-state-icon`,children:(0,G.jsx)(gO,{size:24})}),(0,G.jsx)(`p`,{className:`empty-state-title`,children:`No matching files`}),(0,G.jsx)(`p`,{className:`empty-state-hint`,children:`Clear the file-tree filters to see the full pull request.`})]}):(0,G.jsx)(E3,{files:pe,fileAnnotations:me,existingCommentsByFile:de,viewedFiles:C,settings:n,monoFontFamily:ge,onAddComment:e=>d(e),onDeleteComment:f,onViewedChange:be,onCardToggleCollapse:(e,t)=>{t&&ye(e)},onReplyExisting:xe,onEditExisting:(e,t)=>Se(`PATCH`,e,t),onDeleteExisting:e=>Se(`DELETE`,e),onSetExistingResolved:Ce})]})]}),(0,G.jsx)(D2,{isOpen:L.open,onClose:()=>R(e=>({...e,open:!1})),initialScope:L.scope,files:pe,changedEntries:he,customMode:!0,staged:!1,onNavigateFile:ve,theme:n.theme||`nord`,fontSize:n.fontSize,monoFontFamily:ge,defaultTabSize:n.defaultTabSize,lineWrap:n.lineWrap,showLineNumbers:n.showLineNumbers,lineHoverHighlight:n.lineHoverHighlight}),(0,G.jsx)(F2,{activeFile:T,onShowHelp:()=>ie(!0),visible:n.showStatusBar,placeholder:`No active PR file (J/K to jump)`}),(0,G.jsx)(I2,{isOpen:re,onClose:()=>ie(!1),mode:`pr`}),(0,G.jsx)(z2,{open:z,activeTheme:n.theme||`nord`,onThemeChange:e=>ke({theme:e}),onClose:()=>ee(!1)}),(0,G.jsx)(H2,{open:te,title:`Select UI Font`,defaultLabel:`Default (Geist Mono, from CDN)`,activeFont:n.uiFont,onFontChange:e=>ke({uiFont:e}),onClose:()=>ne(!1)}),(0,G.jsx)(H2,{open:B,title:`Select Code Font`,defaultLabel:`Default (JetBrains Mono, from CDN)`,activeFont:n.monoFont,onFontChange:e=>ke({monoFont:e}),onClose:()=>V(!1)}),ae&&(0,G.jsx)(w3,{result:ae,onDismiss:()=>oe(null)})]})})}function E3({files:e,fileAnnotations:t,existingCommentsByFile:n,viewedFiles:r,settings:i,monoFontFamily:a,onAddComment:o,onDeleteComment:s,onViewedChange:c,onCardToggleCollapse:l,onReplyExisting:u,onEditExisting:d,onDeleteExisting:f,onSetExistingResolved:p}){return(0,G.jsx)(`div`,{className:`pr-diff-surface`,children:e.map(e=>{let m=n.get(e.name)??[];return(0,G.jsx)(`div`,{className:`pr-file-block`,children:(0,G.jsx)(AG,{files:[e],diffStyle:i.diffStyle,tabSizeMap:{},defaultTabSize:i.defaultTabSize,viewedFiles:r,binaryFiles:new Map,theme:i.theme||`nord`,lineDiffType:i.lineDiffType,lineWrap:i.lineWrap,diffIndicators:i.diffIndicators,showLineNumbers:i.showLineNumbers,hunkSeparators:i.hunkSeparators,lineHoverHighlight:i.lineHoverHighlight,fontSize:i.fontSize,monoFontFamily:a,expandContextByDefault:i.expandContextByDefault,collapsedContextThreshold:i.collapsedContextThreshold,expansionLineCount:i.expansionLineCount,autoCollapseLineThreshold:i.autoCollapseLineThreshold,onViewedChange:c,fileAnnotationsMap:new Map([[e.name,t.get(e.name)??[]]]),existingCommentsMap:new Map([[e.name,m]]),onAddComment:(e,t,n,r,i,a)=>o({filePath:e,side:t,lineNumber:n,lineContent:r,body:i,startLineNumber:a}),onDeleteComment:s,onReplyExisting:u,onEditExisting:d,onDeleteExisting:f,onSetExistingResolved:p,onCardToggleCollapse:l,allowLocalActions:!1})},e.name)})})}function D3(){let e=jE(),[t,n]=(0,W.useState)(!1),[r,i]=(0,W.useState)(()=>e===`/gh/pr`||e.startsWith(`/gh/pr/`)||e.startsWith(`/plan`));return(0,W.useEffect)(()=>{SD().then(()=>{n(!0)})},[]),(0,W.useEffect)(()=>{if(e===`/gh/pr`||e.startsWith(`/gh/pr/`)||e.startsWith(`/plan`)){i(!0);return}if(e!==`/`){i(!0);return}let t=!1;return fetch(`/api/gh/session`).then(async e=>{t||e.ok&&(await e.json().catch(()=>null))?.prMode===!0&&DE(`/gh/pr`,{replace:!0})}).catch(()=>{}).finally(()=>{t||i(!0)}),()=>{t=!0}},[e]),!t||!r?(0,G.jsxs)(`div`,{className:`boot-loader`,role:`status`,"aria-live":`polite`,children:[(0,G.jsx)(VH,{size:40,className:`boot-loader-mark`}),(0,G.jsx)(`div`,{className:`boot-loader-spinner`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`boot-loader-label`,children:`Loading review session…`})]}):e===`/plan`||e.startsWith(`/plan/`)?(0,G.jsx)(i3,{}):e===`/gh/pr`||e.startsWith(`/gh/pr/`)?(0,G.jsx)(T3,{}):(0,G.jsx)(Q2,{})}var O3=new Le;(0,mn.createRoot)(document.getElementById(`root`)).render((0,G.jsx)(He,{client:O3,children:(0,G.jsx)(ot,{children:(0,G.jsx)(km,{poolOptions:{workerFactory:()=>new A_,poolSize:Math.max(1,Math.min(4,navigator.hardwareConcurrency||2))},highlighterOptions:{theme:{dark:`nord`,light:`github-light`}},children:(0,G.jsx)(QT,{children:(0,G.jsx)(D3,{})})})})}));export{l as a,s as i,J as n,o as r,_E as t};
3959
+ `}var Y4={pending:{icon:nO,className:`plan-badge-pending`,label:`Pending`},approved:{icon:HD,className:`plan-badge-approved`,label:`Approved`},"changes-requested":{icon:MO,className:`plan-badge-changes`,label:`Changes`},rejected:{icon:sk,className:`plan-badge-rejected`,label:`Rejected`},"comment-only":{icon:NO,className:`plan-badge-comment-only`,label:`Comment only`}},X4=[`all`,`pending`,`approved`,`changes-requested`,`rejected`,`comment-only`];function Z4(){try{let e=CD(y4.decisionFilter);if(e&&X4.includes(e))return e}catch{}return`all`}function Q4({plans:e,activeId:t,onSelect:n,onDelete:r,collapsed:i,onToggleCollapse:a}){let[o,s]=(0,W.useState)(``),[c,l]=(0,W.useState)(Z4),[u,d]=(0,W.useState)(null),f=(0,W.useCallback)(e=>{l(e),DD(y4.decisionFilter,e)},[]),p=(0,W.useMemo)(()=>[...e].sort((e,t)=>t.createdAt-e.createdAt),[e]),m=(0,W.useMemo)(()=>{let e=o.toLowerCase().trim();return p.filter(t=>c!==`all`&&t.decision!==c?!1:e?`${t.title} ${t.source??``} ${t.sourcePath??``} ${t.model??``} ${t.id}`.toLowerCase().includes(e):!0)},[p,o,c]),h=(0,W.useMemo)(()=>e.filter(e=>e.decision===`pending`).length,[e]);return i?(0,G.jsx)(`div`,{className:`plan-list plan-list-collapsed`,children:a&&(0,G.jsx)($T,{content:`Expand sidebar · b`,side:`right`,children:(0,G.jsx)(`button`,{className:`sidebar-toggle`,onClick:a,"aria-label":`Expand sidebar`,children:(0,G.jsx)(HO,{size:16})})})}):(0,G.jsxs)(`div`,{className:`plan-list`,children:[(0,G.jsxs)(`div`,{className:`plan-list-chrome`,children:[(0,G.jsxs)(`div`,{className:`plan-list-toolbar`,children:[a&&(0,G.jsx)($T,{content:`Collapse sidebar · b`,side:`right`,children:(0,G.jsx)(`button`,{className:`sidebar-toggle`,onClick:a,"aria-label":`Collapse sidebar`,children:(0,G.jsx)(VO,{size:16})})}),(0,G.jsxs)(`div`,{className:`plan-list-search`,children:[(0,G.jsx)(XO,{size:14,className:`plan-list-search-icon`,"aria-hidden":`true`}),(0,G.jsx)(`input`,{type:`text`,placeholder:`Search plans…`,value:o,onChange:e=>s(e.target.value),className:`plan-list-search-input`,"aria-label":`Search plans`})]})]}),(0,G.jsx)(`div`,{className:`plan-list-filters`,role:`group`,"aria-label":`Filter by decision`,children:[{id:`all`,label:`All`},{id:`pending`,label:h?`Pending ${h}`:`Pending`},{id:`approved`,label:`Approved`},{id:`changes-requested`,label:`Changes`},{id:`rejected`,label:`Rejected`}].map(e=>(0,G.jsx)(`button`,{type:`button`,className:`plan-list-filter ${c===e.id?`is-active`:``}`,"aria-pressed":c===e.id,onClick:()=>f(e.id),children:e.label},e.id))})]}),(0,G.jsxs)(`div`,{className:`plan-list-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-list-header`,children:(0,G.jsx)(`span`,{children:m.length===e.length?`${e.length} plan${e.length===1?``:`s`}`:`${m.length} of ${e.length}`})}),m.length===0&&(0,G.jsx)(`div`,{className:`plan-list-empty`,children:o||c!==`all`?`No matching plans.`:`No plans yet.`}),(0,G.jsx)(`div`,{className:`plan-list-items`,children:m.map(e=>{let i=Y4[e.decision],a=i.icon,o=(e.comments??[]).filter(e=>e.status===`open`).length,s=e.sourcePath||e.source,c=e.id===t;return(0,G.jsxs)(`div`,{className:`plan-list-item ${c?`plan-list-item-active`:``}`,onClick:()=>n(e.id),role:`button`,tabIndex:0,"aria-current":c?`true`:void 0,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),n(e.id))},children:[(0,G.jsxs)(`div`,{className:`plan-list-item-top`,children:[(0,G.jsx)(`span`,{className:`plan-badge plan-badge-dot ${i.className}`,title:i.label,children:(0,G.jsx)(a,{size:11,"aria-hidden":`true`})}),(0,G.jsx)(`span`,{className:`plan-list-item-title`,title:e.title,children:e.title}),s&&(0,G.jsx)($T,{content:`Copy source path`,children:(0,G.jsx)(`button`,{className:`plan-list-copy-path`,title:`Copy source path`,"aria-label":`Copy source path`,onClick:t=>{t.stopPropagation();let n=e.sourcePath||e.source||``;navigator.clipboard?.writeText(n).then(()=>{d(e.id),window.setTimeout(()=>d(null),1200)},()=>{})},children:u===e.id?(0,G.jsx)(HD,{size:12}):(0,G.jsx)(aO,{size:12})})}),(0,G.jsx)(`button`,{className:`plan-list-delete`,title:`Delete plan`,"aria-label":`Delete plan`,onClick:t=>{t.stopPropagation(),r(e.id)},children:(0,G.jsx)(nk,{size:12,"aria-hidden":`true`})})]}),(0,G.jsxs)(`div`,{className:`plan-list-item-sub`,children:[(0,G.jsxs)(`span`,{className:`plan-list-item-version`,children:[`v`,e.version]}),o>0&&(0,G.jsxs)(`span`,{className:`plan-list-item-open`,children:[o,` open`]}),e.model&&(0,G.jsxs)(`span`,{className:`plan-list-item-model`,title:e.model,children:[(0,G.jsx)(BD,{size:10,"aria-hidden":`true`}),e.model]}),(0,G.jsx)(`span`,{className:`plan-list-item-time`,children:eE(e.createdAt)})]})]},e.id)})})]})]})}var $4=[{value:`approved`,label:`Approve`,description:`The plan looks good — the agent should proceed.`,icon:HD,className:`plan-verdict-approve`},{value:`changes-requested`,label:`Request changes`,description:`The agent should revise the plan and resubmit it.`,icon:MO,className:`plan-verdict-changes`},{value:`rejected`,label:`Reject`,description:`Don't proceed — the approach needs rethinking.`,icon:sk,className:`plan-verdict-reject`},{value:`comment-only`,label:`Comment only`,description:`Agent must NOT edit files — only reply to comments. General note goes to chat.`,icon:NO,className:`plan-verdict-comment-only`}];function e3({openCommentCount:e,onSubmit:t,submitting:n,agentWaiting:r,currentDecision:i}){let{haptic:a,sound:o}=pD(),[s,c]=(0,W.useState)(!1),[l,u]=(0,W.useState)(null),[d,f]=(0,W.useState)(``),{popoverStyle:p,activePreset:m,applyPreset:h,startResize:g,startLeftResize:_,startCornerResize:v,handleOpenChange:y,panelRef:b}=IH(),x=async()=>{l&&(a(`heavy`),o(`send`),await t(l,d,l===`comment-only`?`comment-only`:`standard`),f(``),u(null),c(!1))},S=i!==`pending`;return(0,G.jsx)(Zk,{open:s,onOpenChange:(e,t)=>y(e,t,c),ariaLabel:`Submit plan review`,className:`submit-plan-review-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:n,title:r?`An agent is connected and waiting for your verdict`:`Submit your verdict on this plan`,style:{display:`inline-flex`,alignItems:`center`,gap:`6px`},children:[r&&(0,G.jsx)(`span`,{className:`agent-waiting-dot`,"aria-hidden":`true`}),S?(0,G.jsx)(KO,{size:14}):(0,G.jsx)($D,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:n?`Submitting…`:S?`Update review`:`Submit review`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:b,style:p,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:_,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[S?(0,G.jsx)(KO,{size:15,"aria-hidden":`true`}):(0,G.jsx)($D,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:S?`Update plan review`:`Submit plan review`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":m===t,"aria-pressed":m===t,onClick:()=>h(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),e>0&&(0,G.jsxs)(`span`,{className:`srp-count`,children:[e,` open comment`,e===1?``:`s`]})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:$4.map(e=>{let t=e.icon,n=l===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>u(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`plan-decision-comment`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`plan-decision-comment`,value:d,onChange:f,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the agent that applies to the whole plan…`,rows:3,ariaLabel:`Overall plan review comment`,onSubmitShortcut:x})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>c(!1),disabled:n,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:x,disabled:!l||n,children:n?`Submitting…`:`Submit review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:g,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:v,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}var t3=[11,12,13,14,15,16].map(e=>({value:String(e),label:`${e}px`})),n3=[2,4,8].map(e=>({value:String(e),label:String(e)})),r3=[{value:`both`,label:`Both`},{value:`line`,label:`Line only`},{value:`number`,label:`Number only`},{value:`disabled`,label:`Disabled`}];function i3(){let e=Am(),{settings:t,loaded:n,updateSettings:r}=IE();LE(n,t.uiFont,t.monoFont);let{plans:i,getPlan:a,removePlan:o,agentActivity:s,clearAgentActivity:c,submitDecision:l,submitting:u,agentWaiting:d,isLoading:f}=wE(),p=jE(),[m,h]=(0,W.useState)(!1),[g,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(!1);(0,W.useEffect)(()=>{let e=e=>{if(e.metaKey||e.ctrlKey){if(e.key===`,`||e.code===`Comma`){e.preventDefault(),_(e=>!e);return}(e.key===`?`||e.key===`/`&&e.shiftKey||e.code===`Slash`&&e.shiftKey)&&(e.preventDefault(),y(!0))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let[b,x]=(0,W.useState)(()=>{try{let e=CD(y4.viewMode);if(e===`rendered`||e===`split`||e===`source`)return e}catch{}return`source`}),S=(0,W.useCallback)(e=>{x(e);try{DD(y4.viewMode,e)}catch{}},[]),[C,w]=(0,W.useState)(()=>b4(y4.zenMode,!1)),T=(0,W.useCallback)(e=>{w(e);try{DD(y4.zenMode,String(e))}catch{}},[]),E=(0,W.useCallback)(()=>{b===`rendered`?T(!C):(S(`rendered`),T(!0))},[b,C,S,T]),[D,O]=(0,W.useState)(()=>{try{let e=CD(y4.tocOpen);if(e===`false`)return!1;if(e===`true`)return!0}catch{}return!0}),[k,A]=(0,W.useState)(()=>{try{let e=CD(y4.commentsRail);if(e===`false`)return!1;if(e===`true`)return!0}catch{}return!0}),j=(0,W.useCallback)(e=>{O(e),DD(y4.tocOpen,String(e))},[]),M=(0,W.useCallback)(e=>{A(e),DD(y4.commentsRail,String(e))},[]),N=(0,W.useCallback)(()=>{j(!D)},[D,j]),P=(0,W.useCallback)(()=>{M(!k)},[k,M]),F=(0,W.useMemo)(()=>{let e=/^\/plan\/([^/]+)/.exec(p);return e?decodeURIComponent(e[1]):null},[p]),I=(0,W.useMemo)(()=>F?a(F):i.length===0?null:[...i].reverse().find(e=>e.decision===`pending`)??i[i.length-1],[F,i,a]),L=(0,W.useMemo)(()=>nE[t.theme||`nord`]||nE.nord,[t.theme]);(0,W.useEffect)(()=>{let e=t.theme||`nord`,n=document.documentElement;n.classList.add(`theme-switching`),n.setAttribute(`data-theme`,e);let r=requestAnimationFrame(()=>{requestAnimationFrame(()=>n.classList.remove(`theme-switching`))});return()=>cancelAnimationFrame(r)},[t.theme]),(0,W.useEffect)(()=>{e&&e.setRenderOptions({theme:{dark:L.type===`dark`?L.themeName:`nord`,light:L.type===`light`?L.themeName:`github-light`}}).catch(e=>console.error(`Failed to set worker pool render options:`,e))},[e,L]),(0,W.useEffect)(()=>{let e=L.type===`dark`?L.themeName:`nord`,t=L.type===`light`?L.themeName:`github-light`;Uf({themes:Array.from(new Set([e,t])),langs:[]}).catch(()=>{})},[L]);let[R,z]=(0,W.useState)(()=>{try{let e=CD(`diffing-sidebar-collapsed`);if(e!=null)return e===`true`}catch{}return typeof window<`u`&&window.innerWidth<=768}),[ee,te]=(0,W.useState)(()=>{try{let e=CD(`diffing-sidebar-width`);return e?Number(e):320}catch{return 320}});(0,W.useEffect)(()=>{try{DD(`diffing-sidebar-collapsed`,String(R))}catch{}},[R]);let ne=(0,W.useRef)(ee);ne.current=ee;let B=(0,W.useRef)(null),V=(0,W.useRef)(null),re=(0,W.useRef)(null),ie=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientX,n=ne.current,r=V.current,i=re.current,a=r?r.getBoundingClientRect().left:0,o=n,s=0,c=()=>{s=0,i&&(i.style.transform=`translateX(${a+o}px)`)};i&&(i.style.transform=`translateX(${a+n}px)`,i.classList.add(`sidebar-resize-guide-active`));let l=e=>{let r=e.clientX-t;o=Math.max(240,Math.min(640,n+r)),s||=requestAnimationFrame(c)},u=()=>{s&&cancelAnimationFrame(s),i&&i.classList.remove(`sidebar-resize-guide-active`),te(o);try{DD(`diffing-sidebar-width`,String(o))}catch{}document.removeEventListener(`mousemove`,l),document.removeEventListener(`mouseup`,u),document.body.style.cursor=``,document.body.style.userSelect=``};document.addEventListener(`mousemove`,l),document.addEventListener(`mouseup`,u),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[]),ae=(0,W.useCallback)(()=>{z(e=>!e)},[]),oe=(0,W.useCallback)(()=>{r({lineWrap:!t.lineWrap})},[t.lineWrap,r]),se=(0,W.useCallback)(()=>{r({showLineNumbers:!t.showLineNumbers})},[t.showLineNumbers,r]),ce=(0,W.useCallback)(()=>{let e=[`source`,`rendered`,`split`],t=e[(e.indexOf(b)+1)%e.length];S(t)},[b,S]),H=(0,W.useCallback)(()=>{let e=[2,4,8],n=t.defaultTabSize||4;r({defaultTabSize:e[(e.indexOf(n)+1)%e.length]})},[t.defaultTabSize,r]),le=(0,W.useCallback)(e=>{if(i.length===0)return;let t=[...i].sort((e,t)=>t.createdAt-e.createdAt),n=0;if(I){let r=t.findIndex(e=>e.id===I.id);r!==-1&&(n=e===`next`?Math.min(r+1,t.length-1):Math.max(r-1,0))}let r=t[n];DE(`/plan/${r.id}`)},[i,I]);(0,W.useEffect)(()=>{let e=``,t,n=0,r=r=>{let i=document.activeElement;if(i){let e=i.tagName.toLowerCase();if(e===`input`||e===`textarea`||i.hasAttribute(`contenteditable`))return}clearTimeout(t);let a=r.key;if(r.ctrlKey){a===`d`?(r.preventDefault(),window.scrollBy({top:window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),e=``):a===`u`&&(r.preventDefault(),window.scrollBy({top:-window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),e=``);return}if(!(a.length>1&&a!==`Escape`&&a!==`Enter`))if(e+=a,t=setTimeout(()=>{e=``},800),e===`j`){r.preventDefault(),window.scrollBy({top:100,behavior:`auto`});let t=Date.now();t-n>80&&(lD(`navigate`),n=t),e=``}else if(e===`k`){r.preventDefault(),window.scrollBy({top:-100,behavior:`auto`});let t=Date.now();t-n>80&&(lD(`navigate`),n=t),e=``}else e===`gg`?(r.preventDefault(),window.scrollTo({top:0,behavior:`auto`}),dD(`selection`,`navigate`),e=``):e===`G`?(r.preventDefault(),window.scrollTo({top:document.documentElement.scrollHeight,behavior:`auto`}),dD(`selection`,`navigate`),e=``):e===`J`?(r.preventDefault(),le(`next`),dD(`selection`,`navigate`),e=``):e===`K`?(r.preventDefault(),le(`prev`),dD(`selection`,`navigate`),e=``):e===`m`?(r.preventDefault(),ce(),dD(`selection`,`toggle`),e=``):e===`z`?(r.preventDefault(),E(),dD(`selection`,`toggle`),e=``):e===`c`?(r.preventDefault(),P(),dD(`selection`,`toggle`),e=``):e===`o`?(r.preventDefault(),N(),dD(`selection`,`toggle`),e=``):e===`t`?(r.preventDefault(),H(),dD(`selection`,`toggle`),e=``):e===`b`?(r.preventDefault(),ae(),dD(`selection`,`toggle`),e=``):e===`w`?(r.preventDefault(),oe(),dD(`selection`,`toggle`),e=``):e===`n`?(r.preventDefault(),se(),dD(`selection`,`toggle`),e=``):e===`gt`?(r.preventDefault(),h(!0),dD(`medium`,`open`),e=``):e===`?`?(r.preventDefault(),y(!0),dD(`medium`,`open`),e=``):e.length>=2&&(e=``)};return window.addEventListener(`keydown`,r),()=>{window.removeEventListener(`keydown`,r)}},[ae,oe,se,ce,E,P,N,H,le]);let ue=(0,W.useMemo)(()=>I?(I.comments??[]).filter(e=>e.status===`open`).length:0,[I]);return f||!n?(0,G.jsxs)(`div`,{className:`app plan-app skeleton-app`,style:{"--sidebar-width":`${ee}px`},children:[(0,G.jsxs)(`header`,{className:`skeleton-toolbar`,children:[(0,G.jsx)(`div`,{className:`skeleton-item skeleton-logo`,style:{width:`140px`}}),(0,G.jsx)(`div`,{className:`skeleton-item skeleton-stats`,style:{width:`80px`,marginLeft:`20px`}}),(0,G.jsx)(`div`,{className:`skeleton-item skeleton-actions`,style:{width:`220px`}})]}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsx)(`aside`,{className:`sidebar plan-sidebar skeleton-sidebar ${R?`sidebar-collapsed`:``}`,children:!R&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`skeleton-search`,style:{height:`32px`,margin:`0 16px 16px 16px`}}),(0,G.jsx)(`div`,{className:`skeleton-tree-nodes`,children:Array.from({length:4}).map((e,t)=>(0,G.jsxs)(`div`,{className:`skeleton-tree-node`,style:{paddingLeft:`16px`,height:`40px`,borderBottom:`1px solid var(--border-weak)`},children:[(0,G.jsx)(`div`,{className:`skeleton-node-icon`,style:{width:`20px`,height:`20px`,borderRadius:`50%`}}),(0,G.jsx)(`div`,{className:`skeleton-node-text`,style:{width:`${80+t*30%90}px`,height:`14px`}})]},t))})]})}),!R&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,style:{cursor:`default`}}),(0,G.jsx)(`main`,{className:`main plan-main skeleton-main`,children:(0,G.jsxs)(`div`,{className:`file-diff-card skeleton-card`,style:{border:`1px solid var(--border-color)`,borderRadius:`8px`},children:[(0,G.jsxs)(`div`,{className:`skeleton-card-header`,style:{padding:`16px 20px`},children:[(0,G.jsx)(`div`,{className:`skeleton-card-title`,style:{width:`250px`,height:`20px`}}),(0,G.jsx)(`div`,{className:`skeleton-card-badge`,style:{width:`100px`,height:`24px`}})]}),(0,G.jsxs)(`div`,{className:`skeleton-card-body`,style:{padding:`24px`,background:`var(--bg-secondary)`,display:`flex`,flexDirection:`column`,gap:`16px`},children:[(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`90%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`75%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`85%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`40%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`60%`,height:`16px`}}),(0,G.jsx)(`div`,{className:`skeleton-code-line`,style:{width:`80%`,height:`16px`}})]})]})})]})]}):(0,G.jsx)(fD,{enabled:t.haptics??!0,soundsEnabled:t.sounds??!0,children:(0,G.jsxs)(`div`,{className:`app plan-app`,ref:B,style:{"--sidebar-width":`${ee}px`},children:[(0,G.jsx)(`div`,{className:`sidebar-resize-guide`,ref:re,"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`toolbar plan-app-toolbar`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:()=>z(!R),"aria-label":`Toggle sidebar`,title:R?`Open sidebar`:`Close sidebar`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsx)($T,{content:`Back to diff review`,side:`bottom`,children:(0,G.jsxs)(`button`,{className:`btn btn-sm plan-toolbar-back`,onClick:()=>DE(`/`),"aria-label":`Back to the diff review`,children:[(0,G.jsx)(zD,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Diff`})]})}),(0,G.jsxs)(`div`,{className:`plan-toolbar-brand`,children:[(0,G.jsx)(VH,{size:18,className:`plan-app-brand`}),(0,G.jsxs)(`div`,{className:`plan-toolbar-brand-text`,children:[(0,G.jsx)(`h1`,{className:`toolbar-title plan-app-title`,children:`Plans`}),I?(0,G.jsx)(`span`,{className:`plan-toolbar-active`,title:I.title,children:I.title}):(0,G.jsxs)(`span`,{className:`plan-toolbar-count`,children:[i.length,` plan`,i.length===1?``:`s`]})]})]})]}),(0,G.jsx)(`div`,{className:`plan-view-toggle`,role:`group`,"aria-label":`Plan view mode`,children:[{id:`source`,label:`Source`,icon:rO,tip:`Source — select lines to comment`},{id:`rendered`,label:`Read`,icon:dO,tip:`Read — rendered markdown (highlight to comment)`},{id:`split`,label:`Split`,icon:iO,tip:`Split — source + rendered (drag the divider to resize)`}].map(({id:e,label:t,icon:n,tip:r})=>(0,G.jsx)($T,{content:`${r} · m to cycle`,side:`bottom`,children:(0,G.jsxs)(`button`,{type:`button`,className:`plan-view-toggle-btn ${b===e?`is-active`:``}`,"aria-pressed":b===e,"aria-label":r,onClick:()=>S(e),children:[(0,G.jsx)(n,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:t})]})},e))}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsx)(Zk,{open:g,onOpenChange:_,ariaLabel:`Settings`,className:`settings-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn ${g?`btn-active`:``}`,title:`Settings (⌘,)`,"aria-label":`Settings`,children:[(0,G.jsx)(ZO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Settings`})]}),children:(0,G.jsxs)(`div`,{className:`popover-scroll settings-panel`,children:[(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Appearance`}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Theme`}),(0,G.jsxs)(`button`,{className:`btn btn-sm settings-btn`,onClick:()=>{_(!1),h(!0)},style:{display:`inline-flex`,alignItems:`center`},children:[(0,G.jsx)(BO,{size:14,style:{marginRight:`4px`}}),(0,G.jsx)(`span`,{children:`Switch Theme...`})]})]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Plan chrome`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:D,onChange:e=>j(e.target.checked)}),`Show outline`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:k,onChange:e=>M(e.target.checked)}),`Show comments panel`]}),(0,G.jsx)(`div`,{className:`settings-section-label`,children:`Display`}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.lineWrap,onChange:e=>r({lineWrap:e.target.checked})}),`Wrap long lines`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.showLineNumbers,onChange:e=>r({showLineNumbers:e.target.checked})}),`Show line numbers`]}),(0,G.jsxs)(`label`,{className:`settings-item`,children:[(0,G.jsx)(`input`,{type:`checkbox`,checked:t.showStatusBar??!0,onChange:e=>r({showStatusBar:e.target.checked})}),`Show status bar`]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Hover highlight`}),(0,G.jsx)(eW,{value:t.lineHoverHighlight,onValueChange:e=>r({lineHoverHighlight:e}),options:r3,ariaLabel:`Hover highlight`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Font size`}),(0,G.jsx)(eW,{value:String(t.fontSize),onValueChange:e=>r({fontSize:Number(e)}),options:t3,ariaLabel:`Font size`})]}),(0,G.jsxs)(`div`,{className:`settings-item settings-item-spaced`,children:[(0,G.jsx)(`span`,{children:`Default tab size`}),(0,G.jsx)(eW,{value:String(t.defaultTabSize),onValueChange:e=>r({defaultTabSize:Number(e)}),options:n3,ariaLabel:`Default tab size`})]})]})}),I&&(0,G.jsx)(e3,{openCommentCount:ue,onSubmit:(e,t)=>l(I.id,e,t),submitting:u,agentWaiting:d,currentDecision:I.decision})]})]}),!R&&(0,G.jsx)(`div`,{className:`sidebar-mobile-backdrop`,onClick:()=>z(!0),"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsx)(`aside`,{ref:V,className:`sidebar plan-sidebar ${R?`sidebar-collapsed`:``}`,children:(0,G.jsx)(`div`,{style:{flex:1,minHeight:0,overflow:`hidden`},children:(0,G.jsx)(Q4,{plans:i,activeId:I?.id??null,onSelect:e=>DE(`/plan/${e}`),onDelete:e=>{o(e),I?.id===e&&DE(`/plan`)},collapsed:R,onToggleCollapse:()=>z(!R)})})}),!R&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,onMouseDown:ie,role:`separator`,"aria-label":`Resize sidebar`,"aria-orientation":`vertical`,tabIndex:0}),(0,G.jsx)(`main`,{className:`main plan-main`,children:I?(0,G.jsx)(q4,{plan:I,theme:t.theme||`nord`,fontSize:t.fontSize,monoFontFamily:FE(t.monoFont),defaultTabSize:t.defaultTabSize,lineWrap:t.lineWrap,showLineNumbers:t.showLineNumbers,lineHoverHighlight:t.lineHoverHighlight,viewMode:b,onViewModeChange:S,editorIDE:t.editorIDE,tocOpen:D,onTocOpenChange:j,commentsRailOpen:k,onCommentsRailOpenChange:M,zenMode:C,onZenModeChange:T},I.id):(0,G.jsx)(a3,{hasPlans:i.length>0,notFound:!!F})})]}),(0,G.jsx)(z2,{open:m,activeTheme:t.theme||`nord`,onThemeChange:e=>r({theme:e}),onClose:()=>h(!1)}),(0,G.jsx)(L2,{activity:s?{at:s.at,commentId:s.commentId,filePath:`plan · ${s.planId.slice(0,8)}`,model:s.model,body:s.body}:null,onDismiss:c,onJump:()=>{s&&(DE(`/plan/${s.planId}`),requestAnimationFrame(()=>{document.getElementById(`plan-comment-${s.commentId}`)?.scrollIntoView({behavior:`smooth`,block:`center`})}))}}),(0,G.jsx)(F2,{activeFile:I?I.title:null,onShowHelp:()=>y(!0),placeholder:`No active plan (J/K to jump)`,visible:t.showStatusBar??!0}),(0,G.jsx)(I2,{isOpen:v,onClose:()=>y(!1),mode:`plan`})]})})}function a3({hasPlans:e,notFound:t}){return(0,G.jsxs)(`div`,{className:`plan-empty-state`,children:[(0,G.jsx)(`div`,{className:`plan-empty-icon`,"aria-hidden":`true`,children:(0,G.jsx)(eO,{size:28})}),t?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`Plan not found`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`It may have been deleted. Pick another from the list, or submit a new one.`})]}):e?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`Select a plan`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`Choose one from the sidebar to start reviewing.`})]}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`h2`,{className:`plan-empty-title`,children:`No plans yet`}),(0,G.jsx)(`p`,{className:`plan-empty-body`,children:`Agents submit a plan, you review it here, then they continue on approval.`}),(0,G.jsxs)(`div`,{className:`plan-empty-steps`,children:[(0,G.jsx)(`code`,{children:`diffing plan submit PLAN.md`}),(0,G.jsx)(`code`,{children:`diffing plan await`})]})]})]})}var o3=[`pr-session`];function s3(){let e=Ve(),{data:t,isLoading:n,error:r}=nt({queryKey:o3,queryFn:async()=>{let e=await fetch(`/api/gh/session`);if(e.status===404)return null;if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json();return t?.prMode===!1?null:t},retry:!1});return(0,W.useEffect)(()=>fE(`pr-session`,()=>{e.invalidateQueries({queryKey:o3})}),[e]),{session:t,loaded:!n,error:r}}function c3(e){let t=Ve();(0,W.useEffect)(()=>{if(!e)return;let n=!1,r=!1,i=async()=>{if(!(n||r||document.visibilityState===`hidden`)){r=!0;try{(await fetch(`/api/gh/comments/sync`,{method:`POST`})).ok&&!n&&await t.invalidateQueries({queryKey:o3})}finally{r=!1}}},a=()=>{i()};i();let o=window.setInterval(i,3e4);return window.addEventListener(`focus`,a),()=>{n=!0,window.clearInterval(o),window.removeEventListener(`focus`,a)}},[e,t])}var l3=[`pr-comments`];function u3(e){let t=Ve(),{data:n=[]}=nt({queryKey:l3,queryFn:async()=>{let e=await fetch(`/api/gh/pr-session/comments`);if(e.status===404)return[];if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()},enabled:e});(0,W.useEffect)(()=>fE(`pr-session`,()=>{t.invalidateQueries({queryKey:l3})}),[t]);let r=rt({mutationFn:async e=>(await fetch(`/api/gh/pr-session/comments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)})).json(),onSuccess:e=>{t.setQueryData(l3,(t=[])=>[...t,e])}}),i=rt({mutationFn:async e=>(await fetch(`/api/gh/pr-session/comments/${e}`,{method:`DELETE`}),e),onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.filter(t=>t.id!==e))}}),a=rt({mutationFn:async({id:e,body:t,status:n})=>(await fetch(`/api/gh/pr-session/comments/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,status:n})})).json(),onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e.id?e:t))}}),o=rt({mutationFn:async({id:e,body:t})=>{let n=await fetch(`/api/gh/pr-session/comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:t,role:`user`})}),r=await n.json().catch(()=>({}));if(!n.ok||!r.id)throw Error(r.error||`HTTP ${n.status}`);return r},onMutate:async({id:e,body:n})=>{await t.cancelQueries({queryKey:l3});let r=t.getQueryData(l3)??[],i=`pending-${crypto.randomUUID()}`;return t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e?{...t,replies:[...t.replies??[],{id:i,body:n,createdAt:Date.now(),role:`user`}]}:t)),{previous:r}},onError:(e,n,r)=>{r?.previous&&t.setQueryData(l3,r.previous)},onSuccess:e=>{t.setQueryData(l3,(t=[])=>t.map(t=>t.id===e.id?e:t))}}),s=(0,W.useCallback)(e=>{a.mutate({id:e,status:`resolved`})},[a]),c=(0,W.useCallback)(e=>{a.mutate({id:e,status:`open`})},[a]),l=(0,W.useCallback)((e,t,n)=>{},[]),u=(0,W.useCallback)((e,t)=>{},[]);return{comments:n,addComment:r.mutate,removeComment:i.mutate,updateComment:a.mutate,addReply:o.mutateAsync,resolveComment:s,unresolveComment:c,editComment:(e,t)=>a.mutate({id:e,body:t}),editReply:l,removeReply:u}}function d3(){let e=Ve();return rt({mutationFn:async e=>{let t=new AbortController,n=window.setTimeout(()=>t.abort(),6e4);try{let n=await fetch(`/api/gh/submit`,{method:`POST`,headers:{"Content-Type":`application/json`},signal:t.signal,body:JSON.stringify({decision:e.decision,body:e.body,dryRun:e.dryRun})}),r=await n.json();if(!n.ok||!r.ok)throw Error(r.error||`HTTP ${n.status}`);return r}catch(e){throw t.signal.aborted?Error(`GitHub submission timed out. Check your connection and try again.`):e}finally{window.clearTimeout(n)}},onSuccess:()=>{e.setQueryData(l3,[]),e.invalidateQueries({queryKey:o3}),e.invalidateQueries({queryKey:l3})}})}function f3(){let e=Ve();return rt({mutationFn:async()=>{let e=await fetch(`/api/gh/pr/refresh`,{method:`POST`}),t=await e.json();if(!e.ok)throw Error(t.error||`HTTP ${e.status}`);return t},onSuccess:()=>{e.invalidateQueries({queryKey:o3}),e.invalidateQueries({queryKey:l3})}})}function p3(e){(0,W.useEffect)(()=>{let t=``,n,r=0,i=()=>{t=``,clearTimeout(n)},a=a=>{if((a.metaKey||a.ctrlKey)&&a.key.toLowerCase()===`k`){a.preventDefault(),e.onTogglePalette?e.onTogglePalette():e.onOpenPalette(`all`),i();return}let o=document.activeElement;if(o){let e=o.tagName.toLowerCase();if(e===`input`||e===`textarea`||o.hasAttribute(`contenteditable`))return}if((a.metaKey||a.ctrlKey)&&(a.key===`?`||a.key===`/`&&a.shiftKey||a.code===`Slash`&&a.shiftKey)){a.preventDefault(),e.onOpenShortcuts(),dD(`medium`,`open`),i();return}if(a.ctrlKey){(a.key===`d`||a.key===`u`)&&(a.preventDefault(),window.scrollBy({top:a.key===`d`?window.innerHeight/2:-window.innerHeight/2,behavior:`auto`}),dD(`selection`,`navigate`),i());return}let s=a.key;if(s.length>1&&s!==`Escape`&&s!==`Enter`)return;clearTimeout(n),t+=s,n=setTimeout(()=>{t=``},800);let c=(e,t=`toggle`)=>{a.preventDefault(),e(),dD(t===`open`?`medium`:`selection`,t),i()};if(t===`j`||t===`k`){a.preventDefault(),window.scrollBy({top:t===`j`?100:-100,behavior:`auto`});let e=Date.now();e-r>80&&(lD(`navigate`),r=e),i()}else t===`gg`?c(()=>window.scrollTo({top:0,behavior:`auto`}),`navigate`):t===`G`?c(()=>window.scrollTo({top:document.documentElement.scrollHeight,behavior:`auto`}),`navigate`):t===`J`?c(()=>e.onNavigateFile(`next`),`navigate`):t===`K`?c(()=>e.onNavigateFile(`prev`),`navigate`):t===`]`&&e.onNavigateCommit?c(()=>e.onNavigateCommit?.(`next`),`navigate`):t===`[`&&e.onNavigateCommit?c(()=>e.onNavigateCommit?.(`prev`),`navigate`):t===`v`?c(e.onToggleViewed):t===`m`?c(e.onToggleDiffStyle):t===`t`?c(e.onCycleTabSize):t===`b`?c(e.onToggleSidebar):t===`w`?c(e.onToggleLineWrap):t===`n`?c(e.onToggleLineNumbers):t===`i`?c(e.onCycleDiffIndicators):t===`I`?c(e.onCycleLineDiffType):t===`/`?c(()=>e.onOpenPalette(`text`),`open`):t===`s`||t===`gs`?c(()=>e.onOpenPalette(`symbols`),`open`):t===`gf`?c(()=>e.onOpenPalette(`all`),`open`):t===`gv`?c(()=>e.onOpenPalette(`files`),`open`):t===`gt`?c(e.onOpenTheme,`open`):t===`?`?c(e.onOpenShortcuts,`open`):t.length>=2&&i()};return window.addEventListener(`keydown`,a),()=>{window.removeEventListener(`keydown`,a),clearTimeout(n)}},[e])}function m3({session:e,comments:t,onEditComment:n,onDeleteComment:r,onSubmitted:i}){let{haptic:a,sound:o}=pD(),s=d3(),[c,l]=(0,W.useState)(!1),[u,d]=(0,W.useState)(null),[f,p]=(0,W.useState)(``),{popoverStyle:m,activePreset:h,applyPreset:g,startResize:_,startLeftResize:v,startCornerResize:y,handleOpenChange:b,panelRef:x}=IH(),S=t.length,C=(0,W.useMemo)(()=>[...t].sort((e,t)=>e.createdAt-t.createdAt),[t]),w=!!e.submittedAt,T=async()=>{if(u){a(`heavy`),o(`send`);try{let e=await s.mutateAsync({decision:u,body:f});i?.(e),p(``),d(null),l(!1)}catch{}}};return(0,G.jsx)(Zk,{open:c,onOpenChange:(e,t)=>b(e,t,l),ariaLabel:`Submit your review to GitHub`,className:`submit-to-github-popover`,trigger:(0,G.jsxs)(`button`,{className:`btn btn-primary btn-sm send-review-btn`,disabled:s.isPending,title:w?`Already submitted`:`Submit your review to the PR on GitHub`,style:{display:`inline-flex`,alignItems:`center`,gap:`6px`},children:[(0,G.jsx)(vO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:s.isPending?`Submitting…`:w?`Submitted ✓`:S>0?`Submit to GitHub (${S})`:`Submit to GitHub`})]}),children:(0,G.jsxs)(`div`,{className:`srp`,ref:x,style:m,children:[(0,G.jsx)(`div`,{className:`srp-resize-handle-left`,onPointerDown:v,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize submit panel width`,tabIndex:0}),(0,G.jsxs)(`div`,{className:`srp-head`,children:[(0,G.jsx)(vO,{size:15,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`srp-title`,children:`Submit review to GitHub`}),(0,G.jsx)(`div`,{className:`srp-size-presets`,role:`group`,"aria-label":`Panel size`,children:DH.map((e,t)=>(0,G.jsx)(`button`,{className:`srp-preset-btn`,role:`radio`,"aria-checked":h===t,"aria-pressed":h===t,onClick:()=>g(e),title:`${e.width}×${e.height}px`,children:e.label},e.label))}),(0,G.jsxs)(`span`,{className:`srp-count`,children:[S,` comment`,S===1?``:`s`]})]}),(0,G.jsxs)(`div`,{className:`srp-scroll`,children:[w&&(0,G.jsxs)(`div`,{className:`srp-already-submitted`,children:[(0,G.jsx)(HD,{size:13}),(0,G.jsxs)(`span`,{children:[`Already submitted as`,` `,e.submittedReviewUrl?(0,G.jsxs)(`a`,{href:e.submittedReviewUrl,target:`_blank`,rel:`noreferrer`,children:[`review #`,e.submittedReviewId,` `,(0,G.jsx)(sO,{size:11})]}):`review #${e.submittedReviewId}`,`. Re-submitting will post a new review on the same PR.`]})]}),(0,G.jsx)(`div`,{className:`plan-verdict-options`,role:`radiogroup`,"aria-label":`Verdict`,children:h3.map(e=>{let t=e.icon,n=u===e.value;return(0,G.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,className:`plan-verdict-option ${e.className} ${n?`plan-verdict-option-selected`:``}`,onClick:()=>d(e.value),children:[(0,G.jsx)(`span`,{className:`plan-verdict-icon`,children:(0,G.jsx)(t,{size:15,"aria-hidden":`true`})}),(0,G.jsxs)(`span`,{className:`plan-verdict-text`,children:[(0,G.jsx)(`span`,{className:`plan-verdict-label`,children:e.label}),(0,G.jsx)(`span`,{className:`plan-verdict-desc`,children:e.description})]}),(0,G.jsx)(`span`,{className:`plan-verdict-radio`,"aria-hidden":`true`})]},e.value)})}),S>0?(0,G.jsxs)(`section`,{className:`srp-comments-section`,"aria-labelledby":`srp-gh-comments-title`,children:[(0,G.jsxs)(`div`,{className:`srp-section-heading`,id:`srp-gh-comments-title`,children:[(0,G.jsx)(NO,{size:13,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:`Inline comments to publish`}),(0,G.jsx)(`span`,{className:`srp-section-count`,children:S})]}),(0,G.jsx)(`ul`,{className:`srp-list`,"aria-label":`Comments to send`,children:C.map(e=>(0,G.jsx)(g3,{comment:e,onEdit:n,onDelete:r},e.id))})]}):(0,G.jsx)(`p`,{className:`srp-empty`,children:`No inline comments — your verdict and overall note will be sent on their own.`}),(0,G.jsxs)(`div`,{className:`srp-general`,children:[(0,G.jsxs)(`label`,{className:`srp-general-label`,htmlFor:`srp-gh-general-input`,children:[`Overall comment `,(0,G.jsx)(`span`,{className:`srp-optional`,children:`(optional · Markdown)`})]}),(0,G.jsx)(wH,{id:`srp-gh-general-input`,value:f,onChange:p,textareaClassName:`srp-general-input`,placeholder:`Add an overall note for the PR that applies to the whole review…`,rows:3,ariaLabel:`Overall PR review comment`,onSubmitShortcut:T})]}),s.isError&&(0,G.jsxs)(`div`,{className:`srp-error`,role:`alert`,children:[(0,G.jsx)(qD,{size:13}),(0,G.jsx)(`span`,{children:s.error?.message??`Submit failed`})]})]}),(0,G.jsxs)(`div`,{className:`srp-footer`,children:[(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>l(!1),disabled:s.isPending,children:`Cancel`}),(0,G.jsx)(`button`,{className:`btn btn-primary btn-sm`,onClick:T,disabled:!u||s.isPending,children:s.isPending?`Submitting…`:u===`draft`?`Save draft review`:`Submit review`})]}),(0,G.jsx)(`div`,{className:`srp-resize-handle`,onPointerDown:_,role:`separator`,"aria-orientation":`horizontal`,"aria-label":`Resize submit panel`,tabIndex:0}),(0,G.jsx)(`div`,{className:`srp-resize-handle-corner`,onPointerDown:y,role:`separator`,"aria-label":`Resize submit panel width and height`,tabIndex:0})]})})}var h3=[{value:`approve`,label:`Approve`,description:`The PR is good — submit an APPROVE review.`,icon:HD,className:`plan-verdict-approve`},{value:`comment`,label:`Comment`,description:`Leave neutral feedback (no approve / no request changes).`,icon:MO,className:`plan-verdict-changes`},{value:`request-changes`,label:`Request changes`,description:`The author must address the comments before merging.`,icon:sk,className:`plan-verdict-reject`},{value:`draft`,label:`Save as draft`,description:`Post a PENDING review on GitHub — finish it later in the PR UI.`,icon:uO,className:`plan-verdict-comment-only`}];function g3({comment:e,onEdit:t,onDelete:n}){let[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(e.body),s=(0,W.useRef)(null);(0,W.useEffect)(()=>{r&&(s.current?.focus(),s.current?.select())},[r]);let c=e.lineNumber>0?e.startLineNumber&&e.startLineNumber!==e.lineNumber?`:${e.startLineNumber}-${e.lineNumber}`:`:${e.lineNumber}`:` · file`,l=()=>{let n=a.trim();n&&n!==e.body&&t(e.id,n),i(!1)};return(0,G.jsxs)(`li`,{className:`srp-item`,children:[(0,G.jsxs)(`div`,{className:`srp-item-top`,children:[(0,G.jsxs)(`span`,{className:`srp-item-loc`,children:[(0,G.jsx)(`span`,{className:`srp-item-file`,children:tE(e.filePath)}),(0,G.jsx)(`span`,{className:`srp-item-line`,children:c})]}),e.status===`resolved`&&(0,G.jsx)(`span`,{className:`srp-item-resolved`,children:`resolved`}),(0,G.jsxs)(`span`,{className:`srp-item-actions`,children:[r?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:l,title:`Save edit`,children:(0,G.jsx)(HD,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>{o(e.body),i(!1)},title:`Cancel edit`,children:(0,G.jsx)(sk,{size:13,"aria-hidden":`true`})})]}):(0,G.jsx)(`button`,{className:`srp-icon-btn`,onClick:()=>i(!0),title:`Edit comment`,children:(0,G.jsx)(WO,{size:13,"aria-hidden":`true`})}),(0,G.jsx)(`button`,{className:`srp-icon-btn srp-icon-btn-danger`,onClick:()=>n(e.id),title:`Remove from review`,children:(0,G.jsx)(nk,{size:13,"aria-hidden":`true`})})]})]}),e.lineContent?.trim()&&(0,G.jsx)(`code`,{className:`srp-item-code`,children:e.lineContent.trim().slice(0,160)}),r?(0,G.jsx)(`textarea`,{ref:s,className:`srp-item-edit`,value:a,rows:2,onChange:e=>o(e.target.value),onKeyDown:t=>{t.key===`Enter`&&(t.metaKey||t.ctrlKey)?(t.preventDefault(),l()):t.key===`Escape`&&(t.preventDefault(),o(e.body),i(!1))}}):(0,G.jsx)(`p`,{className:`srp-item-body`,children:e.body})]})}function _3({session:e,comments:t,settingsProps:n,sidebarCollapsed:r,onToggleSidebar:i,onOpenSearch:a,onRefresh:o,refreshing:s,onEditComment:c,onDeleteComment:l,onSubmitted:u}){return(0,G.jsxs)(`header`,{className:`toolbar diff-app-toolbar pr-review-toolbar`,role:`banner`,children:[(0,G.jsxs)(`div`,{className:`toolbar-left`,children:[(0,G.jsx)(`button`,{className:`toolbar-mobile-toggle`,onClick:i,"aria-label":r?`Open file tree`:`Close file tree`,"aria-expanded":!r,title:r?`Open sidebar · b`:`Close sidebar · b`,children:(0,G.jsx)(kO,{size:18})}),(0,G.jsx)(`button`,{className:`pr-toolbar-back`,onClick:()=>DE(`/`),title:`Back to local review`,"aria-label":`Back to local review`,children:(0,G.jsx)(zD,{size:14})}),(0,G.jsxs)(`div`,{className:`toolbar-brand pr-toolbar-brand`,children:[(0,G.jsx)(VH,{size:20,className:`toolbar-brand-mark`}),(0,G.jsxs)(`div`,{className:`toolbar-brand-text`,children:[(0,G.jsxs)(`h1`,{className:`toolbar-title`,children:[e.owner,`/`,e.repo]}),(0,G.jsxs)(`span`,{className:`toolbar-branch-inline`,title:`Pull request #${e.pullNumber}`,children:[(0,G.jsx)(vO,{size:11}),` #`,e.pullNumber]})]})]})]}),(0,G.jsxs)(`div`,{className:`toolbar-right`,children:[(0,G.jsxs)(`button`,{className:`btn btn-sm toolbar-search-btn`,onClick:a,title:`Search files and changed lines (⌘K)`,"aria-label":`Search`,children:[(0,G.jsx)(XO,{size:14}),(0,G.jsx)(`span`,{className:`btn-label`,children:`Search`}),(0,G.jsx)(`kbd`,{className:`toolbar-search-kbd`,children:`⌘K`})]}),(0,G.jsxs)(`button`,{className:`btn btn-sm pr-header-copy`,onClick:()=>navigator.clipboard.writeText(vE(t)),disabled:t.length===0,title:`Copy draft comments as Markdown`,children:[(0,G.jsx)(aO,{size:13}),` `,(0,G.jsx)(`span`,{className:`btn-label`,children:`Copy`})]}),(0,G.jsxs)(`button`,{className:`btn btn-sm pr-header-refresh`,onClick:o,disabled:s,title:`Refresh PR from GitHub`,children:[(0,G.jsx)(KO,{size:13,className:s?`spinning`:``}),(0,G.jsx)(`span`,{className:`btn-label`,children:s?`Refreshing…`:`Refresh`})]}),(0,G.jsxs)(`a`,{className:`btn btn-sm pr-header-link`,href:e.url,target:`_blank`,rel:`noreferrer`,title:`Open pull request on GitHub`,children:[(0,G.jsx)(sO,{size:13}),` `,(0,G.jsx)(`span`,{className:`btn-label`,children:`GitHub`})]}),(0,G.jsx)(dW,{...n}),(0,G.jsx)(m3,{session:e,comments:t,onEditComment:c,onDeleteComment:l,onSubmitted:u})]})]})}var v3={APPROVED:{label:`approved these changes`,short:`Approved`,icon:JD},CHANGES_REQUESTED:{label:`requested changes`,short:`Changes requested`,icon:QD},COMMENTED:{label:`left a review comment`,short:`Commented`,icon:AO},PENDING:{label:`started a pending review`,short:`Pending`,icon:tO},DISMISSED:{label:`had a review dismissed`,short:`Dismissed`,icon:QD}};function y3({reviews:e}){let[t,n]=(0,W.useState)(e[0]?.id??null),[r,i]=(0,W.useState)(null);if((0,W.useEffect)(()=>{n(e[0]?.id??null)},[e[0]?.id]),(0,W.useEffect)(()=>{i(null)},[t]),e.length===0)return null;let a=Math.max(0,e.findIndex(e=>e.id===t)),o=e[a]??e[0],s=v3[o.state],c=s.icon,l=o.submittedAt?new Date(o.submittedAt).getTime():null;return(0,G.jsxs)(`section`,{className:`pr-review-activity`,"aria-label":`GitHub review activity`,children:[(0,G.jsxs)(`header`,{className:`pr-review-activity-head`,children:[(0,G.jsxs)(`div`,{className:`pr-review-activity-identity`,children:[o.author?.avatarUrl&&r!==o.author.avatarUrl?(0,G.jsx)(`img`,{src:`/api/gh/avatar?url=${encodeURIComponent(o.author.avatarUrl)}`,alt:``,className:`pr-review-activity-avatar`,referrerPolicy:`no-referrer`,onError:()=>i(o.author?.avatarUrl??null)}):(0,G.jsx)(`span`,{className:`pr-review-activity-avatar is-fallback`,"aria-hidden":`true`,children:(0,G.jsx)(c,{size:14})}),(0,G.jsx)(c,{className:`pr-review-activity-state-icon`,"data-state":o.state,size:16,"aria-hidden":`true`}),(0,G.jsxs)(`span`,{children:[(0,G.jsxs)(`strong`,{children:[`@`,o.author?.login??`unknown`]}),` `,s.label]}),l!=null&&(0,G.jsx)(`time`,{dateTime:o.submittedAt,title:new Date(l).toLocaleString(),children:eE(l)}),(0,G.jsx)(`span`,{className:`pr-review-activity-verdict`,"data-state":o.state,children:s.short})]}),(0,G.jsxs)(`nav`,{className:`pr-review-activity-nav`,"aria-label":`Walk GitHub reviews`,children:[(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm commit-walk-btn`,disabled:a===0,onClick:()=>n(e[a-1]?.id??o.id),"aria-label":`Newer review`,title:`Newer review`,children:(0,G.jsx)(WD,{size:14})}),(0,G.jsxs)(`span`,{children:[a+1,` / `,e.length]}),(0,G.jsx)(`button`,{type:`button`,className:`btn btn-sm commit-walk-btn`,disabled:a>=e.length-1,onClick:()=>n(e[a+1]?.id??o.id),"aria-label":`Older review`,title:`Older review`,children:(0,G.jsx)(GD,{size:14})}),o.htmlUrl&&(0,G.jsxs)(`a`,{className:`pr-review-activity-link`,href:o.htmlUrl,target:`_blank`,rel:`noreferrer`,children:[`View on GitHub `,(0,G.jsx)(sO,{size:11})]})]})]}),o.body.trim()?(0,G.jsx)(hH,{content:o.body,className:`pr-review-activity-body markdown-body`}):(0,G.jsx)(`p`,{className:`pr-review-activity-empty`,children:`No overall comment was submitted with this review.`})]})}function b3(e){return e.some(e=>e.state===`pending`)?8e3:3e4}function x3(e){return e===`success`?{icon:JD,className:`is-success`,label:`Succeeded`}:e===`pending`?{icon:tO,className:`is-pending`,label:`In progress`}:e===`failure`||e===`error`||e===`timed_out`||e===`action_required`?{icon:QD,className:`is-failure`,label:e===`timed_out`?`Timed out`:`Failed`}:e===`skipped`||e===`cancelled`||e===`neutral`?{icon:XD,className:`is-neutral`,label:e===`cancelled`?`Cancelled`:e===`skipped`?`Skipped`:`Neutral`}:{icon:YD,className:`is-neutral`,label:`Unknown`}}function S3({headSha:e}){let t=nt({queryKey:[`pr-checks`,e],queryFn:async()=>{let e=await fetch(`/api/gh/checks`),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error||`HTTP ${e.status}`);return t},refetchInterval:e=>b3(e.state.data?.checks??[]),refetchOnWindowFocus:!0,staleTime:5e3}),n=t.data?.checks??[],r=n.filter(e=>e.state===`success`).length,i=n.filter(e=>e.state===`pending`).length,a=n.filter(e=>[`failure`,`error`,`timed_out`,`action_required`].includes(e.state)).length,o=Math.max(0,n.length-r-i-a),s=a>0?`failure`:i>0?`pending`:n.length>0?`success`:`neutral`,c=s===`failure`?QD:s===`pending`?tO:s===`success`?JD:YD;return(0,G.jsx)(Zk,{ariaLabel:`GitHub checks`,className:`pr-checks-popover`,trigger:(0,G.jsxs)(`button`,{className:`toolbar-chip pr-checks-trigger is-${s}`,title:`Live GitHub checks and actions status`,type:`button`,children:[(0,G.jsx)(c,{size:12}),(0,G.jsx)(`span`,{children:t.isLoading?`Loading checks…`:n.length===0?`No checks`:a>0?`${a} failing`:i>0?`${i} running`:`${r}/${n.length} passed`})]}),children:(0,G.jsxs)(`div`,{className:`pr-checks-panel`,children:[(0,G.jsxs)(`div`,{className:`pr-checks-head`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`strong`,{children:`Checks and actions`}),(0,G.jsxs)(`span`,{children:[`Live status for `,e.slice(0,7)]})]}),(0,G.jsx)(`button`,{className:`file-diff-icon-btn`,onClick:()=>t.refetch(),disabled:t.isFetching,"aria-label":`Refresh checks`,children:(0,G.jsx)(KO,{size:13,className:t.isFetching?`spinning`:``})})]}),n.length>0&&(0,G.jsxs)(`div`,{className:`pr-checks-summary`,"aria-label":`Checks summary`,children:[(0,G.jsxs)(`span`,{className:`is-success`,children:[(0,G.jsx)(JD,{size:12}),` `,r,` passed`]}),(0,G.jsxs)(`span`,{className:`is-failure`,children:[(0,G.jsx)(QD,{size:12}),` `,a,` failed`]}),(0,G.jsxs)(`span`,{className:`is-pending`,children:[(0,G.jsx)(tO,{size:12}),` `,i,` running`]}),o>0&&(0,G.jsxs)(`span`,{className:`is-neutral`,children:[(0,G.jsx)(XD,{size:12}),` `,o,` other`]})]}),t.isError?(0,G.jsxs)(`div`,{className:`pr-checks-empty is-error`,children:[(0,G.jsx)(qD,{size:15}),` `,t.error.message]}):t.isLoading?(0,G.jsx)(`div`,{className:`pr-checks-empty`,children:`Loading the latest GitHub status…`}):n.length===0?(0,G.jsx)(`div`,{className:`pr-checks-empty`,children:`No checks are reported for this commit.`}):(0,G.jsx)(`ul`,{className:`pr-checks-list`,children:n.map((e,t)=>{let n=x3(e.state),r=n.icon;return(0,G.jsxs)(`li`,{className:n.className,children:[(0,G.jsx)(r,{size:14}),(0,G.jsx)(`span`,{className:`pr-checks-name`,children:e.name}),(0,G.jsx)(`span`,{className:`pr-checks-state`,children:n.label}),e.detailsUrl&&(0,G.jsx)(`a`,{href:e.detailsUrl,target:`_blank`,rel:`noreferrer`,"aria-label":`Open ${e.name} on GitHub`,children:(0,G.jsx)(sO,{size:12})})]},`${e.name}-${t}`)})}),(0,G.jsx)(`div`,{className:`pr-checks-foot`,children:`Updates every 8 seconds while work is running.`})]})})}function C3({session:e,draftCount:t}){return(0,G.jsx)(`section`,{className:`diff-overview-banner pr-overview-banner`,"aria-label":`Pull request #${e.pullNumber}: ${e.title}`,children:(0,G.jsxs)(`header`,{className:`diff-overview-banner-header`,children:[(0,G.jsxs)(`div`,{className:`diff-overview-banner-line`,children:[(0,G.jsx)(vO,{size:14,className:`diff-overview-banner-icon`,"aria-hidden":`true`}),(0,G.jsx)(`h2`,{className:`diff-overview-banner-headline`,children:e.title})]}),(0,G.jsxs)(`div`,{className:`diff-overview-banner-meta pr-overview-meta`,children:[(0,G.jsxs)(`span`,{className:`pr-overview-identity`,children:[`Pull request #`,e.pullNumber,e.author?.login?(0,G.jsxs)(G.Fragment,{children:[` by `,(0,G.jsxs)(`strong`,{children:[`@`,e.author.login]})]}):null]}),(0,G.jsxs)(`span`,{children:[e.changedFiles,` file`,e.changedFiles===1?``:`s`]}),(0,G.jsxs)(`span`,{className:`toolbar-chip-diff`,"aria-label":`${e.additions} additions and ${e.deletions} deletions`,children:[(0,G.jsxs)(`span`,{className:`stat-additions`,children:[`+`,e.additions]}),(0,G.jsxs)(`span`,{className:`stat-deletions`,children:[`−`,e.deletions]})]}),t>0&&(0,G.jsxs)(`span`,{className:`toolbar-chip toolbar-chip-comments`,children:[t,` draft`,t===1?``:`s`]}),(0,G.jsx)(S3,{headSha:e.headSha})]})]})})}function w3({result:e,onDismiss:t}){return(0,G.jsxs)(`div`,{className:`pr-submitted-toast`,role:`status`,children:[(0,G.jsx)(JD,{size:16,className:`pr-submitted-icon`}),(0,G.jsxs)(`div`,{className:`pr-submitted-text`,children:[(0,G.jsx)(`strong`,{children:`Review submitted to GitHub.`}),e.reviewUrl&&(0,G.jsxs)(G.Fragment,{children:[` `,(0,G.jsxs)(`a`,{href:e.reviewUrl,target:`_blank`,rel:`noreferrer`,children:[`Open review on GitHub `,(0,G.jsx)(sO,{size:11})]})]}),e.authSource&&e.authSource!==`none`&&(0,G.jsxs)(`span`,{className:`pr-submitted-auth`,children:[`via `,e.authSource]})]}),(0,G.jsx)(`button`,{className:`pr-submitted-dismiss`,onClick:t,title:`Dismiss`,"aria-label":`Dismiss`,children:`×`})]})}function T3(){let e=Am(),t=Ve(),{settings:n,loaded:r,updateSettings:i}=IE(),[,a]=(0,W.useTransition)(),{session:o,loaded:s,error:c}=s3(),l=f3();c3(s&&!!o);let{comments:u,addComment:d,removeComment:f,updateComment:p,addReply:m,resolveComment:h,unresolveComment:g,editComment:_,editReply:v,removeReply:y}=u3(s&&!!o),{patch:b,loading:x,error:S}=gE({staged:!1,untracked:!1},s&&!!o),{viewedFiles:C,setViewed:w}=VE(),[T,E]=(0,W.useState)(null),[D,O]=(0,W.useState)(()=>{let e=CD(`diffing-sidebar-collapsed`);return e==null?typeof window<`u`&&window.innerWidth<=768:e===`true`}),[k,A]=(0,W.useState)(()=>Number(CD(`diffing-sidebar-width`))||320),[j,M]=(0,W.useState)(()=>Number(CD(`diffing-comment-panel-height`))||220),[N,P]=(0,W.useState)(()=>mD(CD(`diffing-pr-extension-filter`)??``)),[F,I]=(0,W.useState)(()=>{let e=CD(`diffing-pr-chip-filter`);return e===`unviewed`||e===`has-comments`?e:`all`}),[L,R]=(0,W.useState)({open:!1,scope:`files`}),[z,ee]=(0,W.useState)(!1),[te,ne]=(0,W.useState)(!1),[B,V]=(0,W.useState)(!1),[re,ie]=(0,W.useState)(!1),[ae,oe]=(0,W.useState)(null),se=(0,W.useRef)(null),ce=(0,W.useRef)(null),H=(0,W.useRef)(null),le=(0,W.useRef)(k),ue=(0,W.useRef)(j);le.current=k,ue.current=j,LE(r,n.uiFont,n.monoFont);let U=(0,W.useMemo)(()=>{if(!b)return[];try{let e=new Set;return Pg(b).flatMap(e=>e.files).filter(t=>e.has(t.name)?!1:(e.add(t.name),!0)).sort(kG)}catch{return[]}},[b]),de=(0,W.useMemo)(()=>{let e=new Map;for(let t of o?.existingComments??[]){let n=e.get(t.path)??[];n.push(t),e.set(t.path,n)}return e},[o]),fe=(0,W.useMemo)(()=>{let e={};for(let t of u)e[t.filePath]=(e[t.filePath]??0)+1;for(let t of o?.existingComments??[])e[t.path]=(e[t.path]??0)+1;return e},[u,o]),pe=(0,W.useMemo)(()=>{let e=U;return N.length>0&&(e=e.filter(e=>_D(e.name,N))),F===`unviewed`&&(e=e.filter(e=>!C.has(e.name))),F===`has-comments`&&(e=e.filter(e=>(fe[e.name]??0)>0)),e},[U,N,F,C,fe]),me=(0,W.useMemo)(()=>{let e=new Map;for(let t of u){let n=e.get(t.filePath)??[];n.push({side:t.side,lineNumber:t.lineNumber,metadata:t}),e.set(t.filePath,n)}return e},[u]),he=kD(pe),ge=(0,W.useMemo)(()=>FE(n.monoFont),[n.monoFont]),_e=(0,W.useMemo)(()=>new Set,[]),ve=(0,W.useCallback)(e=>{E(e),document.getElementById(`file-${e}`)?.scrollIntoView({block:`start`})},[]),ye=(0,W.useCallback)(e=>{let t=pe[pe.findIndex(t=>t.name===e)+1];t&&requestAnimationFrame(()=>requestAnimationFrame(()=>{document.getElementById(`file-${t.name}`)?.scrollIntoView({block:`start`,behavior:`smooth`})}))},[pe]),be=(0,W.useCallback)((e,t)=>{w(e,t),t&&ye(e)},[w,ye]),xe=(0,W.useCallback)(async(e,n)=>{let r=await fetch(`/api/gh/existing-comments/${e}/replies`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({body:n})}),i=await r.json().catch(()=>({}));if(!r.ok)throw Error(i.error||`HTTP ${r.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),Se=(0,W.useCallback)(async(e,n,r)=>{let i=await fetch(`/api/gh/existing-comments/${n}`,{method:e,headers:r==null?void 0:{"Content-Type":`application/json`},body:r==null?void 0:JSON.stringify({body:r})}),a=await i.json().catch(()=>({}));if(!i.ok)throw Error(a.error||`HTTP ${i.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),Ce=(0,W.useCallback)(async(e,n)=>{let r=await fetch(`/api/gh/review-threads/${encodeURIComponent(e)}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({resolved:n})}),i=await r.json().catch(()=>({}));if(!r.ok)throw Error(i.error||`HTTP ${r.status}`);await t.invalidateQueries({queryKey:[`pr-session`]})},[t]),we=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientX,n=le.current,r=ce.current?.getBoundingClientRect().left??0,i=n,a=e=>{i=Math.max(240,Math.min(640,n+e.clientX-t)),H.current&&(H.current.style.transform=`translateX(${r+i}px)`)},o=()=>{H.current?.classList.remove(`sidebar-resize-guide-active`),A(i),DD(`diffing-sidebar-width`,String(i)),document.removeEventListener(`mousemove`,a),document.removeEventListener(`mouseup`,o),document.body.style.cursor=``,document.body.style.userSelect=``};H.current?.classList.add(`sidebar-resize-guide-active`),document.addEventListener(`mousemove`,a),document.addEventListener(`mouseup`,o),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[]),Te=(0,W.useCallback)(e=>{e.preventDefault();let t=e.clientY,n=ue.current,r=n,i=e=>{r=Math.max(100,Math.min(600,n+t-e.clientY)),se.current?.style.setProperty(`--comment-panel-height`,`${r}px`)},a=()=>{M(r),DD(`diffing-comment-panel-height`,String(r)),document.removeEventListener(`mousemove`,i),document.removeEventListener(`mouseup`,a),document.body.style.cursor=``,document.body.style.userSelect=``};document.addEventListener(`mousemove`,i),document.addEventListener(`mouseup`,a),document.body.style.cursor=`row-resize`,document.body.style.userSelect=`none`},[]);(0,W.useEffect)(()=>{DD(`diffing-sidebar-collapsed`,String(D))},[D]),(0,W.useEffect)(()=>DD(`diffing-pr-extension-filter`,N.join(`,`)),[N]),(0,W.useEffect)(()=>DD(`diffing-pr-chip-filter`,F),[F]),(0,W.useEffect)(()=>{let e=document.documentElement;e.classList.add(`theme-switching`),e.setAttribute(`data-theme`,n.theme||`nord`),e.setAttribute(`data-density`,n.density||`comfortable`);let t=requestAnimationFrame(()=>requestAnimationFrame(()=>e.classList.remove(`theme-switching`)));return()=>cancelAnimationFrame(t)},[n.theme,n.density]);let Ee=(0,W.useMemo)(()=>nE[n.theme||`nord`]||nE.nord,[n.theme]),De=(0,W.useMemo)(()=>Array.from(new Set(U.flatMap(e=>[Yf(e.name),e.prevName?Yf(e.prevName):null]).filter(e=>e!=null&&e!==`text`))),[U]);(0,W.useEffect)(()=>{e&&e.setRenderOptions({theme:{dark:Ee.type===`dark`?Ee.themeName:`nord`,light:Ee.type===`light`?Ee.themeName:`github-light`}}).catch(()=>{})},[e,Ee]),(0,W.useEffect)(()=>{let e=Ee.type===`dark`?Ee.themeName:`nord`,t=Ee.type===`light`?Ee.themeName:`github-light`;Uf({themes:Array.from(new Set([e,t])),langs:De}).catch(()=>{})},[Ee,De]),(0,W.useEffect)(()=>{if(o)return document.title=`${o.owner}/${o.repo}#${o.pullNumber} · diffing`,()=>{document.title=`diffing`}},[o]);let Oe=(0,W.useCallback)(e=>{if(pe.length===0)return;let t=T?pe.findIndex(e=>e.name===T):-1,n=e===`next`?Math.min(t+1,pe.length-1):Math.max(t-1,0),r=pe[Math.max(0,n)];r&&ve(r.name)},[T,pe,ve]),ke=(0,W.useCallback)(()=>{T&&be(T,!C.has(T))},[T,be,C]);if(p3((0,W.useMemo)(()=>({onNavigateFile:Oe,onToggleViewed:ke,onToggleDiffStyle:()=>i({diffStyle:n.diffStyle===`split`?`unified`:`split`}),onCycleTabSize:()=>{let e=[2,4,8];i({defaultTabSize:e[(e.indexOf(n.defaultTabSize)+1)%e.length]})},onToggleSidebar:()=>O(e=>!e),onToggleLineWrap:()=>i({lineWrap:!n.lineWrap}),onToggleLineNumbers:()=>i({showLineNumbers:!n.showLineNumbers}),onCycleDiffIndicators:()=>{let e=[`classic`,`bars`,`none`];i({diffIndicators:e[(e.indexOf(n.diffIndicators)+1)%e.length]})},onCycleLineDiffType:()=>{let e=[`word`,`word-alt`,`char`,`none`];i({lineDiffType:e[(e.indexOf(n.lineDiffType)+1)%e.length]})},onOpenPalette:e=>R({open:!0,scope:e}),onTogglePalette:()=>R(e=>e.open?{...e,open:!1}:{open:!0,scope:`all`}),onOpenTheme:()=>ee(!0),onOpenShortcuts:()=>ie(!0)}),[Oe,n.defaultTabSize,n.diffIndicators,n.diffStyle,n.lineDiffType,n.lineWrap,n.showLineNumbers,ke,i])),s&&!o)return(0,G.jsxs)(`div`,{className:`pr-app-empty`,children:[(0,G.jsx)(vO,{size:32}),(0,G.jsx)(`h2`,{children:`No active PR session`}),(0,G.jsxs)(`p`,{children:[`Start one with `,(0,G.jsx)(`code`,{children:`diffing "gh pr 1234"`}),` or `,(0,G.jsx)(`code`,{children:`diffing --gh-pr 1234`}),` from inside the repo.`]}),(0,G.jsx)(`button`,{className:`btn btn-sm`,onClick:()=>DE(`/`),children:`Back to local review`})]});if(!o)return(0,G.jsx)(`div`,{className:`pr-app-empty`,children:(0,G.jsx)(`span`,{children:`Loading PR session…`})});let Ae=e=>a(()=>i(e)),je={diffStyle:n.diffStyle,defaultTabSize:n.defaultTabSize,lineDiffType:n.lineDiffType,lineWrap:n.lineWrap,diffIndicators:n.diffIndicators,showLineNumbers:n.showLineNumbers,hunkSeparators:n.hunkSeparators,lineHoverHighlight:n.lineHoverHighlight,fontSize:n.fontSize,haptics:n.haptics,sounds:n.sounds,uiFont:n.uiFont,monoFont:n.monoFont,density:n.density,autoCollapseLineThreshold:n.autoCollapseLineThreshold,showStatusBar:n.showStatusBar,onDiffStyleChange:e=>Ae({diffStyle:e}),onDefaultTabSizeChange:e=>Ae({defaultTabSize:e}),onOpenThemeModal:()=>ee(!0),onLineDiffTypeChange:e=>Ae({lineDiffType:e}),onLineWrapChange:e=>Ae({lineWrap:e}),onDiffIndicatorsChange:e=>Ae({diffIndicators:e}),onShowLineNumbersChange:e=>Ae({showLineNumbers:e}),onHunkSeparatorsChange:e=>Ae({hunkSeparators:e}),onLineHoverHighlightChange:e=>Ae({lineHoverHighlight:e}),onFontSizeChange:e=>Ae({fontSize:e}),onHapticsChange:e=>Ae({haptics:e}),onSoundsChange:e=>Ae({sounds:e}),onDensityChange:e=>Ae({density:e}),onAutoCollapseLineThresholdChange:e=>Ae({autoCollapseLineThreshold:e}),onShowStatusBarChange:e=>Ae({showStatusBar:e}),onOpenUiFontModal:()=>ne(!0),onOpenMonoFontModal:()=>V(!0),showSource:!1,showWhitespace:!1,showExternalTools:!1,showSendPolicy:!1};return(0,G.jsx)(fD,{enabled:n.haptics,soundsEnabled:n.sounds,children:(0,G.jsxs)(`div`,{ref:se,className:`app pr-app`,"data-pr-mode":`true`,style:{"--sidebar-width":`${k}px`,"--comment-panel-height":`${j}px`},children:[(0,G.jsx)(`a`,{href:`#pr-diff-main`,className:`skip-to-main`,children:`Skip to diff`}),(0,G.jsx)(`div`,{className:`sidebar-resize-guide`,ref:H,"aria-hidden":`true`}),(0,G.jsx)(_3,{session:o,comments:u,settingsProps:je,sidebarCollapsed:D,onToggleSidebar:()=>O(e=>!e),onOpenSearch:()=>R({open:!0,scope:`all`}),onRefresh:()=>l.mutate(),refreshing:l.isPending,onEditComment:(e,t)=>p({id:e,body:t}),onDeleteComment:f,onSubmitted:oe}),!D&&(0,G.jsx)(`div`,{className:`sidebar-mobile-backdrop`,onClick:()=>O(!0),"aria-hidden":`true`}),(0,G.jsxs)(`div`,{className:`app-body`,children:[(0,G.jsxs)(`aside`,{ref:ce,className:`sidebar ${D?`sidebar-collapsed`:``}`,children:[(0,G.jsx)(`div`,{className:`pr-sidebar-tree`,children:(0,G.jsx)(X0,{files:U,activeFile:T,commentCounts:fe,viewedFiles:C,untrackedFiles:_e,onFileClick:ve,collapsed:D,onToggleCollapse:()=>O(e=>!e),appliedExtensions:N,onApplyExtensions:e=>P(hD(e)),chipFilter:F,onChipFilterChange:I})}),!D&&u.length>0&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`ct-resize-handle`,onMouseDown:Te,role:`separator`,"aria-label":`Resize comments panel`,"aria-orientation":`horizontal`,tabIndex:0}),(0,G.jsx)(`div`,{className:`ct-wrapper pr-ct-wrapper`,children:(0,G.jsx)(e2,{comments:u,resolveComment:h,unresolveComment:g,removeComment:f,addReply:async(e,t)=>{await m({id:e,body:t})},editComment:_,editReply:v,removeReply:y})})]})]}),!D&&(0,G.jsx)(`div`,{className:`sidebar-resize-handle`,onMouseDown:we,role:`separator`,"aria-label":`Resize sidebar`,"aria-orientation":`vertical`,tabIndex:0}),(0,G.jsxs)(`main`,{className:`main pr-main`,id:`pr-diff-main`,tabIndex:-1,children:[(0,G.jsx)(C3,{session:o,draftCount:u.length}),(0,G.jsx)(y3,{reviews:o.existingReviews??[]}),(o.existingComments?.length??0)>0&&(0,G.jsxs)(`div`,{className:`pr-existing-summary`,children:[(0,G.jsx)(AO,{size:13}),(0,G.jsxs)(`span`,{children:[o.existingComments.length,` existing GitHub conversation`,o.existingComments.length===1?``:`s`,` included in this review.`]})]}),(S||c)&&(0,G.jsxs)(`div`,{className:`pr-error`,children:[(0,G.jsx)(qD,{size:14}),` Failed to load the PR: `,S||c?.message]}),x&&!b?(0,G.jsx)(`div`,{className:`pr-app-loading`,children:`Loading PR diff…`}):pe.length===0?(0,G.jsxs)(`div`,{className:`empty-state`,role:`status`,children:[(0,G.jsx)(`div`,{className:`empty-state-icon`,children:(0,G.jsx)(gO,{size:24})}),(0,G.jsx)(`p`,{className:`empty-state-title`,children:`No matching files`}),(0,G.jsx)(`p`,{className:`empty-state-hint`,children:`Clear the file-tree filters to see the full pull request.`})]}):(0,G.jsx)(E3,{files:pe,fileAnnotations:me,existingCommentsByFile:de,viewedFiles:C,settings:n,monoFontFamily:ge,onAddComment:e=>d(e),onDeleteComment:f,onViewedChange:be,onCardToggleCollapse:(e,t)=>{t&&ye(e)},onReplyExisting:xe,onEditExisting:(e,t)=>Se(`PATCH`,e,t),onDeleteExisting:e=>Se(`DELETE`,e),onSetExistingResolved:Ce})]})]}),(0,G.jsx)(D2,{isOpen:L.open,onClose:()=>R(e=>({...e,open:!1})),initialScope:L.scope,files:pe,changedEntries:he,customMode:!0,staged:!1,onNavigateFile:ve,theme:n.theme||`nord`,fontSize:n.fontSize,monoFontFamily:ge,defaultTabSize:n.defaultTabSize,lineWrap:n.lineWrap,showLineNumbers:n.showLineNumbers,lineHoverHighlight:n.lineHoverHighlight}),(0,G.jsx)(F2,{activeFile:T,onShowHelp:()=>ie(!0),visible:n.showStatusBar,placeholder:`No active PR file (J/K to jump)`}),(0,G.jsx)(I2,{isOpen:re,onClose:()=>ie(!1),mode:`pr`}),(0,G.jsx)(z2,{open:z,activeTheme:n.theme||`nord`,onThemeChange:e=>Ae({theme:e}),onClose:()=>ee(!1)}),(0,G.jsx)(H2,{open:te,title:`Select UI Font`,defaultLabel:`Default (Geist Mono, from CDN)`,activeFont:n.uiFont,onFontChange:e=>Ae({uiFont:e}),onClose:()=>ne(!1)}),(0,G.jsx)(H2,{open:B,title:`Select Code Font`,defaultLabel:`Default (JetBrains Mono, from CDN)`,activeFont:n.monoFont,onFontChange:e=>Ae({monoFont:e}),onClose:()=>V(!1)}),ae&&(0,G.jsx)(w3,{result:ae,onDismiss:()=>oe(null)})]})})}function E3({files:e,fileAnnotations:t,existingCommentsByFile:n,viewedFiles:r,settings:i,monoFontFamily:a,onAddComment:o,onDeleteComment:s,onViewedChange:c,onCardToggleCollapse:l,onReplyExisting:u,onEditExisting:d,onDeleteExisting:f,onSetExistingResolved:p}){return(0,G.jsx)(`div`,{className:`pr-diff-surface`,children:e.map(e=>{let m=n.get(e.name)??[];return(0,G.jsx)(`div`,{className:`pr-file-block`,children:(0,G.jsx)(AG,{files:[e],diffStyle:i.diffStyle,tabSizeMap:{},defaultTabSize:i.defaultTabSize,viewedFiles:r,binaryFiles:new Map,theme:i.theme||`nord`,lineDiffType:i.lineDiffType,lineWrap:i.lineWrap,diffIndicators:i.diffIndicators,showLineNumbers:i.showLineNumbers,hunkSeparators:i.hunkSeparators,lineHoverHighlight:i.lineHoverHighlight,fontSize:i.fontSize,monoFontFamily:a,expandContextByDefault:i.expandContextByDefault,collapsedContextThreshold:i.collapsedContextThreshold,expansionLineCount:i.expansionLineCount,autoCollapseLineThreshold:i.autoCollapseLineThreshold,onViewedChange:c,fileAnnotationsMap:new Map([[e.name,t.get(e.name)??[]]]),existingCommentsMap:new Map([[e.name,m]]),onAddComment:(e,t,n,r,i,a)=>o({filePath:e,side:t,lineNumber:n,lineContent:r,body:i,startLineNumber:a}),onDeleteComment:s,onReplyExisting:u,onEditExisting:d,onDeleteExisting:f,onSetExistingResolved:p,onCardToggleCollapse:l,allowLocalActions:!1})},e.name)})})}function D3(){let e=jE(),[t,n]=(0,W.useState)(!1),[r,i]=(0,W.useState)(()=>e===`/gh/pr`||e.startsWith(`/gh/pr/`)||e.startsWith(`/plan`));return(0,W.useEffect)(()=>{SD().then(()=>{n(!0)})},[]),(0,W.useEffect)(()=>{if(e===`/gh/pr`||e.startsWith(`/gh/pr/`)||e.startsWith(`/plan`)){i(!0);return}if(e!==`/`){i(!0);return}let t=!1;return fetch(`/api/gh/session`).then(async e=>{t||e.ok&&(await e.json().catch(()=>null))?.prMode===!0&&DE(`/gh/pr`,{replace:!0})}).catch(()=>{}).finally(()=>{t||i(!0)}),()=>{t=!0}},[e]),!t||!r?(0,G.jsxs)(`div`,{className:`boot-loader`,role:`status`,"aria-live":`polite`,children:[(0,G.jsx)(VH,{size:40,className:`boot-loader-mark`}),(0,G.jsx)(`div`,{className:`boot-loader-spinner`,"aria-hidden":`true`}),(0,G.jsx)(`span`,{className:`boot-loader-label`,children:`Loading review session…`})]}):e===`/plan`||e.startsWith(`/plan/`)?(0,G.jsx)(i3,{}):e===`/gh/pr`||e.startsWith(`/gh/pr/`)?(0,G.jsx)(T3,{}):(0,G.jsx)(Q2,{})}var O3=new Le;(0,mn.createRoot)(document.getElementById(`root`)).render((0,G.jsx)(He,{client:O3,children:(0,G.jsx)(ot,{children:(0,G.jsx)(km,{poolOptions:{workerFactory:()=>new A_,poolSize:Math.max(1,Math.min(4,navigator.hardwareConcurrency||2))},highlighterOptions:{theme:{dark:`nord`,light:`github-light`},langs:[`vue`]},children:(0,G.jsx)(QT,{children:(0,G.jsx)(D3,{})})})})}));export{l as a,s as i,J as n,o as r,_E as t};